Потребителите са най-важният компонент в Linux система. Linux предоставя вградени команди на администраторите, които им позволяват да управляват ефективно потребителите. Има един за създаване на потребители, изтриване на потребители и промяна на потребителските разрешения. Но какво ще кажете за изброяване на всички потребители, които в момента присъстват в системата?

В тази статия ще обсъдим как можете да получите списък на всички потребители в Linux, заедно с кратко ръководство за проверка дали даден потребител съществува в система или не.

Как да покажа списък с всички потребители в Linux

Когато създавате нов потребител, потребителското име, паролата и други подробности се съхраняват в определени файлове на Linux машина. За щастие, Linux ви позволява да четете и модифицирате такива файлове без никакви ограничения. Използвайки тези файлове, можете да знаете информация, свързана с потребителите, като техните потребителски имена, брой потребители и др.

Използване на файла Passwd

The passwd

instagram viewer
файл е текстов файл, който съдържа записите на паролата на всички потребители, които в момента присъстват във вашата система. Този файл се намира в /etc директория във вашето локално хранилище и съдържа следната информация:

  1. Потребителски имена
  2. Шифровани пароли
  3. Потребителски идентификатор
  4. Идент. № на потребителската група
  5. Пълно име
  6. The /home директория на потребителя
  7. Черупка за вход на потребителя

Тип cat / etc / passwd или по-малко / etc / passwd във вашия терминал, за да прочетете текстовия файл. Отваряне на /etc/passwd файл ще генерира изход, който изглежда нещо подобно.

root: x: 0: 0: root: / root: / bin / bash
daemon: x: 1: 1: daemon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
игри: x: 5: 60: игри: / usr / игри: / bin / sh
man: x: 6: 12: man: / var / cache / man: / bin / sh

Гореспоменатият изход съдържа седем полета, които съдържат информация, свързана с потребителите. Тези полета са разделени с разделител в този случай, дебело черво. Всеки ред в изхода означава един потребител.

За да получите списък с всички потребителски имена с помощта на passwd файл:

awk -F: '{print $ 1}' / etc / passwd

Awk е помощна програма за команден ред, която позволява на потребителите на Linux да създават прости програми с един ред, които извършват бързи операции от терминала. В гореспоменатия код:

  1. -F означава поле Разделител. Тъй като символът на дебелото черво е разделителят в /etc/passwd файл, ние предаваме двоеточието като разделител в командата awk.
  2. {отпечатайте $ 1} инструктира системата да отпечата първото поле. В този случай първото поле е потребителското име на потребителите.
  3. /etc/passwd файлът съдържа данните, свързани с потребителите.

Изпълнението на горната команда ще изведе потребителските имена на всички потребители. Тъй като /etc/passwd файлът съдържа системни потребители, изходът ще включва и техните потребителски имена.

корен
демон
кошче
sys
синхронизиране
игри
човече

Можете леко да промените командата awk, за да отпечатате пълните имена на потребителите. Въведете следната команда, за да покажете пълните имена на потребителите в Linux:

awk -F: '{print $ 5}' / etc / passwd

Тъй като потребителите на системата имат едно и също потребителско име и пълно име, няма да забележите никаква разлика в изхода. Само потребителите, които сте добавили към вашата система, ще имат различни потребителски имена и пълни имена.

Като алтернатива можете също да използвате разрез вместо командата awk. Синтаксисът на cut е доста подобен на командата awk.

За да отпечатате потребителските имена в Linux с помощта на cut:

cut -d: f1 / etc / passwd

Тук, е разделителят, f1 обозначава първото поле (потребителско име) и /etc/passwd е текстовият файл, който съдържа данните.

За да отпечатате първите имена на потребители, използващи cut:

cut -d: f5 / etc / passwd

По същия начин можете да изведете други полета от /etc/passwd файл, като просто го замените f5 с f1-f7.

Свързани: Как да промените вашата Linux парола

Списък на потребителите с командата getent

Командата getent отпечатва съдържанието на важни текстови файлове, които действат като база данни за системата. Файлове като /etc/passwd и /etc/nsswitch.conf съдържат информация, свързана съответно с потребители и мрежи и могат да бъдат прочетени с помощта на командата getent.

За да отпечатате съдържанието на /etc/passwd файл, използващ getent:

getent passwd

Резултатът ще съдържа седем различни полета, разделени от знака на двоеточието. Всяко поле е запазено за конкретна информация, включително потребителските имена и пътищата на началната директория на потребителите.

root: x: 0: 0: root: / root: / bin / bash
daemon: x: 1: 1: daemon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
игри: x: 5: 60: игри: / usr / игри: / bin / sh
man: x: 6: 12: man: / var / cache / man: / bin / sh

Можете да веригирате командата getent с awk или cut, за да получите само списъка с потребителски имена.

getent passwd | awk -F: '{print $ 1}'
getent passwd | изрежете -d: -f1

За да отпечатате пълните имена на потребителите:

getent passwd | awk -F: '{print $ 5}'
getent passwd | cut -d: -f5

Проверете дали даден потребител съществува или не

В някои ситуации може да искате да проверите дали даден потребител съществува във вашата Linux система или не. The grep команда е полезна, когато искате да вземете определен текстов шаблон от файл.

Можете да използвате някоя от следните команди, за да проверите съществуването на потребител.

compgen -u | grep потребителско име
getent passwd | grep потребителско име

Ако потребителят съществува, информацията за вход, свързана с него, ще се покаже на екрана. От друга страна, ако потребителят не присъства в системата, ще възникне грешка.

За да проверите дали потребител съществува в системата, без да използвате grep:

getent passwd потребителско име

Можете също така да прекарате гетентен или compgen команда с grep и ехо за показване на потребителски изход.

getent passwd | grep -q потребителско име && echo "Потребителят е намерен" || echo "Потребителят не е намерен"
compgen -u | grep -q потребителско име && echo "Потребителят е намерен" || echo "Потребителят не е намерен"

Командата по-горе ще отпечата „Потребител намерен“, ако потребителят съществува в системата, и „Потребител не е намерен“, ако не го има.

Пребройте броя на потребителите в системата

За да преброите броя на потребителите, които съществуват в Linux система:

compgen -u | wc -l
getent passwd | wc -l

В горните команди, compgen и гетентен са отговорни за показване на списъка, съдържащ всички потребители и друга информация, свързана с тях. The тоалетна означава брой думи и се използва за преброяване на броя думи или редове в изхода. The флаг означава Линии.

Проверка на потребителски акаунти в Linux

Всеки администратор на Linux трябва да знае как може да управлява и администрира други потребители в системата. Овладяването на Linux команди, които ви позволяват да създавате, премахвате, контролирате и изброявате други потребители, е чудесен начин да започнете с управлението на потребителите.

Запознаването с Linux средата трябва да бъде първата ви цел, ако сте начинаещ. Има някои неща, които трябва да направите веднага след инсталирането на първата си дистрибуция на Linux. Изучаване на някои основни команди е един от тях и е от съществено значение за изпълнението на прости компютърни задачи на Linux.

електронна поща
Как да започнем с Linux

Интересувате се от използването на Linux, но не знаете откъде да започнете? Научете как да използвате Linux, от избора на дистрибуция до инсталирането на приложения.

Свързани теми
  • Linux
  • Linux
За автора
Дийпеш Шарма (21 статии публикувани)

Deepesh е младши редактор за Linux в MUO. Той пише информационно съдържание в интернет повече от 3 години. В свободното си време той обича да пише, да слуша музика и да свири на китара.

Още от Deepesh Sharma

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Още една стъпка…!

Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.

.