Плохая конфигурация рыбы, препятствующая доступу к удаленному серверу

307
cjm

Я испортил настройку моего config.fish, и теперь я не могу использовать свой сервер.

Всякий раз, когда я пытаюсь войти, он говорит

fish: Unknown command '/usr/bin/keychain /home/freebsd/.ssh/id_dsa' /home/freebsd/.config/fish/config.fish (line 21): /usr/bin/keychain $HOME/.ssh/id_dsa 

Затем он просто позволяет мне печатать до тех пор, пока я не ^Cзакончу соединение и закрою вкладку терминала: ^Cтрюк случается только иногда. Попытка ssh root@serverпросто дает мне ответ, чтобы войти как freebsdпользователь.

Если я пытаюсь scpотредактировать пульт, config.fishчтобы избавиться от оскорбительных строк, он все равно выдает мне ту же ошибку, а не дает мне доступ к файлу.

Вход в Digital Ocean и доступ к консоли абсолютно бесполезен, поскольку я понятия не имею, какими могут быть пароли, поскольку я всегда использую sshдля входа (так что могут быть только ssh-ключи, которые я не думаю, Я могу использовать в командной строке DO).

Этот вопрос, кажется, указывает на то, что мне нужно сказать моему VPS выполнить полную перезагрузку с веб-сайта DO, а затем выполнить работу в однопользовательском режиме. Это единственный путь вперед?

0

1 ответ на вопрос

0
cjm

^Dподтолкнул меня к подсказке, чтобы я мог отменить изменения config.fish.

Это говорит о том, что выполнялась команда, которая читала из стандартного ввода. Кроме того, тот факт, что вы не могли использовать `scp`, говорит о том, что вы запускаете вещи из ~ / .config / fish, которые не подходят для неинтерактивного сеанса. Вам, вероятно, нужно защитить некоторые записи config.fish с помощью `if status --interactive`. Kurtis Rader 7 лет назад 0