2015-02-09 35 views
10

Tôi đang cố sử dụng lệnh sudo -i -u postgres cho PostgreSQL và Máy tính Google Compute Engine yêu cầu tôi nhập mật khẩu cho tài khoản của mình (không phải root).Cách lấy mật khẩu cho sudo

Vì tôi chưa bao giờ cấp mật khẩu và tôi luôn đăng nhập vào máy chủ qua khóa SSH, tôi không chắc mật khẩu là gì, cách tôi có thể đặt lại mật khẩu hoặc tìm thấy ở đâu.

Vui lòng cho tôi biết nơi tôi có thể nhận mật khẩu của mình?

Trả lời

5

mỗi https://cloud.google.com/compute/docs/instances,

Tác giả dụ và bất kỳ người dùng đã được thêm vào bằng cách sử dụng sshKeys giá trị siêu dữ liệu sẽ được tự động quản trị vào tài khoản, với khả năng chạy sudo mà không cần mật khẩu.

Vì vậy, bạn không cần mật khẩu không tồn tại đó - bạn cần phải được "thêm bằng cách sử dụng giá trị sshKeys siêu dữ liệu"! Cách canonic để làm điều đó, và tôi trích dẫn từ trang đó:

$ echo user1:$(cat ~/.ssh/key1.pub) > /tmp/a 
$ echo user2:$(cat ~/.ssh/key2.pub) >> /tmp/a 
$ gcloud compute project-info add-metadata --metadata-from-file sshKeys=/tmp/a 

hoặc bạn có thể sử dụng Google Developers Console cho mục đích tương tự, xem https://cloud.google.com/compute/docs/console#sshkeys nếu bạn muốn đó.

26

Để trở thành một người dùng khác không phải root trên một máy ảo GCE, lần đầu tiên trở thành root qua mật khẩu ít sudo (vì đó là cách sudo được cấu hình trên hình ảnh GCE VM):

sudo su - 

và sau đó chuyển sang sử dụng bạn muốn trở thành hoặc chạy lệnh như một cách sử dụng khác, ví dụ: trong trường hợp của bạn, đó là:

sudo -i -u postgres 
+0

Nếu tôi muốn thay đổi trình bao mặc định của mình thì sao? – user

+0

@user - giống như cách bạn thực hiện trên bản phân phối Linux thích hợp, ví dụ: sử dụng ['chsh'] (https://linux.die.net/man/1/chsh). Đây không phải là GCE cụ thể. –

+1

Trong GCE, bạn đăng nhập bằng khóa RSA, không sử dụng mật khẩu. Không có mật khẩu cho người dùng trong google tính toán vm AFAIK. – user

Các vấn đề liên quan