0
Найти на сайте: параметры поиска

 

 

Запрет только на удаление папки

  
Сообщений: 0
Всем привет. С недавних пор начал изучать Linux Mint Cinnamon, который установил на VB и вот столкнулся с одной проблемой, никак не могу сделать так, что бы нельзя было удалить или переименовать папку, но добавлять, удалять и т.д. в ней можно было бы, т.е. данные права должны распространяться только на одну папку, пробовал различные варианты, как через Chmod так и через Chattr, желаемого не достиг, либо папка полностью блокировалась. Если кто то решал подобную задачу и знает как это сделать прошу поделиться секретом. smile
Сообщений: 0
я думаю, что это нужно делать через группы
Сообщений: 0
Просто интересно. В чём смысл?
Редактировалось: 1 раз (Последний: 1 марта 2016 в 00:07)
Сообщений: 0
Enriki:

Просто интересно. В чём смысл?

Смысл в том, что бы сделать в домашней папке, по принципу диска D и E которые нельзя было бы удалить и туда потом ложить всю необходимую информацию.
Сообщений: 0
sizonov_stas:

я думаю, что это нужно делать через группы

С правами я уже пробовал эксперементировать, что то пока эффекта нет.
Сообщений: 0
на папку - chattr +u, на файлы в ней - 766 или 777 - и удалить ее будет нельзя, в отличии от её содержимого.
сhocobo@htpc:~$ sudo mkdir /tmp/test_folder # создадим папку
chocobo@htpc:~$ sudo chmod 777 /tmp/test_folder/ # разграничим права
chocobo@htpc:~$ ls -l /tmp/ | grep test_folder # проверим
drwxrwxrwx 2 root root 4096 марта 1 00:07 test_folder
chocobo@htpc:~$ sudo chattr +u /tmp/test_folder/ # + аттрибут undeletable
chocobo@htpc:~$ rm -rf /tmp/test_folder # попробуем удалить
rm: невозможно удалить «/tmp/test_folder»: Операция не позволена
chocobo@htpc:~$ touch /tmp/test_folder/111 # создадим файл внутри
chocobo@htpc:~$ ls -l /tmp/test_folder/111 # проверим
-rw-rw-r-- 1 chocobo chocobo 0 марта 1 00:18 /tmp/test_folder/111
chocobo@htpc:~$ rm -rf /tmp/test_folder/111 # теперь удалим его
chocobo@htpc:~$ ls -l /tmp/test_folder/
итого 0 # вуаля
Сообщений: 0
Вот те ман по правам
Сообщений: 0
Chocobo:
Ничего не выходит, на строке:

chocobo@htpc:~$ rm -rf /tmp/test_folder

Всё удаляется, да и не совсем понятно как можно установить права на не существующие файлы внутри этой папки, вообщем похоже ситуация ведёт к тому, что бы на неё забить, так как похоже, что это просто не реализуемо в данной системе.
Сообщений: 0
Checks, вы в системе работаете от рута или от пользователя?
sudo mkdir /home/test && sudo chmod 777 /home/test
пользователь будет создавать/удалять файлы, но директорию удалить не сможет
Сообщений: 0
Checks:
Всё удаляется, да и не совсем понятно как можно установить права на не существующие файлы внутри этой папки, вообщем похоже ситуация ведёт к тому, что бы на неё забить, так как похоже, что это просто не реализуемо в данной системе.
В общем ситуация ведет к тому, что Вы ни фига не разобрались - изучать ОС не пяти минут дело. Для освоения только основ нужно пару недель. Вы же, насколько я понимаю, в мире профессиональных Unix систем вообще не шарите.
Сообщений: 0
Checks, листинг кода в цитате я не из головы сочинял. Значит оно все-таки реализуемо.
Проверь на любом другом файле запрет на удаление через chatrr +u
Сообщений: 0
Chocobo:

Checks, листинг кода в цитате я не из головы сочинял. Значит оно все-таки реализуемо.
Проверь на любом другом файле запрет на удаление через chatrr +u

Возможно я что то делаю не так, но:


Потом захожу в графический интерфейс, выделяю папку и она благополучно улетает в корзину.
Сообщений: 0
Я Вам давал ссылку на ман, прочитав который можно было допетрить что
надо что бы у пользователя не было права на запись в родительский каталог.
если у пользователя нет права писать в /home он не сможет переименовать или удалить содержимое /home
555 для /home
777 для Диск D
Сообщений: 0
Уважаемый автор, Вам бы стоило разобраться с тем, как вообще работают права в *nix

Итак

Код BASH:
  1.  
  2. mkdir -p FORUNDELETEDIR/D
  3. mkdir FORUNDELETEDIR/<another dir>
  4. ...
  5. chmod -R 777 FORUNDELETEDIR
  6. chmod 555 FORUNDELETEDIR
  7.  
Для того, что бы удалить любую папку в FORUNDELETEDIR сначала придется делать chmod 755 или 777 для нее и тоько потом удалять то, что находится внутри, второй вариант удалить через sudo. Это же касается и добавления новых папок внутрь

P.S. Только не пойму, для чего такие финты? Если Вы собираетесь раздавать содержимое по Samba, то там можно тоже аккуратно настроить права, вплоть до того, что у каждого юзера будет свой конфиг
Редактировалось: 1 раз (Последний: 28 марта 2016 в 13:28)
В начало страницы 
|
Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.