Skip to content

Instantly share code, notes, and snippets.

@arvati
Last active December 6, 2021 21:28
Show Gist options
  • Save arvati/8bdd1b4258fd51430ea6176c0856038c to your computer and use it in GitHub Desktop.
Save arvati/8bdd1b4258fd51430ea6176c0856038c to your computer and use it in GitHub Desktop.
Replace btrfs disk of a raid
btrfs device stats /mnt/btrfs
poweroff
dmesg
btrfs device scan
btrfs filesystem show
warning, device 5 is missing
Label: 'btrfs' uuid: 68706ead-a626-4209-b3d0-1187b835f803
Total devices 4 FS bytes used 2.80TiB
devid 2 size 2.73TiB used 1.40TiB path /dev/sdc
devid 3 size 2.73TiB used 1.40TiB path /dev/sdb
devid 4 size 2.73TiB used 1.40TiB path /dev/sda
*** Some devices missing
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 2.7T 0 disk
sdb 8:16 0 2.7T 0 disk
sdc 8:32 0 2.7T 0 disk
sdd 8:48 0 2.7T 0 disk
sde 8:64 1 956M 0 disk
├─sde1 8:65 1 384M 0 part /boot
└─sde2 8:66 1 512M 0 part /
zram0 253:0 0 1G 0 disk [SWAP]
lsscsi -v
mount -t btrfs -v -o degraded,subvolid=5,noatime,nodiratime,noacl,nossd,device=/dev/sda,device=/dev/sdb,device=/dev/sdc /dev/sda /mnt/btrfs
btrfs replace start 5 /dev/sdd /mnt/btrfs
btrfs replace start -f 5 /dev/sdd /mnt/btrfs
btrfs replace status /mnt/btrfs
umount /mnt/btrfs
mount -t btrfs -v -o subvolid=5,noatime,nodiratime,noacl,nossd,device=/dev/sda,device=/dev/sdb,device=/dev/sdc,device=/dev/sdd /dev/sda /mnt/btrfs
ls /mnt/btrfs
btrfs fi resize 5:max /mnt/btrfs
btrfs scrub start /mnt/btrfs
btrfs scrub status /mnt/btrfs
btrfs balance start /mnt/btrfs
btrfs balance status -v /mnt/btrfs
smartctl /dev/sdd -s on
smartctl /dev/sdd -a
smartctl /dev/sdd -t short
service subversion stop
service rsyncd stop
service mpd stop
service samba4 stop
service transmission stop
service minidlna stop
umount /mnt/btrfs
umount /mnt/data
umount /srv/lxc
df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 495.9M 423.4M 62.3M 87% /
devtmpfs 512.0K 0 512.0K 0% /dev
tmpfs 1.9G 5.9M 1.9G 0% /tmp
/dev/sde1 378.0M 3.6M 366.6M 1% /boot
/dev/sde1 378.0M 3.6M 366.6M 1% /boot
tmpfs 512.0K 0 512.0K 0% /dev
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 2.7T 0 disk
sdb 8:16 0 2.7T 0 disk
sdc 8:32 0 2.7T 0 disk
sdd 8:48 0 2.7T 0 disk
sde 8:64 1 956M 0 disk
├─sde1 8:65 1 384M 0 part /boot
└─sde2 8:66 1 512M 0 part /
zram0 253:0 0 1G 0 disk [SWAP]
find /sys/bus/scsi/devices/host*/target*|grep state
/sys/bus/scsi/devices/host0/target0:0:0/0:0:0:0/state
/sys/bus/scsi/devices/host1/target1:0:0/1:0:0:0/state
/sys/bus/scsi/devices/host2/target2:0:0/2:0:0:0/state
/sys/bus/scsi/devices/host3/target3:0:0/3:0:0:0/state
/sys/bus/scsi/devices/host6/target6:0:0/6:0:0:0/state
lsscsi -v
[1:0:0:0] disk ATA ST3000VN007-2E41 SC60
[2:0:0:0] disk ATA ST3000DM001-1ER1 CC25
[6:0:0:0] disk SMI USB DISK 0100
[3:0:0:0] disk ATA ST3000DM001-1ER1 CC25
[0:0:0:0] disk ATA ST3000VN007-2AH1 SC60
cat /sys/bus/scsi/devices/host3/target3:0:0/3:0:0:0/state
running
echo offline > /sys/bus/scsi/devices/host3/target3:0:0/3:0:0:0/state
echo 1 > /sys/class/scsi_device/3:0:0:0/device/delete
lsscsi -v
[1:0:0:0] disk ATA ST3000VN007-2E41 SC60
[2:0:0:0] disk ATA ST3000DM001-1ER1 CC25
[6:0:0:0] disk SMI USB DISK 0100
[0:0:0:0] disk ATA ST3000VN007-2AH1 SC60
echo "- - -" > /sys/class/scsi_host/host3/scan
echo "0 0 0" > /sys/class/scsi_host/host3/scan
echo 1 > /sys/class/scsi_device/3:0:0:0/device/rescan
echo running > /sys/bus/scsi/devices/host3/target3:0:0/3:0:0:0/state
cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST3000VN007-2AH1 Rev: SC60
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST3000VN007-2E41 Rev: SC60
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST3000DM001-1ER1 Rev: CC25
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi3 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST3000DM001-1ER1 Rev: CC25
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi6 Channel: 00 Id: 00 Lun: 00
Vendor: SMI Model: USB DISK Rev: 0100
Type: Direct-Access ANSI SCSI revision: 00
echo "- - -" > /sys/class/scsi_host/host<H>/scan
echo “<C> <T> <L>” > /sys/class/scsi_host/host<H>/scan
H == hostadapter id (first one being 0)
C == SCSI channel on hostadapter (first one being 0)
T == ID
L == LUN (first one being 0)
echo offline > /sys/block/sdd/device/state
echo 1 > /sys/block/sdd/device/delete
echo 1 > /sys/block/sdd/device/rescan
echo running > /sys/block/sdd/device/state
@arvati
Copy link
Author

arvati commented Nov 24, 2021

btrfs filesystem show
Label: 'btrfs' uuid: 68706ead-a626-4209-b3d0-1187b835f803
Total devices 4 FS bytes used 5.22TiB
devid 2 size 2.73TiB used 2.64TiB path /dev/sdc
devid 3 size 2.73TiB used 2.64TiB path /dev/sdb
devid 4 size 2.73TiB used 2.64TiB path /dev/sda
devid 5 size 2.73TiB used 2.64TiB path /dev/sdd

@arvati
Copy link
Author

arvati commented Dec 6, 2021

mount -t btrfs -v -o degraded,subvolid=5,noatime,nodiratime,noacl,nossd,device=/dev/sda,device=/dev/sdb,device=/dev/sdd /dev/sda /mnt/btrfs
screen

para disco novo

btrfs replace start 2 /dev/sdc /mnt/btrfs

para disco já usado em btrfs

btrfs replace start -f 2 /dev/sdc /mnt/btrfs

acompanhar processo

btrfs replace status /mnt/btrfs

umount /mnt/btrfs
mount -t btrfs -v -o subvolid=5,noatime,nodiratime,noacl,nossd,device=/dev/sda,device=/dev/sdb,device=/dev/sdc,device=/dev/sdd /dev/sda /mnt/btrfs
ls /mnt/btrfs

btrfs fi resize 2:max /mnt/btrfs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment