As ações do apt podem excluir / modificar arquivos dentro da home page do usuário?

1

De alguma forma eu sempre assumi que quando eu executo um comando como apt-get install, remove, purge então no máximo o apt pode adicionar arquivos dot-files de configuração à minha home local existente (não tenho certeza disso), mas NUNCA modifique ou exclua todos os arquivos lá (sem fazer backup).

Existe alguma restrição ou pelo menos diretriz?

    
por tkruse 09.01.2018 / 04:15

2 respostas

5

Existem dois problemas:

  1. A política Debian determina como os diretórios pessoais são gerenciados e adequadamente empacotados. O .deb não deve modificar nada nos diretórios iniciais dos usuários.
  

9.2.3. Diretórios iniciais inexistentes O diretório inicial inexistente canônico é / inexistente. Usuários que não devem ter um diretório inicial   deve ter seu diretório home configurado para este valor.

     

Os autobuilders Debian configuram o HOME para / inexistente para que os pacotes   que tentam gravar em um diretório inicial não serão compilados.

     

10.7.5. Arquivos de configuração do usuário (“dotfiles”) Os arquivos em / etc / skel serão automaticamente copiados para novas contas de usuário pelo adduser. Não   outro programa deve referenciar os arquivos em / etc / skel.

     

Portanto, se um programa precisar de um dotfile para existir antecipadamente em $ HOME   para trabalhar de maneira sensata, o dotfile deve ser instalado em / etc / skel e   tratado como um arquivo de configuração.

     

No entanto, programas que exigem dotfiles para operar de forma sensata   são uma coisa ruim, a menos que eles criem os próprios dotfiles   automaticamente.

     

Além disso, os programas devem ser configurados pelo padrão Debian   instalação para se comportar de forma semelhante ao comportamento padrão upstream como   possível.

     

Portanto, se um programa em um pacote Debian precisa ser configurado   de alguma forma, a fim de operar de forma sensata, isso deve ser feito usando um   arquivo de configuração de todo o site colocado em / etc. Somente se o programa   não suporta uma configuração padrão de todo o site e o pacote   O mantenedor não tem tempo para adicioná-lo, pois um arquivo padrão por usuário pode ser   colocado em / etc / skel.

     

/ etc / skel deve estar o mais vazio possível. Isso é particularmente   verdade porque não existe um mecanismo fácil (ou necessariamente desejável) para   garantindo que os dotfiles apropriados sejam copiados para as contas de   usuários existentes quando um pacote é instalado.

Consulte: link para obter detalhes

NO ENTANTO .....

  1. Instalar o .deb requer autorização de root e os pacotes podem executar scripts pré e pós-instalação que modificam arquivos nos diretórios home em violação da política debian ou pessoas que empacotam .deb pode escolher ignorar a política debian.

Portanto, é possível que o .deb viole a política debian e altere os arquivos nos diretórios home dos usuários.

Esta é uma das muitas considerações ou razões pelas quais você deve ter muito cuidado ao instalar o .deb de fora dos repositórios do Ubuntu.

    
por Panther 09.01.2018 / 04:34
4

Nenhuma instalação, atualização, remoção, etc. do apt deve modificar arquivos nos diretórios iniciais dos usuários. Nem mesmo dotfiles.

Os arquivos em seu diretório pessoal só devem ser modificados pelo software que você executa na sua conta.

Existem razões para isso:

  1. Os diretórios iniciais são designados pelo padrão FHS como diretórios sob o controle do usuário individual, não do sistema.

  2. Os scripts de instalação / atualização / remoção não têm motivos para saber ou se preocupar com quais usuários existem no sistema e não há motivos para fazer algo específico para qualquer usuário específico.

  3. Qualquer configuração de todo o sistema para qualquer software entrará em um diretório do sistema (ou seja, /etc ). Dotfiles dentro de contas de usuário são apenas para alterações de configuração feitas por um usuário em particular.

  4. Não é responsabilidade do sistema atualizar a configuração específica do usuário. Se um software precisar de uma mudança na maneira como ele é configurado, o software precisa fazer a migração quando for executado como esse usuário, e não quando instalado ou atualizado.

por thomasrutter 09.01.2018 / 04:21