Sposta /var
senza passare alla modalità utente singolo
Quando ho preso nel corso di un nuovo server virtuale che erano stati accantonati per me dalla società di hosting del mio datore di lavoro, ho creato i volumi logici in più per var
e home
che erano state le directory regolari nella partizione di root. Poiché il provider di server virtuali non ha fornito un'interfaccia simile a KVM tramite la quale ho potuto accedere al server in modalità utente singolo, le risposte di cui sopra non erano applicabili alla mia configurazione. Spero che questa risposta sia utile per gli altri in una situazione simile (ho conservato i dettagli di LVM ma questi possono essere saltati in quanto non è particolarmente rilevante se il nuovo filesystem viene creato su un volume logico o su una partizione del disco).
Crea e usa un nuovo /var
filesystem con LVM
Creare il file system per il nuovo var
volume montarlo (usando una directory temporanea) e copiare i file dalla corrente /var
al nuovo filesystem. Quando si copiano i file rsync
, usare la sua -a, --archive
opzione per conservare i timestamp, la proprietà, le modalità, ecc. E la sua -X, --xattrs
opzione per preservare gli attributi estesi come le etichette di sicurezza usate da AppArmor e SELinux.
sudo lvcreate -L 60GB -n var VolGroup00
sudo mkfs.ext4 /dev/VolGroup00/var
sudo mkdir /var.new
sudo mount /dev/VolGroup00/var /var.new
sudo rsync -raX /var/ /var.new/
Aggiorna la tabella del filesystem
Configurare il nuovo filesystem da utilizzare come nuovo mount-point /var
aggiungendo la seguente riga a /etc/fstab
. Si noti che 0
viene utilizzato come numero di passaggio (ultimo campo) in modo che il file system non venga controllato automaticamente ( fsck
) dopo un certo numero di riavvii (non ho accesso per accedere al server in modalità utente singolo).
/dev/mapper/VolGroup00-var /var ext4 defaults 0 0
Poiché non riesco a passare alla modalità utente singolo, riavvia il computer per utilizzare questo nuovo volume come /var
.
Ripristina lo spazio su disco dal filesystem di root
Dopo il riavvio della macchina, eseguire le seguenti operazioni per ripulire la directory temporanea e rimuovere i vecchi /var
file dal filesystem di root:
Rimuovere il punto di montaggio temporaneo:
sudo rmdir /var.new
Crea un nuovo mount point per creare un percorso alternativo ai file nella vecchia /var
directory sul filesystem di root (attualmente è "mascherato" dal nuovo /var
filesystem montato sulla directory):
sudo mkdir /old-root
sudo mount /dev/mapper/VolGroup00-root /old-root/
sudo rm -rf /old-root/var/*
sudo umount /old-root/
sudo rmdir /old-root/