To manage Linux user groups, you need to master the operation of viewing, creating, deleting, modifying, and user attribute adjustment. To view user group information, you can use cat /etc/group or getent group, use groups [username] or id [username] to view the group to which the user belongs; use groupadd to create a group, and use groupdel to specify the GID; use groupdel to delete empty groups; use usermod -aG to add users to the group, and use usermod -g to modify the main group; use usermod -g to remove users from the group by editing /etc/group or using the vigr command; use groupmod -n (change name) or groupmod -g (change GID) to modify group properties, and remember to update the relevant file permissions.
Managing user groups in Linux systems is a basic but important task in system management. Whether it is adding, deleting groups, or adjusting the group permissions to which the user belongs, certain operation skills and understanding are required. Here are some practical methods and suggestions to help you better manage user groups in Linux.
View user groups in the current system
User group information in Linux is mainly stored in /etc/group
file. You can directly use cat /etc/group
to view all groups and their members.
The more commonly used commands are:
-
getent group
: Displays all groups (including those obtained through network services such as LDAP) -
groups [用戶名]
: View the group to which a user belongs -
id [用戶名]
: View the user's UID, GID and group
These commands can help you quickly understand the current system's group structure and user attributes.
Create and delete user groups
Creating a new user group is very simple, just use the groupadd
command:
sudo groupadd newgroup
If you want to specify a GID (group ID), you can add the -g
parameter:
sudo groupadd -g 1010 newgroup
To delete an empty group (group without members) you can use groupdel
:
sudo groupdel newgroup
Note: If the group has been set as the default group by a user, it cannot be deleted directly. You need to modify or delete the relevant user account first.
Add or remove a user to or from a group
To add an existing user to a group, you can use the usermod
command:
sudo usermod -aG groupname username
Here -aG
means "append" to the specified group without affecting the user's existing permissions for other groups.
If you just want to modify the user's primary group, you can omit -a
:
sudo usermod -g groupname username
To remove a user from a group, there is no direct command, you can manually delete the user name by editing the /etc/group
file, or use one of the following methods:
- Use the
vigr
command to safely edit group files - Automate processing with scripts or tools (for batch operations)
Modify the properties of an existing group
Use the groupmod
command to modify the name or GID of the group:
sudo groupmod -n newname oldname sudo groupmod -g 1020 groupname
After modifying the group name or GID, remember to check whether there are files or directories in the system that belong to the old GID and update the permissions accordingly:
find / -group oldgid -exec chgrp newgid {} \;
Basically that's it. By mastering these basic commands, you can manage and maintain user groups in Linux systems well. Although it doesn't seem complicated, slight negligence may also cause permission problems, especially in environments where multiple people collaborate or multi-service operation, it is best to confirm clearly before operation.
The above is the detailed content of How to manage groups on Linux. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Informix and MySQL are both popular relational database management systems. They perform well in Linux environments and are widely used. The following is a comparison and analysis of the two on the Linux platform: Installing and configuring Informix: Deploying Informix on Linux requires downloading the corresponding installation files, and then completing the installation and configuration process according to the official documentation. MySQL: The installation process of MySQL is relatively simple, and can be easily installed through system package management tools (such as apt or yum), and there are a large number of tutorials and community support on the network for reference. Performance Informix: Informix has excellent performance and

To tune MySQL into a Chinese interface, it can be implemented through MySQLWorkbench or command line tools. 1) In MySQLWorkbench, open "Preferences", select the "Appearance" tab, and then select "Chinese(Simplified)" in the "Language" drop-down menu, and restart. 2) When using command line tools, set the operating system locale variables, such as using "exportLANG=zh_CN.UTF-8" on Linux or macOS, and then run the mysql client.

Linux and Windows have their own advantages and disadvantages in CPU and memory usage: 1) Linux uses time slice-based scheduling algorithms to ensure fairness and efficiency; Windows uses priority scheduling, which may cause low-priority processes to wait. 2) Linux manages memory through paging and switching mechanisms to reduce fragmentation; Windows tends to pre-allocate and dynamic adjustment, and efficiency may fluctuate.

Linux's cost of ownership is usually lower than Windows. 1) Linux does not require license fees, saving a lot of costs, while Windows requires purchasing a license. 2) Linux has low hardware requirements and can extend the service life of the device. 3) The Linux community provides free support to reduce maintenance costs. 4) Linux is highly secure and reduces productivity losses. 5) The Linux learning curve is steep, but Windows is easier to use. The choice should be based on specific needs and budget.

LinuxoftenoutperformsWindowsinI/Operformanceduetoitscustomizablekernelandfilesystems,whileWindowsoffersmoreuniformperformanceacrosshardware.1)LinuxexcelswithcustomizableI/OschedulerslikeCFQandDeadline,enhancingperformanceinhigh-throughputapplications

The key to installing dual systems in Linux and Windows is partitioning and boot settings. 1. Preparation includes backing up data and compressing existing partitions to make space; 2. Use Ventoy or Rufus to make Linux boot USB disk, recommend Ubuntu; 3. Select "Coexist with other systems" or manually partition during installation (/at least 20GB, /home remaining space, swap optional); 4. Check the installation of third-party drivers to avoid hardware problems; 5. If you do not enter the Grub boot menu after installation, you can use boot-repair to repair the boot or adjust the BIOS startup sequence. As long as the steps are clear and the operation is done properly, the whole process is not complicated.

The key to enabling EPEL repository is to select the correct installation method according to the system version. First, confirm the system type and version, and use the command cat/etc/os-release to obtain information; second, enable EPEL through dnfinstallepel-release on CentOS/RockyLinux, and the 8 and 9 version commands are the same; third, you need to manually download the corresponding version of the .repo file and install it on RHEL; fourth, you can re-import the GPG key when encountering problems. Note that the old version may not be supported, and you can also consider enabling epel-next to obtain the test package. After completing the above steps, use dnfrepolist to verify that the EPEL repository is successfully added.

Newbie users should first clarify their usage requirements when choosing a Linux distribution. 1. Choose Ubuntu or LinuxMint for daily use; programming and development are suitable for Manjaro or Fedora; use Lubuntu and other lightweight systems for old devices; recommend CentOSStream or Debian to learn the underlying principles. 2. Stability is preferred for UbuntuLTS or Debian; you can choose Arch or Manjaro to pursue new features. 3. In terms of community support, Ubuntu and LinuxMint are rich in resources, and Arch documents are technically oriented. 4. In terms of installation difficulty, Ubuntu and LinuxMint are relatively simple, and Arch is suitable for those with basic needs. It is recommended to try it first and then decide.
