|
|
Содержание подраздела:
Монтирование дисков, не указаных в fstab.
Что такое UUID и как с этим работать?
Ситуация следующая:
ubuntu, kubuntu, xubuntu да и другие системы тоже.
Есть диски уже прописанные в /etc/fstab с ними всё в порядке, они как надо монтируются (mount).
Но надо добавить диск или несколько дисков в fstab для автоматического монтирования.
Например, пару NTFS (виндовых) дисков.
Учитывая, что сейчас практически у всех SATA...
Если тупо ручками прописать в /etc/fstab что-нить типа такой строчки:
/dev/sda1 /mnt/win_sys ntfs auto,uid=0,gid=0,rw,users,quiet 0 0
То в один прекрасный момент можно обнаружить ошибку монтирования
Т.к. виндовый диск оказался уже не /dev/sda1, а /dev/sdb1...
И тогда становится интересно, что же такое UUID в соседней строчке fstab?
UUID=***-***-***-****901 / ext3 nouser,relatime,errors=remount-ro,atime,auto,rw,dev,exec,suid 0 1
И как наш /dev/sda1 преобразовать в этот UUID?
Оказывается всё очень просто!
Есть такая команда как vol_id
Подробности смотрим по vol_id --help или man vol_id.
Открываем терминал и пишем:
vol_id -u /dev/sda1
и он нам выдаёт этот самый пресловутый UUID для нашего диска.
Далее копируем этот UUID
И в /etc/fstab вместо /dev/sda1 пишем UUID=BC*******.
В итоге получается что-то типа такой строчки:
UUID=BC******** /mnt/win_sys ntfs auto,uid=0,gid=0,rw,users,quiet 0 0
Сохраняем наш новый fstab. Пре перезагрузке у нас автоматом монтируется наш диск.
Всё.
Update:
#======================================
#
# Edit by Ben-Ja http://www.net4me.net
# On Thu 21 Oct 2010 01:24:55 PM MSD
#
#======================================
Замена устаревшего vol_id на blkid
В современных дистрибутивах всё чаще отказываются от vol_id в пользу blkid.
Это разные утилиты из различных пакетов.
# dpkg -S /sbin/blkid
e2fsprogs: /sbin/blkid
# dpkg -S /sbin/vol_id
udev: /sbin/vol_id
Давайте рассмотрим что такое blkid и как этим пользоваться.
Запускать и работать с blkid надо от рута.
# blkid
/dev/sda5: UUID="96441EA1441E83E1" LABEL="DOP" TYPE="ntfs"
/dev/sda1: UUID="BC60EB1A60EAD9E2" LABEL="SYS" TYPE="ntfs"
/dev/sda3: UUID="d9a6d112-ee7d-4f89-abb7-1189a6482901" TYPE="ext3"
/dev/sda4: UUID="51ce955a-1c69-42b1-931c-24aa1b0939ff" TYPE="ext2"
/dev/sdb1: UUID="421043D61043D019" LABEL="GAMES" TYPE="ntfs"
#
# blkid -s UUID
/dev/sda5: UUID="96441EA1441E83E1"
/dev/sda1: UUID="BC60EB1A60EAD9E2"
/dev/sda3: UUID="d9a6d112-ee7d-4f89-abb7-1189a6482901"
/dev/sda4: UUID="51ce955a-1c69-42b1-931c-24aa1b0939ff"
/dev/sdb1: UUID="421043D61043D019"
#
# blkid /dev/sda1
/dev/sda1: UUID="BC60EB1A60EAD9E2" LABEL="SYS" TYPE="ntfs"
Как видим, можно получить данные по всем хардам и файловым системам, а можно и по одиночке и в том формате, в котором нам удобно.
Далее полученную информацию об UUID используем в fstab так же, как и было описано в начале этой статьи.
Параметры:
# blkid -h
usage: blkid [-c ] [-ghl] [-o format] [-s ] [-t ]
[-v] [-w ] [dev ...]
-c cache file (default: /etc/blkid.tab, /dev/null = none)
-h print this usage message and exit
-g garbage collect the blkid cache
-s show specified tag(s) (default show all tags)
-t find device with a specific token (NAME=value pair)
-l lookup the the first device with arguments specified by -t
-v print version and exit
-w write cache to different file (/dev/null = no write)
dev specify device(s) to probe (default: all devices)
Еще раз повторюсь, что blkid надо запускать от рута или через sudo.
Повторяюсь потому, что при запуске от имени обычного пользователя, программа не будет "ругаться", а просто не будет выполнять каких-либо действий (вот такая недоработка в информативности).
Удачного использования! =)
|