Làm cách nào để thay đổi thư mục mà ssh-keygen xuất ra?


54

Tôi muốn chạy một lệnh như:

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

Hiểu biết của tôi là ssh-keygen xuất ra thư mục chính. Tôi đang làm việc trên một máy tính nối mạng bằng Git Bash (Windows, MYSS MINGW64) trong đó thư mục chính là thư mục tôi không có quyền truy cập. Tôi thay đổi thư mục nhà như vậy:

export HOME=C:/Users/myusername

vì vậy bây giờ khi tôi nhập:

echo $HOME

nó nói rằng:

C:/Users/myusername

nhưng khi tôi thử chạy lệnh ssh-keygen thì nó lại chạy trong thư mục mà tôi không có quyền truy cập. Tôi đã xem qua tệp hồ sơ cho một số đường dẫn được mã hóa cứng nhưng không thể tìm thấy bất cứ điều gì. Làm cách nào để thay đổi nó để trỏ đến một thư mục mà tôi có quyền truy cập?


Hành vi tương tự này xảy ra trên Ubuntu (thay đổi HOMEkhông ảnh hưởng đến thư mục mặc định ssh-keygen). Mặc dù chỉ định rõ ràng thư mục hoạt động, tôi rất muốn biết tại sao ssh-keygenkhông chỉ sử dụng $HOME/.sshnhư HOMEđược xác định hiện tại.
Nathan

Câu trả lời:


86

Bạn sẽ có thể làm điều này bằng cách chỉ định tên của tệp đầu ra với -ftùy chọn, ví dụ:

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

Tất nhiên, nó thực sự hữu ích nếu thư mục đầu ra đã được tạo.

Để đọc thêm:


Nhiều nghĩa vụ. Tôi bỏ qua tùy chọn -f. Tôi vừa tạo một thư mục mới với mkdir .ssh trong HOME của tôi và chạy lệnh bạn đã nói. Cảm ơn rât nhiều.
Phlox Midas
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.