Có một chế độ thất bại khác nhau cũng cần được giải quyết ở đây.
Nếu quản trị viên cập nhật /etc/group
nhưng không cập nhật /etc/gshadow
(trên các hệ thống có thiết lập này), đăng xuất và đăng nhập lại sẽ không thực sự gán bạn cho nhóm mới.
Một cách khó hiểu, groups
sẽ cho bạn thấy tình hình thực tế, hiện tại, trong khi đó id
sẽ in sai đầu ra cho thấy bạn là thành viên chính xác của nhóm.
tripleee@vbvntv$ groups
tripleee
tripleee@vbvntv$ id
uid=1234(tripleee) gid=1234(tripleee) groups=1234(tripleee),4(adm)
tripleee@vbvntv$ ls -l /var/log/mail.log
-rw-r----- 1 root adm 15728 May 26 14:26 /var/log/mail.log
tripleee@vbvntv$ tail /var/log/mail.log
tail: cannot open `/var/log/mail.log' for reading: Permission denied
Tôi không thể sử dụng newgrp
vì nó yêu cầu mật khẩu và tôi không có mật khẩu, chỉ xác thực khóa công khai SSH.
Giải pháp sẽ là cho quản trị viên hoàn nguyên chỉnh sửa thủ công /etc/groups
và sau đó thực hiện lại với sudo gpasswd -a tripleee adm
; hoặc cách khác, để sử dụng grpconv
để hợp nhất các thay đổi (mà tôi đã chọn từ https://serverfault.com/a/389719/98333 )