Jak mogę to zrobić ssh admin@nas command
pracować, jeśli command
jest w /opt/bin
?
Na moim pliku NAS QNAP /root/.ssh/rc :
echo "old path is $PATH"
export PATH=/opt/bin:/opt/sbin:$PATH
echo "new path is $PATH"
na mojej maszynie:
~$ ssh admin@nas 'echo $PATH'
zwraca
old path is /usr/bin:/bin:/usr/sbin:/sbin
new path is /opt/bin:/opt/sbin:/usr/bin:/bin:/usr/sbin:/sbin
/usr/bin:/bin:/usr/sbin:/sbin
więc zmienna ścieżki nie jest zachowywana. Jak mogę to osiągnąć?
Edytować:
Jak wspomniałem w moim komentarzu poniżej polecenia, którego próbuję użyć, jest git lub, bardziej konkretnie git-upload-pack
i git-receive-pack
i prawdopodobnie kilka innych. Chcę używać ich w różnych lokalizacjach i okazjach i nie chcę zawracać sobie głowy konfigurowaniem git config na każdym komputerze, na którym go używam lub uczę mojego IDE, jak komunikować się z moim NAS, ale raczej mieć zgodne ze standardami NAS. Więc pomyślałem, że wszystko, czego potrzebuję, to ustawić właściwe $PATH
Edytuj II:
do tej pory próbowałem także wstawiać export PATH=...
jak również dodanie innego echo
(aby sprawdzić, czy są uruchomione) do ~/.bash_profile
, to /etc/profile
i do ~/.bashrc
. Najwyraźniej żaden z nich nie jest nawet wykonywany, gdy uruchamiam polecenie nieinteraktywne, jak powyżej. Jeśli zrobię ssh admin@nas
wszystkie są wykonywane, ale to nie pomaga
~/.bash_profile
, do /etc/profile
i do ~/.bashrc
. Najwyraźniej żaden z nich nie jest nawet wykonywany, gdy uruchamiam polecenie nieinteraktywne, jak powyżej. Jeśli zrobię ssh admin@nas
wszystkie są wykonywane, ale to nie pomaga
~/.bashrc
?
su -