Як виправити попередження: Файл особистих даних github недоступний: Немає такого файлу чи каталогу?


6
Host github.com git 
  HostName github.com
  User git
  IdentityFile ~/.ssh/github # I've tried also /home/freinn/.shh/github

/home/freinn/githubФайлу не створено, чи потрібно його створити?

Ось повне попередження:

Warning: Identity file /home/freinn/github not accessible: No such file or directory.
Hi freinn! You've successfully authenticated, but GitHub does not provide shell access.

[freinn@freinn ruby]$ ssh -v git@github
OpenSSH_5.9p1, OpenSSL 1.0.0j-fips 10 May 2012
debug1: Reading configuration data /home/freinn/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 50: Applying options for *
ssh: Could not resolve hostname github: Name or service not known

Відповіді:


1

Щоб SSH-автентифікація працювала на GitHub, вам потрібно створити пару відкритих / приватних ключів відповідно до інструкцій GitHub . Цей IdentityFileпараметр повинен вказувати на той файл, який містить приватний ключ, створений вами під час виконання цих інструкцій.

Схоже, все одно ви добре підключаєтесь * - ви бачите повідомлення про успішне підключення GitHub. Можливо, ваш приватний ключ GitHub просто ~/.ssh/id_rsa? Якщо так, ви можете видалити IdentityFileрядок взагалі, і вона запрацює, як очікувалося.

Якщо це якась допомога, відповідний розділ мого ~/.ssh/config/виглядає наступним чином:

Host github.com
    IdentityFile ~/.ssh/id_rsa_github
    IdentitiesOnly yes

… Але це працює лише тому ~/.ssh/id_rsa_github, що я тут помістив мій приватний ключ RSA для GitHub.

* GitHub завжди відповідає, You've successfully authenticated, but GitHub does not provide shell access.коли ви успішно входите sshз оболонки.


Це не працює. Це ж попередження навіть входить у рядок "IdentitiesOnly yes"
freinn

Що це'? Видалити IdentityFileрядок взагалі? Копіювання мого вступу дословно ніколи не виходило, тому що, як я вже сказав, воно працює лише тому, що ~/.ssh/id_rsa_githubсаме там я поклав мій приватний ключ RSA для GitHub. Знову ж таки, схоже на те, що ви справжню автентичність, ви повинні мати змогу IdentityFileвзагалі вирватися з лінії.
колони

Я маю мати файл github у / home / freinn / і не знаю, чому там шукати ssh ...
freinn

Знову sshшукаємо і знаходимо відповідний ключ RSA. Ви б не отримали You've successfully authenticated…повідомлення, як це не так. Ваш IdentityFileзапис майже напевно є зайвим, оскільки sshскаржиться на нього, а згодом ігнорує. Якщо ви могли б оновити ssh -vрезультати, git@github.comа не git@githubми, ми б точно знали. Але це, мабуть, не має значення, оскільки позбавлення від IdentityFileрядка, ймовірно, зупинить повідомлення про помилку.
колони

Якщо я вийду з рядка, який IdentityFileвін даєWarning: Identity file /home/freinn/github not accessible: No such file or directory. Permission denied (publickey).
freinn

1

Ось що для мене працює:

Host github
  User git
  Hostname github.com
  IdentityFile ~/.ssh/id_rsa

IdentityFileПовинен вказувати на існуючий файл ідентифікації. Ви можете використовувати tilde (~), який посилається на домашній каталог користувача.

В основному помилка:

Попередження: Файл ідентичності / home / freinn / github недоступний: такого файлу чи каталогу немає.

кажучи, що цей файл відсутній, тому вам слід створити його (за допомогою ssh-keygen) або вказати на існуючий файл посвідчення автентифікації DSA, ECDSA або RSA або використовувати файл за замовчуванням (видаляючи або коментуючи рядок).

Також у рядку хоста ( Host github) ви можете вказати шаблон хоста, такий як псевдонім, який ви хочете використовувати, так що ви можете використовувати git@githubзамість повного хоста. Зазвичай ви хочете використовувати конкретний запис хосту, проте ви також можете використовувати символ підстановки ( *), який застосовуватиме глобальні параметри для всіх хостів.

Перевірте подальшу інформацію, запустивши man ssh_configкоманду.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.