Não é possível mover o arquivo para o lixo ao tentar excluir um arquivo no Nautilus

14

Eu estou tentando excluir arquivos no Nautilus e toda vez que eu tento excluir um, ele sempre me dá essa mensagem:

Cannot move file to trash, do you want to delete immediately?

Então, isso me traz várias perguntas. Tudo o que quero é que, quando pressiono Delete no teclado, ele seja enviado automaticamente para a lixeira. Não me perguntar todas as vezes.

O problema está relacionado a partições NTFS, unidades externas, mas também incluem sistemas de arquivos Linux.

Quais são os motivos pelos quais os nautilus não conseguem se deslocar para o lixo?

    
por Luis Alvarado 03.11.2011 / 17:09

5 respostas

10

(Sobre mídia removível, não o caso do usuário, já que foi um bug resolvido com uma atualização)

Esse comportamento ocorre porque, quando a unidade está montada, você não é considerado o proprietário, portanto, uma lixeira não pode ser criada. Nenhum uid ou gid foi atribuído e, como uma pasta da lixeira não pode ser criada na unidade, você só tem a opção de excluir os arquivos automaticamente.

Nesse caso, você tem duas opções: cortar os arquivos no sistema de arquivos do Linux e excluí-los (o que anula o propósito de pressionar excluir e os arquivos serem excluídos ) ou verifique se você recebeu as permissões corretas ao montar a unidade.

Crie uma nova regra para suas unidades montadas automaticamente com essas linhas, use seu editor de texto favorito para isso

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"

Reinicialize seu computador e suas unidades ntfs serão montadas usando essa regra personalizada, para alterar as permissões para a unidade montada, dê uma olhada na linha $env{mount_options},gid=46,dmask=000,fmask=111,utf8" , a opção gid=46 deve montar a unidade ntfs com privilégios de grupo ( 46(plugdev) é o grupo que permite ao usuário montar uma unidade no Ubuntu), fmask e dmask configurações para gravar, criar, excluir arquivos / pastas na unidade.

Altere de acordo com as necessidades. Você precisará classificar outros sistemas de arquivos por conta própria de acordo com cada tipo, mas isso deve ser iniciado.

( Fonte para a regra udev )

    
por Bruno Pereira 03.01.2012 / 11:54
5

Para casos em que o usuário não pode excluir um arquivo armazenado em uma partição não removível (Ubuntu 14.04)

Como Bruno Pereira afirmou, esse comportamento acontece porque o usuário não tem permissões de gravação no ponto de montagem da partição (no caso OP, / var), portanto, um diretório para a lixeira não pode ser criado.

Nesse caso, o OP não pode ser movido para arquivos do lixo armazenados na partição / var. Para resolver este problema:

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

Você terá que substituir:

  • 1000 pelo seu identificador de usuário (veja o número após o seu nome de login no arquivo / etc / passwd)
  • user:group pelo seu nome de login e grupo, respectivamente
por chus 27.08.2014 / 19:53
1

Em 16.04, encontrei o mesmo problema. A solução foi abrir discos, clicando na partição NTFS - > no ícone de engrenagens pouco embaixo (opções adicionais de partição) - > "Editar opções de montagem" e adicionando "uid = 1000" (sem as aspas, separadas por uma vírgula) à linha acima do ponto de montagem (veja a figura).

uid deve ser configurado para um número alternativo de 1000, conforme retornado pelo comando "id" do terminal, se você não for o usuário original, como mencionado aqui .

    
por Greg Kramida 22.09.2017 / 21:29
0

Eu costumava ter esse problema quando adicionava uma linha no / etc / fstab para montar uma partição ntfs. Ele não estava presente se eu montasse a partição "manualmente" no nautilus.

A documentação do Ubuntu explica que você deve montar discos usando os udisks, que é o que o nautilus usa.

Resumo das etapas para montar automaticamente uma partição:

  1. Pré-requisito: monte a partição e encontre seu nome (por exemplo / dev / sdb1) usando o comando mount .

  2. Obtenha o uuid da partição. O uuid aparece antes do -> neste comando:

    ls -al /dev/disk/by-uuid/

  3. O comando para montagem será:

    /usr/bin/udisks --mount /dev/disk/by-uuid/<the uuid you found previously>

  4. Adicione este comando em seus aplicativos de inicialização

por Aurelien 01.05.2012 / 09:59
-1

Para quem gosta de GUIs, veja como resolver isso graficamente:

  1. Abra o editor de arquivos nemo ( sudo apt-get install nemo para instalar) com privilégios elevados, digitando sudo nemo em um terminal. [Isso provavelmente funcionará no nautilus também, mas eu testei apenas no nemo].
  2. Clique com o botão direito do mouse no dispositivo montado onde seus arquivos estão armazenados e vá para "Propriedades".
  3. Vá para a guia "Permissões" e, para "Proprietário", clique no menu suspenso e selecione seu nome de usuário. Feche tudo e volte ao seu gerenciador de arquivos normal.
  4. Com o usuário definido como o proprietário do dispositivo, ele deve criar uma lixeira para você nesse dispositivo e permitir que você pressione o botão "Excluir" para mover automaticamente os arquivos para a lixeira.
por Gabriel Staples 11.08.2016 / 21:33

Tags