Einbindung einer Partition: Unterschied zwischen den Versionen
Zeile 172: | Zeile 172: | ||
Nun haben wir zwei Homeverzeichnisse; das standardmäßig, bei der Installation erstellte '/home', und das mit unserem Befehl 'mkdir' erstellte '/home.old'. Noch liegen die Daten unserer alten Installation auf der NVMe, die bislang als '/home.old' eingebunden ist. Das ändern wir nun, indem wir mit dem Joe-Editor (immer noch als Administrator) die Fstab-Datei erneut öffnen, wie oben unter dem Punkt 'Öffnen und Bearbeiten der Fstab-Datei (liegt im Verzeichnis /etc) mit dem Joe-Editor' schon erklärt, und nun '''beide''' Homeverzeichnisse umbenennen: | Nun haben wir zwei Homeverzeichnisse; das standardmäßig, bei der Installation erstellte '/home', und das mit unserem Befehl 'mkdir' erstellte '/home.old'. Noch liegen die Daten unserer alten Installation auf der NVMe, die bislang als '/home.old' eingebunden ist. Das ändern wir nun, indem wir mit dem Joe-Editor (immer noch als Administrator) die Fstab-Datei erneut öffnen, wie oben unter dem Punkt 'Öffnen und Bearbeiten der Fstab-Datei (liegt im Verzeichnis /etc) mit dem Joe-Editor' schon erklärt, und nun '''beide''' Homeverzeichnisse umbenennen: | ||
[#] holger@linux: # '''joe /etc/fstab''' | [#] holger@linux: # '''joe /etc/fstab''' | ||
− | Hier wieder die Ausgabe des Joe-Editors: | + | Hier wieder die Ausgabe des Joe-Editors mit der noch zu ändernden fstab: |
I /etc/fstab Row 13 Col 1 | I /etc/fstab Row 13 Col 1 | ||
UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults 0 0 | UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults 0 0 |
Version vom 7. September 2021, 12:53 Uhr
Einbindung (nach Standardinstallation) eines auf separater Platte abgelegten Homeverzeichnisses und Ignorierung der standardmäßigen /home
Danksagung
Nach einer verunglückten Aktion (ich wollte die unter dem Verzeichnis /etc abgelegte Datei 'fstab' ändern, habe aber alle Befehle mit einem vorangestellten 'sudo' ausgeführt, mich also für diese Zeit nicht mit 'sudo su' zum (dauerhaften) Administrator gemacht und damit einiges zerschossen. Ulf hat mir bei der Einbindung meiner M.2-NVMe, die mir schon auf meinem 'alten' Rechner als /home diente, geholfen und auch über diesen Beitrag drübergelesen.
Problem
Nach einem Umzug aller meiner Festplatten von meinem schon etwas betagten PC auf einen leicht neueren, aber dennoch deutlich besseren des Herstellers Lenovo, Typ ThinkStation P500, war durch die standardmäßig ausgeführte Installation auf die Samsung-SSD Evo 860 ein Home-Verzeichnis entstanden, das ich nicht nutzen möchte. Vielmehr möchte ich die Daten des /home auf meiner 1000 GB großen Samsung M.2-SSD NVMe 907 Evo nutzen; die sind da ja schon gespeichert.
Vorab zu erledigen
- erstelle eine Sicherung der Datei 'fstab' (Pfad: /etc/) auf eine externe Platte (nur für alle Fälle)
- sichere Dein /home ebenso auf eine externe Festplatte
- sichere ebenso Dein Root-Verzeichnis (/) auf eine externe Platte
Konsolenbefehl um eingehängte Platten und Ihre Bezeichnung (/dev/sdXY), samt deren Dateisystem zu erkennen
[#] holger@linux:~> fdisk -l
Auszug aus der Befehlsausgabe bezüglich der Tumbleweed-Installation - das ist die erste der beiden SSDs (/dev/sda:
Festplatte /dev/sda: 465,76 GiB, 500107862016 Bytes, 976773168 Sektoren Festplattenmodell: Samsung SSD 860 Einheiten: Sektoren von 1 * 512 = 512 Bytes Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes Festplattenbezeichnungstyp: gpt Festplattenbezeichner: 42892C69-2FAC-4A7A-932C-D0EFDAB74739
Wie man sieht, liegen das Root- und Homeverzeichnis standardmäßig noch auf der zweiten Partition, der /dev/sda2
Gerät Anfang Ende Sektoren Größe Typ /dev/sda1 2048 1050623 1048576 512M EFI-System /dev/sda2 1050624 972578815 971528192 463,3G Linux-Dateisystem [Root- mit Homeverzeichnis] /dev/sda3 972578816 976773134 4194319 2G Linux Swap
und hier noch die (einzige) M.2-NVMe-SSD, - daher /dev/nvme0n1 - , deren Daten als standardmäßiges /home eingebunden werden sollen:
Festplatte /dev/nvme0n1: 931,51 GiB, 1000204886016 Bytes, 1953525168 Sektoren Festplattenmodell: Samsung SSD 970 EVO 1TB Einheiten: Sektoren von 1 * 512 = 512 Bytes Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes Festplattenbezeichnungstyp: gpt Festplattenbezeichner: 7BB9DC1D-D2CA-450C-980A-1A681E6C9225 Gerät Anfang Ende Sektoren Größe Typ /dev/nvme0n1p1 2048 1953525134 1953523087 931,5G Linux-Dateisystem
Diese NVMe hat nur eine Partition (da eine reine Datenplatte) angelegt; ersichtlich an der Bezeichnung /dev/nvme0n1p1
Befehl, um die derzeitige Fstab-Datei im Verzeichnis /etc anzuzeigen (die M.2-NVMe ist noch gar nicht eingetragen)
[$] joe /etc/fstab
Hier die Ausgabe:
UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home btrfs subvol=/@/home 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots 0 0 UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults 0 0 UUID=4D34-0A88 /boot/efi vfat utf8 0 2
Eintrag der M.2-NVMe in die Fstab-Datei
Um die UUID einer Festplatte in die Fstab-Datei eintragen zu können, müssen wir sie zunächst einmal kennen ...
Konsolenbefehl zur Abfrage der UUID der NVMe und ihrer (einzigen) Partition
[#] holger@linux:~> blkid /dev/nvme0n1p1 /dev/nvme0n1p1: UUID="fd5c4324-c81e-4a50-8cc4-3bff056a79dd" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="73caaf90-e07a-487e-a65b-7d335bd52a39"
Wichtig ist hier, daß wir ganz gezielt auch die Partition dieser NVMe (oder einer anderen Platte) abfragen. Hätten wir nur die Platte ohne Partition angegeben (/dev/nvme0n1 - ohne den Zusatz 'p1' = Partition 1), wäre uns nicht die UUID, sondern die PARTUUID ausgegeben worden; und die wäre falsch.
Übrigens könnte ich mir auch die UUIDs aller eingehängten Platten ausgeben lassen; in diesem Fall lasse ich die Pfadangabe (/dev/hdXY, bzw. /dev/sdXY, oder /dev/nvme0nXpY) einfach weg und würde (in meinem Fall - mit zwei SSDs, einer NVMe und zwei HDDs) diese Ausgabe erhalten):
[#] holger@linux:~> blkid /dev/sda1: UUID="4D34-0A88" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="84539456-ddc2-45e3-b86a-c0bcbbe6fb4a" /dev/sda2: UUID="339387e9-84da-4bbf-a079-c80d1c9c2676" UUID_SUB="66e5a10d-435c-4851-be42-c67a32668b5d" BLOCK_SIZE="4096" TYPE="btrfs" PARTUUID="fda76e04-d395-46ba-99b4-95e520986b7c" /dev/sda3: UUID="3ff503e4-c0b5-4aa5-b05f-1baae11a05cc" TYPE="swap" PARTUUID="bc44119e-3706-419b-9f22-3271aba1544b" /dev/sdb1: LABEL="Wiederherstellung" BLOCK_SIZE="512" UUID="EEB65AE4B65AACB9" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="3ff1b7ac-2c0b-47eb-ad75-2c598e76bedf" /dev/sdb2: UUID="7461-6130" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="0f372f67-eafd-4304-8646-c4e1ea8dd8cf" /dev/sdb3: PARTLABEL="Microsoft reserved partition" PARTUUID="61cba859-1739-4128-88c1-be5374cc1d2a" /dev/sdb4: BLOCK_SIZE="512" UUID="38EA6AC4EA6A7DCE" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="2074fe84-b054-43eb-a5ff-e17537688194" /dev/sdc1: UUID="93279354-b851-48a3-bddf-1b73fc632b5f" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="6844e9e5-b135-4765-a6e5-3d90e8da396a" /dev/sdd1: UUID="93279354-b851-48a3-bddf-1b73fc632b5f" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="fffeb90e-0725-11eb-818e-ed0fef3c7d45" /dev/nvme0n1p1: UUID="fd5c4324-c81e-4a50-8cc4-3bff056a79dd" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="73caaf90-e07a-487e-a65b-7d335bd52a39"
Nun kennen wir also die UUID unserer NVMe-Partition und nutzen den Joe-Editor, um diese zu bearbeiten.
Öffnen und Bearbeiten der Fstab-Datei (liegt im Verzeichnis /etc) mit dem Joe-Editor
Zunächst machen wir uns für die Dauer der Bearbeitung zum Superuser / Administrator mit dem Befehl:
[$] holger@linux:~> sudo su [sudo] Passwort für root:
und öffnen dann mit dem Joe-Editor die Datei 'fstab'
[#] linux:/home/holger # joe /etc/fstab
Hier die geöffnete Datei:
I /etc/fstab Row 12 Col 1 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home btrfs subvol=/@/home UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults UUID=4D34-0A88 /boot/efi vfat utf8
Nun navigieren wir mit den Pfeilrichtungstasten ganz links, unterhalb des letzten Eintrages und fügen die UUID der NVMe ein (zuvor durch Markieren mit der Maus in den Zwischenspeicher und dann mittels mittlerem Mausklick an der gewünschten Stelle hineinkopieren). Nun sieht unsere Fstab-Datei folgendermaßen aus:
I /etc/fstab Row 12 Col 1 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home btrfs subvol=/@/home UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults UUID=4D34-0A88 /boot/efi vfat utf8 UUID=fd5c4324-c81e-4a50-8cc4-3bff056a79dd
Aber halt, da fehlt ja noch was! Wir nehmen eine beliebige Bezeichnung für das /home, welches unter der NVMe genutzt werden soll, z.B. '/home.old', entscheiden uns für ein Dateisystem (in unserem Fall 'ext4' und stellen noch ein 'defaults' hintenan. Diese Daten werden ebenfalls in die nun unterste Zeile eingetragen. Das ist das Resultat:
I /etc/fstab Row 12 Col 1 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home btrfs subvol=/@/home UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults UUID=4D34-0A88 /boot/efi vfat utf8 UUID=fd5c4324-c81e-4a50-8cc4-3bff056a79dd /home.old ext4 defaults
Speichern im Joe-Editor der Änderungen an der Fstab-Datei
Diese Änderungen müssen natürlich auch gespeichert werden. Das geschieht im Joe-Editor mit zwei Tastaturkürzeln, gefolgt von einer Bestätigung oder Verneinung; diese sind:
- Strg+K (Vorbereitung zum Verlassen des Editors)
- q (Quit, also 'Abschluß' / 'quittieren')
Nun erscheint ganz unten im Editor der Text
File /etc/fstab has been modified. Save it (y,n,^C)? und wir bestätigen entweder mit
- y für Ja, wenn wir die Änderung übernehmen wollen, oder
- n für Nein, wenn wir keine Änderungen übernehmen wollen.
Danach ist die Bearbeitung der Datei durch den Editor beendet und wir haben den Editor wieder verlassen, erkenntlich an folgendem Promt:
[#] linux:/home/holger #
Erstelle das Verzeichnis /home.old
Da wir ja nun in der Fstab die NVMe als /home.old eingetragen haben, müssen wir dieses Verzeichnis natürlich auch noch anlegen. Das geschieht mit dem Befehl (wir sind ja noch Administrator, benötigen also kein vorangestelltes 'sudo'):
[#] holger@linux: # mkdir home.old
'mkdir' steht für 'make directories', zu Deutsch: 'Erstelle Verzeichnisse / Ordner' ...
Die beiden Home-Verzeichnisse müssen neu eingebunden werden
Nun haben wir zwei Homeverzeichnisse; das standardmäßig, bei der Installation erstellte '/home', und das mit unserem Befehl 'mkdir' erstellte '/home.old'. Noch liegen die Daten unserer alten Installation auf der NVMe, die bislang als '/home.old' eingebunden ist. Das ändern wir nun, indem wir mit dem Joe-Editor (immer noch als Administrator) die Fstab-Datei erneut öffnen, wie oben unter dem Punkt 'Öffnen und Bearbeiten der Fstab-Datei (liegt im Verzeichnis /etc) mit dem Joe-Editor' schon erklärt, und nun beide Homeverzeichnisse umbenennen:
[#] holger@linux: # joe /etc/fstab
Hier wieder die Ausgabe des Joe-Editors mit der noch zu ändernden fstab:
I /etc/fstab Row 13 Col 1 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home btrfs subvol=/@/home 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots 0 0 UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults 0 0 UUID=4D34-0A88 /boot/efi vfat utf8 0 2 UUID=fd5c4324-c81e-4a50-8cc4-3bff056a79dd /home.old ext4 defaults 0 0
Und nun navigieren wir auf beide Homeverzeichnisse und änderen deren Namen (in diesem Fall ein Austausch der Bezeichnungen). Das sieht dann so aus:
I /etc/fstab Row 13 Col 1 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 / btrfs defaults 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /var btrfs subvol=/@/var 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /usr/local btrfs subvol=/@/usr/local 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /srv btrfs subvol=/@/srv 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /root btrfs subvol=/@/root 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /opt btrfs subvol=/@/opt 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /home.old btrfs subvol=/@/home 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/x86_64-efi btrfs subvol=/@/boot/grub2/x86_64-efi 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /boot/grub2/i386-pc btrfs subvol=/@/boot/grub2/i386-pc 0 0 UUID=339387e9-84da-4bbf-a079-c80d1c9c2676 /.snapshots btrfs subvol=/@/.snapshots 0 0 UUID=3ff503e4-c0b5-4aa5-b05f-1baae11a05cc swap swap defaults 0 0 UUID=4D34-0A88 /boot/efi vfat utf8 0 2 UUID=fd5c4324-c81e-4a50-8cc4-3bff056a79dd /home ext4 defaults 0 0
Wir speichern die Änderungen in der Fstab-Datei wie weiter oben unter dem Punkt 'Speichern im Joe-Editor der Änderungen an der Fstab-Datei' beschrieben Nun hat die NVMe-Platte die Zuweisung für das '/home' und wird künftig automatisch als das /home für den (oder die) angelegten Benutzer angesprochen. Somit habe ich auch wieder Zugriff auf die Daten meines alten Homeverzeichnisses von der Installation meines alten PC.