Как ограничить пользователей при удалении файлов из корзины?

Я хочу запретить пользователям удалять файлы из корзины. Также я не хочу, чтобы мои пользователи удаляли файлы в обход мусора. Есть ли способ сделать это?

7
задан 2 April 2011 в 11:25

5 ответов

Часть первая

Мы изменим атрибуты загруженных файлов, чтобы только root мог вернуть их обратно и затем удалить.

1) Отредактируйте файл /etc/rc.local так, чтобы он выглядел так:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing 
# but desgua has changed it 
# to keep a copy of trashed files
while [ "$var1" != "end" ]
do
sudo chattr +i /home/user_name/.local/share/Trash/files/* 
sleep 2
done
exit 0

4) Сделайте его исполняемым.

sudo chmod +x /etc/rc.local

5) Перезагрузитесь или выйдите из системы и снова войдите в систему.

PS-1: просто для простоты использования процессора изменение атрибута производится каждые 2 секунды. Вы можете изменить это, как хотите.
ps-2: чтобы удалить атрибут "i" (неизменяемый), просто выполните:

sudo chattr -i /home/user_name/.local/share/Trash/files/*

Часть вторая

Чтобы отключить обход мусора.

1) Откройте gconf-редактор.

gconf-editor

2) Перейдите в / apps / nautilus / preferences / enable_delete, щелкните по нему правой кнопкой мыши и выберите «Установить обязательное».

Часть третья
Отключение Shift + Del

Мы модифицируем раскладку клавиатуры.

1) Создайте файл

nano ~/.Xmodmap

2) Вставьте его и сохраните:

keycode 119 = Delete BackSpace

obs .: используйте «xev», чтобы проверить, действительно ли вы используете клавиатуру Del is "keycode 119"

3) Мы уверены, что не хотим, чтобы этот файл был удален, поэтому:

 sudo chattr +i ~/.Xmodmap

5) Перезагрузитесь, выйдите из системы или выполните:

xmodmap ~/.Xmodmap

Теперь сделано!

  • Последнее редактирование 04.07.2011
0
ответ дан 2 April 2011 в 11:25

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

0
ответ дан 2 April 2011 в 11:25

Ответ Десгуа покрыл все ваши требования (и должен быть принят ответ, ИМХО), но я думаю, что важно выделить несколько моментов:

  • Независимо от того, что вы делаете с файлами на trashcan вы будете редактировать файлы и их разрешения в управляемой пользователем папке ($HOME/.local/share/Trash). А поскольку вы не можете удалить разрешения в $ HOME, пользователь может отменить любые изменения.

  • То же самое касается конфигураций Gnome, таких как настройки nautilus и привязки клавиатуры. В лучшем случае вы можете изменить поведение по умолчанию , но, опять же, любой пользователь может переопределить эти настройки для своего собственного сеанса.

  • Как насчет rm и подобных команд консоли? rm является лишь примером, но есть множество других команд, которые пользователь может использовать для удаления (или уничтожения) своих собственных файлов. Планируете ли вы вообще удалить Терминал? А как насчет ALT + F2 (Запуск приложения) в Gnome?

Моя точка зрения такова: неважно, что делать, файлы пользователей, сеанс пользователя, и они смогут обойти любую защиту, которую вы делаете, если они хотят (и знают, как). Ответ Десгуа удивителен, но имейте в виду, что он только косметический, полезный только если у вас нетехнические пользователи. Это должно быть удобство , а не реальная мера безопасности.

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

Тем не менее, почему вы этого хотите? Для безопасности или удобства? Разве правильное обучение Linux для ваших пользователей не намного лучше (и не проще), чем это?

0
ответ дан 2 April 2011 в 11:25

Я не проверил это полностью, но вы должны быть в состоянии сделать что-то вроде

chmod -r $HOME/.local/share/Trash/files

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

Вам необходимо перезапустить сеанс / компьютер, чтобы применить это изменение.

0
ответ дан 2 April 2011 в 11:25

Мусорная корзина в Ubuntu - это просто специальный подкаталог в домашней папке пользователя, который по определению принадлежит этому пользователю. Даже если вы измените права доступа к файлу, пользователь может изменить их обратно, а затем удалить файл.

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

0
ответ дан 2 April 2011 в 11:25

Другие вопросы по тегам:

Похожие вопросы: