GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment configurer Ubuntu 14.04 sur le système de fichiers racine ZFS natif

Bonjour à tous, aujourd'hui, nous allons configurer Ubuntu sur un fichier racine ZFS natif qui est un système de fichiers avancé et un gestionnaire de volumes logiques conçu pour surmonter bon nombre des problèmes majeurs rencontrés dans les conceptions précédentes conçues par Sun Microsystems. Les principales caractéristiques de ZFS incluent ses performances avec l'intégrité des données qui inclut la somme de contrôle des données pour fournir une protection contre la corruption. ZFS tente automatiquement de corriger les erreurs lorsque la redondance des données est disponible. ZFS prend en charge des capacités de stockage élevées et une compression efficace des données avec des périphériques de stockage de pool physique qui sont ajoutés à un pool, et l'espace de stockage est alloué à partir de ce pool partagé.

Prérequis système de base

Dans cette configuration, nous utiliserons ZFS sur un environnement Ubuntu 14.04 64 bits installé comme base avec les spécifications et versions suivantes.

  • Système d'exploitation :Ubuntu 14.04.1 LTS x86_64
  • installation grub (GRUB) 2.02~beta2-9ubuntu1.3
  • spl-dkms 0.6.4-2~utopique
  • zfs-dkms 0.6.4-3~utopique
  • zfs-initramfs 0.6.4-3~utopique
  • Taille de disque/partition libre 10 Go
  • Mémoire utilisée recommandée :4 Go
  • Nombre de cœurs utilisés 2 GHz

Configuration de l'installation de ZFS

Nous allons commencer la configuration de l'installation de ZFS sur un système d'exploitation Ubuntu 14.04 déjà installé avec 10 Go d'espace libre dessus. Nous devons nous connecter avec l'utilisateur root pour effectuer toutes ces étapes.

Ajout d'un référentiel ZFS

Avant de pouvoir commencer à utiliser ZFS, nous devons l'installer. Ajoutez simplement le référentiel à apt-get avec la commande suivante :

root@ubuntu-14:~# apt-add-repository --yes ppa:zfs-native/stable

Mise à jour du système avec installation ZFS

Ici, nous devons mettre à jour le système d'exploitation avec un nouveau référentiel, puis nous commencerons son installation avec apt-get.

root@ubuntu-14:~#apt-get update
root@ubuntu-14:~#apt-get install debootstrap ubuntu-zfs

L'installation des packages prendra un certain temps lors de la compilation des modules du noyau.

zfs-initramfs est nécessaire pour placer les utilitaires ZFS de gestion des systèmes de fichiers ZFS dans les images de démarrage initramfs.

root@ubuntu-14:~#apt-get install zfs-initramfs

Vérification des modules ZFS

En utilisant les commandes suivantes, nous allons d'abord charger les modules zfs, puis vérifier s'ils existent ou non.

Partitionnement de disque pour ZFS

Notre table de partitions sera la suivante pour une disposition de pool vdev unique, où sda2 sera utilisé pour la racine zfs.

Création d'un pool racine

Nous allons maintenant créer le pool racine en utilisant /dev/sda*. Comme alternative, vous pouvez également le créer en utilisant les liens /dev/disk/by-id pour créer le pool.

root@ubuntu-14:~# mke2fs -m 0 -L /boot/grub -j /dev/sda2
root@ubuntu-14:~# zpool create -o ashift=9 rpool /dev/sda2

Nous avons créé le rpool que nous pouvons vérifier via la commande zpool list.

Création de l'ensemble de données racine et de l'installation du système de base

Ici, nous créons le jeu de données racine, puis l'exportons et l'importons à nouveau en utilisant -d /dev/sda2

root@ubuntu-14:~# zfs create rpool/ROOT
root@ubuntu-14:~# zfs create rpool/ROOT/ubuntu-1
root@ubuntu-14:~# zfs umount -a
root@ubuntu-14:~# zfs set mountpoint=/ rpool/ROOT/ubuntu-1
root@ubuntu-14:~# zpool export rpool
root@ubuntu-14:~# zpool import -d /dev/sda2 -R /mnt rpool

Montez maintenant le système de fichiers de démarrage pour GRUB que nous avions créé à l'étape précédente.

root@ubuntu-14:~# mkdir -p /mnt/boot/grub
root@ubuntu-14:~# mount /dev/sda2 /mnt/boot/grub
root@ubuntu-14:~# debootstrap trusty /mnt

La commande debootstrap laisse le nouveau système dans un état non configuré que nous ferons avec ses configurations minimales dans la prochaine.

Après l'achèvement réussi du debootstrap, nous recevons le message d'installation réussie du système de base, maintenant après avoir exécuté les commandes suivantes, nous mettrons à jour le système après avoir généré les paramètres régionaux comme suit.

root@ubuntu-14:~# cp /etc/hostname /mnt/etc/
root@ubuntu-14:~# cp /etc/hosts /mnt/etc/
root@ubuntu-14:~# mount --bind /dev /mnt/dev
root@ubuntu-14:~# mount --bind /proc /mnt/proc
root@ubuntu-14:~# mount --bind /sys /mnt/sys
root@ubuntu-14:~# chroot /mnt /bin/bash --login
root@ubuntu-14:/# locale-gen en_US.UTF-8

Nous avons donc créé des systèmes de fichiers virtuels dans l'environnement visible par le nouveau système et installé le support PPA dans l'environnement chroot avec la commande chroot.

Installation d'Ubuntu et des packages natifs

Le package ubuntu-minimal est requis pour utiliser ZFS sur Linux tel qu'il est fourni dans le PPA. Installons ZFS dans l'environnement chroot pour le nouveau système en exécutant les commandes suivantes.

root@ubuntu-14:/# apt-get install ubuntu-minimal software-properties-common
root@ubuntu-14:/# apt-add-repository --yes ppa:zfs-native/stable
root@ubuntu-14:/# apt-add-repository --yes ppa:zfs-native/grub < - See below note on this command
root@ubuntu-14:/# apt-get update
root@ubuntu-14:/# apt-get install --no-install-recommends linux-image-generic linux-headers-generic
root@ubuntu-14:/# apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Génération d'une nouvelle configuration grub

root@ubuntu-14:/# grub-probe /
zfs
root@ubuntu-14:~# ls /boot/grub/i386-pc/zfs*
/boot/grub/i386-pc/zfs.mod /boot/grub/i386-pc/zfscrypt.mod /boot/grub/i386-pc/zfsinfo.mod
root@ubuntu-14:~#
root@ubuntu-14:~# update-initramfs -c -k all
update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic

Vérification de l'entrée racine correcte

root@ubuntu-14:~# grep "boot=zfs" /boot/grub/grub.cfg
linux /ROOT/ubuntu-1@/boot/vmlinuz-3.13.0-24-generic root=ZFS=rpool/ROOT/ubuntu-1 ro boot=zfs
linux /ROOT/ubuntu-1@/boot/vmlinuz-3.13.0-24-generic root=ZFS=rpool/ROOT/ubuntu-1 ro boot=zfs
root@ubuntu-14:~# grep zfs /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="boot=zfs"

Mettre à jour Grub

Mettez à jour grub pour autoriser le menu de démarrage zfs généré automatiquement avec la commande update-grub.

root@ubuntu-14:~# update-grub
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-3.13.0-24-generic
Found initrd image: /boot/initrd.img-3.13.0-24-generic
done

Installez le chargeur de démarrage sur le MBR avec la commande ci-dessous et assurez-vous que vous obtenez le message d'installation terminée. Le lien de lecture est requis car les versions récentes de GRUB ne suppriment pas les liens symboliques.

root@ubuntu-14:~# grub-install $(readlink -f /dev/sda)
Installing for i386-pc platform.
Installation finished. No error reported.

Maintenant, quittez l'environnement chroot pour revenir à l'environnement de base et démontez de tous les systèmes de fichiers s'ils sont connectés.

Confirmation ZFS

Nous avions terminé avec toute sa configuration maintenant, vérifiez avec la commande df pour la confirmation de rpool.

Quelques problèmes connus

Au cours de cette configuration, vous pourriez rencontrer des problèmes avec le démarrage ZFS que vous pouvez éviter en utilisant les procédures suivantes.

Créer un instantané

Vous devez créer un instantané ZFS pouvant être utilisé comme environnement de secours après son premier démarrage. Vous pouvez utiliser la commande suivante pour prendre un instantané ZFS en tant que.

root@ubuntu-14:~# apt-get clean
root@ubuntu-14:~# zfs snapshot rpool/ROOT/ubuntu1

Problème Grub

Parfois, Grub n'affiche pas le menu de démarrage ou affiche l'erreur "système de fichiers inconnu". Cela peut être dû au fait que grub ne peut pas lire le pool zfs ou que sa cause possible est que vous avez précédemment déconnecté certains vdev. Pour récupérer de cela, nous devons faire deux choses.

  • Supprimer/déconnecter les disques hors ligne
  • En utilisant la méthode Live CD, vous pouvez démarrer à partir de votre installation ext4
  • Ou faites en ligne les disques, ou supprimez le disque hors ligne et ajoutez-les à nouveau

Conclusion

ZFS change la façon dont les données sont gérées en offrant la sécurité et l'intégrité des données, une évolutivité pratiquement illimitée, ainsi qu'une gestion simple et automatisée. Nous pouvons donc conclure que ZFS est une fonctionnalité du système d'exploitation qui semble être un choix très populaire pour certains administrateurs qui connaissent ses fonctionnalités riches en fonctionnalités.


Ubuntu
  1. Installez pgAdmin 4 sur Ubuntu 16.04

  2. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Neutron #1

  3. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Nova

  4. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Glance

  5. Ubuntu 19.04 :Configurer vim

Installer et configurer Git sur Ubuntu 16.04

Comment configurer le clavier sur Ubuntu 18.04

Installer et configurer Fail2ban sur Ubuntu 20.04

Comment configurer ZFS sur Ubuntu 20.04

Premiers pas avec le système de fichiers ZFS sur Ubuntu 19.10

Système de fichiers Ubuntu 12.04.02 ?