Esse tipo de confusão surge um pouco com pessoas que são novas no Unix em geral e também todo o negócio de conectar-se remotamente de um sistema Unix a outro, então aqui está uma resposta canônica que esperançosamente irá ajudar outros no futuro bem.
Diga que este é o seu cenário:
.----------. .----------.
| Server S | | Client C |
| | | |
| | | |
'----------' '----------'
/home/user1 /home/user1
/home/user1/.tmux.conf /home/user1/.tmux.conf
/home/user1/.irssi/config /home/user1/.irssi/config
contas de usuário
Na situação acima, temos dois computadores e duas contas de usuário. 2 contas? Sim, mesmo que esses dois sistemas tenham o mesmo usuário, user1 , essas contas não são relacionadas entre si, exceto pelo fato de terem o mesmo nome.
software
Se você tiver um software instalado em ambos os sistemas, o software dos dois sistemas não terá nenhum outro relacionamento. Por exemplo, você poderia ter tmux
versão 1 no Servidor S , enquanto o Cliente C poderia ter a versão 2.
Você pode verificar qual versão um computador tem assim:
$ tmux -V
tmux 1.4
$ irssi -v
irssi 0.8.15 (20100403 1617)
configurações & diretórios pessoais
A maioria dos softwares Unix faz uso de arquivos de configuração, aka. arquivos de configuração. Esses arquivos geralmente residem no diretório "home" de um usuário, também conhecido como. /home/user1
, no nosso exemplo acima.
OBSERVAÇÃO: Outros usuários têm seus próprios diretórios pessoais, também conhecidos como. /home/user2
, etc.
Assim, cada aplicativo normalmente manterá um conjunto padrão de configurações em seu diretório "inicial" em locais como:
/home/user1/.tmux.conf
ou
/home/user1/.irssi/config
Não há consistência verdadeira em como eles são nomeados. Você notará que eles contêm um período (".") Na frente deles. É assim que quando você faz um ls
no diretório "home", esses arquivos de configuração são omitidos da saída.
Por exemplo:
$ ls
adir1 adir2 afile1 afile2
$ ls -a
. .. adir1 adir2 afile1 afile2 .irssi .tmux.conf
O primeiro comando mostra tudo menos esse período (arquivos .rota), enquanto a segunda versão desse comando inclui um comutador, -a
, que mostra esses arquivos "ocultos".
configurações (palavra chique para isso é configurações)
Então agora, com alguma base, podemos entender melhor sua pergunta. Espero que seja óbvio, neste momento, que as definições de configuração em um sistema sejam completamente independentes das configurações em outro sistema.
Por exemplo:
Normalmente, o que as pessoas farão é manter os arquivos em um local mestre e copiá-los (ou empurrá-los) para os vários sistemas em que eles os utilizam. Tendo o cuidado de manter quaisquer diferenças entre as várias versões que podem encontrar.The version of
tmux
on Server S could be at say version 1, meanwhiletmux
on Client C could be at version 2, and maybe these 2 versions have different features and/or capabilities, so the settings files on these 2 systems would be completely different from one another.
Isso pode parecer doloroso, mas é realmente bom, no sentido de forçar o usuário a gerenciar os arquivos de maneira mais ponderada e controlada, em vez de deixá-los flutuar descontroladamente, como um leme em um veleiro, sem um no leme.
Além disso, existem ferramentas (scp e / ou rsync) para ajudar a facilitar o gerenciamento e / ou o movimento dos arquivos, mas isso é outro tópico.
quais configurações estão sendo usadas?
Então, quando você ssh
for Servidor S e iniciar uma sessão tmux
, você está usando as configurações tmux
do usuário1 que são locais para < strong> Servidor S . Se você se desconectar do Servidor S e depois conectar-se a ele do Cliente C , ainda estará usando os arquivos de configuração do Servidor S .
Mantenha isso no fundo da sua mente. As configurações que serão usadas são aquelas que são locais onde o software está sendo executado. tmux
está sendo executado localmente no Servidor S , portanto, ele usará as configurações locais para Servidor S . O mesmo vale para irssi
.
A conexão ssh
. Você está executando o cliente ssh
, localmente no Cliente C , para se conectar ao Servidor S , portanto, as configurações ssh
que estão sendo usadas são as locais para o Cliente C .