Предупреждение о невозможности переместить файл в корзину при попытке удалить файл в Nautilus

Предупреждение о невозможности переместить файл в корзину при попытке удалить файл в Nautilus

Я пытаюсь удалить файлы в Nautilus, и каждый раз при попытке удалить один из них появляется следующее сообщение:

Невозможно переместить файл в корзину. Хотите удалить его немедленно?

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

Проблема касается разделов NTFS, внешних дисков, а также файловых систем Linux.

По каким причинам «Наутилус» не может быть отправлен на свалку?

введите описание изображения здесь

решение1

(Что касается сменных носителей, то это не случай пользователя, поскольку это была ошибка, исправленная с помощью обновления)

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

В этом случае у вас есть 2 варианта: вырезать файлы в файловой системе Linux и удалить их там (что противоречит целинажмите удалить и файлы будут удалены) или убедитесь, что вам назначены правильные разрешения при монтировании диска.

Создайте новое правило для автоматически монтируемых дисков с помощью этих строк, используйте для этого ваш любимый текстовый редактор.

gksudo gedit /etc/udev/rules.d/10-my-media-automount.rules

# vim:enc=utf-8:nu:ai:si:et:ts=4:sw=4:ft=udevrules:
#
# /etc/udev/rules.d/10-my-media-automount.rules

# start at sdb to ignore the system hard drive
KERNEL!="sd[b-z]*", GOTO="my_media_automount_end"
ACTION=="add", PROGRAM!="/sbin/blkid %N", GOTO="my_media_automount_end"

# import some useful filesystem info as variables
IMPORT{program}="/sbin/blkid -o udev -p %N"

# get the label if present, otherwise assign one based on device/partition
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# create the dir in /media and symlink it to /mnt
ACTION=="add", RUN+="/bin/mkdir -p '/media/%E{dir_name}'"

# global mount options
ACTION=="add", ENV{mount_options}="relatime"
# filesystem-specific mount options (777/666 dir/file perms for ntfs/vfat) 
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},gid=46,dmask=000,fmask=111,utf8"

# automount ntfs filesystems using ntfs-3g driver
ACTION=="add", ENV{ID_FS_TYPE}=="ntfs", RUN+="/bin/mount -t ntfs-3g -o %E{mount_options} /dev/%k '/media/%E{dir_name}'"
# automount all other filesystems
ACTION=="add", ENV{ID_FS_TYPE}!="ntfs", RUN+="/bin/mount -t auto -o %E{mount_options} /dev/%k '/media/%E{dir_name}'"

# clean up after device removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l '/media/%E{dir_name}'", RUN+="/bin/rmdir '/media/%E{dir_name}'"

# exit
LABEL="my_media_automount_end"

Перезагрузите компьютер, и ваши диски NTFS будут смонтированы с использованием этого пользовательского правила. Чтобы изменить разрешения для смонтированного диска, взгляните на строку $env{mount_options},gid=46,dmask=000,fmask=111,utf8". Опция gid=46должна монтировать диск NTFS с привилегиями группы ( 46(plugdev)это группа, которая позволяет пользователю монтировать диск в Ubuntu), fmaskа также dmaskнастройки для записи, создания и удаления файлов/папок на диске.

Измените его в соответствии с потребностями. Вам нужно будет отсортировать другие файловые системы самостоятельно в соответствии с каждым типом, но это должно помочь вам начать.

(Источник udevправила)

решение2

Для случаев, когда пользователь не может удалить файл, хранящийся в несъемном разделе (Ubuntu 14.04)

Как отметил Бруно Перейра, такое поведение происходит из-за того, что у пользователя нет прав на запись в точке монтирования раздела (в случае OP — /var), поэтому каталог для корзины не может быть создан.

В этом случае OP не может переместиться в корзину, файлы которой хранятся в разделе /var. Чтобы решить эту проблему:

$ cd /var
$ sudo mkdir .Trash-1000
$ chown user:group .Trash-1000

Вам придется заменить:

  • 1000по вашему идентификатору пользователя (см. номер, следующий за вашим именем пользователя в файле /etc/passwd)
  • user:groupпо вашему имени пользователя и группе соответственно

решение3

16.04 я столкнулся с той же проблемой. Решением было открыть Disks, нажать на раздел NTFS -> на маленькую иконку шестеренок под ним (Дополнительные параметры раздела) -> "Изменить параметры монтирования" и добавить "uid=1000" (без кавычек, через запятую) в строку над точкой монтирования (см. рисунок).Изменение параметров монтирования fstab с помощью утилиты Disk

uid следует установить на альтернативное число из 1000, возвращаемое командой "id" из терминала, если вы не являетесь исходным пользователем, как уже упоминалосьздесь.

решение4

Если раздел NTFS, то добавьте uidи gidв <options>раздел записи вашего раздела, /etc/fstabчтобы Ubuntu сделала вас владельцем раздела.

Сначала проверьте свой идентификатор, введя его idв терминале.

$ id

Затем сложите ваши uidи gidследующим образом, предположив здесь 1000 -

/dev/disk/by-uuid/xxxx /mnt/Data ntfs-3g defaults,windows_names,uid=1000,gid=1000 0 0

Теперь, используя Disksприложение GUI, размонтируйте и смонтируйте раздел.
Если размонтировать не удалось, то закройте все приложения, которые могут использовать раздел, такие как файловый менеджер, терминал и т. д.
Если размонтировать все еще не удалось, то выйдите из системы и войдите в систему, чтобы изменения отразились.

Перепроверьте его, войдя cdв раздел, и введите ls -alкоманду.

Связанный контент