- 11 способов найти информацию об учетной записи пользователя и данные для входа в Linux
- 1. Идентификационная команда
- 2. групповая команда
- 3. Команда пальца
- 4. команда getent
- 5. Команда grep
- 6. Команда lslogins
- 7. Команда пользователей
- 8. кто командует
- 9. Команда w
- 10. последняя или последняяb команды
- 11. Команда lastlog
- How to List Users in Linux
- Listing Users in Linux
- List Users with cat Command
- List Users with Terminal Pagers less and more
- List Users with awk Command
- List Users with getent Command
- Listing Normal and System users in Linux
- How to Get Information About Other Linux Users
- How to Check Currently Logged in Users in Linux
- How to Get Information of Currently Logged in Users in Linux
- How to Check Users Activity in Linux
- Find More Information of Users in Linux
11 способов найти информацию об учетной записи пользователя и данные для входа в Linux
Эта статья покажет вам одиннадцать полезных способов поиска информации о пользователях в системе Linux. Здесь мы опишем команды для получения данных учетной записи пользователя, отображения данных для входа, а также того, что пользователи делают в системе.
Если вы хотите добавить пользователей в Linux, используйте usermod через командную строку, как описано в следующих руководствах:
- 15 полезных практических примеров команды useradd
- 15 полезных практических примеров использования команды usermod
Мы начнем с рассмотрения команд для поиска информации об учетной записи пользователя, а затем перейдем к объяснению команд для просмотра данных для входа.
1. Идентификационная команда
id — это простая утилита командной строки для отображения реальных и эффективных идентификаторов пользователей и групп следующим образом.
$ id tecmint uid=1000(tecmint) gid=1000(tecmint) groups=1000(tecmint),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),130(sambashare)
2. групповая команда
Команда groups используется для отображения всех групп, к которым принадлежит пользователь.
$ groups tecmint tecmint : tecmint adm cdrom sudo dip plugdev lpadmin sambashare
3. Команда пальца
Команда finger используется для поиска информации о пользователе в Linux. Во многих системах Linux он не устанавливается отдельно.
Чтобы установить его в своей системе, запустите эту команду в терминале.
$ sudo apt install finger #Debian/Ubuntu $ sudo yum install finger #RHEL/CentOS $ sudo dnf install finger #Fedora 22+
показывает настоящее имя пользователя; домашний каталог; оболочка; логин: имя, время; и многое другое, как показано ниже.
$ finger tecmint Login: tecmint Name: TecMint Directory: /home/tecmint Shell: /bin/bash On since Fri Sep 22 10:39 (IST) on tty8 from :0 2 hours 1 minute idle No mail. No Plan.
4. команда getent
getent — это утилита командной строки для извлечения записей из библиотек Name Service Switch (NSS) из определенной системной базы данных.
Чтобы получить данные учетной записи пользователя, используйте базу данных passwd и имя пользователя следующим образом.
$ getent passwd tecmint tecmint:x:1000:1000:TecMint. /home/tecmint:/bin/bash
5. Команда grep
Команда grep — это мощный инструмент поиска шаблонов, доступный в большинстве, если не во всех системах Linux. Вы можете использовать его для поиска информации о конкретном пользователе в файле системных учетных записей: /etc/passwd, как показано ниже.
$ grep -i tecmint /etc/passwd tecmint:x:1000:1000:TecMint. /home/tecmint:/bin/bash
6. Команда lslogins
команда lslogins показывает информацию об известных пользователях в системе, флаг -u отображает только учетные записи пользователей.
$ lslogins -u UID USER PROC PWD-LOCK PWD-DENY LAST-LOGIN GECOS 0 root 144 root 1000 tecmint 70 10:39:07 TecMint. 1001 aaronkilik 0 1002 john 0 John Doo
7. Команда пользователей
Команда users показывает имена всех пользователей, которые в данный момент вошли в систему.
$ users tecmint aaron
8. кто командует
команда who используется для отображения пользователей, которые вошли в систему, включая терминалы, с которых они подключаются.
$ who -u tecmint tty8 2017-09-22 10:39 02:09 2067 (:0)
9. Команда w
команда w показывает всех пользователей, вошедших в систему, и то, что они делают.
$ w 12:46:54 up 2:10, 1 user, load average: 0.34, 0.44, 0.57 USER TTY FROM IDLE JCPU PCPU WHAT tecmint tty8 :0 10:39 2:10m 4:43 0.46s cinnamon-sessio
10. последняя или последняяb команды
Команды last/lastb отображают список последних пользователей, выполнивших вход в систему.
$ last OR $ last -a #show hostname on the last column
tecmint tty8 Fri Sep 22 10:39 gone - no logout :0 reboot system boot Fri Sep 22 10:36 still running 4.4.0-21-generic tecmint tty8 Thu Sep 21 10:44 - down (06:56) :0 reboot system boot Thu Sep 21 10:42 - 17:40 (06:58) 4.4.0-21-generic tecmint tty8 Wed Sep 20 10:19 - down (06:50) :0 reboot system boot Wed Sep 20 10:17 - 17:10 (06:52) 4.4.0-21-generic tecmint pts/14 Tue Sep 19 15:15 - 15:16 (00:00) tmux(14160).%146 tecmint pts/13 Tue Sep 19 15:15 - 15:16 (00:00) tmux(14160).%145 .
Чтобы показать всех пользователей, которые присутствовали в указанное время, используйте параметр -p следующим образом.
$ last -ap now tecmint tty8 Fri Sep 22 10:39 gone - no logout :0 reboot system boot Fri Sep 22 10:36 still running 4.4.0-21-generic wtmp begins Fri Sep 1 16:23:02 2017
11. Команда lastlog
команда lastlog используется для поиска сведений о недавнем входе в систему всех пользователей или данного пользователя следующим образом.
$ lastlog OR $ lastlog -u tecmint #show lastlog records for specific user tecmint
Username Port From Latest root **Never logged in** kernoops **Never logged in** pulse **Never logged in** rtkit **Never logged in** saned **Never logged in** usbmux **Never logged in** mdm **Never logged in** tecmint pts/1 127.0.0.1 Fri Jan 6 16:50:22 +0530 2017 ..
Вот и все! Если вы знаете какой-либо другой трюк или команду командной строки для просмотра сведений об учетной записи пользователя, поделитесь с нами.
Вы найдете эти связанные статьи очень полезными:
- Как управлять пользователями и группами в Linux
- Как удалить учетные записи пользователей с помощью домашнего каталога в Linux
- 3 способа изменить оболочку пользователя по умолчанию в Linux
- Как заблокировать или отключить вход пользователей в систему в Linux
В этой статье мы объяснили различные способы поиска информации о пользователях и данных для входа в систему Linux. Вы можете задать любые вопросы или поделиться своими мыслями через форму обратной связи ниже.
How to List Users in Linux
User management is a critical Linux system administration task. In large organizations, having insight into who has access to the system is crucial to correctly add users, remove users, and assign new user privileges.
This tutorial will show you how to list users on a Linux-based system. The guide provides four listing methods and explains essential concepts related to user administration.
Listing Users in Linux
Linux stores information about local users in the /etc/passwd file. Each line in the file contains information about a single user, including their username, user ID number (UID), home directory, and the login shell.
The following sections present multiple ways to access the data in /etc/passwd and list users on Linux distributions.
The commands used in the tutorial are:
Note: To display a list of the logged-on users and the information such as boot time, processes, hostnames, and more, use the who command.
List Users with cat Command
The cat command provides a straightforward way to list the contents of the /etc/passwd file.
The system outputs the entire file with all the users on the system.
To view the number of users only, pipe the output of the previous command to the wc command and make it count the number of lines:
The number of lines in /etc/passwd corresponds to the total number of users.
List Users with Terminal Pagers less and more
On systems with many users, it is useful to limit the /etc/passwd file output displayed at once. Use a terminal pager command, such as less or more , to browse through the file content line by line or page by page.
To open /etc/passwd using less , enter:
The first page of the file appears in the output. The list stops when it reaches the end of the terminal screen. Use the keyboard to navigate through the file.
Use more to get a similar result. This command is older and has a more limited set of functionalities:
List Users with awk Command
Use the awk command to list the usernames only, without additional information about each user. Since the data fields in /etc/passwd are separated by a colon symbol, the following syntax tells awk to output only the first field in each line:
Combine awk and less for a page-by-page view of the results.
List Users with getent Command
The getent command searches and displays system database entries. The searchable databases are listed in the /etc/nsswitch.conf file. By default, the file includes the passwd database.
List the entire contents of the passwd database by typing:
The output is the same as the output of the cat command.
However, you can use getent to look up specific users. To do so, use the following syntax:
If the user exists on the system, the command shows the related passwd entry line.
Listing Normal and System users in Linux
Linux-based systems have two types of users — system and normal users.
- System users are entities created by the system to run non-interactive processes, i.e., the processes that run in the background and do not require human interaction. The most important system user is root, which possesses administrative privileges.
- Normal users are human users created by root or another user with root privileges. Each normal user has a login shell and a home directory to store their files.
Both system and normal users in Linux have a unique user ID (UID) to identify them. System users have UIDs in the range from 0 (root user) to 999. Normal users typically receive UIDs from 1000 onwards, with each newly created user receiving the next smallest unused UID.
To check the UID range for normal users, use the grep command to search for the information stored in /etc/login.defs :
grep -E '^UID_MIN|^UID_MAX' /etc/login.defs
The output in this example shows that the smallest UID a normal user can receive is 1000, and the largest is 60000.
Use getent to search the passwd database by UID:
The output shows the user entry related to the UID.
Use UIDs in combination with getent to search for users in a range:
The command now lists all the users within the specified UID range.
This guide showed you how to list all Linux users, search for users, and find the number of Linux users in any Linux distribution.
How to Get Information About Other Linux Users
On your personal computer at home, you are most likely the only user who is connected to your Linux system. However, if you are a user at the Linux server in your company there can be other users as well.
In this case, it is good practice to know the information about other users who are currently connected to the same Linux machine using several commands.
How to Check Currently Logged in Users in Linux
To begin, use the users’ command – which shows a list of all users currently connected to the Linux system with no further details:
If you want to know more information about the currently logged-in users, you need to use the who command as explained in the next section.
How to Get Information of Currently Logged in Users in Linux
The who command not only prints the users who are currently connected to the system, but also the IP address from where they are logged in and at what time.
The reality that who command prints the IP address of remote users is extremely helpful. If, for example, a user is misbehaving then the system administrator knows from which IP address that user is connected, and this makes it easier to take corrective actions and lock the user permanently from the system.
How to Check Users Activity in Linux
If you want to know what a user is doing on the system, you need to use the w command – which shows you the names of users, from where they are logged in, and at what time, ongoing usage statistics, and what commands or programs they currently are running.
If you want to know more information about other users, try using the finger command as explained.
Find More Information of Users in Linux
The finger command shows a summary of the current state of a local user account that includes user recent activity, unread mail messages, and home directory. In most of the Linux distributions, the finger command isn’t installed by default.
$ sudo apt-get install finger [On Debian/Ubuntu & Mint] $ sudo dnf install finger [On RHEL/Fedora/CentOS/Rocky Linux and AlmaLinux]
Once installed, you can run the finger command followed by the username as shown.
In this short article, I’ve shown several commands to get the user information in Linux. If you know any other command to get the user details, do share with us in the comments.