Considerações sobre o uso do diretório '/ tmp' em sistemas multiusuário

4

Como eu tenho aprendido mais sobre o Ubuntu e programação bash eu estive armazenando variáveis em /tmp . Por exemplo, entre as chamadas para o mesmo script bash eu quero gravar o estado anterior.

No meu sistema atual de usuário único, não há perigo de conflitos no diretório /tmp . No entanto, quero que meu código seja preparado para o futuro e me pergunto se devo usar o hábito de usar um diretório chamado ~/tmp ?

Talvez deva ser ~/.tmp e oculto. Talvez devesse ser ~/temp para não ser confundido com o diretório /tmp convencional.

Qualquer ideia / sugestão é apreciada. Obrigado.

    
por WinEunuuchs2Unix 12.02.2017 / 17:45

1 resposta

2

Geralmente, se você deseja armazenar o estado de cada usuário, a maneira mais fácil é simplesmente criar um diretório dedicado para o aplicativo no diretório inicial dos usuários:

CFGDIR="${HOME}/.mycoolapp"
mkdir -p ${CFGDIR}
# read / write files in ${CFGDIR} here..

Se você quiser apenas um armazenamento temporário para uma instância do script, uma boa abordagem é usar o mktemp. Por exemplo:

TMPDIR="$(mktemp -d)"
# read / write files in ${TMPDIR} here..
rm -rf ${TMPDIR}
    
por d99kris 02.05.2017 / 16:36