GNU/Linux >> Linux Esercitazione >  >> AlmaLinux

Come spostare la directory principale su una nuova partizione o disco in Linux

Se sei un nuovo utente di Linux o qualcuno che ha intenzione di abbandonare Windows e passare a Linux, allora questo articolo ti sarà di grande utilità. Questo articolo passo passo ti guiderà attraverso la procedura per spostare la directory home in una nuova partizione o unità in Linux.

Introduzione

La maggior parte dei principianti durante l'installazione di sistemi operativi Linux non si preoccuperà di creare partizioni diverse.

I neofiti di solito scelgono di rimanere con la partizione predefinita in cui tutti i file system (/home , /var , /boot/ , /opt , ecc.) verranno montati in un'unica partizione.

In effetti, ho anche scelto lo schema di partizione predefinito nei miei primi giorni da principiante di Linux. Quando il mio sistema operativo va in crash, ho perso tutti i miei dati personali in /home directory. Questo perché ho creato una sola partizione per l'intero disco e ho montato tutto in quella partizione.

Lezione appresa! Il modo migliore per proteggere i dati è creare una partizione separata per la home directory. Quindi, se la tua macchina si arresta in modo anomalo per qualsiasi motivo, la partizione non sarà interessata a meno che l'intero disco non sia difettoso.

Insieme a partizioni separate, è consigliabile fare il backup dei dati su un'unità esterna. Ci sono molti strumenti di backup disponibili per la piattaforma Linux. Abbiamo pubblicato molte guide su Backup Linux argomento. Controlla i seguenti link e scegli quello più adatto alle tue esigenze.

Guide per il backup di Linux:

  • Come eseguire il backup dell'intero sistema Linux utilizzando Rsync
  • Come eseguire il backup di file e directory utilizzando Rsync in Linux
  • Come eseguire il backup e il ripristino del sistema Linux con Timeshift
  • Come eseguire il backup e il ripristino di file utilizzando BorgBackup in Linux
  • Vorta:un frontend grafico per BorgBackup
  • Come eseguire il backup e il ripristino di file utilizzando Deja Dup in Linux
  • Come configurare il server di backup utilizzando Rsnapshot
  • CYA:utilità di ripristino e snapshot di sistema per Linux
  • Restic:un'applicazione di backup veloce, sicura ed efficiente
  • Come installare Rclone in Linux e Unix

Ai fini di questa guida, utilizzerò Rocky Linux macchina virtuale in esecuzione in Virtualbox.

Disclaimer: Non farlo su un sistema di produzione. Il trasferimento della directory /home su una nuova partizione o unità può causare la perdita di dati e/o un errore di avvio del sistema. Se sei un principiante, ti consiglio vivamente di cercare l'aiuto di esperti. Né l'autore né il team OSTechNix sono responsabili per eventuali danni. Sei stato avvisato!

Ottieni informazioni sulla partizione

Possiamo elencare i dettagli della partizione del disco utilizzando vari strumenti in Linux. In questa guida useremo il comando lsblk e fdisk.

Per ottenere le informazioni sul dispositivo di blocco utilizzando lsblk comando, esegui:

$ lsblk

Nella mia macchina ho un'unità da 50 GB (sda). Ho optato per uno schema di partizionamento predefinito, quindi ci sono due partizioni (sda1, sda2) create dal programma di installazione del sistema operativo.

NOTA: Lo schema di denominazione delle unità varia a seconda del tipo di unità collegata alla macchina.

Come affermato in precedenza, possiamo anche usare fdisk comando per ottenere le informazioni sul dispositivo di blocco.

$ sudo fdisk -l

Per controllare in quale partizione è montata la directory home, usa il df comando. Nel mio caso, è montato sotto / .

$ df -h /home

Filesystem           Size  Used Avail Use% Mounted on
/dev/mapper/rl-root   46G  2.8G   43G   7% /

Crea nuova partizione

Ho inserito un'altra unità con una dimensione di 20 GB nella virtualbox. L'unità è nota come sdb .

Creiamo una nuova partizione dalla nuova unità in cui verrà montata la partizione home. Userò fdisk utility per creare una partizione.

$ sudo fdisk /dev/sdb

Digita "n " per creare una nuova partizione.

Ti verrà chiesto di scegliere il tipo di partizione, il numero di partizione, il primo settore e l'ultimo settore. Nell'ultimo settore, puoi fornire input in termini di GB, PB, TB, ecc. Sto creando una partizione da 10 GB, quindi inserisci un input come +10G.

Digita "w " e scriverà le modifiche nella tabella delle partizioni.

Ora verifica se la nuova partizione (cioè sdb1 -> 10G) è stata creata elencando le informazioni sul dispositivo a blocchi con lsblk comando:

$ lsblk /dev/sdb
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb      8:16   0  20G  0 disk 
└─sdb1   8:17   0  10G  0 part  

Formatta e monta la partizione

Formattiamo la partizione appena creata con il file system ext4 usando mkfs comando:

$ sudo mkfs.ext4 /dev/sdb1

Ora la partizione può essere montata in qualsiasi directory come desideri. Dato che monteremo temporaneamente questa directory, scelgo /mnt directory.

$ sudo mkdir /mnt/home_move/
$ sudo mount /dev/sdb1 /mnt/home_move/

Sposta la directory principale in una nuova partizione in Linux

Ora tutta la directory e i file dalla home directory dovrebbero essere copiati nella partizione appena creata montata in /mnt/home_move .

Uso il seguente rsync comando per copiare i dati nella nuova partizione. Sostituisci il nome del percorso della directory di destinazione con il tuo.

$ rsync -av /home/* /mnt/home_move/

Una volta copiati i dati nella nuova partizione, non rimuovere la home directory ancora. Spostalo in modo che in caso di incidenti puoi tornare indietro.

$ sudo mv /home /home_old
$ ls -l /home
ls: cannot access '/home': No such file or directory

Crea un nuovo /home directory per montare /dev/sdb1 .

$ sudo mkdir /home

Ricorda la partizione /dev/sdb1 è già montato in /mnt/home_move/ . Dovrebbe essere smontato prima, quindi può essere montato in /home directory.

$ sudo umount /dev/sdb1
$ sudo mount /dev/sdb1 /home

Ora la nuova partizione /dev/sdb1 è stato montato correttamente in /home directory. Puoi eseguire lsblk e df comando per verificarlo.

$ lsblk /dev/sdb
sdb           8:16   0   20G  0 disk 
└─sdb1        8:17   0   10G  0 part /home
$ df -h /home/
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1       9.8G   37M  9.3G   1% /home

Montaggio persistente con Fstab

Aggiungi una voce a fstab file in modo che le partizioni appena create vengano montate automaticamente durante l'avvio del sistema. Fai il backup di fstab file come misura di sicurezza.

$ sudo cp /etc/fstab /etc/fstab_old

Apri fstab e aggiungi le seguenti voci in fondo al file fstab. Sostituisci /dev/sdb1 con il nome della partizione dell'unità.

/dev/sdb1 /home ext4 defaults 0 0

Puoi anche utilizzare l'UUID di un dispositivo a blocchi per montare la partizione. Per trovare l'UUID per un dispositivo a blocchi, esegui i seguenti comandi.

$ lsblk -f /dev/sdb1
$ blkid | grep -i sdb1

Riavvia la macchina, accedi nuovamente e controlla dove è montata la directory /home eseguendo df comando.

$ df -h /home/
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1       9.8G   37M  9.3G   1% /home

Directory principale della partizione durante l'installazione del sistema operativo

Puoi saltare tutti i passaggi discussi nelle sezioni precedenti se hai creato una partizione separata per la directory home durante l'installazione del sistema operativo. Ogni programma di installazione avrà un passaggio per configurare il disco.

Ti verrà richiesto uno schema di partizione automatico o uno schema di partizione personalizzato. Dovresti scegliere uno schema di partizione personalizzato e creare partizioni separate.

Di seguito è riportata un'immagine di esempio dalla mia partizione personalizzata RHEL 8.4 in cui viene creata una partizione home separata con 15 GB.

Conclusione

In questo articolo, abbiamo discusso di come spostare la directory home da una partizione a un'altra in Linux. La procedura è la stessa se si desidera spostare la directory HOME su una nuova unità.

Basta creare una nuova partizione, formattarla con il filesystem di tua scelta e montarla. Dopo aver montato la partizione, sposta i dati nella nuova partizione. Sposta i dati dalla vecchia partizione a quella nuova. Infine, aggiungi la voce fstab per renderlo persistente.

Se hai suggerimenti o feedback, pubblicali nella sezione commenti e saremo lieti di risponderti.

Lettura correlata:

  • Crea directory home per utenti esistenti in Linux

Immagine in primo piano di Pixabay.


AlmaLinux
  1. Come partizionare un disco in Linux

  2. Come aggiungere un nuovo disco più grande di 2 TB a un Linux esistente

  3. Come aggiungere un nuovo disco a un server Linux esistente

  4. Come spostare lo scambio dalla partizione del disco al volume LVM in Linux

  5. Come montare un'immagine disco multi-partizione in Linux?

Come aggiungere un nuovo disco in Linux CentOS 7 senza riavviare

Come spostare una directory in Linux

Come convertire una directory in una partizione in Linux

Come crittografare la partizione su Linux

Come creare partizioni del disco su Linux

Come visualizzare le partizioni del disco Linux (tabella delle partizioni)