What does linux user id mean?

Mar 16, 2023 am 10:39 AM
linux

In Linux, User ID (User ID, referred to as UID) refers to the user identifier, which uniquely corresponds to the user name; in UNIX-like systems, it is an unsigned integer value used by the kernel to identify the user. , is also one of the necessary components of UNIX file systems and processes. Users with a UID greater than 500 are non-system accounts, and those with a UID less than 500 are accounts reserved by the system, such as the root account. The UID of the highest authority account is 0; when creating a user, the default UID of the account is greater than 500.

What does linux user id mean?

#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.

When you log in to the Linux system, although you enter your own username and password, Linux does not actually know your username. It only knows the ID number (that is, a string of numbers) corresponding to the username. The Linux system stores the correspondence between all user names and IDs in the /etc/passwd file.

In the Linux system, each user's ID is subdivided into two types, namely user ID (User ID, referred to as UID) and group ID (Group ID, referred to as GID). This is related to the fact that files have owners and There are two attributes corresponding to the group. Let’s take you through the user ID (UID).

linux User ID (UID)

User ID (English: user identifier, generally abbreviated as User ID or UID), full name user identifier Character, in UNIX-like systems, is an unsigned integer value used by the kernel to identify users. It is also one of the necessary components of UNIX file systems and processes.

UID---User identification number, which uniquely corresponds to the user name. The UID of the superuser root in LINUX is 0. If you want the system to display your user name, UID, group name, GID and the names of other groups to which you belong, you can use the id command. To modify the UID, usermod -u is generally used.

UID is the identifier used to represent the user in the system. The uid of the started process is the uid of the currently logged in user. To view the user uid, use the id -u <username> command

It should be noted that when checking permissions, the euid is checked. Normally, the euid of the process is the same as the uid.

Users whose UID is greater than 500 are non-system accounts, and those below 500 are accounts reserved by the system, such as the root account. The UID of the highest authority account is 0, which is the default account UID when we create a user. They are all greater than 500. If you want to specify the UID of the account, you can use the -u parameter to specify it. Nothing else is of much significance.

Value range

In different systems, the range of UID values ​​​​is also different, but generally It is said that UID is represented by a 15-digit integer, which ranges from 0 to 32767, and has the following restrictions:

  • The UID of the super user is always 0;

  • According to traditional practice, "nobody" (a special account in UNIX-like systems) is the opposite of the super user and always occupies the PID with the largest value, which is 32767; correspondingly, the current system is nobody The assigned UID is within the system reserved range (1 to 100) or the range of 65530-65535 [1].

  • UIDs with values ​​between 1 and 100 are reserved for system use. Some manuals recommend reserving 101 to 499 (such as RHEL) or even 101 to 999 on this basis. (such as Debian) as a backup; correspondingly, when you use the useradd command to create the first user in Linux, the default UID assigned to it is 1000.

In addition, some special systems also support 16-bit UIDs, so the number of UIDs can be expanded to 65536; modern systems support 32-bit UIDs, which also makes the UID It is possible to further expand the number to 4,294,967,296.

UID Category

  • Effective User ID

    Effective User ID (Effective UID, or EUID) and effective user group ID (Effective Group ID, or EGID) play a role when creating and accessing files; specifically, when creating a file, the system kernel will use the EUID and EGID of the process that created the file. Set the owner/group attributes of the file. When accessing the file, the kernel also determines whether it can access the file based on the EUID and EGID of the accessing process.

  • Real User ID

    Real User ID (Real UID, RUID) and Real User Group ID (Real GID, RGID) are used It is used to identify the real owner of the process and affects the process's permission to send signals. A process without superuser privileges can only send signals to the target process if its RUID matches the RUID of the target process. For example, between a parent and child process, the child process inherits the authentication information from the parent process, so that the parent and child processes can send signals to each other. .

  • Temporary user ID

    The temporary user ID (Saved UID, SUID) is used when a process running with elevated privileges temporarily needs to do some operations that do not require privileges. In this case, the process will temporarily change its effective user ID from the privileged user ( The UID corresponding to (usually root) is changed to the UID corresponding to a non-privileged user, and then the original privileged user UID is copied to a SUID for temporary storage; later, when the process completes operations that do not require privileges, the process uses the SUID value to reset EUID to regain privileges. It should be noted here that the EUID value of an unprivileged process can only be set to the same value as one of RUID, SUID and EUID (that is, it does not change).

  • File System User ID

    File System UID (FSUID) is used in Linux and is only used for The access permission control of the file system is the same as EUID without explicit setting (if FSUID is the UID of root, then at least one of SUID, RUID and EUID must also be UID of root), and EUID changes will also affect FSUID . FSUID is established to allow programs (such as NFS servers) to limit their file system permissions with the permissions of a given UID without obtaining a signal to the account with a given UID.

Miscellaneous

The corresponding relationship between the UID value and the user account is stored in /etc/passwd. /etc/shadow and network information services used to store passwords also use UID values ​​to identify users, but now the shadow file under Linux systems has switched to using account names to identify users.

In a POSIX-compliant environment, the id command can give the username, group to which the current user belongs, and the corresponding UID and GID values.

Related recommendations: "Linux Video Tutorial"

The above is the detailed content of What does linux user id mean?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

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

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1668
14
PHP Tutorial
1273
29
C# Tutorial
1256
24
Linux Architecture: Unveiling the 5 Basic Components Linux Architecture: Unveiling the 5 Basic Components Apr 20, 2025 am 12:04 AM

The five basic components of the Linux system are: 1. Kernel, 2. System library, 3. System utilities, 4. Graphical user interface, 5. Applications. The kernel manages hardware resources, the system library provides precompiled functions, system utilities are used for system management, the GUI provides visual interaction, and applications use these components to implement functions.

vscode Previous Next Shortcut Key vscode Previous Next Shortcut Key Apr 15, 2025 pm 10:51 PM

VS Code One-step/Next step shortcut key usage: One-step (backward): Windows/Linux: Ctrl ←; macOS: Cmd ←Next step (forward): Windows/Linux: Ctrl →; macOS: Cmd →

How to check the warehouse address of git How to check the warehouse address of git Apr 17, 2025 pm 01:54 PM

To view the Git repository address, perform the following steps: 1. Open the command line and navigate to the repository directory; 2. Run the "git remote -v" command; 3. View the repository name in the output and its corresponding address.

How to run java code in notepad How to run java code in notepad Apr 16, 2025 pm 07:39 PM

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

How to run sublime after writing the code How to run sublime after writing the code Apr 16, 2025 am 08:51 AM

There are six ways to run code in Sublime: through hotkeys, menus, build systems, command lines, set default build systems, and custom build commands, and run individual files/projects by right-clicking on projects/files. The build system availability depends on the installation of Sublime Text.

What is the main purpose of Linux? What is the main purpose of Linux? Apr 16, 2025 am 12:19 AM

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

laravel installation code laravel installation code Apr 18, 2025 pm 12:30 PM

To install Laravel, follow these steps in sequence: Install Composer (for macOS/Linux and Windows) Install Laravel Installer Create a new project Start Service Access Application (URL: http://127.0.0.1:8000) Set up the database connection (if required)

git software installation git software installation Apr 17, 2025 am 11:57 AM

Installing Git software includes the following steps: Download the installation package and run the installation package to verify the installation configuration Git installation Git Bash (Windows only)

See all articles