Давайте разберем некоторые команды Linux
Команда | Назначение |
---|---|
date |
Отображает текущую (системную) дату и время
|
ps | Отображает информацию о системных процессах |
who | Показывает, какие пользователи вошли в систему |
rusers |
Отображает пользователей в системах локальной сети (LAN)
|
finger |
Отображает информацию о вошедших пользователях.
|
uptime |
Показывает, как долго работала система
|
rup |
Показывает, как долго работали системы локальной сети (время работы всех сетевых систем)
|
w |
Отображает выходные данные команды uptime, а затем отображает список текущих действий в системе и того, что делает каждый пользователь.
|
Команда date
Если вы создаете скрипт, который пишет отчет, вы можете захотеть, чтобы дата и время отображались в виде записи в файле.
Команда date выводит однострочный вывод текущей даты и времени (системная дата и время).
# date Tue Jun 9 11:36:00 UTC 2020
Команда PS
Команда ps отображает текущие процессы системы
# ps PID TTY TIME CMD 2281 pts/0 00:00:00 sudo 2285 pts/0 00:00:00 su 2286 pts/0 00:00:00 bash 2477 pts/0 00:00:00 ps
В следующей таблице описывается значение столбцов в выводе ps.
Заголовок столбца | Значение |
---|---|
PID | Числовой идентификационный номер процесса |
TTY |
Номер терминала, с которого был начат процесс
|
TIME |
Показывает, сколько времени центральный процессор (ЦП) потратил на процесс
|
CMD |
Имя команды, которую выполняет процесс
|
UUID |
Имя пользователя, запустившего процесс
|
PPID | ID родительского процесса |
C |
Загрузка процессора для планирования (устарела)
|
STIME | День, когда процесс начался |
Как показано в следующем примере, некоторые параметры команды ps расширяют отображаемую информацию.
Параметр -f отображает полный список и включает такую информацию, как имя пользователя, идентификационный номер процесса (PID), PID родителя и т. д.
Опция -e отображает все процессы в системе.
Вы можете комбинировать эти варианты.
# ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 11:29 ? 00:00:03 /usr/lib/systemd/systemd --switched-root --system --deserialize 22 root 2 0 0 11:29 ? 00:00:00 [kthreadd] root 4 2 0 11:29 ? 00:00:00 [kworker/0:0H] root 5 2 0 11:29 ? 00:00:00 [kworker/u4:0] root 6 2 0 11:29 ? 00:00:00 [ksoftirqd/0] root 7 2 0 11:29 ? 00:00:00 [migration/0] root 8 2 0 11:29 ? 00:00:00 [rcu_bh] root 9 2 0 11:29 ? 00:00:00 [rcu_sched] root 10 2 0 11:29 ? 00:00:00 [lru-add-drain] root 11 2 0 11:29 ? 00:00:00 [watchdog/0] root 12 2 0 11:29 ? 00:00:00 [watchdog/1] root 13 2 0 11:29 ? 00:00:00 [migration/1] root 14 2 0 11:29 ? 00:00:00 [ksoftirqd/1] root 16 2 0 11:29 ? 00:00:00 [kworker/1:0H]
Команда who
При выполнении задач системного администрирования важно знать, кто в данный момент работает в системе.
Команда who отображает список вошедших в систему пользователей, на каком терминале они вошли, а также дату и время, когда они вошли.
# who geek_user pts/0 2020-06-09 11:33 (192.168.1.39) mike pts/0 2020-06-09 10:21 (192.168.1.77)
Команда rusers
Команда rusers опрашивает локальную сеть и выводит список всех зарегистрированных пользователей.
Если в системе нет зарегистрированных пользователей, в списке не отображаются пользователи.
Команда rusers, однако, заставляет отображать все системы, независимо от того, имеют ли они текущих пользователей или нет.
Параметры также управляют порядком отображения (сортировка по системе, сортировка по пользователю и т. д.).
Команда rusers иногда занимает много времени.
Информация выводится быстро, но затем команда приостанавливается, как будто она все еще ищет новых пользователей.
После этого ничего обычно не происходит, поэтому вы можете убить команду с помощью Control-C.
# rusers Sending broadcast for rusersd protocol version 3... system01 mike system09 john system100 root milton
Команда finger
Команда finger выводит информацию о пользователях, вошедших в текущую систему.
# finger cloud_user Login: cloud_user Name: Directory: /home/cloud_user Shell: /bin/bash On since Tue Jun 9 11:33 (UTC) on pts/0 from 192.168.132.21 3 seconds idle No mail. No Plan.
Команда uptime
Текущее время
Как долго работала система (время с момента последней загрузки системы)
Сколько пользователей в настоящее время вошли в систему
Средняя нагрузка ( load average ) – это среднее количество заданий (процессов) в очереди выполнения за последние 1 минуту, 5 минут и 15 минут.
# uptime 11:51:38 up 22 min, 1 user, load average: 0.00, 0.05, 0.06
Команда rup
Команда rup аналогична выполнению команды uptime для всех систем в локальной сети.
Информация та же, за исключением следующих различий:
- Имя системы указано первым
- Дата не указана
- Количество пользователей не указано
$ rup system01 up 7 days, 6:47, load average: 0.21, 0.21, 0.21 system09 up 4:20, load average: 0.21, 0.26, 0.26 system11 up 15:53, load average: 0.20, 0.16, 0.14 system19 up 2 days, 2:44, load average: 0.00, 0.00, 0.01
Команда w
Команда w сначала отображает вывод команды uptime.
Затем команда w отображает список текущей активности в системе и действия каждого пользователя.
Это дает следующую информацию:
- Логин пользователя
- Терминал, на котором пользователь вошел в систему
- Время входа пользователя
- Количество времени простоя пользователя
- Совместное время ЦП (JCPU), которое заняли все процессы этого терминала
- Время процессора (PCPU), которое израсходовали активные в данный момент процессы
- Имя и аргументы текущего процесса
# w 11:55:09 up 25 min, 1 user, load average: 0.00, 0.03, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT cloud_us pts/0 1.186.113.22 11:33 5.00s 0.23s 0.17s sshd: cloud_user [priv]