Gestione dei file

Utilizzo di Sys FileSystem in Linux

Utilizzo di Sys FileSystem in Linux

Come un file system proc virtuale, esiste un altro file system chiamato file system "sysfs" in cui le informazioni sono state esportate nel sistema operativo Linux. Possiamo usare questo file system virtuale per programmi simili a udev per ottenere dati sui dispositivi di accesso e informazioni sui driver dei dispositivi. Poiché la maggior parte della conoscenza dell'hardware viene trasferita tramite proc a sysfs, l'avvento di sysfs ha aiutato a ripulire i file di sistema di proc. Il file system sysfs è stato distribuito e configurato nella directory /sys. Daremo un'occhiata ad alcune directory di primo livello del file system sys. Abbiamo usato Ubuntu 20.04 Sistema Linux per l'utilizzo del sistema sysfs. Puoi utilizzare qualsiasi sistema operativo Linux per farlo, poiché tutte le query seguenti funzioneranno su qualsiasi distribuzione di Linux. Assicurati di avere i privilegi utente sudo per usare il tuo sistema operativo Linux mentre usi il file system sysfs. Viene fornita una breve panoramica di ciascuna cartella e directory come segue:

/sys/block:

Ogni dispositivo a blocchi in tutto il framework ha una voce in questa cartella. Le connessioni rappresentative nell'albero dell'interfaccia fisica si riferiscono alla macchina hardware a cui la macchina corrisponde. Apri la shell della riga di comando usando 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 molto altro.

$ ls -l  /sys/block/sda/

/sys/bus:

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

$ ls -lR /sys/bus/xen/drivers

/sys/classe:

Ogni classe di dispositivo associata principalmente al kernel può essere trovata in questa cartella. Una classe di dispositivi definisce una categoria operativa di un sistema. I dispositivi di input e di rete, i dispositivi a blocchi sono solo alcune eccezioni. Ci sono molti altri trovati in esso. Proviamo la seguente semplice query di percorso per verificare. L'output ci mostra l'elenco delle directory delle classi di input e output.

$ ls -l /sys/class/

/sys/dispositivi:

La classificazione informatica globale di tutti i sistemi sul server è archiviata in questa cartella. C'è anche una cartella framework e una cartella dispositivo all'interno di quella directory. I dispositivi periferici specifici della piattaforma, inclusi alcuni controller di computer, sono menzionati nella cartella della piattaforma. Le macchine non periferiche come CPU o APIC sono incluse nella cartella di sistema. Elenchiamo tutte le informazioni relative ai dispositivi utilizzando la query sottostante 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 verificarlo. L'output mostra solo tre sottodirectory per i dettagli e le informazioni sul firmware.

$ ls -l /sys/firmware/

/sys/modulo:

Se un utente Linux desidera vedere i moduli che vengono caricati nel kernel Linux, può utilizzare il percorso del modulo per il file system sys. Quindi, prova la seguente query sul percorso per /sys/module per controllarla. L'output seguente mostra il modulo caricato nel kernel Linux.

$ ls -l /sys/module/

/sys/modulo/xen*:

Andando al livello interno delle sottodirectory, ecco la vista più chiara dei moduli che vengono caricati nel kernel. L'output della query di seguito mostra tutti i moduli "Xen" caricati nel kernel.

$ ls -l /sys/module/xen*

Per controllare ogni sottomodulo separatamente, prova le seguenti query per farlo. Per verificare la presenza di "xen_netfront", utilizzare la query di seguito.

$ 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 disk regola il meccanismo attraverso il quale la macchina sospende l'archiviazione su disco. Un meccanismo raggiungerà un livello di bassa potenza utilizzando il parametro di stato. Quindi, digita la query seguente nella shell e premi il pulsante Invio per vedere i dettagli per il potere. L'output dell'istantanea mostra l'elenco dei file sys che mostrano le informazioni sull'alimentazione nel sistema operativo Linux.

$ ls -l /sys/power

Il pacchetto sysctl:

Nella cartella /proc/sys, gli utenti possono utilizzare la funzione sysctl per visualizzare o modificare i valori nei documenti scrivibili. Digita il comando seguente nel terminale della shell e tocca il tasto Invio per ottenere un elenco di tutte le ultime opzioni del kernel. L'immagine di output mostra informazioni riguardanti i cdrom, la loro velocità, le loro partizioni e molto altro.

$ sysctl -a

/proc/sys/abi:

Controlliamo la cartella "abi" usando il semplice comando list. La query seguente è stata utilizzata per elencare i file e le cartelle della directory "abi" nel file system proc/sys/.

Se qualcuno vuole vedere le informazioni separate per ogni documento nella directory specifica "abi", può farlo usando il comando cat come di seguito. Questo comando ha verificato le informazioni contenute 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 usando il file system sysfs, e.g., Informazioni sul kernel Linux, informazioni sui dischi rigidi, consumo energetico e informazioni, informazioni su firmware e bus di sistema, dati sui dispositivi di rete e input-output e dettagli sui driver, ecc.

OpenTTD vs Simutrans
Creare la tua simulazione di trasporto può essere divertente, rilassante ed estremamente allettante. Ecco perché devi assicurarti di provare quanti pi...
Tutorial OpenTTD
OpenTTD è uno dei giochi di simulazione aziendale più popolari in circolazione. In questo gioco, devi creare una meravigliosa attività di trasporto. T...
SuperTuxKart per Linux
SuperTuxKart è un fantastico titolo progettato per offrirti l'esperienza di Mario Kart gratuitamente sul tuo sistema Linux. È piuttosto impegnativo e ...