Я дозрел, наконец, начать запускать
Тут же выяснилось, что
Далее,
Полностью можно посмотреть в https://phdru.name/Software/dotfiles/ и https://git.phdru.name/dotfiles.git/
Upd. Я вернул прежний
X-Post: ЖЖ
screen автоматом на удалённых серверах (пока сам, без сына). Начал отсюда, благо там эта проблема уже разжёвана. И быстро наткнулся, что тамошнее решение мне надо допиливать в самую неожиданную сторону.Тут же выяснилось, что
fix_ssh_auth_sock мне не нужен совсем, у меня этот сокет и так зафиксирован, благо я пользуюсь не ssh-agent, а gpg-agent, и сокет у меня ~/.gnupg/S.gpg-agent.ssh.Далее,
if [ -n "$SSH_CONNECTION" ]; then exec screen -xRR; fi. Проблема оказалась в том, что bash выполняет .profile и в интерактивном, и в неинтерактивном шеллах, а в неинтерактивном screen совсем не нужен. Например, в ssh -t host command, или когда ssh используется как транспорт для git или rsync. Пришлось добавить в .profile проверки на интерактивность. В результате хвост моего .profile стал выглядеть так:# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return ;;
esac
# Stop if non-interactive shell
[ -z "$PS1" ] && return
if [ -n "$SSH_CONNECTION" -a -z "$STY" -a -t 0 ] &&
which screen >/dev/null 2>&1
then
exec screen -xRR -S default
fiПолностью можно посмотреть в https://phdru.name/Software/dotfiles/ и https://git.phdru.name/dotfiles.git/
Upd. Я вернул прежний
.profile, т.е. удалил запуск screen. Вместо этого я делаю запуск screen вместе с терминалом и ssh:rxvt-unicode -e ssh -t remote_host exec screen -xRR -S default
X-Post: ЖЖ