Installieren Sie Ubuntu Server 20.04 auf Btrfs

Installieren Sie Ubuntu Server 20.04 auf Btrfs

Ich habe die Prozedur zusammengefasst, wenn das Root-Dateisystem von Ubuntu Server 20.04 auf Btrfs eingestellt ist.

Informationen zu Btrfs-Subvolumes

Btrfs-Subvolumes können einzeln bereitgestellt und als Unterverzeichnisse angezeigt werden. Darüber hinaus können Btrfs-Snapshots mit der CoW-Funktion (Copy-on-Write) schnell erstellt werden.

Informationen zum Layout von Btrfs-Subvolumes

Für das Layout von Btrfs-Subvolumes ist openSUSE hilfreich. Das Standarddateisystem für openSUSE ist Btrfs.

Speicherlayouteinstellungen

Wählen Sie in den Speicherlayouteinstellungen "Benutzerdefiniertes Speicherlayout".

Screenshot_ubuntu20.04_2020-10-18_01:01:40.png

Erstellen Sie eine Partition für das Startgerät.

Screenshot_ubuntu20.04_2020-10-18_01:01:55.png

Fügen Sie eine GPT-Partition hinzu.

Screenshot_ubuntu20.04_2020-10-18_01:02:12.png

Formatieren Sie mit btrfs und setzen Sie den Einhängepunkt auf /.

Screenshot_ubuntu20.04_2020-10-18_01:02:23.png

Schreiben Sie die Partitionstabelle auf die Festplatte und setzen Sie die Installation fort.

Screenshot_ubuntu20.04_2020-10-18_01:02:36.png

Fahren Sie nach Abschluss der Installation mit dem nächsten Schritt fort, ohne neu zu starten.

Screenshot_ubuntu20.04_2020-10-18_09:02:29.png

Erstellen eines Btrfs-Subvolumes

Drücken Sie nach Abschluss der Installation "ALT" + "F2", ohne neu zu starten, um zur Konsole zu wechseln. Hier ist die Route.

sudo -i

Zeigt die gemounteten Geräte an. Ubuntu ist in / target installiert.

mount -l | grep /target

Screenshot_ubuntu20.04_2020-10-18_09:07:45.png

Hängen Sie / target aus und mounten Sie die Festplatte auf / mnt.

umount -l /target
mount /dev/vda2 /mnt

Sie können die Liste der Blockgeräte mit lsblk anzeigen.

Screenshot_ubuntu20.04_2020-10-18_09:15:38.png

Erstellen Sie ein Subvolume.

cd /mnt
btrfs subvolume create @
btrfs subvolume create @/home
btrfs subvolume create @/opt
btrfs subvolume create @/root
btrfs subvolume create @/srv
btrfs subvolume create @/tmp
chmod 1777 @/tmp
mkdir @/usr
btrfs subvolume create @/usr/local
btrfs subvolume create @/var
btrfs subvolume create @/swap

Deaktivieren Sie Copy-on-Write (CoW) für / var, um die Leistung zu verbessern.

chattr +C /mnt/@/var

Verschieben Sie alle Dateien und Ordner in das Subvolume.

shopt -s dotglob
mv home/* @/home
mv root/* @/root
mv usr/local/* @/usr/local
mv var/* @/var
rmdir home opt root srv usr/local tmp var
ls | grep -v @ | xargs mv -t @

Hängen Sie / mnt aus, um alle für Ihr System erforderlichen Geräte zu mounten.

umount /mnt
mount -o subvol=@ /dev/vda2 /target
mount /dev/vda2 /target/boot/efi
mount --bind /proc /target/proc
mount --bind /dev  /target/dev
mount --bind /sys  /target/sys

Drücken Sie "ALT" + "F3", um zum dritten Fenster zu wechseln, und "chroot", um das System zu wechseln.

sudo -i
chroot /target

Bearbeiten Sie fstab, um den entsprechenden Einhängepunkt für das Subvolume festzulegen.

vi /etc/fstab
UUID=xxxx / btrfs defaults,ssd,noatime,space_cache,commit=120,compress=zstd,subvol=@ 0 1
/swap/swapfile none swap sw 0 0

Auslagendatei erstellen

Copy-on-Write (CoW) muss deaktiviert sein, um eine Auslagerungsdatei auf einem Btrfs-Subvolume zu erstellen. Wenn Sie jedoch eine Datei mit deaktiviertem Copy-on-Write (CoW) haben, können Sie keinen Schnappschuss erstellen. Erstellen Sie daher ein Subvolume für die Auslagerungsdatei und erstellen Sie dort eine Auslagerungsdatei.

touch /swap/swapfile
chmod 0600 /swap/swapfile
chattr +C /swap/swapfile
fallocate /swap/swapfile -l 2g
mkswap /swap/swapfile

Zum Schluss GRUB aktualisieren.

update-initramfs -u -k all
grub-install --recheck /dev/sda
update-grub

Drücken Sie ALT + F1, um zum ersten Fenster zu wechseln und neu zu starten.

Screenshot_ubuntu20.04_2020-10-18_09:02:29.png

Verweise

  1. Install Ubuntu 18.04 Server on btrfs - work-work.work
  2. 18.04 - Where are my BTRFS subvolumes? - Ask Ubuntu
  3. Ubuntu 20.04 with btrfs-luks-RAID1 full disk encryption including /boot and auto-apt snapshots with Timeshift | Willi Mutschler
  4. Using Btrfs for Easy Backup and Rollback | John Ramsden
  5. Creating openSUSE-style btrfs root partition & subvolumes
  6. SDB:BTRFS - openSUSE Wiki
  7. swap - Can I have a swapfile on btrfs? - Ask Ubuntu

Recommended Posts

Installieren Sie Ubuntu Server 20.04 auf Btrfs
Installieren Sie Docker unter Ubuntu Server 20.04
Installieren Sie pyqt5 auf Ubuntu
Installieren Sie den zabbix agent (5.0) unter Ubuntu 18.04
Installieren Sie Ubuntu Desktop 20.10 auf RaspberryPi4
Installieren Sie WordPress 5.5 unter Ubuntu 20.04 LTS
Hinweis: Installieren Sie PostgreSQL 9.5 unter Ubuntu 18.04
Installieren Sie AWS IoT Greengrass unter Ubuntu
Installieren Sie JDK und JRE unter Ubuntu 16.10
So installieren Sie WildFly unter Ubuntu 18.04
Installieren Sie SonarQube auf der ECS-Instanz unter Ubuntu 16.04
Installieren Sie Ruby unter Ubuntu 20.04 mit rbenv
Ich möchte PHP 7.2 unter Ubuntu 20.04 installieren.
Installieren Sie Ubuntu Server 20.04 in VirtualBox auf einem Mac und stellen Sie eine SSH-Verbindung her
Erstellen und installieren Sie Wireshark Development Release (3.3.1) unter Ubuntu
So installieren Sie Netzwerktreiber unter eigenständigem Ubuntu
Richten Sie unter Ubuntu 20.04 einen SSH-Server ein, nämlich WSL2
So installieren Sie mehrere JDKs unter Ubuntu 18.04 LTS
Installieren Sie mehrere Javas und wechseln Sie unter Ubuntu zwischen ihnen
Installieren Sie die neueste Version von Jenkins unter Ubuntu 16
Bildschirmaufnahme unter Ubuntu 20.04
Web Bluetooth unter Ubuntu20.04
Installieren Sie gradle auf dem Mac
Installieren Sie OpenJDK unter macOS
Probieren Sie DisplayLink unter Ubuntu 20.04 aus
Installieren Sie Java auf dem Mac
Installieren Sie Golang unter CentOS 8
Installieren Sie Neo4j 4.1.3 unter centOS
Installieren Sie Vertica 10.0 unter CentOS 6.10
Installieren Sie Gradle auf ubuntu16.04
Installieren Sie PostgreSQL 12 auf Centos8
Installieren Sie Python 3 unter CentOS 7
JAVA_HOME unter Ubuntu einstellen
Installieren Sie PostGIS 2.5.5 unter CentOS7
Verwenden Sie cpplapack mit Ubuntu
Führen Sie tiscamera unter Ubuntu 18.04 aus
Installieren Sie Redmine 4.1.1 unter CentOS 7
Installieren Sie OpenJDK 8 auf einem Mac
Smokeping Installation unter CentOS7
Installieren Sie PostgreSQL 13 unter CentOS 7.5