Как работает корзина для мусора, и где я могу найти официальную документацию, ссылку или спецификацию для нее?

Когда я пытался управлять мусорным баком с подключенных томов NTFS, я прочитал справку FreeDesktop.org .

Побродив и выполнив несколько тестов, я понял, что Ubuntu / Gnome не соответствует спецификациям на 100%. Вот почему:

  • Для не / разделов он всегда использует <driveroot>/.Trash-<uid>, Он никогда не использовал <driveroot>/.Trash/<uid>, даже когда я создал это заранее. Хотя это работает, это раздражает: если у меня 15 пользователей, я получаю 15 /.Trash-xxx папок на моем диске, в то время как другой подход все равно дает одну папку (с 15 подпапками). Это «загрязнение» в моих дисках очень неприятно. И спецификации говорят: « Если каталог $topdir/.Trash отсутствует, должен использоваться каталог $topdir/.Trash-$uid ». Ну, он присутствует, так почему он никогда не использует его?

  • Корневая корзина не не работает , по крайней мере, не из коробки. Откройте nautilus от имени пользователя root и нажмите на корзину; это дает ошибку. Попробуйте удалить любой файл, он говорит, что "он не может перейти в корзину". Хорошо, я знаю, что это можно исправить, создав /root/.local/share. Но в спецификациях говорится: « Каталог« Домашняя корзина »ДОЛЖЕН быть автоматически создан для любого нового пользователя. Если этот каталог необходим для операции очистки, но он не существует, реализация ДОЛЖНА создать его автоматически, без каких-либо предупреждений или задержек. [ 1123]». Почему ошибка то? Ошибка?

  • Почему я должен изменить записи /etc/fstab для смонтированных томов, добавив такие параметры, как uid и guid, если тома уже смонтированы как RW для всех?

Это лишь некоторые примеры отклонения от стандарта. Итак, вопрос:

«Если Ubuntu не придерживается 100% спецификации, КАК точно работает мусор? ГДЕ я могу найти техническую ссылку для реализации Ubuntu из мусора? "

Кстати: если Ubuntu действительно следует спецификациям, пожалуйста, скажите мне, что я делаю неправильно, особенно в отношении проблемы /.Trash-<uid> и /.Trash/<uid>.

Спасибо!

РЕДАКТИРОВАТЬ:

Дополнительная информация:

  • Если данный fs не поддерживает Sticky Bit (VFAT, NTFS), вероятно, он также не имеет разрешений (по крайней мере, VFAT, конечно, нет). Так что же мешает одному пользователю очистить /, восстанавливая ./Trash-xxx других пользователей? Если кто-то может читать / писать свой собственный Trash, то можно делать то же самое для всего диска, включая другие, правильно? Или у Gnome есть какая-то «дополнительная» защита папок ./Trash-xxx в VFAT / NTFS fs?

  • Если Linux может «эмулировать» права доступа к файлам при монтировании NTFS путем редактирования /fstab Опции uid и gid, могут ли они также "эмулировать" бит? Я действительно предпочел бы использовать формат /.Trash/xxx ...

  • Для корневого вопроса: для раздела / я могу использовать trash в качестве root, и он переходит к /root/.local/share/Trash. Но если я нажму на Nautilus "Trash" (как root), я получу ошибку. Не так ли? Таким образом, файлы корректно удаляются, но я не могу получить к ним доступ. Все, что я могу сделать, это вручную «очистить» их (удалив файлы в /root/.local/share/Trash), но восстановление будет очень сложным (открытие информационных файлов и перемещение вручную и т. Д.).

  • Для не / разделов (или, по крайней мере, для VFAT / NTFS) я даже не могу использовать корзину как корень: она не создает папку ./Trash-0, она просто говорит: «Невозможно удалить корзину, хотите навсегда удалять?" Почему?

  • О fstab: я использую его для постоянного монтирования моих разделов NTFS. У меня их несколько, и если не «предварительно смонтированных», то они действительно загромождают рабочий стол и / или Nautilus. Я бы предпочел, чтобы он был предварительно смонтирован, интегрирован в мою файловую систему, в монтирования, такие как /data, /windows/xp, /windows/vista и т. Д., И оставил бы /media и его гибкость «монтировать / отключать» только действительно съемные диски.

Итак, если Ubuntu / Gnome действительно следует спецификации, есть ли способ исправить проблемы с корнем и «эмулировать» залипший бит для (по крайней мере) моих фиксированных разделов NTFS с fstab?

14
задан 19 June 2013 в 14:20

2 ответа

Насколько я понимаю, GNOME правильно использует .Trash - если вы заглянете в исходный код gio / glocalfile.c, вы увидите, что он пытается использовать каталог .Trash, если он существует. Однако обратите внимание, что каталог должен иметь правильные разрешения, чтобы пользователи могли безопасно хранить в нем мусорные файлы (и здесь, в смысле безопасности, я имею в виду, что другие пользователи не смогут восстанавливать файлы, удаленные пользователем). Для этого GNOME требует, чтобы в каталоге .Trash был установлен залипший бит - см. Каталоги мусора, примечание (1) в спецификации мусора FreeDesktop.Org.

Основная проблема, связанная с описанным выше подходом, заключается в том, что большинство обнаруженных вами сменных носителей - это FAT, который не поддерживает залипание, поэтому единственный способ безопасно справиться с этим - использовать каталог мусора для каждого пользователя. [ 111]

Что касается корневого мусора - я не могу воспроизвести описанную вами проблему, мне кажется, она хорошо работает.

Что касается / etc / fstab - я не уверен, в чем проблема: вам нужно возиться с fstab, если вы не хотите полностью контролировать, где смонтирована внешняя файловая система. Обычно съемный носитель монтируется автоматически при обнаружении в / media для пользователя, который в данный момент активен, но затем он недоступен любому другому пользователю. Если вы хотите другую настройку, вам следует связываться с файлом конфигурации. Я не понимаю, как это относится к мусору.

0
ответ дан 19 June 2013 в 14:20

Немного опоздал, но, если кому-то интересно, у меня возникла та же проблема, но по совету я скачал Dolphin. Затем я провел Дельфина через sudo dolphin в терминале.

Теперь, щелкнув правой кнопкой мыши по Wastebin и выбрав Empty Wastebin , файлы удаляются, а не выдают ошибку.

Это на самом деле не относится к вашему вопросу, но это просто работа вокруг.

0
ответ дан 19 June 2013 в 14:20

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

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