У меня есть файл на моем жестком диске,
cd /media/celebisait/5AC69788C6976355
Там мой файл называется myFile.tar.gz
. Я делаю ls -l
,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Все вроде нормально. Тем не менее, когда я делаю,
$ sudo chmod 755 myFile.tar.gz
У меня нет никаких ошибок, но ничего не происходит, то есть, когда я делаю ls -l
снова, я получаю тот же вывод,
-rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz
Чмод не меняется .. почему?
PS: я пользуюсь Ubuntu 13.04.
Редактировать:
$ cd /media/celebisait/5AC69788C6976355
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 89873576 42976028 42325544 51% /
none 4 0 4 0% /sys/fs/cgroup
udev 16436736 4 16436732 1% /dev
tmpfs 3289260 920 3288340 1% /run
none 5120 0 5120 0% /run/lock
none 16446280 764 16445516 1% /run/shm
none 102400 52 102348 1% /run/user
/dev/sda1 94759 2208 92551 3% /boot/efi
/dev/sdb1 767999996 541212516 226787480 71% /media/celebisait/5AC69788C6976355
/dev/sdb2 767999996 1466472 766533524 1% /media/celebisait/54D09DBDD09DA5B0
Изменить 2:
$ cd /media/celebisait/5AC69788C6976355
$ mount
/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
/dev/sda1 on /boot/efi type vfat (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfsd-fuse on /run/user/celebisait/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=celebisait)
/dev/sdb1 on /media/celebisait/5AC69788C6976355 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sdb2 on /media/celebisait/54D09DBDD09DA5B0 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
Изменить 3:
$ sudo fdisk -l /dev/sdb1
Disk /dev/sdb1: 786.4 GB, 786432000000 bytes
255 heads, 63 sectors/track, 95611 cylinders, total 1536000000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x6e697373
This doesn't look like a partition table
Probably you selected the wrong device.
Device Boot Start End Blocks Id System
/dev/sdb1p1 ? 1936269394 3772285809 918008208 4f QNX4.x 3rd part
Partition 1 does not start on physical sector boundary.
/dev/sdb1p2 ? 1917848077 2462285169 272218546+ 73 Unknown
Partition 2 does not start on physical sector boundary.
/dev/sdb1p3 ? 1818575915 2362751050 272087568 2b Unknown
Partition 3 does not start on physical sector boundary.
/dev/sdb1p4 ? 2844524554 2844579527 27487 61 SpeedStor
Partition 4 does not start on physical sector boundary.
Partition table entries are not in disk order
Изменить 4:
$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x9c73d093
Device Boot Start End Blocks Id System
/dev/sdb1 2048 1536002047 768000000 7 HPFS/NTFS/exFAT
/dev/sdb2 1536002048 3072002047 768000000 7 HPFS/NTFS/exFAT
/dev/sdb3 3072002048 3907026943 417512448 7 HPFS/NTFS/exFAT
df
Командный результат был бы хорошdf
.mount
?blkid
.Ответы:
TL; DR;
ПРИМЕЧАНИЕ. На основании постоянного обновления этого вопроса ОП новой информацией было установлено, что проблема заключалась в том, что он монтировал раздел NTFS. Итак, № 3 ниже - это реальный ответ на его проблему. Я оставляю здесь 2 других метода для других, которые могут столкнуться с похожими проблемами, которые не используют раздел NTFS.
Идея № 1 - СМИ только для чтения (ISO / CD / DVD)?
Посмотрите на вывод
mount
команды, в частности что-то вроде этого:Устройство, под которым монтируется,
/media/celebisait
скорее всего, либо файл ISO, либо носитель CD / DVD. В этом случае вы не сможете получить доступ к записи, поскольку они обычно доступны только для чтения.Вы можете узнать, что смонтировано для чтения / записи и только для чтения, снова обратившись к
mount
выводу команды.пример
Обратите внимание на вывод в скобках. Первый аргумент перед первой запятой -
rw
это доступ к чтению / записи. Если бы это было устройство только для чтения, оно было быro
вместо этого.Альтернативный метод
С помощью команды вы также можете узнать, из какого устройства получено конкретное место на вашем жестком диске
df -h .
. Это покажет вам исходное устройство текущего каталога.Здесь мы видим, что я нахожусь в каталоге / подкаталоге, который является частью монтирования
/home
, которое поддерживается устройством/dev/mapper/fedora_greeneggs-home
.С именем устройства вы можете найти это также в выводе
mount
.пример
Идея № 2 - Но устройство смонтировано для чтения / записи!
Если вы обнаружите, что ваше устройство смонтировано для чтения / записи, вы можете попробовать установить PySDM - диспетчер устройств хранения, который позволяет полностью настраивать точки монтирования жесткого диска без ручного доступа к нему
/etc/fstab
. Это также позволяет создаватьudev
правила для динамической конфигурации устройств храненияшаги для чтения / записи
sudo apt-get install pysdm
sudo pysdm
celebisait
Источник: Как я могу изменить разрешения на внешних дисках?
Идея № 3 - NTFS разделы
Основываясь на выводе, который вы опубликовали для команды:
У вас есть разделы NTFS, что объясняет, почему вы не смогли найти
chmod
файлы на смонтированных разделах NTFS. Если вы используетеntfs-3g
модуль для доступа к разделу NTFS, вы должны иметь возможность читать / записывать диск, просто не влияя на его разрешения, используя обычный набор инструментов Unix.источник
celebisait
это его имя пользователя.Как вы упоминаете HDD.
Мой ответ таков: невозможно
chmod
создать файл в разделе NTFS или FAT32.Фактически
ext3
,ext4
такие атрибуты поддерживаются только файловой системой Unix / Linux .Это ясно показывает, что это
/dev/sdb1
был раздел NTFS.источник
Тип
fuseblk
и вывод fdisk указывает, что ваш раздел является разделом NTFS. Они не поддерживают схему разрешений файлов UNIX / LINUX, как и другие собственные файловые системы * NIX.Решение состоит в том, чтобы просто переместить файл в файловую систему, которая поддерживает эти разрешения, например, в корневой каталог. То, как вы хотите это сделать , просто не будет работать.
источник
У меня недавно была похожая проблема с разделом NTFS. Уже было сказано, что NTFS не может изменять разрешения, но эти разрешения можно установить при монтировании файловой системы. Учитывая идентификаторы групп или пользователей, которым вы хотите иметь доступ к файлам, вы можете сделать что-то вроде:
смонтировать man-страницу, чтобы вы могли адаптировать ее к своему варианту использования:
http://linux.die.net/man/8/mount
источник
Каталог, вероятно, только для чтения. Попробуй это:
источник