web-dev-qa-db-fra.com

Mise à niveau vers le noyau principal 5.9 avec ZFS (20.10)

J'ai installé Ubuntu 20.10 sur une nouvelle machine avec l'option ZFS, i. e. tous les deux /boot et le système de fichiers racine sont sur ZFS. Cependant, j'ai besoin de la nouvelle version du noyau 5.9 pour le support matériel, que j'ai installé à l'aide de la touche Mainline Kernel PPA . Malheureusement, la version de ZFS incluse dans Ubuntu 20.10 (V0.8.4) ne fonctionne pas avec les noyaux Linux V5.9 (la construction du module de noyau échoue).

Cela conduit à toute la situation: comment puis-je utiliser à la fois la nouvelle version du noyau et ZFS requises (bien sûr, y compris une fonctionnalité complète, telle que ZSYS)?

Alors, maintenant je suis coincé. Quelle est la manière la plus robuste d'exécuter un noyau principal qui nécessite également une mise à niveau des ZFS? J'ai envisagé de construire un noyau de 5,9 personnalisé avec un support ZFS intégré, mais la version ZFS de mon noyau n'est-elle pas en conflit avec les packages Ubuntu installés, qui utilisent une version plus ancienne de ZFS?

1
Socob

J'ai remarqué que, tandis que le version des packages ZFS dans la version de développement Ubuntu (Hirsute) est actuellement 0.8.4-1ubuntu13 , le Changelog montre ce qui suit:

Changelog

zfs-linux (0.8.4-1ubuntu13) hirsute; urgency=medium

  * Add Linux 5.9 compat fixes (LP: #1899826)
    - 4800-Linux-5.9-compat-add-linux-blkdev.h-include.patch
      include blkdev.h in various sources
    - 4801-Linux-5.9-compat-NR_SLAB_RECLAIMABLE.patch
      deprecate some older page free stats for arc free page calculation
    - 4802-Linux-5.9-compat-make_request_fn-replaced-with-submi.patch
      API change for block allocation
    - 4805-Increase-Supported-Linux-Kernel-to-5.9.patch
      allows driver to be built against 5.9
  * Add Linux 5.10 compat fixes
    - 4710-Use-percpu_counter-for-obj_alloc-counter-of-Linux-ba.patch
      prerequisite for 4804-Linux-5.10-compat-frame.h-renamed-objtool.h.patch
    - 4720-Linux-5.7-compat-Include-linux-sched.h-in-spl-sys-mu.patch
      prerequisite for next set of patches
    - 4804-Linux-5.10-compat-frame.h-renamed-objtool.h.patch
      rename check of linux/frame.h to linux/frame.h
    - 4805-Linux-5.10-compat-percpu_ref-added-data-member.patch
      API check to the percpu_ref structure
    - 4806-Linux-5.10-compat-check_disk_change-removed.patch
      check_disk_change removed, functionality moved to zfs_check_media_change
    - 4807-Linux-5.10-compat-revalidate_disk_size-added.patch
      use revalidate_disk_size where necessary

 -- Colin Ian King <[email protected]>  Tue, 3 Nov 2020 12:22:22 +0000

ce qui indique que les modifications requises pour la compatibilité avec les nouveaux noyaux Linux ont été déplacées vers ces packages. J'ai donc installé le zfs-dkms Paquet des référentiels hirsute, qui m'a donné un module de DKMS DKMS de travail avec mon noyau principal.

1
Socob