"Переместить в корзину" не появляется, но только "Удалить" в контекстном меню
Я не мог видеть опцию "Переместить в корзину" в контекстном меню, но видел только опцию "Удалить", которая делает файл полностью удаленным (Are you sure you want to permanently delete “file.txt”?
). Я тоже пробовал chown/chmod
на файлы и папки, которые я пытаюсь переместить в корзину. Так что я не могу удалить файлы через Sublime Text 3 тоже.
Если я сделаю sudo nautilus
и открыв проводник, я вижу опцию "Переместить в корзину", но затем не могу увидеть файл, который я переместил в корзину, используя эту опцию в "Корзина".
Например;
# kerem is superuser
sudo chown kerem:kerem /var/www/file.txt
sudo chmod 0777 /var/www/file.txt
Мусорная завивка;
kerem@kerem:~/.local/share$ ls -la | grep Trash
drwx------ 5 kerem kerem 4096 Ara 11 04:09 Trash
Используя 14.04 64bit, настольную версию и /home
а также /var/www
находятся на разных разделах, таких как sda1 и sda7 (оба ext4 /
-> /dev/sda6
а также /home
-> /dev/sda7
). Но нет двойной системы наряду с Ubuntu, как Windows.
Спасибо.
2 ответа
Потратив несколько часов, вот решение;
sudo -s
cd /
Определите идентификатор своей учетной записи - обычно это 1000
getent passwd "username"
получить UID и GID (для последующего использования)
UID=$(getent passwd "username" | awk -F: '{print $3}')
GID=$(getent passwd "username" | awk -F: '{print $4}')
Создайте новый каталог для мусора с идентификатором, который мы нашли выше
mkdir .Trash-1000
Измените права доступа к новому каталогу, чтобы мы могли получить к нему доступ
chmod 777 .Trash-1000 && chown ${UID}:$GID .Trash-1000
Кроме того, я могу сделать символическую ссылку в ~/.local/share/Trash
помнить, что мусора больше, поэтому нужно иногда опорожнять.:)
ln -s /.Trash-1000 ~/.local/share/Trash
У меня была аналогичная проблема с Gnome Files.
Для всех папок и файлов в моем домашнем каталоге Gnome Files показывает «Переместить в корзину» в контекстном меню. Но для файлов/папок на другом устройстве в контекстном меню отображается «Удалить навсегда» . Например, если папка /orange смонтирована в отдельный раздел/диск, то для всех файлов/папок под ней опция « Переместить в корзину» не будет включена.
Это связано с тем, что Files автоматически создает каталог Trash в $HOME/.local/share. Однако, поскольку для точки монтирования /orange нет мусора, функция «Переместить в корзину» для /orange не включена. Чтобы решить эту проблему, создайте папку «Корзина» для каждого пользователя в /orange. Если uid пользователя foo равен 1000, создайте /orange/.Trash-1000 и измените его владельца на foo.
sudo mkdir /orange/.Trash-1000
sudo chown foo:foo /orange/.Trash-1000
Теперь параметр «Переместить в корзину» включен в контекстном меню всех файлов/папок в каталоге /orange.