Por que nenhum gerenciador de arquivos solicita permissão mais alta, se necessário? [fechadas]

14

Acabei de responder a outra pergunta para iniciantes sobre "Não é possível escrever ....... verificar permissões".

Claro que sei usar chown / chmod; Eu estou trabalhando com linha de comando de qualquer maneira. Mas o consumidor médio não.

Então, o que devo dizer às pessoas sem nenhuma experiência com o GNU / Linux?

Trabalhar como root? Eu sei, por exemplo, que o Nemo tem a funcionalidade "abrir como raiz". Mas apenas não! Não acho que seja uma boa ideia para um usuário comum. É muito perigoso. Em seguida, o usuário cria um arquivo no gerenciador de arquivos raiz e se pergunta por que ele não pode excluir ou modificar esse arquivo. E assim por diante.

Diga a ele para aprender a usar chown / chmod? E aqui estamos nós - nerd-only-linux, onde tudo é tão complicado. É assim que fazemos as coisas; mas não é uma boa opção para o consumidor médio.

Por que o gerenciador de arquivos não ajuda?

Detesto dizer isso, mas veja como o Windows lida com isso. O padrão é a permissão do usuário. E se o gerenciador de arquivos precisar de mais, basta perguntar ao usuário.

Isso não pode ser difícil de implementar. Se uma operação falhar com exceção de permissão - tente executar com gksudo.

E sim: eu sou realmente inexperiente com todo o mundo de código aberto.

Minhas perguntas:

  1. Há alguma razão para isso não ser feito dessa maneira
  2. Alguém implementou algo assim?
  3. Isso é algo que você relata como um bug (Ubuntu ou, por exemplo, Gnome)?
  4. Isso é algo que eu apenas poderia tentar me implementar?
AnnoSiedler
fonte
4
Por que você deseja copiar o comportamento do Windows em um sistema Linux? Eles são apenas dois sistemas operacionais diferentes e também diferem. No Linux, você trabalha como usuário normal e normalmente não precisa de rootprivilégios, a menos que trabalhe como administrador. Nesse caso, você deve trabalhar como administrador e manter os dois mundos separados. Você pode instalar o software em seu diretório home, fazer suas próprias configurações de ambiente em .bashrc, .profileetc ...
Thomas
2
Devo estar faltando alguma coisa, mas por que você considera "Eu sei, por exemplo, que o Nemo tem funcionalidade" aberta como raiz ". Mas não! Não acho que seja uma boa ideia para um usuário comum. É muito perigoso." , mas ao mesmo tempo, "veja como o Windows lida com isso. O padrão é a permissão do usuário. E se o gerenciador de arquivos precisar de mais - ele apenas pede ao usuário " - é uma boa idéia? That?
Jacob Vlijm 21/03/19
5
Fechar os eleitores: sério? Esta é uma excelente pergunta e já tem uma resposta muito boa. Com provavelmente mais por vir. Se houver alguma razão técnica para não implementar essa melhoria óbvia, uma resposta pode ser dada.
Andrea Lazzarotto 21/03
2
@ Arronic o ponto é que não existem tais ferramentas GUI para muitos casos. Até o macOS tem mais opções de interface gráfica para ajustar o firewall, o servidor SSH e assim por diante. Portanto, a questão do OP é: por quê?
Andrea Lazzarotto 21/03
3
Se o Linux na área de trabalho para pessoas não técnicas for para qualquer lugar, ele precisará remover completamente a necessidade de trabalhar em um gerenciador de arquivos como root, sempre. Não consigo pensar em nada que um usuário normal deva fazer em um gerenciador de arquivos como root (é claro, existem muitas coisas que ele precisa fazer atualmente ). Então esse problema é resolvido com bastante facilidade. IMHO, se os usuários estão criando arquivos de propriedade raiz em seus próprios diretórios pessoais, algo já está seriamente errado.
Muzer

Respostas:

14
  1. Há alguma razão para isso não ser feito dessa maneira

Não há nenhum especificamente. Eu posso citar algumas razões supostas, mas elas seriam principalmente especulações.

  1. Alguém implementou algo assim?

Não é bem assim. Existe uma nautilus-adminextensão que permitirá que você abra um diretório em uma nova janela com privilégios de nível raiz e, em seguida, você pode alterar as permissões de arquivo / diretório conforme desejar, no menu do botão direito do mouse-> Propriedades-> Permissões.

  1. Isso é algo que você relata como um bug (Ubuntu ou, por exemplo, Gnome)?

Relatório de erro ? Não. Solicitação de recurso? Potencialmente, sim. Você pode enviar isso como solicitação de recurso à equipe do Nautilus (o gerenciador de arquivos) no Launchpad , mas suspeito que com 90% de certeza de que eles apontarão você na nautilus-adminextensão que mencionei acima.

Instale-o com sudo apt-get install nautilus-admin.

  1. Isso é algo que eu apenas poderia tentar me implementar?

Sim, se o seu gerenciador de arquivos permitir adicionar scripts a ele. O gerenciador de arquivos padrão do Ubuntu (Nautilus) permite adicionar scripts a ele, para que você possa fazer algo assim:

#!/bin/bash
# adds read permissions for file for all users
zenity --password | sudo -S -p ""  chmod +r  "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" || zenity --error --text "Command failed"

Coloque isso em ~/.local/share/nautilus/scripts, torne executável com chmod, e então ele estará acessível clicando com o botão direito do mouse no arquivo. Claro que esse é um exemplo mínimo apenas para mostrar o ponto. Se você deseja um aplicativo completo que permita recursos mais complexos, como selecionar quais permissões alterar, bem, isso pode exigir comandos extras e provavelmente uma linguagem como Python com kits de ferramentas da GUI mais poderosos.

Mas apenas não! Não acho que seja uma boa ideia para um usuário comum. É muito perigoso. Em seguida, o usuário cria um arquivo no gerenciador de arquivos raiz e se pergunta por que ele não pode excluir ou modificar esse arquivo. E assim por diante.

Bem ... Não é um problema do computador - é um problema do usuário. Não podemos consertar o usuário que não deseja aprender a operar corretamente o computador e não assume responsabilidade por suas ações.

Os usuários precisam perceber que a separação da propriedade nos arquivos existe por um motivo. Você não pode ter o poder de alterar permissões no arquivo e não esperar implicações de segurança com isso

Sergiy Kolodyazhnyy
fonte
4
Excelente resposta, no entanto, o problema permanece: a GUI na maioria das distribuições por padrão não permite que o usuário "sudo graficamente" quando necessário. O usuário deve desbloquear manualmente a conta raiz (incorreta) ou deve recorrer à linha de comando. Por exemplo, sou desenvolvedor, gosto da CLI ... Mas também penso na minha família e amigos que não são. Às vezes, quando eles usam Linux, eles me pedem ajuda e 80% do tempo é sobre fazer algo como um usuário privilegiado. : /
Andrea Lazzarotto 21/03
obrigado; especialmente o script é bastante útil. Uma solicitação de recurso é relatada como um bug (observe que essa é uma solicitação de recurso), não é?
AnnoSiedler 21/03
@AnnoSiedler de um modo geral, sim; é melhor se você colocar "[aprimoramento]" ou "[recurso]" no título e começar com uma boa história do usuário e não apresentar seu problema como uma falha (por exemplo, "etapas para reproduzir o bug")
david.libremone
16
“Bem ... não é um problema do computador - é um problema do usuário. Não podemos consertar o usuário que não deseja aprender a operar adequadamente o computador e não assume responsabilidade por suas ações. ”Uh, não. Pessoas jogando as mãos para cima e culpando os usuários é exatamente por que as coisas ficam complicadas ou contra-intuitivas. O design de UX é uma coisa real e importante com a qual os designers de programas precisam se preocupar, pensar e trabalhar - em outras palavras, assumir a responsabilidade e a responsabilidade. A culpa não é dos usuários - é uma limitação técnica, uma preocupação de segurança ou, talvez, um UX ruim que precise ser consertado.
precisa saber é o seguinte