Estou com um comportamento na instalação de um pacote .deb que realmente não entendo.
Eu tenho um conjunto de "coisas" no meu computador que eu implanto em computadores remotos usando um pacote .deb . Eu trabalho na minha máquina local logado como o usuário " borrajax
". Há também um usuário " borrajax
" na máquina remota onde eu instalo meu .deb . Quando eu preciso implantar minhas "coisas", eu crio um pacote .deb na minha máquina (com sudo dpkg --build
), copio para a máquina remota e instalo com sudo dpkg -i myPackage.deb
. Quando faço isso, os arquivos "expandidos" (ou instalados) passam a ser de propriedade do usuário local borrajax
, o que é bom.
Agora, eu tenho um colega de trabalho que também tenta fazer a mesma coisa, mas ele está logado como um nome de usuário local diferente (ele não tem um usuário borrajax
em sua máquina, mas ... foobar
- Eu acho que seus pais não gostaram muito dele-). Ele segue exatamente o mesmo processo que eu faço com meu usuário local borrajax
mas com seu usuário local foobar
: Crie o .deb
em sua máquina, copie-o para a máquina remota e instale-o com dpkg -i
. Bem ... Nesse caso, os arquivos instalados são de propriedade de root
, o que impede que a instalação continue (o que não é um bug, mas um recurso).
Todas essas máquinas são o Ubuntu (11.10 meu, 12.04 o remoto eo meu colega de trabalho), então o que eu gostaria é que o pacote seja instalado com qualquer usuário que tenha o uuid 1000. Eu esperaria que o nome não fosse tão relevante ( Pode ser apenas uma coincidência que haja um usuário borrajax
na minha máquina e na remota.
Portanto, neste caso, o nome de usuário parece muito relevante. Por que é que? Como mencionei anteriormente, meu usuário local borrajax
, meu colega de trabalho foobar
e borrajax
na máquina remota são todos uid = 1000. Por que o nome do usuário (parece ser) é tão importante? Meu usuário borrajax
local pode não ter nada para ver com o borrajax
na máquina remota. Se o pacote foi criado pelo usuário com o uid 1000, por que "às vezes" (se eu o criei) ele é instalado com qualquer usuário que tenha o uid 1000 na máquina remota e "às vezes" ele é instalado com root (se meu colega criou-o)?
Sempre posso alterar o proprietário dos arquivos instalados usando chown 1000
no script postint ou usar outro tipo de solução alternativa, mas gostaria de entender primeiro por que isso está acontecendo e como é que o nome de usuário em dois máquinas diferentes parece tão importante?
Obrigado antecipadamente