AutoSSH не может разрешить имя хоста сразу после загрузки

Bash one-liner (при условии, что ваши имена файлов не содержат мест):

cat $(ls -lrt | tail -1 | rev | cut -d" " -f1 | rev)

Объяснение:

tail -1        # get last line of your ls
rev            # reverse characters order
cut -d" " -f1  # take first field using space as a separator

Таким образом, rev | cut -d «» -f1 | rev вещь является трюком, чтобы быть уверенным, чтобы получить последнее разделенное пробелом слово без необходимости предоставления зависящего от платформы поля числа смещения символов.

-121--95â-
  1. используйте tmux или screen, поэтому при разрыве соединения вы просто снова подключаетесь к этому сеансу.

  2. Открытие разрешений в каталогах может привести к разрыву, например, SSH, который проверяет, например, разрешения ~/.ssh/*, что трудно сказать без конкретных сведений о сбое (проверьте журналы для веб-сервера/базы данных/системы?).

  3. найти/что/backup/dir -type d -ls >/root/backupdirlist; find/that/broken/dir -type d -ls >/root/currentdirlist; diff -u/root/* dirlist , чтобы проверить список файлов на наличие различий, возможно, сначала с помощью awk или cut или чего-либо, чтобы просто показать имя файла и бит разрешений, а не любой из других столбцов.

  4. в будущем, найдите -type d -print0 | xargs -0 echo chmod 755 сначала, чтобы увидеть, что произойдет, или найдите -type d -print0 | xargs -0 chmod -verbose 755 | tee somelog , чтобы зарегистрировать то, что вы сделали.

  5. изобретают движение во времени.

-121--217003-

Получите скидку на 43P примерно за $200. У меня есть один здесь я использую для поддержки некоторых из моих старых установок RS/6000.

2
03.02.2018, 17:56
1 ответ

Извините, но, оказывается, произошла ошибка, на которую я не обратил внимания:

Error: remote port forwarding failed for listen port 3030

Эта ошибка будет отображаться после ошибок could not resolve hostname.

Хотя я не уверен, что может быть причиной ошибки, мне удалось обойти ее, добавив ExitOnForwardFailure yesк моему /etc/ssh/ssh_config. Это приведет к выходу из сеанса sshпри возникновении этой ошибки.

Похоже, основной сеанс sshзависал из-за этой ошибки. Это предотвратило попытку autosshповторно -подключиться к моему серверу. С этим изменением в моей конфигурации autosshтеперь попытается повторить попытку соединения sshпосле возникновения этой ошибки.

systemctl statusтеперь переполнен этими ошибками, так как autosshпытается подключиться несколько раз:

starting ssh (count 16)
ssh child pid is 2463
Error: remote port forwarding failed for listen port 3030
ssh exited with error status 255; restarting ssh
starting ssh (count 17)
ssh child pid is 2473
Error: remote port forwarding failed for listen port 3030
ssh exited with error status 255; restarting ssh
starting ssh (count 18)
ssh child pid is 2481

Тогда как раньше отображалась только одна из этих ошибок, после чего autosshзависала.

Ошибки, которые я включил в свой вопрос, все еще встречаются,однако я не думаю, что об этом стоит беспокоиться, поскольку возможно, что сетевое соединение не было правильно установлено при первом запуске службы.

0
27.01.2020, 22:33

Теги

Похожие вопросы