Могу ли я войти в свой аккаунт без вызова .profile?

10

Я хочу зайти в свою учетную запись ssh, но не хочу, чтобы выполнялась текущая версия моего сценария входа в систему .profile. Есть ли способ войти без запуска .profile?

(Отказ от ответственности: я нашел обходной путь, который я разместил ниже, но мне интересно, есть ли лучший ответ)

Джереми Стейн
источник

Ответы:

16

Вы можете запустить команду followin:

ssh -t user@host bash --noprofile

где -tопция ssh- принудительное распределение tty .

enzotib
источник
Спасибо! Это помогло мне войти на мой сервер, на котором был полный диск. Мне потребовалось некоторое время, чтобы понять, что мой .bashrc мог инициировать запись на диск.
Бен Дэвис
3

Это то, что я в итоге сделал:

scp me@machine:.profile .
# Fix .profile
scp .profile me@machine:.
ssh me@machine
Джереми Стейн
источник
3

Чтобы навсегда избежать неприятностей, в моей .bashrcцелевой системе у меня есть:

if [ -z "$SSH_CLIENT" ] ; then  
...
fi

окружающие ssh-несовместимые вещи. SSH_CLIENTопределяется для оболочек, вызываемых через ssh, а не для других оболочек.

ssh user@somewhere "env >env.ssh"

пройдитесь так somewhere, войдите как user, и:

env >env.local
diff env.local env.ssh
waltinator
источник