Câu hỏi Làm thế nào để thêm người dùng hiện có vào một nhóm hiện có?


Tôi muốn thêm người dùng Apache (www-data) đến audio nhóm. Tôi đã đọc trang người đàn ông cho useraddnhưng tôi không có may mắn. Tôi đang chạy xubuntu 11.10. Đây là những gì tôi đang làm:

$ sudo useradd -G audio www-data
useradd: user 'www-data' already exists

Nếu tôi bỏ qua -G tùy chọn, bash, in thông tin trợ giúp cho useradd:

$ sudo useradd  audio www-data
Usage: useradd [options] LOGIN
Options: -b, --base-dir BASE_DIR       base directory for the home directory...

Nó không rõ ràng với tôi từ trang người đàn ông lựa chọn những gì tôi nên sử dụng để thực hiện công việc này.


579
2017-11-15 18:21


gốc




Các câu trả lời:


Các useradd lệnh sẽ cố thêm người dùng mới. Vì người dùng của bạn đã tồn tại, đây không phải là thứ bạn muốn.

Thay vào đó: Để sửa đổi người dùng hiện tại, như thêm người dùng đó vào một nhóm mới, hãy sử dụng usermod chỉ huy.

Thử cái này:

sudo usermod -a -G groupName userName

Người dùng sẽ cần đăng xuất và đăng nhập lại để xem nhóm mới của họ được thêm vào.

  • Các -a (phụ thêm) chuyển đổi là điều cần thiết. Nếu không, người dùng sẽ bị xóa khỏi bất kỳ nhóm nào, không phải trong danh sách.

  • Các -G chuyển đổi có danh sách các nhóm bổ sung được phân tách bằng dấu phẩy để gán cho người dùng.


891
2017-11-15 18:33



sudo usermod -a -G [group-name] [user-name] : Chỉ cần một quickie cho những người chỉ nhìn vào câu trả lời sau khi đọc tiêu đề - Programster
Tôi nghĩ cách ưa thích bây giờ là sudo adduser user group. Đó là cú pháp đơn giản và rõ ràng hơn. Xem phản hồi từ @Bai. - ctbrown
@wilhil: man usermod: "-a, --append - Thêm người dùng vào (các) nhóm bổ sung. Chỉ sử dụng với tùy chọn -G .; -G, --groups GROUP1 [, GROUP2, ... [, GROUPN]]] [...] Nếu người dùng hiện là thành viên của nhóm không được liệt kê, người dùng sẽ bị xóa khỏi nhóm. Hành vi này có thể được thay đổi thông qua tùy chọn -a, điều này gắn thêm người dùng vào danh sách nhóm bổ sung hiện tại. " - Adam Michalik
Có cách nào để vượt qua phần "đăng xuất và đăng nhập lại" không? Một số loại lệnh nhóm cập nhật, có thể? - con-f-use
@ con-f-sử dụng, nếu bạn có thể chạy sudo login -f YOURUSERNAME, nó sẽ bắt đầu một phiên trình bao mới. Sử dụng id lệnh để xác minh rằng phiên mới nằm trong nhóm nhóm đúng. Tuy nhiên, đây không phải là "toàn cầu" - nó không áp dụng cho các thiết bị đầu cuối đã mở. Vì vậy, thực sự, đăng xuất là lựa chọn tốt nhất, nếu có thể - Aaron McDaid


Thêm người dùng vào nhóm:

sudo adduser user group

Xóa người dùng khỏi nhóm:

sudo deluser user group

192
2018-01-12 13:09



không chính xác những gì câu hỏi này được yêu cầu - Tejendra
Nhận xét của @ Tejendra dường như giả định rằng việc sử dụng useradd là mong muốn / bắt buộc để trả lời câu hỏi của OP; Có lẽ câu trả lời này chỉ là những từ bị thiếu để chỉ ra rằng adduser / deluser là một lựa chọn tốt hơn. - sage
Đối với tôi giao diện đơn giản hơn, đó là lý do tại sao tôi thích giao diện này. - Betlista
Đây là chính xác câu hỏi đang được hỏi. @knocte, vâng, tôi nghĩ rằng đó là Debian cụ thể - Auspex
@Auspex Tôi có thể xác nhận rằng nó không hoạt động trên Red Hat. - Stibu


Sau khi thêm vào người dùng hiện tại:

usermod -a -G group user  

Bạn có thể cần phải đăng xuất và đăng nhập để nhận quyền của nhóm từ /etc/group.


47
2018-02-22 17:16



Hãy làm cho nó là một phần "cần đăng xuất và đăng nhập" in đậm. - Jin Kwon
FYI: Tôi nghĩ rằng id lệnh cho biết bạn đã được thêm vào nhóm mà không cần thoát. id myuser - ficuscr
Đăng xuất và đăng nhập là bắt buộc đối với tôi trên Ubuntu 14.10. - A.Danischewski


Tôi thường sử dụng

sudo gpasswd -a myuser mygroup

24
2017-11-15 18:47



usermod không có sẵn trên hệ thống của tôi ubuntu 14.04. Điều này làm việc tuyệt vời! - Drew


Trên Ubuntu, kể từ đăng nhập với tên root không được bật, người dùng trong sudo nhóm có thể nâng cao đặc quyền cho các lệnh bị hạn chế nhất định. Bất kỳ lệnh bị hạn chế nào đều phải được thêm vào trước sudo để nâng cao đặc quyền.

sudo usermod -a -G nhóm người dùng

sẽ thêm người dùng hiện tại user cho một nhóm bổ sung có tên group. Nhóm chính của người dùng sẽ không thay đổi.


4
2018-02-25 21:58





Tôi đăng bài này như là một câu trả lời bởi vì tôi không có đủ danh tiếng để bình luận. Như đã đề cập của @ dpendolino, các hiệu ứng của lệnh này vẫn tồn tại:

sudo usermod -a -G groupName userName

... bạn cần phải đăng xuất / đăng nhập lại.

Tuy nhiên, nếu bạn cần một phím tắt để bắt đầu sử dụng tư cách thành viên nhóm mới của mình ngay (và bạn có đúng sudo đặc quyền) Tôi đã tìm thấy công việc này:

$ sudo su -
# su [userName]
$ groups

Giải trình:

  • sudo su - sẽ cung cấp cho bạn một vỏ gốc
  • su [userName] đưa bạn trở lại trình bao với người dùng của bạn
  • groups khi chạy ngay bây giờ sẽ hiển thị nhóm bạn đã thêm với usermod -aG chỉ huy

Trong trường hợp của tôi, tôi đã cố gắng thêm nhóm 'docker' vào người dùng của mình

Trước:

$ groups
userName adm cdrom sudo dip plugdev lpadmin sambashare wireshark lxd

Sau:

$ groups
userName adm cdrom sudo dip plugdev lpadmin sambashare wireshark lxd docker

2
2018-03-25 17:49