«Chmod» не работает

29

Я написал скрипт / bash и для его выполнения решил установить все права, поэтому я попытался

chmod 777 * //I had 3 text files in the directory, so that's ok

Затем, чтобы проверить результат я набрал

ls -l

Но права не изменились вообще.

У меня нет сообщений об ошибках, и это кажется странным. Я также пытался указать полный путь, но это не помогло.

Я также попытался сделать все эти шаги под root

Где может быть проблема?


Спасибо за помощь!


ls -la

drwx------ 1 gemma gemma 4096 июля  20 18:00 .
drwx------ 1 gemma gemma 4096 июля  20 16:35 ..
-rw------- 1 gemma gemma  407 июля  20 18:00 buildedfile.out   ;this is what I
                                                               ;need to launch
-rw------- 1 gemma gemma 4096 июля  20 17:21 kernel.bin
-rw------- 1 gemma gemma  350 июля  20 16:59 link.ld
-rw------- 1 gemma gemma 2025 июля  20 17:59 main.c
-rw------- 1 gemma gemma 1894 июля  20 17:34 start.asm
-rw------- 1 gemma gemma  457 июля  20 17:20 start.o

Вот что показывает ls после всего, что я пытался


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


Я использую Linux Mint 13 32-bit. На основном диске, где находятся эти файлы, у меня есть ext3, также пробовал на двух других разделах, где у меня есть NTFS и FAT32.


builddedfile.out - это терминальное приложение, написанное на C

Hrust
источник
Вы получили ошибку от chmodкоманды?
Фрэн
вы пробовали chmod 777 / path / to / folder / *
Пожалуйста, ls -la
опубликуйте
Попробуйте многословный переключатель:chmod -v 777 *
Деннис
Вы также можете попробовать chmod a+x *(или даже лучше chmod a+x buildedfile.out), если это работает, и вам просто нужно выполнить файл, может быть, это единственное, 777что вызывает проблемы: /
Flinth

Ответы:

42

У меня была такая же проблема, раздел, к которому я обращался, был разделом ntfs, смонтированным с ntfs-3g (без поддержки разрешений по умолчанию), и мне потребовалось время, чтобы запомнить это.

Я ожидаю, что chmod предупредит меня, но это не так, как в вашем случае.

Я знаю, что при использовании ntfs-3g на fstab есть опция, позволяющая устанавливать разрешения в разделе ntfs, как описано здесь .

Я надеюсь, что это помогает.

VinGarcia
источник
3
Это может произойти и с бродячей коробкой, которая была для меня. Итак, я изменил разрешение каталога изнутри хост-системы. Et voila, разрешение предоставлено на виртуальной машине. Спасибо за подсказку. :)
Арвид
tldr:mount -o permissions /dev/...
phil294
5

Пытаться: sudo chmod -R -f 777 *

Я думаю, что это может быть проблема с разрешением.

Mc NaN
источник
2

Вы уверены, что ваша файловая система не смонтирована только для чтения?

Введите команду mount для проверки. если в параметрах монтирования есть ro , вам необходимо перемонтировать вашу файловую систему с помощью следующей команды:

mount -o rw / dev / / точка монтирования

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

Если это не «гемма», это может быть причиной проблемы.

Rhon
источник
У меня была похожая проблема, и это действительно была проблема с моим жестким диском, правильно установленным. Я решил это, следуя этим шагам askubuntu.com/a/168424/20868
Джордж Мауэр