Não, não há nada de errado em copiar o arquivo rc em outro lugar. Dito isso, embora você possa realmente alterar seu $HOME adicionando HOME=/foo a um dos arquivos lidos na inicialização ( ~/.profile , por exemplo), isso não é uma boa ideia. HOME é usado por muitas coisas, não apenas por seus scripts e não há razão para alterá-lo, pois isso pode ter consequências indesejadas.
Por exemplo, os arquivos de configuração padrão para uma variedade de programas, incluindo o seu shell, são armazenados em $HOME . Se você alterar isso, suas configurações serão perdidas.
Agora, se eu entendi corretamente, seu principal objetivo aqui é ter $HOME/software point para /usr/local/software . Em vez de copiar os arquivos, a solução mais simples seria tornar $HOME/software um link apontando para /usr/local/software .
-
Renomeie
$HOME/software(se já existir):mv $HOME/software $HOME/software.old -
Crie um link chamado
$HOME/softwareque aponta para/usr/local/software:ln -s /usr/local/software $HOME/software
Agora, qualquer coisa procurando $HOME/software encontrará /usr/local/software .
Da mesma forma, para trabalhar localmente em cada máquina, crie o diretório em /scratch e vincule-o ao seu $HOME :
mkdir /scratch/ogaday
ln -s /scratch/ogaday $HOME/work
Agora, tudo que você faz em $HOME/work realmente acontecerá em /scratch/ogaday .
Finalmente, tenha em mente que existem diferentes tipos de shell. Quando você faz login via ssh , está executando um shell de login interativo e, em muitos sistemas, $HOME/.bashrc é ignorado por esses shells. Enquanto o Ubuntu especificamente também lê $HOME/.bashrc , para tais shells, muitas outras distribuições não. Portanto, é mais seguro usar $HOME/.profile e não $HOME/.bashrc para definir variáveis de ambiente. Veja aqui para uma explicação de quais arquivos são lidos quando.