Как использовать мусорную корзину gnome для файлов в другом разделе?

15

У меня есть файлы в отдельном разделе, который не подключен /home, а только связан с ним. Как мне удается использовать корзину gnome в этих файлах?

Например:

раздел 2: подключен /data, с папкой/data/myname

Раздел 1: установлен на /, со своим /homeи /home/mynameвнутри него /home/myname/Desktopи /home/myname/Documentsссылки на /data/myname/Desktopи /data/myname/Documentсоответственно. Предположим, у меня есть файл /data/myname/Document/example.txt.

Когда я использую nautilus и пытаюсь удалить /home/myname/Document/example.txt, Nautilus говорит, что он не может использовать мусор. Мне потребовалось некоторое время, чтобы понять это, потому что он example.txtнаходится в другой файловой системе. Я не знаю, может ли быть определен другой каталог мусора в этом разделе, чтобы gnome мог использовать его?

Я мог бы смонтировать раздел 2, как /homeс почти симулированными результатами - я делал это долгое время - но каждый раз, когда я меняю установку Linux / Ubuntu, многие файлы конфигурации в моем доме ломаются. Но в итоге эта новая схема не позволяет мне использовать мусорную корзину gnome.

alfC
источник

Ответы:

8

Файловым менеджерам GNOME требуется место для размещения файлов. Копирование их в 1-й раздел будет очень плохой производительностью. Поэтому он пытается поместить их в папку /.Trash-$UID. Без прав доступа к этой папке нет мусора.

Запустите этот bash в корне раздела как пользователь, которому нужна корзина.

sudo mkdir .Trash-$UID && sudo chown $USER:$USER .Trash-$UID

Примечание. Если есть .Trashпапка rw , Nautilus может автоматически создать папку для мусора пользователя ( /.Trash/$UID). Я не пробовал это, просто видел это в некоторых журналах. Есть проблемы безопасности с публичными мусорами. YMMV.

Майкл Коул
источник
В Ubuntu 18.04 сделайте следующее: cd <mount-point-of-new-partition> && sudo chown root.root .Trash && sudo chmod ug-s .Trash && sudo chmod 1777 .Trash
Амил Вадувавара
12

Когда вы удаляете файл на съемном устройстве хранения, GNOME автоматически создает папку для мусора в корне устройства. Если ваш идентификатор пользователя 1000, он создаст файл с именем /data/.Trash-1000. Когда вы отправляетесь в корзину в Nautilus, вы видите объединение всех папок корзины для вашего пользователя на всех подключенных файловых системах.

Похоже, это проблема с разрешениями. GNOME пытается создать папку для мусора в корне устройства, но , возможно , ваш пользователь имеет доступ к отдельным файлам только под корень. Самый простой способ сделать это - сделать вещь более доступной. В терминале попытайтесь sudo chmod 777 /dataсделать корень диска с данными доступным для редактирования любому пользователю. В качестве альтернативы, вы можете сделать sudo chown yourname /dataдля аналогичного эффекта.

Дилан Макколл
источник
на месте! Как вы сказали, просто нужно было сделать 'cd / data; chmod o + w. ', (я думаю, это также поможет вручную создать /data/.Trash-1000 с нужными разрешениями). Работал сразу. (jeje, теперь я не смог найти корзину в 11.10! хорошо, она находится на левой панели в Nautilus)
alfC
1
Мой SSD смонтирован как / и некоторые папки в моем пользовательском / домашнем монтировании (на механическом жестком диске) вставлены в SSD-диск. Хотя ваше исправление (я создал .Trash-1000 из /) позволяет мне использовать опцию перемещения в корзину, я не вижу файлы, которые я удалил, внутри корзины Gnome в Nautilus. Какие-либо предложения?
Джеймс МакМэхон
3
По соображениям безопасности я бы предложил создать папку .Trash-XXXX вручную и дать ей правильные разрешения (755 или 750) для идентификатора пользователя XXXX вместо использования 777 для корневого каталога другого раздела.
Мультяшка Верстрален
1
@James: вам нужно создать папку .Trash-XXXX в корневом каталоге раздела mounter, например / mnt / data, а не в /.
Toon Verstraelen