1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2024-11-01 00:51:08 +03:00
systemd-stable/extras/volume_id
Karel Zak 661a0bea80 volume_id: clean up linux_raid code
extra global and/or non-static variables suck in shared libraries
use "else if" rather than many "return" calls

Signed-off-by: Karel Zak <kzak@redhat.com>
2008-05-13 11:29:17 +02:00
..
lib volume_id: clean up linux_raid code 2008-05-13 11:29:17 +02:00
.gitignore extras: ignore built and generated files 2007-11-08 00:13:40 +01:00
Makefile Makefile: do not require GNU install 2008-03-15 00:02:39 +01:00
README vol_id: README update 2007-05-04 17:16:08 +02:00
vol_id.8 udevadm: control - fix --env key to accept --env=<KEY>=<value> 2008-04-22 03:19:21 +02:00
vol_id.c logging: add trailing newline to all strings 2008-04-20 21:07:06 +02:00
vol_id.xml vol_id: use long options 2007-05-03 11:00:02 +02:00

vol_id - probe filesystem and read label and uuid

This program is normally called from a udev rule, to provide udev with the
filesystem type of a volume and the label and uuid to name a device node.
vol_id opens the blockdevice node specified at the commandline. The following
commandline switches are supported to specify what vol_id should print:
  --export        export key/value pairs
  --type          filesystem type
  --label         filesystem label
  --label-raw     raw label
  --uuid          filesystem uuid
  --skip-raid     don't probe for raid
  --probe-all     find possibly conflicting signatures
  --help

vol_id will only return successful if the string asked for, is not
empty. All trailing whitespace will be removed, spaces replaced by underscore
and slashes ignored.

fstype                 probe  label  uuid  version
--------------------------------------------------
linux swap             *      *      *     *
ext                    *      *      *     *
reiserfs jr/3.5/3.6/4  *      *      *     *
fat (12, 16, 32)       *      *      *     *
ntfs                   *      *      *     *
jfs                    *      *      *     -
xfs                    *      *      *     -
hfs (plus, wrapped)    *      *      *     -
udf                    *      *      -     -
iso9660                *      *      -     -
ufs                    *      -      -     -
cramfs                 *      *      -     -
sysv                   *      *      -     *
luks                   *      -      *     -
hpfs                   *      -      -     -
romfs                  *      *      -     -
squashfs               *      -      -     -
minix                  *      -      -     *
ocfs (1, 2)            *      *      *     *
vxfs                   *      -      -     *
nss (netware)          *             *     *
gfs, gfs2              *      -      -     -

Raid members are detected to prevent the probing for a filesystem
-----------------------------------------------------------------
linux raid (md)        *      *      *     *
LVM 1                  *      -      -     -
LVM 2                  *      -      -     *
ddf                    *      -      *     *
highpoint              *      -      -     -
isw_raid               *      -      -     -
lsi_raid               *      -      -     -
nvidia_raid            *      -      -     -
promise_raid           *      -      -     -
silicon_raid           *      -      -     -
via_raid               *      -      -     -
jmicron                *      -      -     -
adaptec                *      -      -     -

To give it a try, you may call it on the commandline:
  $ extras/volume_id/vol_id --export /dev/sda6
  ID_FS_USAGE=filesystem
  ID_FS_TYPE=ext3
  ID_FS_VERSION=1.0
  ID_FS_UUID=3e999973-00c9-4917-9442-b7633bd95b9e
  ID_FS_LABEL=devel
  ID_FS_LABEL_SAFE=devel

  $ extras/volume_id/vol_id --label /dev/sda6
  devel

  $ extras/volume_id/vol_id --type /dev/sda6
  ext3


Any comment/questions/concerns to me:
  Kay Sievers <kay.sievers@vrfy.org>