Utilizzo del filesystem sys in Linux

Utilizzo del filesystem sys in Linux

Come un file system Virtual Proc, esiste un altro file system chiamato file system "sysfs" in cui le informazioni sono state esportate nel sistema operativo Linux. Possiamo utilizzare questo file system virtuale per programmi come UDEV per ottenere dati relativi ai dispositivi di accesso e alle informazioni sui driver di dispositivi. Dal momento che la maggior parte delle conoscenze hardware vengono trasferite tramite Proc a SYSFS, l'avvento di SYSF ha contribuito a cancellare i file del sistema Proc. Il file system sysfs è stato distribuito e configurato nella directory /sys. Daremo un'occhiata ad alcune directory di alto livello del file system sys. Abbiamo usato Ubuntu 20.04 Sistema Linux per l'utilizzo del sistema SYSFS. È possibile utilizzare uno qualsiasi dei sistemi operativi Linux per farlo, poiché tutte le query di seguito funzionano su qualsiasi distribuzione di Linux. Assicurati di avere i privilegi utente sudo per utilizzare il sistema operativo Linux durante l'utilizzo del file system SYSFS. Una breve panoramica di ogni cartella e directory è data come segue:

/sys/blocco:

Ogni dispositivo di blocco in tutto il framework ha una voce in questa cartella. Connessioni rappresentative nell'albero dell'interfaccia fisica si riferiscono alla macchina hardware a cui corrisponde la macchina. Apri la shell della riga di comando utilizzando il tasto di scelta rapida "Ctrl+Alt+T" per scoprire le informazioni. Le caratteristiche per i dischi SDA, ad esempio, sono memorizzate nella directory corrispondente come mostrato nella query seguente. L'output mostra l'elenco di tutti i dispositivi SDA e le loro caratteristiche, E.G., nomi utente, privilegi, nomi di file e cartelle e molti altri.

$ ls -l/sys/block/sda/

/sys/bus:

Ogni categoria di autobus fisico fornito dal kernel ha la sua sottodirectory in questa cartella. Esistono due sotto-conduttori in ogni categoria di autobus: dispositivi e driver. I dispositivi identificati in quel tipo di bus sono menzionati nella cartella dei dispositivi. Ogni driver del dispositivo associato alla categoria Bus ha la sua directory nella cartella del conducente. Le specifiche del driver potrebbero essere interpretate e modificate. Ad esempio, per ottenere un elenco di driver di sistema virtuale, è necessario digitare le istruzioni di directory sotto nel terminale all'interno della directory "Xen". L'output mostra zero per i driver di sistema virtuale perché il nostro sistema Linux non ha driver del dispositivo virtuale.

$ ls -lr/sys/bus/xen/driver

/sys/classe:

Ogni classe di dispositivo associato principalmente al kernel è disponibile in questa cartella. Una classe di dispositivo definisce una categoria operativa di un sistema. Dispositivi di input e di rete, i dispositivi di blocco sono solo alcune eccezioni. Ce ne sono molti altri trovati in esso. Proviamo la query del percorso semplice seguente per controllare. L'output ci mostra l'elenco delle directory della classe di input e output.

$ ls -l/sys/class/

/sys/dispositivi:

La classificazione globale del computer di tutti i sistemi sul server è memorizzata in questa cartella. C'è anche una cartella Framework e una cartella del dispositivo all'interno di quella directory. I dispositivi periferici specifici della piattaforma, compresi alcuni controller di computer, sono menzionati nella cartella della piattaforma. Le macchine non periferiche come CPU o APIC sono incluse nella cartella del sistema. Elenchiamo tutte le informazioni relative ai dispositivi utilizzando la query di seguito nella shell.

$ ls -l/sys/dispositivi/

/sys/firmware:

La directory del firmware ci mostra gli attributi e gli oggetti del firmware all'interno delle sottodirectory del firmware. Proviamo le istruzioni seguenti nella shell del terminale per verificarla. L'output mostra solo tre sottodirectory per dettagli e informazioni del firmware.

$ ls -l/sys/firmware/

/sys/modulo:

Se un utente Linux desidera vedere i moduli che vengono caricati nel kernel Linux, possono utilizzare il percorso del modulo per il file system SYS. Quindi, prova la query del percorso seguente per il /sys /modulo per verificarla. L'uscita seguente mostra il modulo caricato nel kernel Linux.

$ ls -l/sys/module/

/sys/module/xen*:

Andando al livello interiore delle sottodirectory, ecco la visione più chiara dei moduli che vengono caricati nel kernel. L'uscita di query seguente ha mostrato tutti i moduli "Xen" che vengono caricati nel kernel.

$ ls -l/sys/module/xen*

Per controllare ogni sotto-modulo separatamente, prova le query seguenti per farlo. Per verificare la presenza di "xen_netfront", utilizzare la query seguente.

$ ls -l/sys/module/xen_netfront

Per verificare la presenza di "Xen_BlkFront", utilizzare la query di seguito.

$ ls -l/sys/module/xen_blkfront

/sys/potenza:

Questa cartella consente di monitorare il livello di potenza del sistema. Il parametro disco regola il meccanismo attraverso il quale la macchina sospende l'archiviazione del disco. Un meccanismo raggiungerà un livello di bassa potenza usando il parametro di stato. Quindi, digita la query seguente nella shell e premi il pulsante Invio per visualizzare i dettagli per l'alimentazione. L'output snapshot mostra l'elenco dei file sys che mostrano le informazioni di alimentazione nel sistema operativo Linux.

$ ls -l /sys /potenza

Il pacchetto SySCTL:

Nella cartella /proc /sys, gli utenti possono utilizzare la funzione sysctl per visualizzare o modificare i valori nei documenti scrivibili. Digitare il comando seguente nel terminale shell e toccare la chiave Invio per ottenere un elenco di tutte le ultime opzioni di kernel. L'immagine di output mostra informazioni su CDROM, la loro velocità, le loro partizioni e molte altre.

$ syscctl -a

/proc/sys/abi:

Controviamo la cartella "ABI" utilizzando il comando Elenco semplice. La query seguente è stata utilizzata per elencare i file e le cartelle della directory "ABI" nella Proc/ Sys/ File System.

Se qualcuno vuole vedere le informazioni separate per ciascun documento nella directory specifica "ABI", può farlo usando il comando Cat come di seguito. Questo comando ha verificato le informazioni detenute nel documento "Vsyscall32". L'immagine di output mostra "1" come contenuto di un file vsyscall32.

$ cat/proc/sys/abi/vsyscall32

Conclusione:

Questo tutorial ti aiuta a vedere le informazioni interne riguardanti i diversi aspetti del sistema operativo Linux utilizzando il file system sysfs, e.G., Informazioni sul kernel Linux, informazioni sui dischi rigidi, utilizzo dell'alimentazione, informazioni e dati di dati, rete e dispositivi di input-output di firmware e di sistema e dettagli di driver, ecc.