Problema de permissão com o emacs para usuários não-root (Ubuntu 11.10)

3

Antecedentes

Estou trabalhando em meu VPS pessoal configurado principalmente para o aprendizado de sistemas e projetos pessoais. Corri contra um problema em que meu usuário não-root só podia criar / editar arquivos no emacs usando o comando sudo . Isso não é um problema com permissões de diretório, pois posso criar arquivos com touch sem sudo.

  • Não se lembra, mas o emacs pode ter sido inicialmente instalado pelo usuário root.
  • O usuário foi criado e adicionado da seguinte forma:
    • root@hadron:~# adduser my_user
    • root@hadron:~# addgroup admin
    • root@hadron:~# adduser my_user admin

Específicos

A execução de um comando como emacs newfile.txt sempre abriria um documento em branco que não poderia ser salvo e observou o seguinte no caminho do arquivo na parte inferior do terminal: File exists: /home/my_user/.emacs.d/

Verificando o arquivo .emacs.d, a permissão era a seguinte:

  • drwx------ 3 root root 4096 2012-03-26 08:07 .emacs.d

A alteração da permissão do arquivo .emacs.d para permitir que qualquer pessoa o acesse resolveu a situação, mas essa não parece a solução correta:

  • chmod 777 ~/.emacs.d
  • drwxrwxrwx 3 root root 4096 2012-03-26 08:07 .emacs.d

Qual é a maneira apropriada de abordar isso?

    
por CdrXndr 22.04.2012 / 20:55

1 resposta

1

Não está completamente claro qual usuário tenta rodar o emacs.

Também não está claro o que o comando

$ adduser my_user admin

faz. Você quer dizer

$ adduser --group admin my_user

aqui?

O diretório .emacs.d na casa do usuário deve ser de propriedade do próprio usuário. Então um

$ chown -R my_user ~/.emacs.d
$ # Fix the 'broken' permissions
$ chmod go-w ~/.emacs.d

No último comando, talvez você queira adicionar também o sinalizador x e r para remover permissões de leitura e execução para grupos e outros.

    
por 22.04.2012 / 22:08