Як я можу змінити каталог, на який видає ssh-keygen?


54

Я хочу запустити команду типу:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

Я розумію, що ssh-keygen виводить у домашній каталог. Я працюю на мережевому комп’ютері за допомогою Git Bash (Windows, MYSS MINGW64), де домашній каталог - це той, до якого я не маю доступу. Я змінюю домашній каталог так:

export HOME=C:/Users/myusername

тому зараз, коли я входжу:

echo $HOME

він говорить:

C:/Users/myusername

але коли я знову намагаюся запустити команду ssh-keygen, вона працює в каталозі, до якого я не маю доступу. Я переглянув файл профілю для якогось важко закодованого шляху, але нічого не можу знайти. Як змінити його, щоб вказати на каталог, до якого я маю доступ?


Ця ж поведінка відбувається і в Ubuntu (зміна HOMEне впливає на каталог за замовчуванням для ssh-keygen). Хоча конкретизація каталогу прямо працює, мені було б цікаво дізнатися, чому ssh-keygenвін не використовує просто так, $HOME/.sshяк HOMEвизначено в даний час.
Натан

Відповіді:


86

Ви можете зробити це, вказавши ім'я вихідного файла за допомогою -fпараметра, наприклад,

ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f $HOME/.ssh/id_rsa

Звичайно, це дійсно допомагає, якщо вихідний каталог вже створений.

Для подальшого читання:


Дуже вдячний. Я пропустив варіант -f. Я щойно створив нову папку з mkdir .ssh в моєму ДОМАШНЬОМУ і запустив команду, яку ви сказали. Дуже дякую.
Флокс Мідас
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.