LINUX.ORG.RU

Можно ли так, что бы на директорию были права 777, а удалять оттуда файл мог только root ?

 ,


0

1

Собственно $сабж.

#2moderators: Если считаете, что тема не для толксов - не удаляйте, а переместите. Благодарен.

Перемещено mono из talks

★★★★★

Последнее исправление: dada (всего исправлений: 1)

ты, для начала, опиши, что тебе нужно, а не то, какую реализацию этому ты видишь!

aol ★★★★★
()

перефразирую вопрос: какие права нужно установить на каталог, чтобы создавать и редактировать файлы могли все пользователи, а удалять только root? ответа я не знаю если что =)

Komintern ★★★★★
()
Ответ на: комментарий от Eddy_Em

chmod a+t … и удалять сможет лишь создатель.

Спасибо огромное тебе.
Где-то в подсознании знал что где-то такое читал.
Ещё раз спасибо.

dada ★★★★★
() автор топика
Ответ на: и. о. к. о. от xsektorx

дай директории права 777, а файлу 700 и назначь рута овнером

Не поможет, учи мат.часть

sdio ★★★★★
()

что бы на директорию были права 777, а удалять оттуда файл мог только root ?

Нельзя в рамках posix file permissions

sdio ★★★★★
()
Ответ на: комментарий от Eddy_Em

и удалять сможет лишь создатель.

А ведь он просил только рута, ну да кому интересны фантазии ТСа :-)

sdio ★★★★★
()
Ответ на: комментарий от dada

И в чем смысл 777 если файлы создает рут?

Сделай 755 и забудь

sdio ★★★★★
()
Ответ на: комментарий от Komintern

перефразирую вопрос: какие права нужно установить на каталог, чтобы создавать и редактировать файлы могли все пользователи, а удалять только root? ответа я не знаю если что =)

таких прав нет, и быть НЕ МОЖЕТ. В смысле UNIX-прав.

Можешь использовать ACL, а лучше возможности демона (например так можно настроить proftpd)

drBatty ★★
()
Ответ на: и. о. к. о. от xsektorx

дай директории права 777, а файлу 700 и назначь рута овнером

в таком случае любые файлы может удалять и создавать кто угодно. Это совсем не то, чего хочет ТС.

drBatty ★★
()
Ответ на: комментарий от Komintern

перефразирую вопрос: какие права нужно установить на каталог, чтобы создавать и редактировать файлы могли все пользователи, а удалять только root?

для EXT4 ты можешь установить атрибут append-only на каталог. Тогда создавать файлы может кто угодно, а удалять может только root, да и то, только после того, как этот атрибут снимет. Вопрос о том, кто сможет редактировать файл будет решать root или создатель данного файла. По умолчанию редактировать может создатель и рут, а читать кто угодно.

drBatty ★★
()

Дай права на запись и все. Скопировать сможет - прочитать нет. Для группы http права только на чтение - просмотр через веб. А удалять может только рут.

AiFiLTr0 ★★★★★
()
Ответ на: комментарий от sdio

Нельзя в рамках posix file permissions

Вот тут http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/stat.h.html сказано, что S_ISVTX бит, который решает задачу, является XSI расширением к POSIX.1-2001, которое хоть и не обязательно к реализации для получения сертификатика, но в стандарте содержится.

kim-roader ★★
()
Ответ на: комментарий от Komintern

А права на редактирование не идентичны разве правам на уделение ?

an-ha ★★
()
Ответ на: комментарий от an-ha

Какие же вы тупые

$ ls -ld testdir/
drwxrwxrwx 2 root root 6 Aug 30 10:55 testdir/
$ ls -l testdir/testfile
-rwx------ 1 root root 0 Aug 30 10:55 testdir/testfile
$ whoami
sergey
$ rm testdir/testfile
rm: remove write-protected regular empty file `testdir/testfile'? y
$ ls -l testdir/testfile
ls: cannot access testdir/testfile: No such file or directory

sdio ★★★★★
()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от sdio
test@home:~$ ls -ld testdir/
drwxrwxrwt 2 root root 4096 Авг 30 13:04 testdir/
test@home:~$ ls -l testdir/testfile 
-rw-r--r-- 1 root root 0 Авг 30 13:04 testdir/testfile
test@home:~$ rm testdir/testfile 
rm: удалить защищенный от записи пустой обычный файл «testdir/testfile»? y
rm: невозможно удалить «testdir/testfile»: Операция не позволяется
test@home:~$ ls -l testdir/testfile 
-rw-r--r-- 1 root root 0 Авг 30 13:04 testdir/testfile
test@home:~$

Такие же права на /tmp, попробуй удалить от туда рутовский файл

at ★★
()
Ответ на: комментарий от at

В каком данном случае? Если создатель рут, то вообще ничего не надо делать, достаточно дать 755 на дир.

sdio ★★★★★
()
Ответ на: комментарий от sdio

Насколько понял ТС нужна директория, в которой два юзверя (не рут, с ним все понятно) могут создавать/удалять свои файлы, но не чужие. Возможно ошибся, вопрос задан странно.

at ★★
()
Ответ на: комментарий от at

На мой вопрос уже ответили.
Признаю что я вопрос составил не очень корректно, но нужный ответ я получил.

dada ★★★★★
() автор топика

Отдельный каталог под 700 для рута, хардлинки на каждый файл и по inotify пересоздание (ln) удалённых из исходного (777) каталога. PROFIT.

schizoid ★★★
()
Ответ на: комментарий от xsektorx

уже даже пример привел Можно ли так, что бы на директорию были права 777, а удалять оттуда файл мог только root ? (комментарий)

З.Ы. разрешения на файл не влияют на возможность его удаления, т.к. надо смотреть на права объекта его содержащие, а это директория и на эту директорию есть права у всех и на всё (777)

sdio ★★★★★
()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от xsektorx

Удаление файла с правами на файл не связано. Ведь пользователь при удалении файла меняет не файл, а директорию.

PolarFox ★★★★★
()
Ответ на: комментарий от sdio

Не понял, виноват.

Это что, вот это

-rwx------ 1 root root

пользователь удалил ?

Никогда не познать всего.

an-ha ★★
()

Если нельзя удалять, то можно попробовать симлинки в другое место. Если нужно, чтобы нельзя было удалить ни один файл, даже только что созданный - fuse+ftp или своя фс на fuse. Fuse может всё.

mittorn ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.