Вопрос или проблема
Когда я хочу выполнить vimdiff между локальным файлом и удалённым файлом на другой машине, я делаю это так:
$vimdiff file1.tcl scp://129.254.32.30//home/ckim/file2.tcl
Но моя текущая локальная учётная запись не является ckim
. В этом случае удалённая машина ожидает, что я введу пароль для моей локальной учётной записи, которая не существует на удалённой машине. Как я могу это сделать? Я пробовал (когда моя локальная учётная запись etri
):
$vimdiff file1.tcl scp:ckim@//129.254.32.30//home/ckim/file2.tcl
но это не сработало.
Ответ или решение
Для того чтобы использовать vimdiff
с удалёнными файлами по протоколу SCP между разными учетными записями, вам нужно правильно указать учетные данные пользователя на удалённой машине в синтаксисе команды.
Вы уже правильно потрудились с первой командой, но вторая команда имеет небольшие ошибки в синтаксисе. Попробуем исправить это.
Чтобы отредактировать файлы с использованием vimdiff
, необходимо указать пользователя удалённой машины перед адресом. Команда должна выглядеть так:
vimdiff file1.tcl scp://ckim@129.254.32.30//home/ckim/file2.tcl
Обратите внимание на следующие моменты в этой команде:
-
Синтаксис SCP: Правильно указанный синтаксис включает пользователя и хост. В данном случае
ckim@129.254.32.30
, гдеckim
— это имя пользователя на удалённом сервере, а129.254.32.30
— это IP-адрес удалённого сервера. -
Доступ к удалённому серверу: При выполнении этой команды вам будет предложено ввести пароль для пользователя
ckim
на удалённом сервере. Убедитесь, что у вас есть необходимые разрешения на доступ к этому пользователю. -
Отсутствие локальной учетной записи: Учитывая, что ваша локальная учетная запись (например,
etri
) не имеет отношения к удалённой, всё будет работать корректно, так как SCP требует аутентификации только на удалённой стороне.
После ввода правильной команды и аутентификации у вас откроется интерфейс vimdiff
, где вы сможете сравнивать и редактировать оба файла.
Если при вводе команды вы столкнётесь с проблемами доступа, убедитесь, что:
- У вас есть права доступа к файлу
file2.tcl
на удалённом сервере. - Вы правильно вводите пароль пользователя
ckim
.
В случае, если вы планируете делать это более часто и хотите избежать ввода пароля, можно рассмотреть использование SSH-ключей для аутентификации. Это позволит вам подключаться к удалённым серверам без ввода пароля каждый раз, настроив соответствующие ключи на вашей локальной машине и удалённом сервере.
Если у вас возникнут дополнительные вопросы или проблемы, не стесняйтесь обращаться за помощью!