Another example why I think Linux is cool.
My discs (a raid-1 set, aka mirroring) was getting full. I added a bigger drive, marked one of the mirror discs as faulty and Linux auto-added the new drive. I did the same trick with another new drive. Next I removed the old drives.
Now I had 2 new drives in a raid-1 set with large partitions but the same old filesystem. First lets resize the raid array….
root@inzicht:~# mdadm --detail /dev/md0 /dev/md0: Version : 00.90 Creation Time : Wed Jun 27 12:10:49 2007 Raid Level : raid1 Array Size : 309524288 (295.19 GiB 316.95 GB) Used Dev Size : 309524288 (295.19 GiB 316.95 GB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Tue Sep 6 13:43:14 2011 State : clean Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 UUID : b664fe5b:f5c02869:e0e19a8a:9e985100 Events : 0.11364584 Number Major Minor RaidDevice State 0 8 19 0 active sync /dev/sdb3 1 8 3 1 active sync /dev/sda3 root@inzicht:~# mdadm --grow /dev/md0 --size=max root@inzicht:~# mdadm --detail /dev/md0 /dev/md0: Version : 00.90 Creation Time : Wed Jun 27 12:10:49 2007 Raid Level : raid1 Array Size : 973595136 (928.49 GiB 996.96 GB) Used Dev Size : 973595136 (928.49 GiB 996.96 GB) Raid Devices : 2 Total Devices : 2 Preferred Minor : 0 Persistence : Superblock is persistent Update Time : Tue Sep 6 13:43:23 2011 State : active, resyncing Active Devices : 2 Working Devices : 2 Failed Devices : 0 Spare Devices : 0 Rebuild Status : 31% complete UUID : b664fe5b:f5c02869:e0e19a8a:9e985100 Events : 0.11364586 Number Major Minor RaidDevice State 0 8 19 0 active sync /dev/sdb3 1 8 3 1 active sync /dev/sda3 root@inzicht:~# cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sdb3[0] sda3[1] 973595136 blocks [2/2] [UU] [======>..............] resync = 31.8% (309651456/973595136) finish=2175.1min speed=5086K/sec unused devices: <none> root@inzicht:~# xfs_growfs /
meta-data=/dev/md0 isize=256 agcount=16, agsize=4836317 blks = sectsz=512 attr=0 data = bsize=4096 blocks=77381072, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 log =internal bsize=4096 blocks=32768, version=1 = sectsz=512 sunit=0 blks, lazy-count=0 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 77381072 to 243398784 root@inzicht:~#
Now what other non-unix os can beat this?