Khi thiết lập máy ảo hoặc desktop Linux mới, bạn có thể gặp phải lỗi “sudo: command not found” (lệnh không tìm thấy). Thông báo lỗi Linux này có thể gây khó chịu và ngăn cản bạn tiến xa hơn với thiết lập của mình. Đây cách khắc phục lỗi này.
“Sudo” trong Linux là gì?
Tài khoản người dùng trên Linux đi kèm với một số đặc quyền hạn chế ngăn họ thực hiện các tác vụ quản trị có thể làm hỏng hệ thống. Những đặc quyền hạn chế này ngăn người dùng truy cập vào một số khu vực nhất định của hệ thống tệp hoặc thực thi một số tệp nhất định.
Người dùng duy nhất không bị hạn chế như vậy đối với hành động của họ là người dùng root (người dùng gốc). Người dùng root có thể truy cập bất kỳ khu vực nào của hệ thống Linux và thực thi bất kỳ lệnh nào trên bất kỳ tệp nào.
Vì quyền lực to lớn này, bạn nên vô hiệu hóa tài khoản root và thay vào đó sử dụng sudo.
Lệnh sudo, viết tắt của “superuser do”, cho phép user là thành viên của nhóm sudo thực thi lệnh như thể họ là người dùng root. Nó cung cấp cho họ quyền root một cách hiệu quả—miễn là họ sử dụng sudo và xác thực bằng mật khẩu.
Tại sao không tìm thấy lệnh sudo?
sudo không chỉ là một lệnh hữu ích mà còn là một gói. Trên hầu hết các hệ thống, sudo được cài đặt theo mặc định. Nhưng nếu bạn cố gắng chạy một lệnh bằng cách sử dụng sudo trên các bản phân phối còn lại, bạn có thể nhận được lỗi “sudo: command not found”.
Điều này là phổ biến trên các hệ thống Linux mới được cài đặt. Điều này có thể đặc biệt khó chịu nếu bạn đã dành hàng giờ để cài đặt và thiết lập Linux, nhưng khi đăng nhập vào tài khoản người dùng của mình và phát hiện ra lỗi sudo: command not found.
Khi bạn gặp lỗi sudo not found, điều đầu tiên bạn có thể thử làm là cài đặt gói sudo với trình quản lý gói như APT, Pacman hoặc DNF:
sudo apt install sudo
Hành động này sẽ không thành công vì bạn đã gặp phải lỗi không tìm thấy lệnh sudo, do đó bạn không thể sử dụng sudo để cài đặt các gói với tư cách là người dùng root.
Cách khắc phục lỗi “sudo: command not found”
Vì người dùng của bạn không thể đảm nhận các đặc quyền của người dùng root nếu chưa cài đặt sudo, bạn cần đăng xuất tài khoản người dùng và đăng nhập với quyền root.
Là người dùng root, bạn có thể cài đặt gói sudo với các đặc quyền mà tài khoản này sở hữu, vì vậy nó không bị lỗi “sudo: command not found” của Linux.
Trên các bản phân phối dựa trên Debian, hãy nhập:
apt install sudo
Sau đó, thêm người dùng của bạn vào nhóm sudo bằng cách sử dụng:
usermod -aG sudo your_username
Trên các bản phân phối dựa trên Arch, hãy nhập:
pacman -S sudo
Sau đó, chạy lệnh sau để thêm người dùng vào nhóm wheel:
usermod -aG wheel your_username
Trên Fedora và các bản phân phối dựa trên RHEL khác, hãy cài đặt sudo với:
dnf install sudo
Sau đó, thêm người dùng của bạn vào nhóm sudo bằng cách đưa ra lệnh sau:
usermod -aG wheel your_username
Khi đăng nhập lại với tư cách người dùng thông thường, bạn sẽ phát hiện ra rằng lỗi “sudo: command not found” đã không còn nữa.
Nếu bạn tiếp tục thấy lỗi trên Debian hoặc Ubuntu, bạn nên cân nhắc về việc cài đặt lại bản phân phối của mình hoặc thậm chí thử một bản phân phối Linux khác .
Chạy các lệnh với sudo trên Linux!
Bạn đã thành công trong việc cài đặt sudo và thêm người dùng của mình vào nhóm sudo. Điều này đồng nghĩa với việc bạn có thể chạy bất kỳ lệnh nào và truy cập bất kỳ khu vực nào mà không cần đăng nhập với quyền root.
Mặc dù sudo cải thiện đáng kể tính bảo mật cho máy Linux của bạn, nhưng bạn nên sử dụng quyền này một cách cẩn thận vì các đặc quyền nâng cao có thể nguy hiểm, đặc biệt là trong môi trường sản xuất.
Tìm hiểu ngay chương trình học công nghệ thông tin trực tuyến tại FUNiX ở đây:
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/fix-sudo-command-not-found-on-linux/
Bình luận (0
)