Người dùng trong câu hỏi có đặc quyền sudo vì nó nằm trong admin
nhóm. Như wojox đã nhận xét, bạn có thể sử dụng visudo
và xóa các đặc quyền sudo khỏi nhóm quản trị viên, nhưng điều đó sẽ loại bỏ các khả năng sudo khỏi tất cả các thành viên của nhóm quản trị không chỉ một người dùng.
Ngoài ra, bạn có thể xóa người dùng khỏi nhóm quản trị viên. Nếu định hướng màn hình vi
được coi là đủ dòng lệnh, hãy chạy vigr
và xóa tên người dùng khỏi dòng thích hợp.
Đối với giải pháp dòng lệnh "thuần túy", hãy thử gpasswd
, vì nó quản trị / etc / group và có thể thêm và xóa người dùng khỏi nhóm.
root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
# ^- the group to remove
root@toki:~# gpasswd -d username admin
Removing user username from group admin
root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin sambashare
# ^- username not a member
root@toki:~# gpasswd -a username admin
Adding user username to group admin
root@toki:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
Dưới đây là câu trả lời đầu tiên của tôi trước khi tôi nhận ra có một cách ít ngu ngốc hơn để làm điều đó.
Nếu bạn muốn một cách phức tạp hơn để làm điều này, bạn có thể sử dụng usermod
.
Đây là một trích dẫn từ usermod
trang người đàn ông:
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
A list of supplementary groups which the user is also a member of.
Each group is separated from the next by a comma, with no intervening
whitespace. The groups are subject to the same restrictions as the
group given with the -g option.
If the user is currently a member of a group which is not listed, the
user will be removed from the group. This behaviour can be changed via
the -a option, which appends the user to the current supplementary group
list.
Vì vậy, bạn phải chỉ định tất cả các nhóm cho người dùng ngoại trừ admin
.
root@toki:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),119(admin),122(sambashare)
root@toki:~# usermod -G 4,20,24,46,111,122 username
root@toki:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),122(sambashare)
Cuối cùng, nó vi phạm tinh thần của câu hỏi, nhưng người ta có thể gõ users-admin
từ dòng lệnh để sửa đổi người dùng và nhóm.