Команда find в linux

Команды Linux окружения пользователя

Что делать, если CentOS не видит сетевую карту?

Расположение логов по умолчанию

Большинство файлов логов Linux находятся в папке /var/log/ вы можете список файлов логов для вашей системы с помощью команды ls:

Ниже мы рассмотрим 20 различных файлов логов Linux, размещенных в каталоге /var/log/. Некоторых из этих логов встречаются только в определенных дистрибутивах, например, dpkg.log встречается только в системах, основанных на Debian.

  • /var/log/messages — содержит глобальные системные логи Linux, в том числе те, которые регистрируются при запуске системы. В этот лог записываются несколько типов сообщений: это почта, cron, различные сервисы, ядро, аутентификация и другие.
  • /var/log/dmesg — содержит сообщения, полученные от ядра. Регистрирует много сообщений еще на этапе загрузки, в них отображается информация об аппаратных устройствах, которые инициализируются в процессе загрузки. Можно сказать это еще один лог системы Linux. Количество сообщений в логе ограничено, и когда файл будет переполнен, с каждым новым сообщением старые будут перезаписаны. Вы также можете посмотреть сообщения из этого лога с помощью команды dmseg.
  • /var/log/auth.log — содержит информацию об авторизации пользователей в системе, включая пользовательские логины и механизмы аутентификации, которые были использованы.
  • /var/log/boot.log — Содержит информацию, которая регистрируется при загрузке системы.
  • /var/log/daemon.log — Включает сообщения от различных фоновых демонов
  • /var/log/kern.log — Тоже содержит сообщения от ядра, полезны при устранении ошибок пользовательских модулей, встроенных в ядро.
  • /var/log/lastlog — Отображает информацию о последней сессии всех пользователей. Это нетекстовый файл, для его просмотра необходимо использовать команду lastlog.
  • /var/log/maillog /var/log/mail.log — журналы сервера электронной почты, запущенного в системе.
  • /var/log/user.log — Информация из всех журналов на уровне пользователей.
  • /var/log/Xorg.x.log — Лог сообщений Х сервера.
  • /var/log/alternatives.log — Информация о работе программы update-alternatives. Это символические ссылки на команды или библиотеки по умолчанию.
  • /var/log/btmp — лог файл Linux содержит информацию о неудачных попытках входа. Для просмотра файла удобно использовать команду last -f /var/log/btmp
  • /var/log/cups — Все сообщения, связанные с печатью и принтерами.
  • /var/log/anaconda.log — все сообщения, зарегистрированные при установке сохраняются в этом файле
  • /var/log/yum.log — регистрирует всю информацию об установке пакетов с помощью Yum.
  • /var/log/cron — Всякий раз когда демон Cron запускает выполнения программы, он записывает отчет и сообщения самой программы в этом файле.
  • /var/log/secure — содержит информацию, относящуюся к аутентификации и авторизации. Например, SSHd регистрирует здесь все, в том числе неудачные попытки входа в систему.
  • /var/log/wtmp или /var/log/utmp — системные логи Linux, содержат журнал входов пользователей в систему. С помощью команды wtmp вы можете узнать кто и когда вошел в систему.
  • /var/log/faillog — лог системы linux, содержит неудачные попытки входа в систему. Используйте команду faillog, чтобы отобразить содержимое этого файла.
  • /var/log/mysqld.log — файлы логов Linux от сервера баз данных MySQL.
  • /var/log/httpd/ или /var/log/apache2 — лог файлы linux11 веб-сервера Apache. Логи доступа находятся в файле access_log, а ошибок в error_log
  • /var/log/lighttpd/ — логи linux веб-сервера lighttpd
  • /var/log/conman/ — файлы логов клиента ConMan,
  • /var/log/mail/ — в этом каталоге содержатся дополнительные логи почтового сервера
  • /var/log/prelink/ — Программа Prelink связывает библиотеки и исполняемые файлы, чтобы ускорить процесс их загрузки. /var/log/prelink/prelink.log содержит информацию о .so файлах, которые были изменены программой.
  • /var/log/audit/- Содержит информацию, созданную демоном аудита auditd.
  • /var/log/setroubleshoot/ — SE Linux использует демон setroubleshootd (SE Trouble Shoot Daemon) для уведомления о проблемах с безопасностью. В этом журнале находятся сообщения этой программы.
  • /var/log/samba/ — содержит информацию и журналы файлового сервера Samba, который используется для подключения к общим папкам Windows.
  • /var/log/sa/ — Содержит .cap файлы, собранные пакетом Sysstat.
  • /var/log/sssd/ — Используется системным демоном безопасности, который управляет удаленным доступом к каталогам и механизмами аутентификации.

Как просмотреть пользователей на VPS

Каждый пользователь системы Linux вне зависимости от того, создан он для реального человека или используется как отдельный сервис или функция системы, хранится в файле по имени «/etcpasswd».

Данный файл содержит информацию о пользователях системы. Каждая строка описывает отдельного пользователя.

Просмотрите файл, введя:

Каждая строка разбита на поля. Такие поля определяются символом двоеточия.

В данный момент нас интересует первое поле. Оно содержит список имен пользователей.

Этот список можно получить и другим способом:

В данном списке можно найти пользователя «root», то есть, пользователя с правами администратора. В конце списка находится имя пользователя, с которого вы работаете в данный момент.

В списке можно найти и ряд других пользователей, чьи цели более или менее понятны. К примеру, пользователь «wwwdataявляется владельцем процессов веб-сервера.

Это делается для того, чтобы отделить функциональные привилегии. Таким образом, если учетная запись пользователя взломана или используется неверно, ее действия будут изолированы.

Удаление пользователей

Для удаления пользователей в Linux существуют две команды userdel и deluser, команда userdel используется в RedHat — подобных системах, а deluser в Debian и производных системах. Помимо deluser в Debian можно использовать и userdel.

userdel

синтаксис команды: userdel options username

Для того чтобы удалить пользователя, выполняем команду userdel. Команда userdel не удаляет пользователя если он работает в системе, сначала необходимо завершить все связанные с ним процессы. Для просмотра дополнительных опций команды userdel, используется ключ -h.

userdel -h

-f, --force                   force some actions that would fail otherwise
                              e.g. removal of user still logged in
                              or files, even if not owned by the user
-h, --help                    показать данное сообщение и закончить работу
-r, --remove                  удалить домашний каталог и почтовый ящик
-R, --root КАТ_CHROOT         каталог, в который выполняется chroot
-Z, --selinux-user            удалить все пользовательские сопоставления
                              SELinux для пользователя

-f — позволяет удалить залогиненного т.е. работающего в системе пользователя. Рекомендуется использовать только в самых крайних случаях, данная опция может привести к краху системы.

deluser

синтаксис команды: deluser options username

Для просмотра справки используется команда deluser -h.

deluser -h
deluser ПОЛЬЗОВАТЕЛЬ
  удаляет обычного учётную запись пользователя из системы
  пример: deluser mike

  --remove-home             удалить домашний каталог пользователя
                            и почтовый ящик
  --remove-all-files        удалить все файлы принадлежащие пользователю
  --backup                  сделать резервные копии файлов перед удалением.
  --backup-to <КАТ>         каталог для резервных копий файлов.
                            По умолчанию используется текущий каталог.
  --system                  удалить только если учётная запись системная

delgroup ГРУППА
deluser --group ГРУППА
  удаляет группу из системы
  пример: deluser --group students

  --system                  удалить только если группа системная
  --only-if-empty           удалить, только если в ней нет пользователей

deluser ПОЛЬЗОВАТЕЛЬ ГРУППА
  удаляет пользователя из группы
  пример: deluser mike students

общие параметры:
  --quiet | -q              не выводить информацию при работе в stdout
  --help | -h               показать справку об использовании
  --version | -v            показать версию и авторские права
  --conf | -c ФАЙЛ          использовать ФАЙЛ в качестве конфигурационного

Настройки команды находятся в файле /etc/deluser.conf, здесь задается поведение утилиты при удалении пользователя.

Значения 0 или 1, нет или да соответственно.

REMOVE_HOME = 0
Удаляет домашний каталог и почтовый ящик пользователя. 
REMOVE_ALL_FILES = 0
Удаляет все файлы принадлежащие пользователю. Если этот параметр включен
то REMOVE_HOME бесполезен.
BACKUP = 0
Если REMOVE_HOME или REMOVE_ALL_FILES активированы, то перед удалением
делается резервная копия всех файлов. Утилита создаст архив username.tar 
в каталоге указанном в BACKUP_TO.
BACKUP_TO = "."
Если BACKUP активирован, то здесь указывается каталог куда будет
производиться резервное копирование.
ONLY_IF_EMPTY = 0
Удалять группу только если в ней нет пользователей.
EXCLUDE_FSTYPES = "(proc|sysfs|usbfs|devpts|tmpfs|afs)"
Список регулярных выражений задающих файловые системы которые нужно исключить
из поиска при удалении пользовательских файлов.

Как настроить 2 IP адреса на одном интерфейсе

Если у вас появилась необходимость настроить 2 IP адреса на одном интерфейса в CentOS, то сделать это достаточно просто. Воспользуемся командой ifconfig. Для начала проверим список сетевых интерфейсов:

Добавим к интерфейсу eno16777728 еще один ip адрес 192.168.159.120:

Проверим, что получилось:

То же самое, с помощью ip.

Все в порядке, мы добавили второй ip адрес на один и тот же интерфейс. Но после перезагрузки дополнительный адрес не сохранится. Чтобы его сохранить, необходимо создать файл настроек интерфейса в папке /etc/sysconfig/network-scripts

Сохраняем файл, перезагружаемся и проверяем, что получилось. Второй ip адрес должен быть на месте.

Создание пользователя в Linux

Вся информация о пользователях находится в файле /etc/passwd. Мы могли бы создать пользователя linux просто добавив его туда, но так делать не следует, поскольку для этой задачи существуют специальные утилиты. Одна из таких утилит, это useradd. Рассмотрим ее подробнее.

Команда useradd

Это довольно простая команда, которая есть во всех дистрибутивах Linux. Она позволяет зарегистрировать нового пользователя или изменить информацию об уже имеющемся. Во время создания можно даже создать домашний каталог пользователя и скопировать в него системные файлы. Рассмотрим синтаксис команды:

$ useradd опции имя_пользователя

Все довольно просто, дальше нам нужно рассмотреть основные опции команды, с помощью которых вы будете настраивать нового пользователя:

  • -b — базовый каталог для размещения домашнего каталога пользователя, по умолчанию /home;
  • -c — комментарий к учетной записи;
  • -d — домашний каталог, в котором будут размещаться файлы пользователя;
  • -e — дата, когда учетная запись пользователя будет заблокирована, в формате ГГГГ-ММ-ДД;
  • -f — заблокировать учетную запись сразу после создания;
  • -g — основная группа пользователя;
  • -G — список дополнительных групп;
  • -k — каталог с шаблонами конфигурационных файлов;
  • -l — не сохранять информацию о входах пользователя в lastlog и faillog;
  • -m — создавать домашний каталог пользователя, если он не существует;
  • -M — не создавать домашнюю папку;
  • -N — не создавать группу с именем пользователя;
  • -o — разрешить создание пользователя linux с неуникальным идентификатором UID;
  • -p — задать пароль пользователя;
  • -r — создать системного пользователя, не имеет оболочки входа, без домашней директории и с идентификатором до SYS_UID_MAX;
  • -s — командная оболочка для пользователя;
  • -u — идентификатор для пользователя;
  • -D — отобразить параметры, которые используются по умолчанию для создания пользователя. Если вместе с этой опцией задать еще какой-либо параметр, то его значение по умолчанию будет переопределено.

Теперь, когда вы знаете основные необходимые нам параметры утилиты мы можем перейти к разбору того, как выполняется создание нового пользователя linux. Сначала давайте посмотрим какие параметры будут применены для пользователя по умолчанию:

Как видите, по умолчанию домашний каталог пользователя будет создан в /home и будет использоваться оболочка /bin/sh. Теперь создадим минимального пользователя с минимальными настройками:

Был создан самый простой пользователь, без оболочки и пароля, а также без групп. Теперь немного усложним задачу и создадим пользователя с паролем и оболочкой /bin/bash:

Для того чтобы получать доступ к системным ресурсам пользователю нужно быть участником групп, у которых есть доступ к этим ресурсам. Дополнительные группы пользователя задаются с помощью параметра -G. Например, разрешим пользователю читать логи, использовать cdrom и пользоваться sudo:

Также, можно установить дату, когда аккаунт пользователя будет отключен автоматически, это может быть полезно для пользователей, которые будут работать временно:

Некоторых пользователей интересует создание пользователя с правами root linux, это очень просто делается с помощью useradd, если комбинировать правильные опции. Нам всего лишь нужно разрешить создавать пользователя с неуникальным uid, установить идентификатор в 0 и идентификатор основной группы тоже в 0. Команда будет выглядеть вот так:

Пожалуй, это все основные примеры как добавить пользователя linux. Дальше нам осталось взглянуть только на работу в графическом интерфейсе.

Создание нового пользователя linux в GUI

Затем откройте «Пользователи»:

Поскольку утилита запущена от имени обычного пользователя вы ничего не можете сделать. Поэтому нажмите кнопку «Разблокировать»:

Только после этого используйте кнопку со знаком плюс для создания нового пользователя Linux:

В открывшемся окне нужно заполнить все поля. Но тут намного больше ограничений, чем в методе через терминал. Вы не можете задать слишком простой пароль, а также нельзя настроить группы. Можно только указать будет ли пользователь включен в группу wheel с помощью выбора типа пользователя — администратор или обычный:

После этого создание пользователя linux завершено, новый пользователь появится в списке.

Сетевые настройки на сервере CentOS

Команды Linux для управления пользователями

35. useradd / userdel / usermod

Эти команды консоли Linux позволяют вам добавлять, удалять и изменять учетные записи пользователей. Скорее всего, вы не будете использовать их очень часто. Особенно если это домашний компьютер, и вы являетесь единственным пользователем. Управлять пользователями можно и с помощью графического интерфейса, но лучше знать об этих командах на всякий случай.

36. passwd

Эта команда позволяет изменить пароль учетной записи пользователя. Как суперпользователь вы можете сбросить пароли всех пользователей, даже несмотря на то, что не можете их увидеть. Хорошая практика безопасности — менять пароль почаще.

Права и владельцы

В операционной системе UNIX были сформулированы некоторые общие идеи и принципы, которые оказали в дальнейшем сильное влияние на её архитектуру, пользовательский интерфейс, культуру и развитие. В частности, один из основополагающих принципов выражается мантрой «всё есть файл», которую часто называют определяющим пунктом UNIX в целом.
Суть данного принципа заключается в создании унифицированного способа доступа к широкому диапазону ресурсов ввода/вывода: к документам, каталогам, жёстким дискам, дискам CD-ROM, модемам, клавиатурам, принтерам, мониторам, терминалам и даже межпроцессным и сетевым взаимодействиям. Цель — предоставление универсальной абстракции для каждого из этих объектов, названных отцами-оснвоателями UNIX общим термином «файл». Поскольку доступ к файлу осуществляется с помощью одного и того же API, стало возможно использовать одинаковый набор базовых команд для чтения и записи таких разнородных устройств, как диск, клавиатура, документ или сетевой интерфейс.
Абстракция файла, существующая в операционной системе UNIX и совместимых с ней системах, является основополагающей и всеобъемлющей. Любая системная служба и интерфейс устройства теперь могут реализовываться так, чтобы предоставлять другим приложениям метафору файла или файловой системы. Это открывает новые способы их использования и значительно расширяет возможности существующих приложений — простые инструменты, разработанные для решения узких задач, теперь, вооружившись абстракцией файла UNIX, могут использоваться совершенно по-новому. Небольшая утилита вроде cat, предназначенная для считываения одного или нескольких файлов и вывода их содержимого на стандартный поток вывода, теперь может выполнять чтение с устройств ввода-вывода с помощью специальных файлов устройств, как правило расположенных в каталоге . С другой стороны, во многих системах запись и проигрываение звука теперь выполняется всего лишь командами «» и «» соответственно.

В GNU/Linux каждый файл принадлежит какому-то пользователю и группе. Существует три типа прав доступа — чтение, запись и исполнение. Права доступа задаются по отдельности для владельца-пользователя, владельца-группы, и для прочих пользователей, которые не входят в первые две категории. Владельцев файла и права доступа можно узнать с помощью «длинного» формата команды ls:

$ ls -l /boot/
total 13740
drwxr-xr-x 2 root root    4096 Jan 12 00:33 grub
-rw-r--r-- 1 root root 8570335 Jan 12 00:33 initramfs-linux-fallback.img
-rw-r--r-- 1 root root 1821573 Jan 12 00:31 initramfs-linux.img
-rw-r--r-- 1 root root 1457315 Jan  8 08:19 System.map26
-rw-r--r-- 1 root root 2209920 Jan  8 08:19 vmlinuz-linux

Первая колонка содержит права доступа к файлу (например, правами файла являются ). Третья и четвёртая колонки содержат соответственно пользователя и группу, которым принадлежит файл. В этом примере все файлы принадлежат пользователю root и группе root.

$ ls -l /media/
total 16
drwxrwx--- 1 root vboxsf 16384 Jan 29 11:02 sf_Shared

В этом примере каталог принадлежит пользователю root и группе vboxsf. Владельца и права доступа можно также определить утилитой stat.

Пользователь-владелец:

$ stat -c %U /media/sf_Shared/
root

Группа-владелец:

$ stat -c %G /media/sf_Shared/
vboxsf

Права доступа:

$ stat -c %A /media/sf_Shared/
drwxrwx---

Права доступа отображаются тремя группами символов, которые являются правами соответственно пользователя, группы и всех остальных. Например, строка говорит о том, что владелец файла имеет права на чтение и запись, но не на выполнение (), а пользователи из группы-владельца и прочие пользователи имеют доступ только на чтение ( и ). С другой стороны, строка говорит о том, что у пользователя и группы права на чтение, запись и исполнение ( и ), а все остальные доступа к файлу не имеют вовсе (). Первый символ в строке означает тип файла.

Вывести список всех файлов, принадлежащих пользователю или группе, можно с помощью утилиты find:

# find / -group имя_группы
# find / -group номер_группы
# find / -user имя_пользователя

Изменить владельцев файла можно командой chown, а права доступа меняются командой chmod:

Голос в поддержку Red Hat

Несмотря на то, что большинство специалистов не поддерживают решение Red Hat свернуть поддержку CentOS 8 существенно раньше срока, нашлись и те, кто оценил идею компании сконцентрироваться CentOS Stream. В пользу такого решения высказался ни кто иной, как Джим Перрин (Jim Perrin), бывший разработчик Red Hat, вносивший свой вклад в развитие CentOS, и нынешний старший программный инженер Microsoft.

Red Hat нашла поддержку в лице бывших сотрудников

Перрин назвал три преимущества нового подхода, из которых, тем не менее, лишь два имеют отношение к CentOS. По его словам, шаг, на который пошла Red Hat, позволит сделать разработку RHEL более прозрачной. Также он позволяет независимым разработчикам вносить исправления в код CentOS Stream, которые затем могут быть добавлены в итоговую версию RHEL. Третье преимущество, по мнению Перрина – это возможность сообщества высказывать свое мнение по поводу дальнейшего развития ОС, добавления тех или иных функций и т.д.

Список групп

В этом разделе объясняется назначение важнейших групп из пакета . Существует множество других групп, которые создаются при установке пакетов с присвоением корректного GID. Подробности вы найдёте на страницах руководств соответствующих программ.

Примечание: Удаление пакета не приводит к удалению автоматически созданных пользователей и групп. Это сделано намеренно, потому что в противном случае созданные в процессе работы программы файлы могут остаться без владельца, что потенциально представляет угрозу безопасности.

Пользовательские группы

Часто возникает необходимость добавить обычного (не root) пользователя в одну из групп, обеспечивающих доступ к периферийным устройствам или упрощающих системное администрирование:

Группа Файлы Назначение
adm Группа администрирования, обычно используется для чтения файлов защищённых логов. Позволяет читать файлы журнала.
ftp Доступ к файлам .
games Доступ к некоторым игровым программам.
http Доступ к файлам .
log Доступ к файлам логов в каталоге , созданным syslog-ng.
rfkill Управление питанием беспроводных устройств (используется ).
sys Администрирование принтеров с помощью CUPS.
systemd-journal
uucp , , , , Последовательные порты RS-232 и подключенные к ним устройства.
wheel Группа администрирования, даёт необходимые права. Имеет доступ к файлам журнала и принтерам в CUPS. Также позволяет работать с утилитами sudo и su (по умолчанию их не использует).

Системные группы

Следующие группы имеют значение для всей системы, и добавление в них пользователям производится только в указанных целях:

Группа Файлы Назначение
dbus Используется в
kmem , ,
locate , , , См. locate.
lp , Доступ к устройствам параллельного порта (принтеры и прочие).
mail
nobody Непривилегированная группа.
proc
root Полный доступ к администрированис и управлению системой (root, admin).
smmsp Группа sendmail.
tty , , ,
utmp , ,

Группы, существовавшие до перехода на systemd

Есть несколько важных исключений, которые требуют добавления пользователей в группы ниже — например, если вы хотите разрешить неавторизованным пользователям доступ к устройствам. Тем не мнее, имейте в виду, что это может стать причиной определённых проблем (например, группа мешает быстрому переключению между пользователями, а также даёт приложениям возможность блокировать програмное микширование).

Группы Файлы Назначение
audio , , Прямой доступ к звуковому оборудованию для всех сеансов. По-прежнему требуется, чтобы ALSA и OSS работали в удаленных сеансах, см. . Также используется в JACK для выдачи пользователям разрешений на работу в режиме реального времени.
disk Доступ к блочным устройствам, не затронутым другими группами вроде , и .
floppy Доступ к флоппи-дискам.
input ,
kvm Доступ к виртуальным машинам с использованием KVM.
optical , Доступ к оптическим устройствам, таким как CD- и DVD-приводы.
scanner Доступ к оборудованию сканера.
storage ,
video , Доступ к устройствам захвата видео, аппаратное ускорение 2D/3D, framebuffer (X можно использовать без поддержки этой группы).

Неиспользуемые группы

Следующие группы в настоящий момент никак не используются.

Группа Файлы Назначение
bin Историческое наследие.
daemon
lock Использовалась для lockfile-доступа. Требовалась для .
mem
network Не использовалась по умолчанию. Могла использоваться в NetworkManager (см. ).
power
uuidd
users Основная группа для пользователей; использовалась, если приватные группы не были предусмотрены. Например, при создании с опцией в файле , или командой useradd с флагом / пользователь помещался именно в эту группу.

Просматриваем список процессов в Linux

Практически во всех популярных дистрибутивах, основанных на ядре Linux, список процессов открывается и просматривается с помощью одних и тех же команд, инструментов

Поэтому мы не будем сосредотачивать внимание на отдельных сборках, а возьмем за пример последнюю версию Ubuntu. Вам же останется только выполнить предоставленные инструкции, чтобы вся процедура прошла успешно и без трудностей

Способ 1: Терминал

Бесспорно, классическая консоль операционных систем на Линуксе играет важнейшую роль при взаимодействии с программами, файлами и другими объектами. Все основные манипуляции юзер производит именно через это приложение. Потому с самого начала хотелось бы рассказать о выводе информации именно через «Терминал»

Обратим внимание мы лишь на одну команду, однако рассмотрим самые популярные и полезные аргументы

  1. Для начала запустите консоль, нажав на соответствующий значок в меню или используя комбинацию клавиш Ctrl + Alt + T.

Пропишите команду , чтобы просто убедиться в ее работоспособности и ознакомиться с видом показанных данных без применения аргументов.

Как видите, список процессов получился достаточно малым, обычно это не более трех результатов, поэтому стоит уделить время уже упомянутым аргументам.

Чтобы отобразились сразу все процессы, стоит добавить -A. В таком случае команда выглядит как (A обязательно должна быть в верхнем регистре). После нажатия на клавишу Enter вы сразу увидите сводку строк.

Предыдущая команда не отображает лидера группы (главный процесс из связки). Если вас интересуют и эти данные, здесь следует прописать .

Получить большее количество полезной информации можно, просто добавив .

Тогда полный список процессов с расширенной информацией будет вызываться через . В таблице вы увидите UID — имя пользователя, запустившего процесс, PID — уникальный номер, PPID — номер родительского процесса, C — количество времени нагрузки на ЦП в процентах, когда активен процесс, STIME — время активации, TTY — номер консоли, откуда был совершен запуск, TIME — время работы, CMD — команда, запустившая процесс.

Каждый процесс имеет свой PID (Proccess Identificator). Если вы хотите увидеть сводку о конкретном объекте, пропишите , где PID — номер процесса.

Отдельно хотелось бы затронуть и сортировку. Например, команда позволяет поставить все строки в порядке нагрузки на CPU, а — по затрачиваемому объему оперативной памяти.

Выше мы рассказали об основных аргументах команды , однако присутствуют еще и другие параметры, например:

  • — отображение дерева процессов;
  • — вывод версий объектов;
  • — выборка всех процессов кроме заданных;
  • — отображение только по имени команды.

Для рассмотрения метода просмотра процессов через встроенную консоль мы выбрали именно команду , а не , поскольку вторая ограничена размерами окна и не помещающиеся данные просто игнорируются, оставаясь невыведенными.

Способ 2: Системный монитор

Конечно, метод просмотра нужной информации через консоль является сложным для некоторых пользователей, но он позволяет подробно ознакомиться со всеми важными параметрами и применить необходимые фильтры. Если вы хотите просто просмотреть список запущенных утилит, приложений, а также совершить с ними ряд взаимодействий, вам подойдет встроенное графическое решение «Системный монитор».

Подробнее: Способы запуска Системного монитора в Linux

  1. Запустите «Системный монитор» любым удобным методом, например, через меню.

Сразу же отобразится список процессов. Вы узнаете, сколько они потребляют памяти и ресурсов ЦП, увидите пользователя, запустившего выполнение программы, а также сможете ознакомиться с другой информацией.

Щелкните правой кнопкой мыши на интересующей строке, чтобы перейти в ее свойства.

Здесь отображаются практически все те же данные, которые доступны к получению через «Терминал».

Используйте функцию поиска или сортировки, чтобы найти необходимый процесс.

Обратите внимание и на панель сверху — она позволяет сортировать таблицу по необходимым значениям.

Завершение, остановка или удаление процессов также происходит через это графическое приложение путем нажатия на соответствующие кнопки. Начинающим пользователям такое решение покажется более удобным, чем работа в «Терминале», однако освоение консоли позволит получать искомую информацию не только быстрее, но и с большим количеством деталей.

Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Информация пользователей

В системе присутствует следующая информация о каждом пользователе:

  • Имя пользователя (user name) — в рамках системы имя должно быть уникальным. В именах должны использоваться только английские буквы, числа и символы _ и . (точка).
  • Идентификационный номер пользователя (UID) — является уникальным идентификатором пользователя в системе. Система отслеживает пользователей по UID, а не по именам.
  • Идентификационный номер группы (GID) — обозначает группу, к которой относится пользователь. Каждый пользователь может принадлежать к одной или нескольким группам. Принадлежность пользователя к группе устанавливает системный администратор, чтобы иметь возможность ограничивать доступ пользователей к тем или иным ресурсам системы.
  • Пароль (password) — пароль пользователя в зашифрованном виде.
  • Полное имя (full name) — помимо системного имени может присутствовать полное имя пользователя, например фамилия и имя.
  • Домашний каталог (home directory) — каталог, в который попадает пользователь после входа в систему. Подобный каталог имеется у каждого пользователя, все пользовательские каталоги хранятся в директории /home.
  • Начальная оболочка (login shell) — командная оболочка, которая будет запускаться при входе в систему. Например, /bin/bash.

Вся информация о пользователях хранится в следующих файлах:

passwd (etc/passwd) — содержит информацию о пользователях, имеет следующий формат записи — «user_name:password:UID:GID:full_name:home_directory:login_shell». Элементы записи должны разделяться символом — «:» (двоеточие) и записываются без пробелов. Если пароль хранится в зашифрованном виде в файле /etc/shadow, то вместо пароля указывается — «x».

group (etc/group) — информация о группах, формат — «group_name:password:GID:user1,user2,user3». Элементы записи должны разделяться символом — «:» (двоеточие) записываются без пробелов. Имена пользователей записываются через запятую.

У файлов /etc/passwd и /etc/group всегда определенные права доступа: чтение и запись для root, для остальных только чтение.

shadow (etc/shadow) — в этом файле хранятся так называемые «теневые пароли», информация о паролях пользователей в зашифрованном виде. Cделано это для безопасности, так как файл /etc/passwd может читаться кем угодно, а файл /etc/shadow может прочитать только root.

gshadow (etc/gshadow) — то же самое что и shadow, только для паролей групп.

Помимо основных, в системе присутствуют дополнительные файлы.

useradd (etc/default/useradd) — файл задающий свойства «по умолчанию» для всех добавляемых пользователей. Можно просмотреть командой — useradd -D.

useradd -D

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

login.defs (/etc/login.defs) — содержит настройки для создания новых пользователей.

/etc/skel — каталог с дефолтными файлами, которые копируются в домашний каталог каждого пользователя при его создании.

Команда adduser

Создание пользователя командой adduser

Рассмотрим, как создать обычного пользователя командой adduser

Чтобы создать нового пользователя, выполняем команду adduser и указываем имя пользователя (вместо pupkin укажите имя пользователя, которого вы создаете):

После запуска данной команды, вы должны ввести пароль для нового пользователя. Затем будет предложено ввести дополнительную информацию о пользователе: имя, номер комнаты (кабинета), телефоны и комментарий. Вводить эту информацию необязательно. Просто нажимайте Enter, чтобы пропустить ввод данных.

В результате выполнения команды adduser будут выполнены следующие действия:

  • Создается новый пользователь с именем, которое вы указали при выполнении команды.
  • Создается группа с тем же именем.
  • Создается домашний каталог пользователя в директории /home/имяпользователя
  • В домашний каталог копируются файлы из директории /etc/skel

В данной директории хранятся файлы, которые копируются в домашний каталог всех новых пользователей.

Различные типы пользователей

Работая как root

su Открывает subshell (подоболочку) от имени другого пользователя с тем преимуществом, что только команды subshell выполняются от имени пользователя root.
sudo Позволяет настроить среду, в которой конкретные задачи выполняются с правами администратора.
PolicyKit Позволяет настроить графические утилиты для работы с правами администратора.

su sususu usersu 

su su —

sudouseradd sudo useradd

  1. Сделайте административную учетную запись членом группы wheel с помощью usermod -aG wheel user.
  2. Введите visudo и убедитесь, что строка %wheel ALL=(ALL) ALL включена.

Пример переключения учетных записей пользователей

Войдите в систему под обычным пользователем;
Введите whoami, чтобы увидеть, какую учетную запись вы используете в данный момент

Также введите id и обратите внимание, что вы получаете больше информации о ваших текущих учетных данных при использовании id;

Наберите su. При запросе пароля введите пароль root

Введите id еще раз. Вы видите, что вы в настоящее время root;
Введите visudo и убедитесь, что строка %wheel ALL=(ALL) ALL включена;
Введите useradd -G wheel user, чтобы создать пользователя user, который является членом группы wheel;

Введите id user, чтобы убедиться, что он добавлен в группу wheel;

Установите пароль для User, введя passwd user. Введите пароль дважды;
Выйдите из системы и войдите в систему как user;
Наберите sudo useradd user1. Введите пароль при запросе. Вот вы и создали еще одного пользователя.

Правильное удаление пользователя

Под правильным удалением пользователя нужно понимать определенную последовательность команд позволяющих удалить пользователя не оставив мусора и не обрушив систему.

Блокировка пользователя

Удаляемый пользователь не должен быть залогинен в системе и использовать какие либо файлы или программы.

Блокировку пользователя мы рассматривали выше.

usermod -L techlist

Убить все пользовательские процессы

Если пользователь залогинен, то его нужно выкинуть из системы. Для этого найдем все процессы запущенные от его имени и завершим их.

pgrep -u techlist
1556
1558
1584
1585

Узнаем что это за процессы используя их pid.

ps -f --pid $(pgrep -u techlist)
UID        PID  PPID  C STIME TTY      STAT   TIME CMD
techlist  1556     1  0 06:21 ?        Ss     0:00 /lib/systemd/systemd --user
techlist  1558  1556  0 06:21 ?        S      0:00 (sd-pam)
techlist  1584  1554  0 06:21 ?        S      0:00 sshd: techlist@pts/3
techlist  1585  1584  0 06:21 pts/3    Ss+    0:00 -bash

Hичего серьезного нет, можно завершать все. Завершение всех процессов вышвырнет пользователя из системы, а заново войти он не сможет, ибо был заранее заблокирован.

killall -9 -u techlist

-9 - отправить сигнал завершения процессам
-u - задает пользователя

Для выполнения данной команды в системе должен быть установлен пакет psmisc

debian & ubuntu
apt-get install psmisc -y

centos и пр.
yum install psmisk -y

Удаление пользователя

userdel -r techlist

deluser --remove-home techlist

--remove-home - указан для удаления домашнего каталога пользователя
или в /etc/deluser.conf изменить значение REMOVE_HOME = 0 на 1 REMOVE_HOME = 1

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий