Как смонтировать раздел NTFS в /etc/fstab?

Как смонтировать раздел NTFS в /etc/fstab?

У меня есть два раздела, которые я хочу монтировать при запуске:

/dev/sda3   /mnt/devel  ext4    defaults    0   2
/dev/sda2   /mnt/excess ntfs    defaults    0   2

Раздел ext4монтируется нормально (принадлежит мне, запись доступна только мне), но NTFSмонтируется rootс правами R\W для всех.

Как это исправить?

drwxr-xr-x  7 amanda amanda 4096 2012-03-14 19:07 devel
drwxrwxrwx  1 root   root   4096 2012-03-14 22:38 excess

решение1

Разрешения для файловых систем ntfs и vfat должны быть установлены с параметрами dmask, fmaskи umask. dmaskуправляет разрешениями для каталогов, fmaskуправляет разрешениями для файлов и umaskуправляет обоими. Поскольку эти параметры устанавливаютмаски, они должны быть дополнением к разрешениям, которые вы хотите. Например, rwx для владельца и rx для других — это 022, а не 755.

Чтобы задать владельца, используйте параметры uidи gidдля пользователя и группы соответственно. Вы можете узнать свой UID с помощью команды id -u. Чтобы узнать свой GID, используйте id -g. Оба эти значения обычно равны 1000.

Обычный набор параметров монтирования для ntfs — uid=1000,gid=1000,dmask=027,fmask=137. Это делает вас владельцем диска и устанавливает разрешения drwxr-x---.

Вот примеры рабочего /etc/fstab

UUID=EEA2B69CA2B668AB        /WIN_C     ntfs-3g   defaults,nls=utf8,umask=000,dmask=027,fmask=137,uid=1000,gid=1000,windows_names 0 0 
UUID=65AEC0E830EA0497        /WIN_D     ntfs-3g   rw 0 0
  • Чтобы получитьUUIDдля вашего раздела вы можете использовать ls -l /dev/disk/by-uuid/или lsblk -f | grep -v loopилигном-диски

  • Если после перезагрузки не возникает видимых ошибок и разделы остаются доступными только для чтения или возникает ошибка, похожая на:

    Error mounting /dev/sda6 at /media/WindowsDrive: 
    Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda6" "/media/rolindroy/Media Center"' exited with non-zero exit status 14: The disk contains an unclean file system (0, 0). 
    Metadata kept in Windows cache, refused to mount. 
    Failed to mount '/dev/sda6': Operation not permitted The NTFS partition is in an unsafe state. 
    Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read-only with the 'ro' mount option

Это связано с тем, что Windows 8 и 10 предлагают опцию «Быстрый запуск», которая зависит от «неполного» завершения работы. Вы можете отключить быстрый запуск, выполнив следующие действия:шагив разделе «Параметры электропитания».

UUID=01D9318DD8A39810  /run/media/$user/Win11   ntfs-3g uid=$user,gid=$user,umask=0022 0 0
UUID=01D9317B8D647610  /run/media/$user/Storage ntfs-3g uid=$user,gid=$user,umask=0022 0 2

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

& они будут видны в файловом менеджере как диски, так как они смонтированы в папке /run/media/$user Также не забудьте заменить $user на свое имя пользователя.

решение2

Если вы смонтируете раздел ntfs с опцией прав доступа, то chmod / chown будет работать

/dev/sda2   /mnt/excess ntfs-3g    permissions,locale=en_US.utf8    0   2

Тогда вы можете

sudo chown your_user:your_user /mnt/excess

Проще, чем uid,dmask,fmask.

решение3

У меня возникли некоторые проблемы с этим, потому что при перезагрузке имя диска меняется... (sda0 в sdb2)

Я исправил проблему, смонтировав их по UUID в fstab. Вы можете просмотреть UUID ваших жестких дисков, введя:sudo blkid

Сделайте резервную копию файла fstab:

sudo cp /etc/fstab /etc/fstab.orig

Обязательно трижды проверьте >>, если вы поставите хотя бы одну >, вы перезапишете свой fstab!

sudo blkid >> /etc/fstab

Если вы все еще ошиблись, вы можете заменить свой fstab на оригинальный:

sudo cp /etc/fstab.orig /etc/fstab

Далее создайте папку:

sudo mkdir /media/mydrivename

Настройте fstab:

sudo vim /etc/fstab

Не забудьте прокомментировать вывод blkid символом «#» в начале строк!

Добавьте это в файл fstab, UUID можно найти в блоке внизу, который вы вставили с помощью команды выше.media/имя_моего_дискаименно там должна быть смонтирована перегородка.

UUID=xxxxxxxxxxxxxxxxx   /media/mydrivename ntfs    permissions,locale=en_US.utf8    0   2

Это мой файл fstab:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda2 during installation
UUID=5d4940cf-5cf5-443a-be11-1f7e551962d1 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda1 during installation
UUID=84b7e5e9-08c3-4641-b28b-99e0255e604d none            swap    sw              0       0

# 500 GB Webserver harddisk from lr-serv-01
UUID=BA9A48D39A488E37 /media/hdd1 ntfs permissions,locale=en_US.utf8 0 2

# 2 TB Movie share harddisk from lr-serv-01
UUID=7EB09666B09624A5 /media/hdd2 ntfs permissions,locale-en_US.utf8 0 2

#/dev/sda1: UUID="10EC004DEC003010" TYPE="ntfs" 
#/dev/sda2: LABEL="system" UUID="88A4FE47A4FE3772" TYPE="ntfs" 
#/dev/sda3: LABEL="storage_01" UUID="BA9A48D39A488E37" TYPE="ntfs" 
#/dev/sdb1: LABEL="storage_02" UUID="7EB09666B09624A5" TYPE="ntfs" 
#/dev/sdc1: UUID="84b7e5e9-08c3-4641-b28b-99e0255e604d" TYPE="swap" 
#/dev/sdc2: UUID="5d4940cf-5cf5-443a-be11-1f7e551962d1" TYPE="ext4" 
#/dev/sdd1: LABEL="storage_spotnet" UUID="EC6E8F416E8F0394" TYPE="ntfs" 
#/dev/sdd2: LABEL="storage_backup_pcs" UUID="6C2699D026999BA0" TYPE="ntfs" 
#/dev/sdd5: LABEL="storage_series" UUID="7670ABF770ABBC6D" TYPE="ntfs" 
#/dev/sdd6: LABEL="storage_winmx" UUID="564AB81B4AB7F5B9" TYPE="ntfs" 

Перезагрузите систему, введя:

sudo reboot

Чтобы проверить, смонтирован ли раздел, можно ввести df -k.

Возьмите на себя ответственность:

sudo chown -R USERNAME:USERNAME /media/mydrivename

Сделал это на Ubuntu Server 14.04.01!

Надеюсь, этот ответ кому-нибудь поможет ;-)

решение4

Я использую следующее, которое, как я обнаружил, правильно дает мне разрешения при монтировании (диск NTFS из системы с двойной загрузкой):

Редактировать /etc/fstab:

UUID можно найти в /dev/disk/by-uuid/(обычно они сопоставлены с /dev/sd*)

Замените <your uuid>на свой UUID

UUID=<your uuid> /mnt/e ntfs auto,users,uid=1000,gid=1000,dmask=027,fmask=137 0 0

Связанный контент