Người dùng mới sử dụng Linux (đặc biệt là Ubuntu) cuối cùng cũng biết đến lệnh Sudo. Nhiều người dùng không bao giờ sử dụng nó cho bất cứ việc gì khác ngoài việc nhận được thông báo "quyền bị từ chối" - nhưng Sudo còn làm được nhiều hơn thế.
Giới thiệu về Sudo
Một quan niệm sai lầm phổ biến về Sudo là nó chỉ được sử dụng để cung cấp quyền root cho người dùng bình thường. Trên thực tế, lệnh Sudo cho phép bạn chạy lệnh dưới dạng bất kỳ người dùng, với mặc định thường là gốc.
Cách cấp quyền Sudo cho người dùng
Người dùng Ubuntu thường coi khả năng chạy lệnh Sudo là đương nhiên. Đó là bởi vì, trong quá trình cài đặt, người dùng mặc định được tạo và người dùng mặc định trong Ubuntu luôn được thiết lập với quyền Sudo. Tuy nhiên, nếu bạn đang sử dụng các bản phân phối khác hoặc có người dùng khác trong Ubuntu, người dùng có thể cần được cấp quyền để chạy lệnh Sudo.
Chỉ một số người có quyền truy cập vào lệnh Sudo và họ phải là quản trị viên hệ thống. Người dùng chỉ nên được cấp những quyền cần thiết để thực hiện công việc của mình.
Để cấp cho người dùng quyền Sudo, bạn chỉ cần thêm họ vào nhóm Sudo. Khi tạo người dùng, hãy sử dụng lệnh sau:
sudo useradd -m -G sudo
Lệnh trên sẽ tạo một người dùng có thư mục chính và thêm người dùng đó vào nhóm Sudo. Nếu người dùng đã tồn tại, thì bạn có thể thêm người dùng vào nhóm Sudo bằng lệnh sau:
sudo usermod -a -G sudo
Một mẹo Sudo gọn gàng khi bạn quên chạy nó
Đây là một trong những thủ thuật lệnh đầu cuối mà bạn có thể học hỏi từ các chuyên gia dày dạn kinh nghiệm - trong trường hợp này, để vượt qua thông báo "quyền bị từ chối". Nếu đó là một lệnh dài, bạn có thể xem lại lịch sử và đặt Sudo trước nó, bạn có thể gõ lại hoặc bạn có thể sử dụng lệnh đơn giản sau để chạy lệnh trước đó bằng Sudo:
sudo !!
Cách chuyển sang người dùng gốc bằng Sudo
Lệnh Su được sử dụng để chuyển từ tài khoản người dùng này sang tài khoản người dùng khác. Tự chạy lệnh Su sẽ chuyển sang tài khoản superuser. Do đó, để chuyển sang tài khoản superuser bằng Sudo, chỉ cần chạy lệnh sau:
sudo su
Cách chạy lệnh Sudo trong nền
Nếu bạn muốn chạy một lệnh yêu cầu đặc quyền của người dùng cấp cao trong nền, hãy chạy lệnh Sudo với công tắc -b, như được hiển thị ở đây:
sudo -b
Lưu ý rằng, nếu lệnh đang chạy yêu cầu sự tương tác của người dùng, thì điều này sẽ không hoạt động.
Một cách thay thế để chạy lệnh trong nền là thêm dấu và vào cuối, như sau:
sudo &
Cách chỉnh sửa tệp bằng đặc quyền Sudo
Cách rõ ràng để chỉnh sửa tệp bằng đặc quyền người dùng siêu cấp là chạy trình chỉnh sửa chẳng hạn như GNU nano, sử dụng Sudo như sau:
sudo nano
Ngoài ra, bạn có thể sử dụng cú pháp sau:
sudo -e
Cách chạy lệnh với tư cách người dùng khác bằng Sudo
Lệnh Sudo có thể được sử dụng để chạy lệnh như bất kỳ người dùng nào khác. Ví dụ:nếu bạn đăng nhập với tư cách người dùng "john" và bạn muốn chạy lệnh với tên "terry", thì bạn sẽ chạy lệnh Sudo theo cách sau:
sudo -u terry
Nếu bạn muốn dùng thử, hãy tạo người dùng mới có tên "test" và chạy lệnh Whoami sau:
sudo -u test whoami
Cách xác thực thông tin đăng nhập Sudo
Khi bạn chạy một lệnh bằng Sudo, bạn sẽ được nhắc nhập mật khẩu của mình. Trong một khoảng thời gian sau đó, bạn có thể chạy các lệnh khác bằng Sudo mà không cần nhập mật khẩu của mình. Nếu bạn muốn kéo dài khoảng thời gian đó, hãy chạy lệnh sau:
sudo -v
Tìm hiểu thêm về Sudo
Sudo còn nhiều hơn thế nữa ngoài việc chỉ đơn giản là chạy lệnh với tư cách là một siêu người dùng. Xem Hướng dẫn sử dụng Sudo của chúng tôi để xem một số công tắc khác mà bạn có thể sử dụng.