Pasta pessoal em 'root' e não em 'home'… Estou confuso!

8

Eu tenho um problema com a minha pasta home e isso está me dando alguns problemas de permissão.

Instalei um aplicativo que me diz que não tenho permissão para salvar em /home/username/Desktop , mas, na verdade, minha casa está em /home/username/Área de Trabalho (Área de Trabalho = Desktop, mas em português).

  • O acesso como sudo minha casa é mostrado na imagem abaixo (veja o ícone da pasta).
    ( Inside é a pasta desktop . )

  • O acesso como regular user minha casa é mostrado na imagem abaixo.
    ( Inside é a pasta Área de Trabalho . )

Isso é normal? Devo dizer ao Ubuntu onde está minha pasta home ? O que eu tenho que fazer?

Thanx antecipadamente!

    
por Sardinha 04.10.2012 / 06:28

3 respostas

10

A primeira captura de tela ("as sudo ") é mostrada no modo de exibição de ícones e a segunda captura de tela ("como regular user ") está na exibição de lista detalhada, mas eles realmente mostram a mesma estrutura de pastas. Não há discrepância. A resposta do tachyons explica por que pastas diferentes têm o ícone da casa nelas.) A visão detalhada da lista está dando um pouco mais de informações ; Em particular, a pasta chamada /home é expandida para revelar seu conteúdo, incluindo a subpasta p_sardinha .

Como as duas exibições são equivalentes, não parece haver um problema relacionado a como você está visualizando sua estrutura de pastas. Portanto, podemos dividir sua pergunta em duas partes:

  • Onde está minha pasta pessoal?
  • Como posso resolver um problema em que um aplicativo tenta acessar minha pasta da área de trabalho, mas falha porque nomeia essa pasta no idioma errado?

Onde está minha pasta pessoal?

Todo usuário humano de um sistema Ubuntu tem uma pasta home (que também é chamada de diretório home , já que pasta e diretório significa a mesma coisa). Se você tivesse contas de usuário configuradas em seu sistema Ubuntu para mais de uma pessoa, cada uma delas teria uma pasta pessoal separada.

Existe uma pasta chamada /home . Isso não é sua pasta pessoal. Na verdade, essa nunca é a pasta pessoal de ninguém. Em vez disso, /home é a pasta que contém as pastas base dos usuários humanos .

Sua pasta de início é /home/p_sardinha , porque seu nome de usuário é p_sardinha .

Mais geralmente, para um usuário humano username , a pasta base do usuário é /home/username .

  • Em alguns sistemas, incluindo o seu, a pasta chamada /home contém uma subpasta lost+found . Esta não é a pasta pessoal de alguém . Em vez disso, isso existe por padrão na pasta raiz dos sistemas de arquivos ext2 / ext3 / ext4; Ele é usado para manter arquivos que são recuperados enquanto repara o sistema de arquivos, e não é necessário que você saiba nada sobre isso, para usar sua pasta pessoal.

  • Algumas contas de usuário existem e não correspondem a usuários humanos reais de seu computador. Eles existem para que determinados programas possam ser executados com identidades especiais, habilidades e restrições apropriadas para as tarefas que eles foram projetados para executar. Usuários não humanos geralmente não possuem seus diretórios pessoais em /home . Por exemplo, como tachyons mencionados , o usuário root , que é o usuário realmente executando comandos que você executa com sudo e gksu / gksudo (a menos que você use o -u flag) tem /root como seu diretório inicial .

Uma das razões pelas quais a distinção entre a pasta chamada /home e sua pasta pessoal real (que é uma subpasta disso) às vezes é confusa, é que o Nautilus (navegador de arquivos do Ubuntu) chama sua pasta pessoal "Home". Por exemplo, este é o conteúdo da minha pasta pessoal, mostrado no Nautilus:

O nome real dessa pasta (cujo conteúdo é exibido), no entanto, é /home/ek (já que meu nome de usuário é ek ). Minha pasta da área de trabalho chama-se Desktop e está localizada dentro da minha pasta pessoal. Portanto, o caminho totalmente qualificado é /home/ek/Desktop .

Como posso resolver um problema em um aplicativo que tenta acessar minha pasta da área de trabalho, mas falha porque nomeia essa pasta no idioma errado?

Pode haver uma solução específica do aplicativo, mas você não forneceu detalhes sobre as circunstâncias nas quais o erro ocorre ou em qual aplicativo está ocorrendo, por isso não posso fornecer essa solução. Felizmente, posso fornecer uma solução geral.

Como as pastas às vezes são chamadas de algo além do nome real (por exemplo, sua pasta pessoal às vezes é chamada Home , embora seu nome seja p_sardinha ), primeiro verifique se o nome da pasta da área de trabalho é realmente Área de Trabalho . É fácil verificar isso - basta ver o conteúdo da sua pasta pessoal (como eu fiz, na imagem acima), e certifique-se de que é chamado lá. Eu acredito que você já tenha feito isso.

Portanto, o verdadeiro nome completo da sua pasta da área de trabalho é /home/p_sardinha/Área de Trabalho . Mas pelo menos um dos seus aplicativos deseja acessá-lo em /home/p_sardinha/Desktop . Supondo que não há também uma pasta chamada /home/p_sardinha/Desktop (você deve verificar para ter certeza), você deve ser capaz de resolver o problema criando um link simbólico chamado Desktop em sua pasta pessoal, que aponta para Área de Trabalho (seu pasta da área de trabalho real).

Para criar este link simbólico, abra uma janela de Terminal ( Ctrl + Alt + T ) e execute estes comandos:

cd
ln -s 'Área de Trabalho' Desktop
  • O primeiro comando ( cd , com nada depois dele) garante que a linha de comando que você está usando está "na" sua pasta pessoal (isto é, que está usando sua pasta pessoal como seu diretório de trabalho atual) .
  • O segundo comando (que começa com ln ) na verdade cria o link simbólico.

Isso deve resolver o problema. No entanto, seus aplicativos realmente devem ser internacionalizados o suficiente para não assumir que sua pasta da área de trabalho é sempre chamada de Desktop . Portanto, eu recomendo reportar um bug no aplicativo em que o problema ocorreu, para que os desenvolvedores possam fazer o aplicativo funcionar bem para usuários que falam português, como para usuários que falam inglês.

    
por Eliah Kagan 04.10.2012 / 08:07
3

Sim, é normal

O comando sudo abre o nautilus no modo raiz, a raiz do root é a própria raiz

    
por Tachyons 04.10.2012 / 07:54
3

Cada usuário diferente tem um diretório inicial diferente.

Eles estão todos configurados no arquivo /etc/passwd . Você precisa fazer logout e voltar depois de editar esse arquivo para que a alteração na pasta home tenha efeito. A menos que você seja um usuário avançado, eu não recomendaria editar esse arquivo, mas mencionei isso caso você esteja curioso para visualizá-lo e saber como ele funciona.

A home do usuário "root" é definida por padrão como /root , enquanto os diretórios home dos usuários comuns são definidos por padrão como /home/*username* . Geralmente não há uma boa razão para mover um diretório pessoal.

Ao executar um programa gráfico com privilégios de root usando gksu / gksudo , seu diretório pessoal geralmente será reportado como /root ( explica porquê ). Isso é normal, e é apenas porque você está usando privilégios de root (o que raramente deve ser usado depois de configurar tudo corretamente).

    
por thomasrutter 04.10.2012 / 08:05