Situação: você tem um diretório pessoal criptografado.
Etapa 1: você faz login no SSH. Seus dados criptografados não estão montados, então o que você vê é o seu diretório pessoal "real" no sistema de arquivos principal (não criptografado). Este diretório pessoal não contém muito do que é diretamente utilizável:
-
~/.ecryptfs/
contém dados de controle para seus dados criptografados -
~/.Private/
contém seus dados criptografados no formato criptografado -
~/Access-Your-Private-Data.desktop
é um ícone na área de trabalho para montar seus dados privados -
~/README.txt
contém instruções legíveis por humanos para montar seus dados.
Seu .bashrc
e outros arquivos de ponto com os quais você está acostumado não estão disponíveis porque estão no volume criptografado que não está montado.
Etapa 2: você executa ecryptfs-mount-private
. Isso monta seus dados criptografados em ~
(seu diretório inicial). Após esse ponto, ls -lA ~
mostrará seus arquivos de ponto, como ~/.bashrc
. Se você executar uma nova instância do bash, ela lerá seu .bashrc
e você terá seus aliases disponíveis.
Uma sutileza é que, após a etapa 2, o diretório atual do bash shell interativo ainda é o diretório inicial no volume não criptografado. Montar o volume criptografado em ~
alterou o diretório ao qual o ~
se refere, mas não altera o diretório que o bash tem aberto¹. Se você executar cd ~
no bash (ou o atalho cd
), ele alterará seu diretório atual para o que agora é chamado ~
, mesmo que isso não afete o valor relatado por pwd
.
Se você efetuar login via SSH enquanto seu diretório pessoal criptografado já estiver montado, assim que seu shell de login for iniciado, ele verá os arquivos em seu volume criptografado, para que seus aliases sejam carregados. Montar um volume criptografado (ou qualquer outro sistema de arquivos) é uma ação global, não se limita a uma sessão de login. Se você executar ecryptfs-umount-private
, isso tornará seus dados criptografados indisponíveis, retornará ao estado de inicialização.
¹ Tecnicamente, este é o diretório atual do processo bash, não um arquivo aberto, mas o comportamento é o mesmo.