Почему Linux/debian не дает писать на NTFS?
8951
17
Пытаюсь поправить раздел NTFS, загрузившись с gparted Live CD 0.3.7-7 (Linux debian 2.6.24). Монтирую раздел NTFS (/dev/hda1) - монтируется успешно, в статусе показывает "rw". Но ни одна модифицирующая операция на томе не проходит (not permitted). Выходит, что статус "rw" просто для вида, а FS монтируется, как R/O? Чтобы получить доступ на запись, нужно непременно использовать ntfs-3G?

В унихах я чайник.:хммм:
Евг. Музыченко
нужно непременно использовать ntfs-3G?
Да очень желательно!

P.s: лично я не рискую писать
в разделы Ntfs из Linux чего и вам советую
лично я не рискую писать
в разделы Ntfs из Linux чего и вам советую
Были прецеденты, или просто опасаетесь?
Евг. Музыченко
Лично у меня нет потому как не рисковал :хехе:
Были прецеденты
Раньше были, сейчас процесс записи в Ntfs уже достаточно хорошо отлажен, но береженого.....
woldemar
1. Не видел еще ошибок ни разу при записи в раздел ntfs...
2. Запись вам не разрешена, потому что прав у вас не хватает писать не на раздел, а в папку куда смонтирован раздел ntfs. Откройте консоль, выполните:
cd /media/"папка куда смонтирована ntfs - полный путь от корня" && ls -l <Enter>
и вывод команд в студию. Ключ -l - это латинская маленькая L, а не большая i =)
так же покажите вывод команды cat /etc/fstab
Запись вам не разрешена, потому что прав у вас не хватает писать не на раздел, а в папку куда смонтирован раздел ntfs.
А причина? Я работаю под рутом, права линукс тоже транслирует в рутовые (в ls -la видно rw------- root root). И почему тогда mount.ntfs-3g монтирует с полными правами?

root@debian:/tmp# mount /dev/hda1 /mnt/ntfs
root@debian:/tmp# mount
aufs on / type aufs (rw)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
/dev/hdc on /live/image type iso9660 (ro,noatime)
tmpfs on /live type tmpfs (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
/dev/fd0 on /mnt/fd type vfat (rw)
/dev/hda1 on /mnt/ntfs type ntfs (rw)
root@debian:/tmp# ls -la /mnt/ntfs/Users
total 32
drwx------ 1 root root 4096 2008-08-19 11:40 .
drwx------ 1 root root 8192 2008-08-19 00:00 ..
drwx------ 1 root root 8192 2008-08-08 09:11 Administrator
drwx------ 1 root root 0 2008-01-19 11:48 All Users
drwx------ 1 root root 8192 2008-01-19 11:48 Default
drwx------ 1 root root 0 2008-01-19 11:48 Default User
-rw------- 1 root root 174 2008-01-19 11:41 desktop.ini
drwx------ 1 root root 4096 2008-01-19 09:40 Public
root@debian:/tmp# mkdir /mnt/ntfs/Users/xxx
mkdir: cannot create directory `/mnt/ntfs/Users/xxx': Operation not permitted
root@debian:/tmp# umount /mnt/ntfs
root@debian:/tmp# /sbin/mount.ntfs-3g /dev/hda1 /mnt/ntfs
root@debian:/tmp# ls -la /mnt/ntfs/Users
total 33
drwxrwxrwx 1 root root 4096 2008-08-19 11:40 .
drwxrwxrwx 1 root root 8192 2008-08-19 00:00 ..
drwxrwxrwx 1 root root 8192 2008-08-08 09:11 Administrator
drwxrwxrwx 1 root root 0 2008-01-19 11:48 All Users
drwxrwxrwx 1 root root 8192 2008-01-19 11:48 Default
drwxrwxrwx 1 root root 0 2008-01-19 11:48 Default User
-rwxrwxrwx 1 root root 174 2008-01-19 11:41 desktop.ini
drwxrwxrwx 1 root root 4096 2008-01-19 09:40 Public
root@debian:/tmp# mkdir /mnt/ntfs/Users/xxx
root@debian:/tmp# rmdir /mnt/ntfs/Users/xxx
root@debian:/tmp# umount /mnt/ntfs
root@debian:/tmp#

Или в линуксе пользователь root как-то ограничен в правах? Я пробовал доступ через sudo - аналогично.

так же покажите вывод команды cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>

aufs / aufs rw 0 0
tmpfs /tmp tmpfs nosuid,nodev 0 0
Евг. Музыченко
Настоятельно не рекомендуется использовать ntfs в linux.
Hokum
Настоятельно не рекомендуется использовать ntfs в linux.
Если "использовать" - это "систематически", то согласен. А если "поправить несколько файлов" - то почему нет, коли линуксовые диски активно используются для починки виндов?
Евг. Музыченко
Поддержка ntfs "из ядра" есть только в режиме для чтения, не важно рут вы или простой смертный, если вы почитаете man mount полностью, то увидите что для монтирования с опцией ntfs нет опции rw )))
У вас же ntfs-3g монтирует для записи - используйте его, чем он вас не устраивает?
Mad_Dollar
есть ешшо ntfsprogs. Но он тоже AFAIK - в юзермоде работает. И там есть fsck для ntfs.
У вас же ntfs-3g монтирует для записи - используйте его, чем он вас не устраивает?
Теперь я уже просто пытаюсь понять, что там через где устроено.:улыб:
Евг. Музыченко
в связи с закрытостью формата NTFS и изучением его "на ощупь", поддержка mount -t ntfs ... сведена к режиму только для чтения. Пакет ntfs-3g разработан для монтирования разделов ntfs и в режиме записи тоже (включено по умолчанию). Можно указывать mount -t ntfs-3g ... если вам нужно в режиме и записи тоже и обязательно пользоваться "классическим" mount'ом.
Кстати, как в линуксе монтировать USB-флешки? В /dev есть кучка USB-устройств, но при попытке монтирования на все ругается, что устройства не блочные.
Евг. Музыченко
там поддержка usb через scsi - монтируйте dev/sda1, /dev/sdb1 ну и по аналогии
Спасибо, вроде монтируется. Правда, странно как-то: у меня есть два китайских SD-кардридера, оформленных "под флешку" (с одной стороны вставляется карточка, с другой торчит USB-разъем). Один покупался в прошлом году, другой в этом.

Когда одну и ту же карту (хоть 64 Мб, хоть гиг) вставляю через старый кардридер (Disk&amp;Ven_USB_2.0&amp;Prod_SD/MMC_Reader&amp;Rev__\6&amp;2a523921&amp;0) - смонтировать не получается, требует указать тип файловой системы, а когда указываю (vfat) - жалуется, что не может прочитать суперблок.

Втыкаю те же карточки через новый кардридер (Disk&amp;Ven_USB_2.0&amp;Prod_SD/MMC_Reader&amp;Rev__\812822222789&amp;0) - все отлично монтируется и читается/пишется.

При этом оба кардридера прекрасно работают и с XP, и через BIOS - например, гружу с карточки DOS 7.0.

С чем это может быть связано?
Евг. Музыченко
Ну видимо в дебиане неполная поддержка одной из ваших китайский поделок =)
попробуйте сначала попытаться смонтировать а потом выполнить dmesg | tail - что выдаст?
Ну видимо в дебиане неполная поддержка одной из ваших китайский поделок =)
Чудеса, однако: полез сейчас монтировать - так оно нормально монтирует и то, и другое.:улыб:Раньше пытался монтировать после каких-то других операций, а сейчас - сразу после загрузки. Хрен знает, от чего это зависит.:хммм: