Cum să mutați directorul dvs. de acasă Linux pe o altă unitate

Publicat: 2022-01-29
Terminal Linux pe laptop stilizat
Fatmawati Achmad Zaenuri/Shutterstock

Doriți să mutați folderul de acasă Linux pe o altă unitate? Iată o modalitate simplă și pas cu pas de a face acest lucru, care ar trebui să funcționeze pe orice distribuție. Mutarea folderului de acasă înseamnă că puteți reinstala Linux și nu trebuie să vă faceți griji pentru fișierele personale.

De ce să vă păstrați folderul de acasă separat?

Dacă configurați o nouă mașină sau adăugați un hard disk la unul existent, poate doriți să aveți directorul dvs. de acasă pe o altă unitate decât locația implicită.

O configurație din ce în ce mai populară pentru computerele personale moderne este de a avea o unitate SSD (Solid State Drive) de dimensiuni medii care ține sistemul de operare și o unitate hibridă cu stare solidă (SSHD) mai mare sau un hard disk tradițional (HD) ca principală stocare a datelor. Sau este posibil să aveți un singur hard disk tradițional în sistem și ați adăugat un nou HD pentru spațiu de stocare sporit. Oricare ar fi motivele dvs., iată o simplă și lovitură cu lovitură de a muta directorul dvs. de acasă.

Apropo, dacă instalați un sistem Linux de la zero, probabil că veți vedea o opțiune pentru a crea un director principal separat în programul de instalare al distribuției dvs. Linux. În general, va trebui doar să accesați opțiunile de partiționare, să creați o partiție separată și să o montați la „/home”. Dar, dacă ați instalat deja o distribuție Linux, puteți utiliza aceste instrucțiuni pentru a muta directorul dvs. de pornire curent într-o nouă locație fără a pierde nimic sau a reinstala sistemul de operare.

Acum, înainte de a începe, mergeți și faceți o copie de rezervă.

RELATE: Cum să faci o copie de rezervă a sistemului tău Linux cu rsync

Identificați unitatea

Dacă tocmai ați montat o unitate pe un computer Linux sau ați instalat Linux pe una dintre unitățile dintr-un computer nou cu mai multe unități și ați repornit, există puține dovezi că noua unitate este chiar prezentă.

Publicitate

Comanda fdisk va lista unitățile și partițiile lor pentru noi.

 sudo fdisk -l 

Derulați prin ieșire până când identificați noua unitate. Prima unitate se numește /dev/sda , a doua este /dev/sdb și așa mai departe, ultima literă crescând de fiecare dată. Deci /dev/sde ar fi al cincilea hard disk din sistem.

în acest exemplu, noua unitate este a doua unitate care va fi montată pe sistem. Deci trebuie să căutăm o intrare pentru /dev/sdb .

/dev/sdb este evidențiat mai sus. Veți observa că nu are o linie care să descrie o partiție pe el. Este o unitate nou-nouță, așa că nu va avea încă una. Trebuie să creăm partiția. Putem face acest lucru folosind fdisk . Dacă hard diskul nu este /dev/sdb , asigurați-vă că înlocuiți /dev/sdb cu identificatorul real al unității pentru noul hard disk din comandă.

 sudo fdisk /dev/sdb 

Când fdisk vă solicită o comandă, apăsați litera p . Aceasta tipărește tabelul de partiții pentru hard disk. Știm că nu va avea unul, dar obținem câteva informații utile despre unitate. Ne oferă o șansă bună să ne asigurăm că unitatea pentru care vom crea o partiție este unitatea cu care intenționăm să lucrăm.

Ne spune că unitatea este o unitate de 1 TB, care se potrivește cu ceea ce ne așteptăm de la această mașină de testare, așa că vom continua.

Creați o partiție

Apăsați litera n pentru o nouă partiție, apoi apăsați p pentru o partiție principală. Când vi se cere numărul partiției, apăsați numărul 1 .

Publicitate

Vom crea o singură partiție pentru întregul disc, așa că atunci când vi se solicită primul sector putem apăsa Enter pentru a accepta valoarea implicită. Apoi vi se va solicita ultimul sector, iar Enter va accepta valoarea implicită.

Deși fdisk confirmă că a creat o partiție Linux de 1 TB, care este partiția numărul 1, încă nu s-a schimbat nimic pe hard disk. Până când nu dați comanda fdisk pentru a scrie modificările pe unitate, unitatea este neatinsă. Odată ce sunteți sigur că sunteți mulțumit de alegerile noastre, apăsați litera w pentru a scrie modificările aduse unității.

Partiția a fost scrisă în /dev/sdb . Să verificăm ce tocmai s-a întâmplat. Vom folosi fdisk încă o dată pe /dev/sdb .

 sudo fdisk /dev/sdb 

Apăsați litera p pentru a imprima acel tabel de partiții și veți vedea că există acum o partiție listată pentru unitate. Deoarece a fost prima partiție de pe această unitate, se numește /dev/sdb1 . O a doua partiție ar fi numită /dev/sdb2 și așa mai departe.

Nu dorim să facem nicio modificare în partiție, așa că apăsați litera q pentru a ieși.

Creați un sistem de fișiere pe partiție

Trebuie să creăm un sistem de fișiere pe partiție. Acest lucru este ușor de realizat cu comanda mkfs . Rețineți că trebuie să includeți numărul partiției în comandă. Aveți grijă să introduceți /dev/sdb1 (partiția) și nu /dev/sdb (unitatea).

 sudo mkfs -t ext4 /dev/sdb1 

Publicitate

Sistemul de fișiere va fi creat pentru dvs. și veți reveni la promptul de comandă.

Montarea noului Drive

Pentru a folosi noua unitate, trebuie să montam partiția pe ea într-un punct de montare în sistemul de fișiere. De fapt, pentru a fi perfect precis, nu montăm nici unitatea, nici partiția, ci montăm sistemul de fișiere pe partiție, grefându-l în arborele sistemului de fișiere al sistemului tău.

Punctul /mnt este un loc la fel de bun ca oricare. Este doar un punct de montare temporar care ne permite să copiem datele pe noua unitate. Vom folosi comanda mount pentru a monta sistemul de fișiere pe prima partiție pe /dev/sdb , la /mnt .

 sudo mount /dev/sdb1 /mnt 

Dacă totul merge bine, veți reveni la linia de comandă fără mesaje de eroare. Să vedem dacă putem schimba directorul în sistemul nostru de fișiere nou montat.

 cd /mnt 

Da putem. hai sa vedem ce e aici.

 ls -ahl 

Suntem în noul nostru sistem de fișiere. Directorul implicit „pierdut+găsit” nu este necesar, așa că îl putem elimina.

 sudo rm -rf pierdut+găsit 

Copierea dosarului dvs. de acasă

Trebuie să copiem totul din vechiul director principal în sistemul de fișiere nou montat. Utilizarea opțiunilor r (recursivă) și p (conservare) va asigura că toate subdirectoarele sunt copiate și că sunt păstrate proprietățile fișierelor, permisiunile și alte atribute.

 sudo cp -rp /home/* /mnt 

Publicitate

După finalizarea copiei, utilizați ls pentru a arunca o privire în jur și pentru a verifica dacă datele dvs. sunt acolo unde vă așteptați să fie în noul sistem de fișiere. Cu alte cuvinte, dacă /mnt a fost directorul tău principal, totul este prezent și corect?

 ls
 sunt dave 

Probabil că veți dori să fiți puțin mai amănunțit decât am fost noi pe mașina de testare pe care a fost cercetat acest articol. Ca o plasă de siguranță, vom redenumi și vă vom păstra vechiul director /home până când sunteți mulțumit că este sigur să îl ștergeți.

 sudo mv /home /home.orig 

Și vom crea un director home nou, gol.

 sudo mkdir /home 

Vom folosi noul director principal gol ca punct de montare pentru sistemul nostru de fișiere pe noul hard disk. Trebuie să-l demontăm din /mnt și să-l remontam pe /home . Rețineți că comanda umount nu are un „n” după „u”.

Dar mai întâi, ne vom schimba în directorul rădăcină (cu cd / ) pentru a ne asigura că nu ne aflăm într-un director care va fi inclus în locațiile de montare sau demontare.

 cd /
 sudo umount /dev/sdb1
 sudo mount /dev/sdb1 /home/ 

LEGATE: Structura directorului Linux, explicată

Testarea noului director de acasă

Să vedem acum care sunt atributele partiției /dev/sdb1 :

 df /dev/sdb1 

Publicitate

Ni se arată numele sistemului de fișiere, dimensiunea partiției și spațiul folosit și disponibil pe acesta și, mai important, unde este montat. Acum este directorul nostru /home . Asta înseamnă că ar trebui să putem face referire la el exact așa cum am putea fi vechiul director /home .

Dacă ne mutăm într-un punct arbitrar al sistemului de fișiere, ar trebui să putem reveni la /home folosind comanda rapidă ~ tilde.

 cd /
 cd ~
 pwd
 ls 

 cd /acasă
 ls
 cd dave
 ls
 ls -a 

Ne putem deplasa prin sistemul de fișiere înainte și înapoi la /home folosind comenzi explicite și folosind comanda rapidă ~ . Dosarele, fișierele și fișierele puncte la care ne-am aștepta sunt toate prezente. Totul arată bine.

Dacă lipsește ceva, l-am putea copia din directorul /home.orig , la care încă mai avem acces în rădăcina sistemului de fișiere. Dar totul pare bine.

Acum trebuie să avem /dev/sdb1 montat automat de fiecare dată când computerul este pornit.

Editarea fstab

Fișierul „fstab” conține descrieri ale sistemelor de fișiere care vor fi montate la pornirea sistemului. Înainte de a-i face modificări, vom face o copie de rezervă a acesteia la care putem reveni în caz de probleme.

 sudo cp /etc/fstab /etc/fstab.orig 

Publicitate

Acum putem edita fișierul fstab. Folosește editorul tău preferat, noi folosim gedit . Orice editor de text va face.

 sudo gedit /etc/fstab 

Trebuie să adăugați o linie în partea de jos a fișierului pentru a monta noul nostru director /home . Dacă identificatorii de unitate și de partiție sunt diferiți de cei utilizați în acest exemplu, înlocuiți-i cu /dev/sdb1 afișat aici.

  • Introduceți numele partiției la începutul liniei, apoi apăsați Tab.
  • Introduceți punctul de montare, /home și apăsați Tab.
  • Introduceți descrierea sistemului de fișiere ext4 și apăsați Tab.
  • Introduceți defaults pentru opțiunile de montare și apăsați Tab.
  • Introduceți cifra 0 pentru opțiunea de descărcare a sistemului de fișiere și apăsați Tab.
  • Introduceți cifra 0 pentru opțiunea de verificare a sistemului de fișiere.

Folosind gedit pentru a edita fișierul fstab

Salvați fișierul fstab.

Reporniți sistemul

Trebuie să repornim pentru a verifica dacă totul a decurs conform planului și că aveți o conexiune perfectă la noul dvs. director /home .

Dacă nu, aveți în continuare rețeaua de siguranță a directorului dumneavoastră original /home și fișierul fstab care ar putea fi restaurat dacă este necesar. Datorită măsurilor de precauție pe care le-am luat - copierea directorului /home și a fișierelor fstab - puteți readuce cu ușurință sistemul dumneavoastră la starea în care era înainte de a începe.

 sudo reporniți acum 

LEGATE: Cum să reporniți sau să închideți Linux folosind linia de comandă

Verificări finale

Când sistemul dvs. repornește, să verificăm doar dacă directorul dvs. /home este într-adevăr pe noul dvs. hard disk și sistemul dvs. nu a revenit cumva (în mod miraculos) la utilizarea vechiului director /home .

 df /dev/sdb1 

Grozav, este montat pe /home . Misiune indeplinita.

Odată ce ești perfect sigur că nu mai ai nevoie de copia de siguranță a vechiului tău director /home , o poți șterge:

 cd /
 sudo rm -rf home.orig/ 

Publicitate

Și, desigur, dacă îți dai seama că ceva nu s-a copiat din vechiul /home în noua ta /home , îl vei putea prelua din backup-ul pe care l-ai făcut înainte de a începe.

Casă dulce casă

Acum că v-ați separat directorul /home de restul partiției sistemului de operare, vă puteți reinstala sistemul de operare, iar datele dumneavoastră vor fi neatinse. Tot ce trebuie să faceți este să editați fișierul fstab pentru a monta a doua unitate pe /home .

Și deoarece toate fișierele dvs. de puncte sunt în directorul dvs. /home , atunci când porniți diferitele aplicații, acestea vor găsi toate setările, preferințele și datele dvs.

Îndepărtează durerea reinstalărilor și elimină riscul upgrade-urilor.

LEGATE: Cele mai bune laptopuri Linux pentru dezvoltatori și entuziaști