GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare ntfs-3g su RHEL 8 / CentOS 8

NTFS non è supportato per impostazione predefinita su RHEL 8 / CentOS 8. Per rendere il nostro sistema in grado di leggere e scrivere dispositivi a blocchi formattati con questo filesystem proprietario, dobbiamo installare ntfs-3g software, che di solito è fornito da repository di terze parti come Epel . Al momento in cui scriviamo, però, non esiste già una versione di questo software sorgente per Rhel8, quindi vedremo come installarlo dal sorgente in pochi semplici passaggi.

In questo tutorial imparerai:

  • Come costruire ntfs-3g dal sorgente
  • Come installare ntfs-3g
  • Come montare un dispositivo a blocchi formattato con ntfs-3g
  • Come formattare un dispositivo a blocchi con il filesystem ntfs
  • Come controllare l'integrità del filesystem ntfs usando ntfsfix


La manpage di ntfs-3g su Rhel 8

Requisiti e convenzioni software utilizzati

Requisiti software e convenzioni della riga di comando Linux
Categoria Requisiti, convenzioni o versione del software utilizzata
Sistema RHEL 8 / CentOS 8
Software Il gruppo di pacchetti "Strumenti di sviluppo"
Altro Privilegi di root per installare ntfs-3g
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Cos'è ntfs-3g?

Il ntfs-3g il software open source implementa il pieno supporto (lettura e scrittura) per il proprietario ntfs filesystem creato da Microsoft e utilizzato in tutte le versioni recenti del sistema operativo Windows. La maggior parte delle distribuzioni Linux include il pacchetto ntfs-3g nei propri repository, tuttavia questo non è il caso di Red Hat Enterprise Linux 8.

Su questa distribuzione il pacchetto è solitamente fornito da repository di terze parti come Epel (Extra Packages for Enterprise Linux); al momento in cui scrivo, tuttavia, la versione specifica per Rhel8 di questo sorgente software non è ancora disponibile. Come soluzione alternativa, possiamo compilare e installare ntfs-3g dalla fonte. Impareremo come fare in questo tutorial.

Installazione delle dipendenze di build

Per poter compilare e installare ntfs-3g, dobbiamo installare alcune dipendenze nel nostro sistema. Tutto ciò di cui abbiamo bisogno è solitamente incluso nel gruppo di pacchetti Strumenti di sviluppo. Per quelli di voi che non hanno familiarità con il concetto di gruppo di pacchetti, si può pensare a un pacchetto grous come a un "meta-pacchetto", che ci consente di installare molti pacchetti correlati usando un solo comando. Per installare il gruppo di pacchetti "Strumenti di sviluppo" possiamo eseguire:

$ sudo dnf groupinstall "Development Tools"

Nel caso in cui abbiamo installato una versione minima di Rhel8, per poter decomprimere il tarball sorgente di ntfs-3g dovremo anche installare tar che (sorprendentemente) non è incluso di default nell'insieme dei pacchetti di questo tipo di installazione:

$ sudo dnf install tar

Download e compilazione del codice sorgente

Ora che abbiamo installato tutte le dipendenze necessarie, possiamo procedere ulteriormente e scaricare il codice sorgente ntfs-3g. Il tarball di origine è disponibile a questo indirizzo. Possiamo combinare il curl e tar comandi per scaricarlo ed estrarlo in un solo passaggio:

$ curl https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2017.3.23.tgz | tar -xvpz

Dopo aver eseguito questo comando, dovremmo trovare che ntfs-3g_ntfsprogs-2017.3.23 è stata creata la cartella:

$ ls ntfs-3g_ntfsprogs-2017.3.23

Il passaggio successivo consiste nell'entrare in questa directory ed eseguire configure script, che preparerà il codice sorgente per la compilazione vera e propria:

$ cd ntfs-3g_ntfsprogs-2017.3.23 && ./configure --prefix=/usr/local --disable-static

Durante l'esecuzione di configure script possiamo fornire alcune opzioni che influenzeranno il modo in cui il software è installato. Uno dei più importanti è il prefix e --exec-prefix . Il primo viene utilizzato per impostare la posizione in cui i file indipendenti dall'architettura devono essere installati nel filesystem (defalt /usr/local directory). Quest'ultimo ha la stessa funzione ma per file indipendenti dall'architettura:di default è impostato per assumere lo stesso valore di PREFIX .

Per impostazione predefinita, tutti i file verranno installati in /usr/local , nelle directory appropriate:i binari verranno inseriti in /usr/local/bin , librerie sotto /usr/local/lib , ecc. Per ottenere un controllo a grana fine, è possibile specificare il percorso di destinazione per ciascun gruppo di file utilizzando opzioni come --libdir o --bindir . Per leggere tutte le possibili opzioni che possiamo utilizzare durante l'esecuzione dello script "configure", possiamo pranzarlo con il -h opzione (abbreviazione di –help).

Nell'esempio sopra avremmo potuto omettere di specificare un prefisso, poiché abbiamo comunque utilizzato il valore predefinito, ma abbiamo utilizzato un'altra opzione, --disable-static , che serve per disabilitare l'utilizzo delle versioni statiche delle librerie necessarie al programma:in breve, quando static è abilitato (impostazione predefinita), le librerie da cui dipendono gli eseguibili vengono "fuse" nel programma in fase di compilazione. Questa configurazione può avere i suoi vantaggi, ma produrrà eseguibili più grandi. Quello che vogliamo, invece, è che le stesse librerie siano condivise da tutti i programmi che ne hanno bisogno.

Avvia il comando sopra e attendi fino al termine. Il passaggio successivo consiste nel compilare effettivamente il codice sorgente in esecuzione:

$ make

La compilazione inizierà e molti messaggi verranno visualizzati sullo schermo. Una volta completata l'attività, possiamo procedere e installare i file compilati. Poiché la destinazione specificata con --prefix , abbiamo bisogno dei privilegi di root per eseguire l'azione:

$ sudo make install

Il comando copierà i file compilati nelle loro directory di destinazione. I binari e i binari di sistema (i binari che richiedono i privilegi di super utente per funzionare correttamente), ad esempio, verranno posizionati rispettivamente in /usr/local/bin e /usr/local/sbin :

$ ls /usr/local/bin
ntfs-3g.probe  ntfscat  ntfscluster  ntfscmp  ntfsfix  ntfsinfo  ntfsls
$ ls /usr/local/sbin
mkntfs  ntfsclone  ntfscp  ntfslabel  ntfsresize  ntfsundelete

Il comando eseguirà anche alcuni passaggi aggiuntivi:alcuni file verranno creati nella directory /bin e collegati simbolicamente a /usr/bin:/bin/ntfs-3g sarà collegato come /sbin/mount.ntfs-3g e /bin/lowntfs-3g a /sbin/mount.lowntfs-3g . Infine, un collegamento simbolico a /usr/local/sbin/mkntfs verrà creato come /sbin/mkfs.ntfs . Alcuni di questi collegamenti sono necessari affinché i relativi programmi possano essere invocati da root senza dover specificare l'intera posizione del loro filesystem, poiché di default solo il /sbin , /bin , /usr/sbin e /usr/bin le directory sono incluse nel suo PATH .

Operazioni sul file system

Ora che ntfs-3g è installato, possiamo vedere come usarlo per eseguire operazioni tipiche come montare e controllare un filesystem o formattare un dispositivo a blocchi con esso.

Monta un dispositivo a blocchi formattato con il filesystem ntfs

Supponiamo di avere il /dev/sdb1 dispositivo formattato con il filesystem ntfs e vogliamo montarlo su /mnt/data . Ecco il comando che dovremmo eseguire:

$ sudo mount /dev/sdb1 -t ntfs-3g /mnt/data

Nota come abbiamo usato il -t passare per specificare il tipo di filesystem (ntfs-3g). Nel caso in cui desideriamo che il filesystem venga montato automaticamente all'avvio, dobbiamo aggiungere una voce per esso in /etc/fstab , in questo caso:

/dev/sdb1 /mnt/data ntfs-3g defaults 0 0

Dove /dev/sdb1 è il dispositivo a blocchi che ospita il filesystem, /mnt/data è il punto di montaggio da usare e ntfs-3g è il tipo di filesystem. In questo caso abbiamo utilizzato le opzioni di montaggio predefinite, ma puoi, ovviamente, utilizzare quelle che ti servono.

Formatta un dispositivo a blocchi con il filesystem ntfs

Un'altra operazione che potremmo voler eseguire è formattare un dispositivo a blocchi esistente con il filesystem ntfs. Il comando da eseguire per eseguire l'attività è:

$ sudo mkfs.ntfs /dev/sdb1

Dove ancora, /dev/sdb1 è il dispositivo a blocchi da formattare con il filesystem ntfs, che deve essere smontato affinché l'operazione abbia esito positivo.

Verifica l'integrità del filesystem ntfs

Il controllo dell'integrità di un filesystem è un'operazione molto importante che deve essere eseguita anche quando il filesystem non è montato. Anche in questo caso il comando da eseguire è molto semplice (qui bisogna fornire il percorso completo dell'utility in quanto non esiste un link ad essa nel PATH dell'utente root):

$ sudo /usr/local/bin/ntfsfix /dev/sdb1

Altre utilità

Ntfs-3g fornisce anche altre utilità molto utili per eseguire operazioni specifiche su un filesystem ntfs. Tra gli altri:ntfsundelete che viene utilizzato per recuperare i file rimossi da un filesystem ntfs, ntfsresize che ci permette di ridimensionare un filesystem ntfs senza perdita di dati e ntfsclone che viene utilizzato per clonare, creare un'immagine e ripristinare un filesystem ntfs.

Disinstallazione di ntfs-3g

Poiché abbiamo installato ntfs-3g dal codice sorgente, non possiamo utilizzare il gestore dei pacchetti di distribuzione per disinstallarlo. Per rimuovere i file dal nostro sistema dobbiamo prima tornare nella cartella in cui abbiamo compilato l'applicazione, che contiene anche il Makefile ed esegui:

$ sudo make uninstall

Tutti i file e i collegamenti creati in precedenza verranno rimossi dal filesystem.

Conclusione

Ntfs-3g è un insieme open source di utilità e librerie utilizzate per interagire completamente con il filesystem proprietario ntfs:non è incluso nei repository predefiniti di RHEL 8 / CentOS 8 e di solito è installato da fonti di terze parti come Epel. Poiché nel momento in cui scrivo quest'ultimo non è ancora disponibile, in questo tutorial abbiamo visto come installare ntfs-3g dal codice sorgente in pochi semplici passaggi. Abbiamo anche visto come eseguire le operazioni più comuni su questo filesystem:montaggio, formattazione e verifica della sua integrità.


Cent OS
  1. Come installare phpMyAdmin su RHEL 8 / CentOS 8

  2. Come installare Icinga 2 su CentOS 8 / RHEL 8

  3. Come installare MongoDB su CentOS 8 / RHEL 8

  4. Come installare Firefox 10 su CentOS 6 / RHEL 6

  5. Come installare PostgreSQL 10 su CentOS 6 / RHEL 6

Come installare Maven su RHEL 8 / CentOS 8

Come installare cpan su RHEL 8 / CentOS 8

Come installare Ruby su RHEL 8 / CentOS 8

Come installare Docker CE su RHEL 8 / CentOS 8

Come installare VirtualBox 6.0 su CentOS 8 / RHEL 8

Come installare PHP 7.4 su CentOS 8 / RHEL 8