Soluzione 1:
Se le unità sono smontate ci sono diverse cose che puoi fare.
Puoi usare un comando come fdisk -l
o sfdisk -l
per elencare le partizioni. Solo il tipo di partizione può darti alcune informazioni utili se le partizioni sono state impostate correttamente.y
# sfdisk -l
Disk /dev/sda: 4177 cylinders, 255 heads, 63 sectors/track
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System
/dev/sda1 * 0+ 30 31- 248976 83 Linux
/dev/sda2 31 4176 4146 33302745 8e Linux LVM
/dev/sda3 0 - 0 0 0 Empty
/dev/sda4 0 - 0 0 0 Empty
Se è presente sul tuo sistema puoi usare il comando vol_id
contro una partizione per restituire alcuni dettagli utili (parte del pacchetto udev su Debian). Questo generalmente ti dirà quale filesystem è effettivamente in uso.
# vol_id /dev/sda1
ID_FS_USAGE=filesystem
ID_FS_TYPE=ext3
ID_FS_VERSION=1.0
ID_FS_UUID=32c44d53-9025-4d10-8f36-75c166547bd5
ID_FS_UUID_ENC=32c44d53-9025-4d10-8f36-75c166547bd5
ID_FS_LABEL=
ID_FS_LABEL_ENC=
ID_FS_LABEL_SAFE=
Il comando lshw -class disk
ti fornirà alcuni dettagli sul tipo di unità. Potresti volerlo usare se sei curioso di conoscere il numero di serie effettivo dell'unità.
# lshw -class disk
*-disk
description: ATA Disk
product: VBOX HARDDISK
physical id: 0.0.0
bus info: [email protected]:0.0.0
logical name: /dev/sda
version: 1.0
serial: VB169e93fb-d1e0fd97
size: 32GiB (34GB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 signature=000d39f8
Se sei sicuro che ci sia un filesystem particolare come ext2/3 su di esso, puoi usare lo strumento tune2fs specifico per il filesystem per esaminare maggiori dettagli.
# tune2fs -l /dev/sda1
tune2fs 1.41.3 (12-Oct-2008)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 8cbdf102-05c7-4ae4-96ea-681cf9b11914
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: filetype sparse_super
Default mount options: (none)
Filesystem state: not clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 124496
Block count: 248976
Reserved block count: 12448
Free blocks: 212961
Free inodes: 124467
First block: 1
Block size: 1024
Fragment size: 1024
Blocks per group: 8192
Fragments per group: 8192
Inodes per group: 4016
Inode blocks per group: 502
Last mount time: Thu Oct 7 15:34:42 2010
Last write time: Thu Oct 7 15:34:42 2010
Mount count: 4
Maximum mount count: 30
Last checked: Wed Sep 15 09:29:03 2010
Check interval: 0 (<none>)
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Un altro strumento utile è lsblk.
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 30G 0 disk
└─sda1 8:1 0 30G 0 part
├─vg1-root (dm-0) 254:0 0 23.3G 0 lvm /
└─vg1-swap (dm-1) 254:1 0 1.9G 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
Se hai installato parted puoi eseguire un comando come questo
parted /dev/sda print all
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 34.4GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 255MB 255MB primary ext2 boot
2 255MB 34.4GB 34.1GB primary lvm
Model: Linux device-mapper (linear) (dm)
Disk /dev/mapper/vg1root: 32.6GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 32.6GB 32.6GB ext3
Ad ogni modo, passato questo, ti suggerisco di dare un'occhiata al sorgente udev o parted.
Soluzione 2:
Un altro comando utile è blkid
- restituisce informazioni simili a vol_id
ma può anche scansionare tutti i dispositivi nel sistema, piuttosto che richiedere il passaggio di un dispositivo.
Per forzare blkid
per eseguire la scansione di tutti i dispositivi invece di utilizzare le informazioni memorizzate nella cache, eseguire blkid -c /dev/null
(è necessario il permesso di lettura sui dispositivi a blocchi, quindi di solito è necessario eseguirlo come root)