GNU/Linux >> Linux Esercitazione >  >> Linux

Configura ZFS su Linux con yum

Sono un utente Fedora Linux che esegue yum upgrade quotidiano. Sebbene questa abitudine mi consenta di eseguire tutti i software più recenti (una delle quattro basi di Fedora è la "prima" ed è all'altezza), evidenzia anche eventuali incompatibilità tra la piattaforma di archiviazione ZFS e un nuovo kernel.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Come sviluppatore, a volte ho bisogno di nuove funzionalità dall'ultimo ramo ZFS. Ad esempio, ZFS 2.0.0 contiene una nuova entusiasmante funzionalità che migliora notevolmente le prestazioni di sincronizzazione ZVOL, che è fondamentale per me come utente KVM. Ma questo significa che se voglio usare il ramo 2.0.0, devo creare ZFS da solo.

All'inizio, ho appena compilato ZFS manualmente dal repository Git dopo ogni aggiornamento del kernel. Se dimenticassi, ZFS non verrebbe riconosciuto al prossimo avvio. Fortunatamente, ho imparato rapidamente come impostare il supporto per i moduli del kernel dinamico (DKMS) per ZFS. Tuttavia, questa soluzione non è perfetta. Per prima cosa, non utilizza il potente sistema yum, che può aiutare a risolvere le dipendenze e l'aggiornamento. Inoltre, passare dal tuo pacchetto a un pacchetto upstream è abbastanza facile con yum.

In questo articolo, dimostrerò come impostare un repository yum per impacchettare ZFS. La soluzione prevede due passaggi:

  1. Crea pacchetti RPM dal repository ZFS Git
  2. Imposta un repository yum per ospitare i pacchetti

Crea pacchetti RPM

Per creare pacchetti RPM, devi installare la toolchain RPM. Yum fornisce gruppi per raggruppare l'installazione degli strumenti:

sudo dnf group install 'C Development Tools and Libraries' 'RPM Development Tools'

Dopo che questi sono stati installati, è necessario installare tutti i pacchetti necessari per compilare ZFS dal repository ZFS Git. I pacchetti appartengono a tre gruppi:

  1. Autotools per generare file di build dalle configurazioni della piattaforma
  2. Librerie per la creazione di kernel ZFS e strumenti userland
  3. Librerie per la creazione di pacchetti RPM
sudo dnf install libtool autoconf automake gettext createrepo \
    libuuid-devel libblkid-devel openssl-devel libtirpc-devel \
    lz4-devel libzstd-devel zlib-devel \
    kernel-devel elfutils-libelf-devel \
    libaio-devel libattr-devel libudev-devel \
    python3-devel libffi-devel

Ora sei pronto per creare i tuoi pacchetti.

Crea OpenZFS

OpenZFS fornisce un'eccellente infrastruttura. Per costruirlo:

  1. Clone il repository con git e passa al ramo/tag che speri di utilizzare.
  2. Esegui Autotools per generare un makefile.
  3. Esegui make rpm e, se tutto funziona, i file RPM verranno inseriti nella cartella build.
$ git clone --branch=zfs-2.0.0-rc3 https://github.com/openzfs/zfs.git zfs 
$ cd zfs
$ ./autogen.sh
$ ./configure
$ make rpm

Configura un repository yum

In yum, un repository è un server o un percorso locale che include metadati e file RPM. Un consumatore imposta un file di configurazione INI e il yum il comando risolve automaticamente i metadati e scarica i pacchetti corrispondenti.

Fedora fornisce il createrepo strumento per impostare un repository yum. Innanzitutto, crea il repository e copia tutti i file RPM dalla cartella ZFS al repository. Quindi esegui createrepo --update per includere tutti i pacchetti nei metadati:

$ sudo mkdir -p /var/lib/zfs.repo 
$ sudo createrepo /var/lib/zfs.repo
$ sudo cp *.rpm /var/lib/zfs.repo/
$ sudo createrepo --update /var/lib/zfs.repo

Crea un nuovo file di configurazione in /etc/yum.repos.d per includere il percorso del repository:

$ echo \
"[zfs-local]\\nname=ZFS Local\\nbaseurl=file:///var/lib/zfs.repo\\nenabled=1\\ngpgcheck=0" |\
sudo tee /etc/yum.repos.d/zfs-local.repo

$ sudo dnf --repo=zfs-local list available --refresh

Finalmente sei arrivato alla fine del viaggio! Hai un repository yum funzionante e pacchetti ZFS. Ora non ti resta che installarli:

$ sudo dnf install zfs 
$ sudo /sbin/modprobe zfs

Esegui sudo zfs version per vedere la versione del tuo userland e degli strumenti del kernel. Congratulazioni! Hai ZFS per Fedora.


Linux
  1. Comando JQ in Linux con esempi

  2. Linux – Suid non ha alcun effetto sulle directory con Linux?

  3. Come creare filesystem ZFS con compressione file su Linux

  4. Imposta l'accesso automatico FTP con il file .netrc in Linux

  5. Imposta la variabile di ambiente con lo spazio in Linux

15 Comando Linux ps con esempi

Come gestire i pacchetti su CentOS con YUM

Gestione dei pacchetti Linux con YUM e RPM

Come configurare un firewall con GUFW su Linux

Parted Magic Disk Live CD aggiornato con Linux 4.11.4, ZFS su Linux

Usare il comando tr in Linux per giocare con i personaggi