- How to get all user details
- 1 Answer 1
- 11 способов найти информацию об учетной записи пользователя и данные для входа в Linux
- 1. Идентификационная команда
- 2. групповая команда
- 3. Команда пальца
- 4. команда getent
- 5. Команда grep
- 6. Команда lslogins
- 7. Команда пользователей
- 8. кто командует
- 9. Команда w
- 10. последняя или последняяb команды
- 11. Команда lastlog
- How to Find User Account Info and Login Details in Linux?
- id Command
- groups
- getnet
- lslogins
- w
How to get all user details
How can I get groups, permissions, shell, etc from a desired user from command line? There is a tool to obtain all basic data for each user?
1 Answer 1
I don’t think there is a single unified command for this.
For most things, you can use the finger command:
$ finger $USER Login: root Name: root Directory: /root Shell: /bin/bash On since Thu Jan 15 13:46 (IST) on tty1 19 days 18 hours idle Last login Tue Feb 3 20:55 (IST) on pts/5 from localhost No mail. No Plan.
You get the username, home directory, shell, count of unread mails, and last login details.
To list groups, either groups or id will do:
$ groups muru adm cdrom sudo dip plugdev lpadmin sambashare debian-tor libvirtd autopilot socks $ id uid=1000(muru) gid=1000(muru) groups=1000(muru),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),124(sambashare),127(debian-tor),132(libvirtd),136(autopilot),999(socks)
Permissions, of course, depend on what they are for. For sudo , use sudo -l :
$ sudo -l [sudo] password for muru: Matching Defaults entries for muru on ica: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin User muru may run the following commands on ica: (ALL : ALL) ALL
With PolKit it’s a lot tougher, pkcheck can assess whether an individual process can use some privilege, but I couldn’t figure out a way to list all permissions.
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 Find User Account Info and Login Details in Linux?
For the sysadmins, it is routine to monitor user details like who are active and who are not, who logged in in last 2 days, which users belong to a given group etc etc. To help these requirements, Linux provides below list of commands which can be used to gather various types of information about the users.
id Command
It gives the id details of users including the group id along with the secondary group IDs and names of a user choosen by the system. But you also ask for a specific user’sdeatils by giving the userid value in the command.
ubuntu@ubuntu:~$ id ubuntu@ubuntu:~$ id 2112
Running the above code gives us the following result:
uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare) uid=2112(uname1) gid=3421(uname1) groups=3421(uname1)
groups
It displays the group names the currently logged in user belongs to.
Running the above code gives us the following result −
ubuntu adm cdrom sudo dip plugdev lpadmin sambashare
getnet
This command looks into passed file and gets the user details form there.
ubuntu@ubuntu:~$ getent passwd
Running the above code gives us the following result −
root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin …… ………
lslogins
The lslogins command displays details of the known users of the system.
Running the above code gives us the following result −
UID USER PROC PWD-LOCK PWD-DENY LAST-LOGIN GECOS 0 root 135 root 1000 ubuntu 70 23:04:25 ubuntu16LTS. 2112 uname1 0 storefront 9002 uname4 0 HR
w
It displays the current users logged in to the system and the processes they are running.
Running the above code gives us the following result −
08:13:17 up 12:26, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT ubuntu tty7 :0 23:04 12:58m 1:23 0.34s /sbin/upstart –user