Aktualizace linuxového systému za běhu
Skočit na navigaci
Skočit na vyhledávání
- Poznámky k instalaci
- Aktualizace původního systému
- Přesun původního systému do LVM skupiny postavené nad RAID polem
- Vytvoření neúplného RAID pole
- Vytvoření LVM skupiny a logických disků pro budoucí systém
- aktualizace ramdisku
- Remount kořenového disku a jeho nakopírování do budoucí pozice
snoopy:~# cat /proc/partitions
major minor #blocks name
8 0 244198584 sda
8 1 120456 sda1
8 2 29302560 sda2
8 3 214772985 sda3
8 16 244198584 sdb
8 17 120456 sdb1
8 18 29302560 sdb2
8 19 214772985 sdb3
9 1 29302464 md1
9 2 214772864 md2
snoopy:~# cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sdb3[0] sda3[1]
214772864 blocks [2/2] [UU]
md1 : active raid1 sdb2[0] sda2[1]
29302464 blocks [2/2] [UU]
unused devices: <none>
snoopy:~# mdadm -f /dev/md1 /dev/sda2
mdadm: set /dev/sda2 faulty in /dev/md1
snoopy:~# mdadm -f /dev/md2 /dev/sda3
mdadm: set /dev/sda3 faulty in /dev/md2
snoopy:~# cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sdb3[0] sda3[2](F)
214772864 blocks [2/1] [U_]
md1 : active raid1 sdb2[0] sda2[2](F)
29302464 blocks [2/1] [U_]
unused devices: <none>
snoopy:~# mdadm --zero-superblock /dev/sda2
snoopy:~# mdadm --zero-superblock /dev/sda3
snoopy:~# mount
/dev/md1 on / type reiserfs (rw,notail)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/sdb1 on /boot type ext2 (rw)
/dev/sda1 on /boot-backup type ext2 (rw)
/dev/md2 on /home type reiserfs (rw,notail)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /proc/fs/vmblock/mountPoint type vmblock (rw)
snoopy:~# umount /dev/sda1
....
snoopy:~# pvcreate /dev/md0p2
Physical volume "/dev/md0p2" successfully created
snoopy:~# vgcreate data /dev/md0p2
Volume group "data" successfully created
snoopy:~# lvcreate -L 30G -n system data
Logical volume "system" created
Vytvoření souborového systému pro budoucí systémový disk
K logickému blokovému zařízení lze přistupovat buď přes jeho symlink, v adresáři /dev/mapper
snoopy:~# mkfs.reiserfs /dev/mapper/data-system
..nebo přímo, pokud víme jaké má číslo:
snoopy:~# mkfs.reiserfs /dev/dm-0
Před zkopírováním běžícího systému
Před zkopírováním běžícího systému zaktualizujte soubor mdadm.conf
snoopy:~# mdadm --examine --scan /dev/sda /dev/sdb1 /dev/sdb2 /dev/sdb3 >> /etc/mdadm/mdadm.conf
A zaktualizujte ramdisk, aby se nově vytvořené RAID pole po restartu správně spustilo
snoopy:~# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.37-spike.5
Kopírování běžícího systému
snoopy:~# mount /dev/mapper/data-system /mnt/new -o notail
snoopy:~# mount /dev/md1 /mnt/old -o notail
snoopy:~# cd /mnt/old
snoopy:/mnt/old# cp -a ./* /mnt/new/
- Namountujte do dočasného adresáře ... budoucí systémový disk
- Do jiného adresáře namountujte znovu aktuální systémový disk. Tímto krokem se dostanete k datům, které jsou skutečně na tomto systémovém disku uložena, bez toho že by byly překryty některým z aktuálně namountovaných virtuálních souborových systémů ( /proc, /sys, /tmp,..)
- Kopírování systémového disku
Aktualizace zkopírovaného systému
- Nabindujte systémové adresáře a nový /boot
- Přepněte se přes chroot
- Modifikujte soubor /etc/fstab
- Nainstalujte grub