Mount и fstab, или как достучаться до виндовых дисков в линухах?

Jun 06, 2010 14:25

Что-то мне резко стало грустно сидеть под недавно установленным  Linux - ни фотки посмотреть, ни фильмы, ничего... И дело не в отсутствии программ-их как раз полно, и они часто лучше виндовых, а в отсутствии дефолтного доступа к ntfs дискам. Ведь вся моя важная инфа хранится на террабайтном винте с файловой системой ntfs. Подключу, решил я, а заодно запишу процесс в ЖЖ. Мне в следующий раз не придется лазить по закладкам и манам, да и кому-то может пригодиться.

Этап первый.  Сбор информации.

Узнаем, какие диски Linux увидел в системе:

sudo fdisk -l

(команда в убунту и клонах означает выполнение команды от имени суперпользователя, или рута. Команда требудет введения пользовательского пароля.

Результат команды у меня:

Диск /dev/sda: 320.1 ГБ, 320072933376 байт
[...]
Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 * 1 13 102400 7 HPFS/NTFS
Раздел 1 не заканчивается на границе цилиндра.
/dev/sda2 13 5236 41953280 7 HPFS/NTFS
/dev/sda3 5236 18287 104833024 7 HPFS/NTFS
/dev/sda4 18288 38913 165678314+ 5 Расширенный
/dev/sda5 18288 18530 1951866 82 Linux своп / Solaris
/dev/sda6 18531 26676 65432713+ 83 Linux
/dev/sda7 26677 38913 98293671 83 Linux

Диск /dev/sdb: 1000.2 ГБ, 1000204886016 байт
[...]
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 1 121601 976760001 42 SFS

Дисков - винчестеров у меня два, Диск /dev/sda: 320.1 ГБ, разбитый, как видно из листинга, на 7 разделов, и Диск /dev/sdb: 1000.2 ГБ, состоящий из одного раздела.

Этап второй. Временное подключение.

Начнем с первого диска.
Раздел /dev/sda1 мне не интересен, это маленький загрузочный сектор.
/dev/sda2 и /dev/sda3 - соответственно мои Windows разделы C и D.

Для начала, подключу их временно, до первой перезагрузки. Для этого я воспользуюсь командой mount.
Перед тем, как монтировать разделы, необходимо озаботиться вопросами:
  1. Какие из них уже смонтированы?
  2. Куда монтировать еще не монтированные?
  3. Как их туда монтировать?
На вопрос первый ответит команда mount, выполненная от суперпользователя без параметров:

sudo mount

Введем пароль - увидим результат:

/dev/sda6 on / type ext3 (rw,errors=remount-ro)
[...]
/dev/sda7 on /home type ext3 (rw)

Что отсюда можно понять? То, что у нас смонтированы разделы /dev/sda6 и /dev/sda7, которые, как мы видели из предыдущего листинга, но умолчали об этом, являются разделами Linux. Наши NTFS живы, здоровы, и никуда не закреплены.

Переходим ко второму вопросу: куда монтировать? Для решения этой проблемы, создадим папки в удобных нам местах. Я, к примеру, предпочитаю для не очень важных мне в линуксе дисков C и D создавать папки в системной папке /mnt, а для большого хранилища данных - в домашней папке /home/bandy/

sudo mkdir -m777 /mnt/C
sudo mkdir -m777 /mnt/D
mkdir -m777 /home/bandy/storage

Внимательные заметили, что в домашней папке можно создавать новые папки и от своего имени, совсем не обязательно использовать права суперпользователя.

Команда mkdir создает указанную папку в текущем каталоге, или в указанном каталоге последнюю упомянутую папку, если ее там нет. Параметр -m позволяет указать права для создаваемой папки, 777 - права, согласно которым с папкой и всем ее содержимым каждый может делать все, т.е. полный доступ для всех.

Далее - монтирование командой mount.

sudo mount -t ntfs -o rw,iocharset=utf8,codepage=866 /dev/sda2 /mnt/C
sudo mount -t ntfs -o rw,iocharset=utf8,codepage=866 /dev/sda3 /mnt/D
bandy@bandyPC:~$ sudo mount -t ntfs -o rw,iocharset=utf8,codepage=866 /dev/sdb1 /home/bandy/storage

Этап третий - изучение возможностей.

Рассмотрим параметры:

-t - параметр указывает файловую систему монтируемого диска. Может принимать значения
-t ext3
-t ntfs или -t ntfs-3g
-t vfat
-t iso9660
Соответственно для EXT3, NTFS, FAT и CD-дисков файловых систем. Последний нужен только для подключения CD/DVD-ROM устройств и образа диска .iso.

-o нужен, чтобы вручную задать параметры доступа к примонтированному разделу:
-o rw - для записи и чтения (Read and Write)
-o ro - только для чтения (Read Only)

iocharset=utf8 вно задает кодировку системной локали.

сodepage=866 добавляет поддержку русского языка.

/dev/sda2 указывает, какое устройство мы монтируем

/mnt/C указывает точку монтирования, т.е. папку, в которой будет находится содержимое диска.

Еще могут быть полезными
-o force, позволяет принудительно монтировать разделы жесткого диска в линуксе. (иногда линукс отказывается работать с некоторыми дисками - то-ли вирусы, то ли лень ему...)

Посмотреть полную информацию(доступный объем диска, свободное место) о примонтированных устройствах можно командой:

sudo df -h

Размонтирование устройства производится командой:

sudo umount /dev/sdb1

или

sudo sudo umount /home/bandy/storage

Этап четвертый - постоянное подключение.

Все настройки для автоматического монтирования дисков хранятся в файле /etc/fstab. Отредактируем его:

sudo vim /etc/fstab

или

sudo nano /etc/fstab

Добавив туда следующие строчки:

#NTFS
/dev/sda2 /mnt/C ntfs rw,utf8,users 0 1
/dev/sda3 /mnt/D ntfs rw,utf8,users 0 1
/dev/sdb1 /home/bandy/storage ntfs rw,utf8,users 0 1

Рассмотрим содержимое:
Строка,начинающаяся с решетки - комментарий, не выполняется.
В строке - условие монтирования одного раздела. Разделенные табуляциями или пробелами, как кому удобнее, идут:
  • раздел,
  • точка его монтирования, 
  • файловая система (без -t), 
  • параметры монтирования через запятую без пробелов (здесь вместо -o rw пишется просто rw, вместо iocharset=utf8 пишется просто utf8, добавляется user для того, чтобы каждый мог примонтировать и размонтировать устройство.), 
  • флаг бэкапа (1-использовать диск при резервном копировании программой dump, 0 - нет),
  • флаг проверки (0 - не проверять диск на ошибки, остальные цифры - порядок проверки, приоритет.


Надеюсь, я все сказал. Не обещаю, что смогу ответить на вопросы, не такой уж я специалист в теме.

Этап пятый - Источники

kubuntu.ru
itshaman.ru

mount и fstab, linux, help

Previous post Next post
Up