Bạn có nghĩa là gì?
Để cài đặt các gói trên toàn hệ thống (cần gì apt-get
), nó cần có quyền root, vì bạn sẽ tạo và thay đổi các tệp hệ thống ( root
là tên thông thường cho tài khoản quản trị viên * nix).
Thông báo «bạn có phải root không?» Là một lời nhắc nhở nhẹ nhàng rằng bạn "cần phải root" để chạy apt-get install
. Đây là lý do thường gặp nhất cho vấn đề mà nó gặp phải (hiển thị ở trên):
/ var / lib / dpkg / lock - open (13: Quyền bị từ chối)
.
Làm thế nào để trở thành root?
su
Cách truyền thống "trở thành root" là chạy su
(và cung cấp mật khẩu của người dùng root). su (1) là viết tắt của s uper u ser hoặc s witch u ser.
Lưu ý rằng nó có thể được sử dụng để trở thành bất kỳ người dùng nào, vì vậy bạn có thể chạy su john
để lấy shell như john. Chạy su
không có tên người dùng là một tốc ký su root
.
Để làm việc này, tài khoản người dùng root phải được kích hoạt và có mật khẩu được đặt. Một số hệ thống được định cấu hình (thậm chí theo mặc định), với tài khoản root bị vô hiệu hóa, để tránh ai đó -eg. kẻ tấn công - đăng nhập bằng tài khoản quản trị viên. Trong những trường hợp đó, họ cung cấp một cách khác để chạy các lệnh hành chính, như sudo.
sudo
sudo (1) là một chương trình cho phép bạn thực thi một lệnh như một người dùng khác (như ở trên, thường được thực hiện cho root). Nó được cấu hình /etc/sudoers
và cho phép kiểm soát tốt hơn, chẳng hạn như chỉ cho phép chạy một chương trình dưới dạng root, cho một người dùng cụ thể (có thể được đặt lại để yêu cầu mật khẩu của riêng họ) và cũng cung cấp các phương tiện ghi nhật ký (ví dụ: " john thực thi hệ thống hủy diệt như root ").
Có các tùy chọn khác cho runinng với các đặc quyền gia tăng (như calife ) nhưng chúng có mức sử dụng thấp hơn nhiều.
Nhật ký trên của bạn cho thấy sudo
không được cài đặt trên magic2tower.
sudo
không chỉ chạy các lệnh "như thể bạn là root", nó thực sự chạy chúng dưới quyền root. Nếu bạn nhìn vào quá trình, bạn sẽ thấy nó chạy dưới dạng root chứ không phải id người dùng của bạn. Ngẫu nhiên, trên các máy không được thiết lập để cho phép đăng nhập tương tác bằng root theo mặc định, bạn chỉ có thể chạysudo bash
để lấy shell gốc. :)