Migrazione ad ext4 in Debian Squeeze: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
*NON Cambiare /boot !!!!!!!
* Cambiare fstab per montare tutto in ext4
* Cambiare fstab per montare tutto in ext4
  sudo sed -i 's/ext3/ext4/' /etc/fstab
  sudo sed -i 's/ext3/ext4/' /etc/fstab
* Controllare
sudoedit /etc/fstab


* Updatare l'initrd
* Updatare l'initrd
Line 14: Line 15:


* Abilitare il login root con key da ssh
* Abilitare il login root con key da ssh
sudoedit /etc/ssh/sshd_config
PermitRootLogin without-password
sudo invoke-rc.d ssh restart


* Copiare la key per root
* Copiare la key per root
cat ~/.ssh/authorized_keys | sudo tee -a /root/.ssh/authorized_keys > /dev/null
* Collegarsi come root, ed uscire eventualmente da screen
ssh root@hostname


* Abilitare ssh al runlevel
* Abilitare ssh al runlevel
  sed -i -e "/^~~/ish:S:respawn:/usr/sbin/sshd -Do 'AllowUsers=root'" /etc/inittab
  sed -i -e "/^~~/ish:S:respawn:/usr/sbin/sshd -Do 'AllowUsers=root'" /etc/inittab
 
* Andare in single user mode:
  telinit q
  telinit q
  init 1
  init 1


* Attendere la disconnessione e poi riconnettersi
* Attendere la chiusra di tutti i serviei e la disconnessione e poi riconnettersi:


  ssh root@hostname
  ssh root@hostname
Line 34: Line 46:
* Verificare che il filesystem sia davvero readonly
* Verificare che il filesystem sia davvero readonly
  mkdir /tmp/test
  mkdir /tmp/test
  mkdir: cannot create directory `test': Read-only file system
  mkdir: cannot create directory `test': Read-only file system


* Fare check:
* Fare check:


  fsck.ext3 -pf /dev/md0
  fsck.ext3 -pf -C0 /dev/md0


* Abilitare estensioni ext4
* Abilitare estensioni ext4
Line 46: Line 59:


* Fare check:
* Fare check:
  fsck.ext4 -yfD /dev/md0
  fsck.ext4 -yfD -C0 /dev/md0


* Reboot
* Reboot
Line 58: Line 71:


* Cancellare la key root
* Cancellare la key root
sudoedit /root/.ssh/authorized_keys
==Ottimizzazione==
*Se possibile, applicare questi parametri, che ottimizzano il filesystem che proviene da vecchie installazioni:
sudo tune2fs -I 256 \
              -O sparse_super,filetype,resize_inode,dir_index,ext_attr,has_journal,\
              extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize \
              /dev/MYDEV


==Abilitazione extents==
==Abilitazione extents==
Line 94: Line 116:
*[http://debiansystem.info/readers/errata/299-sshd-single Faulty way of spawning sshd in single-user mode (page 299) — debiansystem.info]
*[http://debiansystem.info/readers/errata/299-sshd-single Faulty way of spawning sshd in single-user mode (page 299) — debiansystem.info]
*[http://ocaoimh.ie/how-to-umount-when-the-device-is-busy/ How to umount when the device is busy]
*[http://ocaoimh.ie/how-to-umount-when-the-device-is-busy/ How to umount when the device is busy]
*[http://www.kev009.com/wp/2008/12/how-to-upgrade-to-ext4-in-place/ How to upgrade to ext4 in place | Kev009.com]

Latest revision as of 11:49, 9 January 2012

  • Cambiare fstab per montare tutto in ext4
sudo sed -i 's/ext3/ext4/' /etc/fstab
  • Controllare
sudoedit /etc/fstab
  • Updatare l'initrd
sudo update-initramfs -u -k all
  • Reboot
sudo reboot
  • Verificare che la root sia montata in ext4. Il Filesystem è ancora compatibile ext3, in caso di problemi.
mount | grep ext4
  • Abilitare il login root con key da ssh
sudoedit /etc/ssh/sshd_config
PermitRootLogin without-password
sudo invoke-rc.d ssh restart
  • Copiare la key per root
cat ~/.ssh/authorized_keys | sudo tee -a /root/.ssh/authorized_keys > /dev/null
  • Collegarsi come root, ed uscire eventualmente da screen
ssh root@hostname
  • Abilitare ssh al runlevel
sed -i -e "/^~~/ish:S:respawn:/usr/sbin/sshd -Do 'AllowUsers=root'" /etc/inittab
  • Andare in single user mode:
telinit q
init 1
  • Attendere la chiusra di tutti i serviei e la disconnessione e poi riconnettersi:
ssh root@hostname
  • Uscire da screen, chiudere tutti i processi inutili
  • Montare la root readonly:
mount -o remount,ro /
  • Verificare che il filesystem sia davvero readonly
mkdir /tmp/test
mkdir: cannot create directory `test': Read-only file system
  • Fare check:
fsck.ext3 -pf -C0 /dev/md0
  • Abilitare estensioni ext4
tune2fs -O extents,uninit_bg,dir_index /dev/md0
  • Il filesystem ora NON è più montabile come ext3
  • Fare check:
fsck.ext4 -yfD -C0 /dev/md0
  • Reboot
reboot
  • Rimuovere la riga
sudoedit /etc/inittab
sh:S:respawn:/usr/sbin/sshd -Do 'AllowUsers=root'
  • Cancellare la key root
sudoedit /root/.ssh/authorized_keys


Ottimizzazione

  • Se possibile, applicare questi parametri, che ottimizzano il filesystem che proviene da vecchie installazioni:
sudo tune2fs -I 256 \
             -O sparse_super,filetype,resize_inode,dir_index,ext_attr,has_journal,\
             extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize \
             /dev/MYDEV

Abilitazione extents

Per ogni directory:

export DIRS="
bin
boot
cdrom
etc
files
home
lib
media
mnt
opt
root
sbin
selinux
tmp
usr
var"

cd /; for DIR in $DIRS; do echo CHANGING $DIR; sudo find $DIR -xdev -type f -print0 | xargs -0 sudo chattr +e; sudo find $DIR -xdev -type d -print0 | xargs -0 sudo chattr +e; done
  • sudo reboot

Just a quick note of caution for other antedeluvians. I migrated to ext4 and migrated most of my filesystems back again when I found that dump/restore didn't (yet) support ext4.

Riferimenti