Un filesystem è i metodi e le strutture di dati utilizzati da un sistema operativo per tenere traccia dei file su un disco o una partizione; ovvero il modo in cui i file sono organizzati sul disco. Il sistema operativo Linux supporta diversi tipi di filesystem. Ci sono molti strumenti disponibili per trovare l'elenco dei filesystem attualmente disponibili in Linux. Lo strumento da riga di comando più comunemente usato è df
. In questa guida vedremo come elencare i filesystem in Linux usando Lfs .
Lfs è uno strumento da riga di comando per visualizzare le informazioni dei dischi montati nel tuo sistema Linux. Lo sviluppatore di Lfs afferma che è un'alternativa leggermente migliore a df -H
comando.
La maggior parte delle informazioni fornite da lfs
è già fornito da df
. Tuttavia, lfs presenta alcuni miglioramenti elencati di seguito:
- lfs ti aiuta a riconoscere i tuoi dischi etichettandoli come "rem" (rimovibile), "HDD", "SSD".
- lfs utilizza solo SI unità. Non è necessario aprire la guida e controllare l'argomento corretto per le unità di dimensioni corrette.
- lfs mostra il tipo di filesystem.
- lfs ordina i filesystem per dimensione.
- A differenza del comando df, lfs visualizza l'output in un formato colonna tabellare. Df visualizza l'output in formato elenco.
Lfs è un programma open source scritto in Rust . Il codice è disponibile gratuitamente in GitHub con licenza MIT.
Installa Lfs in Linux
Attualmente, Lfs può essere installato in due modi.
- Utilizzo di Gestione pacchi Cargo.
- Utilizzo di binari precombinati,
1. Installa lfs usando Cargo
Per prima cosa installa Rust sulla tua macchina Linux come descritto nel seguente link:
- Installa il linguaggio di programmazione Rust in Linux
Se Rust è già installato, è necessario aggiornarlo all'ultima versione con il seguente comando:
$ rustup update
Quindi installa lfs usando cargo
gestore dei pacchetti:
$ cargo install lfs
2. Installa Lfs usando binari precompilati
Se preferisci utilizzare il binario precompilato, scaricalo dalla pagina dei rilasci.
$ wget https://github.com/Canop/lfs/releases/download/v0.5.1/lfs_0.5.1.zip
Estrailo e sposta il file eseguibile nel tuo $PATH
, ad esempio /usr/local/bin/
.
$ sudo mv lfs_0.5.1/build/lfs /usr/local/bin/
Si noti che la versione precompilata non è la versione più recente. Quindi potresti perdere alcune funzionalità.
Elenca i filesystem in Linux usando Lfs
Esegui il comando lfs senza alcuna opzione per elencare i filesystem nel tuo sistema Linux:
$ lfs
Risultato di esempio:
┌──┬───┬──────────┬───┬────┬────┬────┬────┬─────┬───────────┐
│id│dev│filesystem│dsk│type│size│used│use%│avail│mount point│
├──┼───┼──────────┼───┼────┼────┼────┼────┼─────┼───────────┤
│31│8:1│/dev/sda1 │HDD│ext4│491G│468G│ 95%│ 23G│/ │
└──┴───┴──────────┴───┴────┴────┴────┴────┴─────┴───────────┘
Per impostazione predefinita, lfs
elenca solo i filesystem supportati da dispositivi a blocchi che sembrano dischi reali. Per mostrare tutti i filesystem, -a
bandiera.
$ lfs -a
Risultato di esempio:
┌────┬────┬───────────┬───┬───────────────┬────┬────┬────┬─────┬───────────────────────────────┐
│ id│dev │filesystem │dsk│ type │size│used│use%│avail│mount point │
├────┼────┼───────────┼───┼───────────────┼────┼────┼────┼─────┼───────────────────────────────┤
│ 31│8:1 │/dev/sda1 │HDD│ ext4 │491G│468G│ 95%│ 23G│/ │
│ 33│0:27│tmpfs │ │ tmpfs │4.1G│366M│ 9%│ 3.8G│/dev/shm │
│ 35│0:29│tmpfs │ │ tmpfs │4.1G│ 0│ 0%│ 4.1G│/sys/fs/cgroup │
│ 26│0:6 │udev │ │ devtmpfs │4.1G│ 0│ 0%│ 4.1G│/dev │
│ 28│0:24│tmpfs │ │ tmpfs │825M│1.9M│ 0%│ 823M│/run │
│1315│0:24│tmpfs │ │ tmpfs │825M│1.9M│ 0%│ 823M│/run/snapd/ns │
│1546│0:54│tmpfs │ │ tmpfs │825M│ 53K│ 0%│ 825M│/run/user/1000 │
│ 161│7:4 │/dev/loop4 │HDD│ squashfs │268M│268M│100%│ 0│/snap/gnome-3-34-1804/36 │
│ 143│7:8 │/dev/loop8 │HDD│ squashfs │252M│252M│100%│ 0│/snap/chromium/1328 │
│ 167│7:13│/dev/loop13│HDD│ squashfs │231M│231M│100%│ 0│/snap/multipass/2604 │
│ 176│7:17│/dev/loop17│HDD│ squashfs │231M│231M│100%│ 0│/snap/multipass/2531 │
│ 131│7:1 │/dev/loop1 │HDD│ squashfs │229M│229M│100%│ 0│/snap/gnome-3-34-1804/60 │
│ 146│7:5 │/dev/loop5 │HDD│ squashfs │171M│171M│100%│ 0│/snap/gnome-3-28-1804/145 │
│ 137│7:10│/dev/loop10│HDD│ squashfs │171M│171M│100%│ 0│/snap/chromium/1350 │
│ 164│7:12│/dev/loop12│HDD│ squashfs │169M│169M│100%│ 0│/snap/gnome-3-28-1804/128 │
│ 125│7:6 │/dev/loop6 │HDD│ squashfs │148M│148M│100%│ 0│/snap/gnome-3-26-1604/98 │
│ 128│7:2 │/dev/loop2 │HDD│ squashfs │148M│148M│100%│ 0│/snap/gnome-3-26-1604/100 │
│ 140│7:7 │/dev/loop7 │HDD│ squashfs │102M│102M│100%│ 0│/snap/core/10126 │
│ 173│7:9 │/dev/loop9 │HDD│ squashfs │102M│102M│100%│ 0│/snap/core/9993 │
│ 158│7:11│/dev/loop11│HDD│ squashfs │ 65M│ 65M│100%│ 0│/snap/gtk-common-themes/1506 │
│ 155│7:3 │/dev/loop3 │HDD│ squashfs │ 58M│ 58M│100%│ 0│/snap/core18/1885 │
│ 170│7:15│/dev/loop15│HDD│ squashfs │ 58M│ 58M│100%│ 0│/snap/core18/1880 │
│ 152│7:14│/dev/loop14│HDD│ squashfs │ 58M│ 58M│100%│ 0│/snap/gtk-common-themes/1502 │
│ 34│0:28│tmpfs │ │ tmpfs │5.2M│4096│ 0%│ 5.2M│/run/lock │
│ 134│7:0 │/dev/loop0 │HDD│ squashfs │2.4M│2.4M│100%│ 0│/snap/gnome-system-monitor/145 │
│ 149│7:16│/dev/loop16│HDD│ squashfs │2.4M│2.4M│100%│ 0│/snap/gnome-system-monitor/148 │
│ 24│0:22│sysfs │ │ sysfs │ │ │ │ │/sys │
│ 25│0:5 │proc │ │ proc │ │ │ │ │/proc │
│ 27│0:23│devpts │ │ devpts │ │ │ │ │/dev/pts │
│ 32│0:7 │securityfs │ │ securityfs │ │ │ │ │/sys/kernel/security │
│ 36│0:30│cgroup2 │ │ cgroup2 │ │ │ │ │/sys/fs/cgroup/unified │
│ 37│0:31│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/systemd │
│ 38│0:32│pstore │ │ pstore │ │ │ │ │/sys/fs/pstore │
│ 39│0:33│none │ │ bpf │ │ │ │ │/sys/fs/bpf │
│ 40│0:34│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/perf_event │
│ 41│0:35│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/rdma │
│ 42│0:36│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/net_cls,net_prio│
│ 43│0:37│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/memory │
│ 44│0:38│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/cpu,cpuacct │
│ 45│0:39│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/devices │
│ 46│0:40│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/cpuset │
│ 47│0:41│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/freezer │
│ 48│0:42│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/hugetlb │
│ 49│0:43│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/pids │
│ 50│0:44│cgroup │ │ cgroup │ │ │ │ │/sys/fs/cgroup/blkio │
│ 51│0:45│systemd-1 │ │ autofs │ │ │ │ │/proc/sys/fs/binfmt_misc │
│ 52│0:20│mqueue │ │ mqueue │ │ │ │ │/dev/mqueue │
│ 53│0:46│hugetlbfs │ │ hugetlbfs │ │ │ │ │/dev/hugepages │
│ 54│0:12│tracefs │ │ tracefs │ │ │ │ │/sys/kernel/tracing │
│ 55│0:8 │debugfs │ │ debugfs │ │ │ │ │/sys/kernel/debug │
│ 119│0:47│fusectl │ │ fusectl │ │ │ │ │/sys/fs/fuse/connections │
│ 122│0:21│configfs │ │ configfs │ │ │ │ │/sys/kernel/config │
│ 840│0:4 │nsfs │ │ nsfs │ │ │ │ │/run/snapd/ns/multipass.mnt │
│1574│0:55│gvfsd-fuse │ │fuse.gvfsd-fuse│ │ │ │ │/run/user/1000/gvfs │
│1202│0:69│binfmt_misc│ │ binfmt_misc │ │ │ │ │/proc/sys/fs/binfmt_misc │
└────┴────┴───────────┴───┴───────────────┴────┴────┴────┴─────┴───────────────────────────────┘
Puoi anche ottenere i dettagli del filesystem in JSON
formattare con -j
bandiera.
$ lfs -j
Risultato di esempio:
[
{
"dev": {
"major": 8,
"minor": 1
},
"disk": {
"removable": false,
"rotational": true,
"type": "HDD"
},
"fs": "/dev/sda1",
"fs-type": "ext4",
"id": 31,
"mount-point": "/",
"stats": {
"available": "23G",
"bavail": 5652047,
"bfree": 11760949,
"blocks": 119917226,
"bsize": 4096,
"size": "491G",
"used": "468G",
"used-percent": "95%"
}
}
]
Per visualizzare i dettagli di tutti i filesystem in formato JSON, eseguire:
$ lfs -a -j
Per assistenza, esegui:
$ lfs --help
Usage: lfs [-v] [-a] [-j]
List your filesystems. All units are SI. Source at https://github.com/Canop/lfs
Options:
-v, --version print the version
-a, --all whether to show all mount points
-j, --json output as JSON
--help display usage information
Lfs è una piccola e semplice utility per visualizzare l'utilizzo dello spazio su disco del filesystem. Fa bene il lavoro come pubblicizzato. Fai una prova e facci sapere cosa ne pensi di questa utility nella sezione commenti qui sotto.