Por que eu tenho que usar o “sudo” quando estou no grupo de superusuários?

3
[martin@A08-R32-I196-2-FZ1RLP2 anaconda3]$ groups martin
martin : martin wheel

Estou sob meu diretório pessoal:

[martin@A08-R32-I196-2-FZ1RLP2 anaconda3]$ pwd
/home/martin/anaconda3

Mas quando tentei excluir um arquivo no meu próprio diretório, recebi este erro:

[martin@A08-R32-I196-2-FZ1RLP2 anaconda3]$ rm test2.ipynb
mv: cannot create regular file ‘/export/.trash/test2.ipynb’: Permission denied

Por que isso?

    
por user697911 11.08.2018 / 04:46

2 respostas

1

Antecedentes

O terceiro exemplo que você mostrou onde está tentando rm o arquivo parece ter o comando rm sobrecarregado com uma sequência de comandos, um dos quais, tenta fazer um mv do arquivo para /export/.trash .

Permissões

[martin@A08-R32-I196-2-FZ1RLP2 anaconda3]$ rm test2.ipynb mv: cannot create regular file ‘/export/.trash/test2.ipynb’: Permission denied

Veja as permissões para /export/.trash/ :

$ ls -ld /export/.trash

Tudo deve ser de propriedade do seu usuário "martin" para que essa conta possa excluir arquivos e, opcionalmente, mv deles para esse diretório.

Suspeito que alguém usou o comando sudo ao trabalhar nesse diretório e, talvez acidentalmente, defina as permissões do diretório .trash para que a raiz o possua.

Comando sobrecarregado

Com relação ao seu comando rm . Você pode verificar se ele está sobrecarregado como um alias ou uma função shell com o mesmo nome usando o comando type . Exemplos:

$ type -f rm
rm is aliased to 'rm -i'

$ type -f mv
mv is aliased to 'mv -i'

Aqui, podemos ver que os comandos mv e rm foram sobrecarregados como aliases para mv -i e rm -i .

    
por 11.08.2018 / 05:02
0

Concordo que a saída de rm indica que rm é um alias ou uma função que faz outra coisa, a partir do nome do caminho que parece tentar mover para um diretório de lixeira em vez de removê-lo.

Para resolver a questão original, o grupo 0 ( wheel ) basicamente não significa nada. Em sistemas baseados em BSD, su (não sudo ) para root é restrito a membros do wheel grouup, mas isso é apenas uma função do comando su no BSD e não uma função do próprio SO.

O comando sudo é comumente usado no Linux. É altamente configurável. A associação ao grupo 0 pode ser um requisito para poder usar sudo , mas não usa automaticamente sudo .

    
por 11.08.2018 / 17:14