De alguma forma, eu consegui chmod e chown meu ~ no esquecimento.
Quando tento fazer login através do shell, recebo
bash: ~/.bashrc : Permission denied
Mesmo depois ( como root ) eu corri
chown -hR nroach44 /home/nroach44
e
chmod -R 666 /home/nroach44
ou ( como nroach44 )
chmod -R 644 /home/nroach44
Nenhum desses comandos retorna erros.
Além disso:
ls -la /home/nroach44
Retorna muitos
drw-rw-rw- 1 nroach44 nroach44 4096 --date-- ti:me foldername
Qualquer ajuda?
permissions
chmod
chown
NRoach44
fonte
fonte
/home
deve serdrwxrwxr-x
eroot:root
e/home/user
rw rw -- or r-
dependendo se você quiser que outros usuários ler seus arquivos de usuários. Diretórios e arquivos executáveis comx
. O mesmouser
diretório interno não será um problema se você tiver o grupo = usuário (nroach44: nroach44) como você parece ter (eu daria apenas 0 (---) permissões aos outros).Respostas:
ou
Isso tornará todos os arquivos em seu diretório pessoal não executáveis. Não foi uma boa ideia;)
Não sei como limpar essa bagunça, como uma solução rápida que você pode tentar fazer como root:
Este comando dará permissões de execução a todos os arquivos na sua pasta pessoal. Deve resolver seus problemas imediatos, mas pode ser um pesadelo de segurança.
A melhor solução é abrir outra conta de usuário e transferir para ela arquivos e configurações, um por um.
fonte
Os diretórios precisam ter o bit de execução definido para permitir que você desça no diretório. Plain
666
está errado, mesmo se você estiver executando como root. Dá a todos permissão de gravação.Para tornar os arquivos mais seguros, execute:
Para tornar as pastas descendentes novamente, execute:
Nota: Eu escolhi o xx0 porque alguns arquivos podem ser sensíveis e não podem ser lidos por outros. Apenas para salvar, remova as permissões de leitura / gravação / execução para o mundo.
fonte
Como você parece ter permissões suficientes em ~, é necessário
/home
ter permissão x para outras pessoas (sudo chmod +rx /home
) e verificar se as permissões estão corretas no/home/nroach44/.bashrc
arquivo.Outro ponto, os diretórios devem ter x permissões para permitir a inserção neles, para corrigi-los, você precisa executar
sudo chmod -R +X /home/nroach44
.fonte
X
+1X
é muito útil e fiquei muito feliz em descobri-lo também ... depois de muito tempo usando o find !!Isso ocorre porque você alterou as permissões de todos os arquivos na sua pasta HOME. Por favor, tenha muito cuidado ao jogar com permissões de arquivo, use chmod e chown com muito cuidado ou você pode acabar com uma bagunça.
Eu acho que você alterou as permissões de todos os arquivos em seu diretório pessoal, então a permissão do bashrc também foi alterada.
As permissões padrão do script ~ / .bashrc são
Para explicá-lo, você deve ter permissões de leitura e gravação no arquivo, outros usuários do grupo de usuários devem poder lê-lo e todos os outros também podem lê-lo.
Então agora mude as permissões do script bashrc usando chmod para 644
se os comandos acima derem permissão negada. então
executar o chown primeiro como sudo
substitua user1 pelo seu nome de usuário e usergrp pelo seu grupo de usuários padrão.
Agora novamente faça
agora você terá permissões para o script basrc, agora tente fazer login e verifique se há outros erros :)
fonte
Os diretórios precisam de um conjunto de bits x (para o diretório em que esse bit é visto como bit de pesquisa) para abrir. Então eu uso o tree para obter apenas o conjunto de pastas e evitar o pesadelo de ter todos os arquivos definidos como executáveis (a opção para o tree é
-d List directories only.
):Atenção!!! você deve levar isso em consideração:
o uso de chmod ou chown recursivo no
/
diretório raiz ou nos diretórios do sistema destruirá o seu sistema operacional (na verdade, qualquer coisa recursiva no/
diretório ou nos diretórios do sistema é perigosa)essa não é uma boa prática de segurança para definir permissões em massa assim
fonte