Базовые утилиты
Вводные команды
pwd - print working directory
[admin@centos8 ~]$ pwd
/home/admin
whoami
[admin@centos8 ~]$ whoami
admin
ls - отображает список директорий и файлов в текущем местоположении
ls -l (long) - показывает подробности
[admin@centos8 ~]$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
[admin@centos8 ~]$ ls -l
total 0
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Desktop
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Documents
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Downloads
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Music
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Pictures
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Public
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Templates
drwxr-xr-x. 2 admin admin 6 Jan 7 12:39 Videos
ip address show
[admin@centos8 ~]$ ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:61:08:90 brd ff:ff:ff:ff:ff:ff
inet 172.16.249.128/24 brd 172.16.249.255 scope global dynamic noprefixroute ens160
valid_lft 1309sec preferred_lft 1309sec
inet6 fe80::6235:5dcc:dfe0:2c4a/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:9e:76:44 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:9e:76:44 brd ff:ff:ff:ff:ff:ff
free - покажет утилизацию памяти
free -m(megabytes)
admin@centos8 ~]$ free
total used free shared buff/cache available
Mem: 1846460 1192596 110776 16788 543088 476192
Swap: 2097148 10240 2086908
[admin@centos8 ~]$ free -m
total used free shared buff/cache available
Mem: 1803 1194 63 16 545 435
Swap: 2047 10 2037
df(disk free) - показывает утилизацию дисков
df -h(human readable)
[admin@centos8 ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 905136 0 905136 0% /dev
tmpfs 923228 0 923228 0% /dev/shm
tmpfs 923228 9912 913316 2% /run
tmpfs 923228 0 923228 0% /sys/fs/cgroup
/dev/mapper/cs-root 17811456 4880792 12930664 28% /
/dev/nvme0n1p1 999320 146508 784000 16% /boot
tmpfs 184644 1180 183464 1% /run/user/42
tmpfs 184644 6948 177696 4% /run/user/1000
[admin@centos8 ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 884M 0 884M 0% /dev
tmpfs 902M 0 902M 0% /dev/shm
tmpfs 902M 9.7M 892M 2% /run
tmpfs 902M 0 902M 0% /sys/fs/cgroup
/dev/mapper/cs-root 17G 4.7G 13G 28% /
/dev/nvme0n1p1 976M 144M 766M 16% /boot
tmpfs 181M 1.2M 180M 1% /run/user/42
tmpfs 181M 6.8M 174M 4% /run/user/1000
cat - показывает содержимое файлов
[admin@centos8 ~]$ ls /etc/hosts
/etc/hosts
findmnt - показывает все смонтированные файловые системы
[admin@centos8 ~]$ findmnt
TARGET SOURCE FSTYPE OPTIONS
/ /dev/mapper/cs-root
│ xfs rw,relatime,seclabel,attr2,inode64,noquot
├─/sys sysfs sysfs rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/kernel/security securityfs securityf rw,nosuid,nodev,noexec,relatime
│ ├─/sys/fs/cgroup tmpfs tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755
│ │ ├─/sys/fs/cgroup/systemd cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/memory cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/blkio cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/freezer cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/cpuset cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/cpu,cpuacct cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/rdma cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/net_cls,net_prio cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/devices cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/perf_event cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ ├─/sys/fs/cgroup/hugetlb cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ │ └─/sys/fs/cgroup/pids cgroup cgroup rw,nosuid,nodev,noexec,relatime,seclabel,
│ ├─/sys/fs/pstore pstore pstore rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/fs/bpf bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700
│ ├─/sys/fs/selinux selinuxfs selinuxfs rw,relatime
│ ├─/sys/kernel/debug debugfs debugfs rw,relatime,seclabel
│ ├─/sys/kernel/config configfs configfs rw,relatime
│ └─/sys/fs/fuse/connections fusectl fusectl rw,relatime
├─/proc proc proc rw,nosuid,nodev,noexec,relatime
│ └─/proc/sys/fs/binfmt_misc systemd-1 autofs rw,relatime,fd=29,pgrp=1,timeout=0,minpro
├─/dev devtmpfs devtmpfs rw,nosuid,seclabel,size=905136k,nr_inodes
│ ├─/dev/shm tmpfs tmpfs rw,nosuid,nodev,seclabel
│ ├─/dev/pts devpts devpts rw,nosuid,noexec,relatime,seclabel,gid=5,
│ ├─/dev/mqueue mqueue mqueue rw,relatime,seclabel
│ └─/dev/hugepages hugetlbfs hugetlbfs rw,relatime,seclabel,pagesize=2M
├─/run tmpfs tmpfs rw,nosuid,nodev,seclabel,mode=755
│ ├─/run/user/42 tmpfs tmpfs rw,nosuid,nodev,relatime,seclabel,size=18
│ └─/run/user/1000 tmpfs tmpfs rw,nosuid,nodev,relatime,seclabel,size=18
│ └─/run/user/1000/gvfs gvfsd-fuse fuse.gvfs rw,nosuid,nodev,relatime,user_id=1000,gro
├─/boot /dev/nvme0n1p1
│ ext4 rw,relatime,seclabel
└─/var/lib/nfs/rpc_pipefs sunrpc rpc_pipef rw,relatime
Bash Shell
Оболочка по-умолчанию для взаимодействия с системой
Имеет ряд полезных команд и функций
использование табуляции дописывает команды автоматически при наличии совпадения с введенными символами
history - отображает список ранее введенных команд
! <номер пункта> - повторит данную команду
!f - ввод последней команды, начинавшейся с "f"
Ctrl+R откроет reverse search, в котором по вводу можно также повторить команду
piping - использование знака "|" позволяет изменить вывод команды необходимым образом
| less - упрощенный вывод
| wc - word count - количество строк, слов и символов
redirection - перенаправление вывода команды
STDOUT - используется ">", например ls /home > /home/output.txt (при каждом следующем редиректе содержимое перезаписывается)
STDOUT - ">>" - дополняет содержимое файла при редиректе
STDERR - "2>" - редирект ошибок, возникаемых при вводе, их можно отправлять в /dev/null, то есть сбрасывать
environment variables - переменные, имеющиеся в системе
выводятся командой "env | less"
ввод переменной их этого списка позволяет быстро менять какой-либо параметр системы
alias - команда-псевдоним, назначаемая для группы команд
"alias h=history" позволит запускать команду "history" по вводу только "h"
script - последовательный запрограммированный ввод команд в оболочке
Иерархия файловых систем
Назначение директорий в Linux стандартизировано
Стандартом является FHS (Filesystem Hierarchy Standard), разработанный Linux Foundation
Стартовая точка система - корневая директория (root)
Различные устройства могут быть интегрированы в FHS посредством монтирования
man hier отобразит справку по иерархии системы


Использование man
man - (manual) - утилита для получения справочной информации по пользованию системой
man man отобразит главное окно утилиты
MAN(1) Manual pager utils MAN(1)
NAME
man - an interface to the on-line reference manuals
SYNOPSIS
man [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-m system[,...]] [-M path] [-S
list] [-e extension] [-i|-I] [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P pager] [-r
prompt] [-7] [-E encoding] [--no-hyphenation] [--no-justification] [-p string] [-t] [-T[device]] [-H[browser]]
[-X[dpi]] [-Z] [[section] page[.section] ...] ...
man -k [apropos options] regexp ...
man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
man -f [whatis options] page ...
man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-P pager] [-r prompt] [-7] [-E
encoding] [-p string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] file ...
man -w|-W [-C file] [-d] [-D] page ...
man -c [-C file] [-d] [-D] page ...
man [-?V]
DESCRIPTION
man is the system's manual pager. Each page argument given to man is normally the name of a program, utility
or function. The manual page associated with each of these arguments is then found and displayed. A section,
if provided, will direct man to look only in that section of the manual. The default action is to search in
all of the available sections following a pre-defined order ("1 1p 8 2 3 3p 4 5 6 7 9 0p n l p o 1x 2x 3x 4x
5x 6x 7x 8x" by default, unless overridden by the SECTION directive in /etc/man_db.conf), and to show only the
first page found, even if page exists in several sections.
Manual page man(1) line 1 (press h for help or q to quit)
/<текст для поиска> - поиск заданного текста в мануалах
The table below shows the section numbers of the manual followed by the types of pages they contain.
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
A manual page consists of several sections.
Страницы мануала часто имеют примеры настройки команд
[admin@centos8 ~]$ man lvcreate
LVCREATE(8) System Manager's Manual LVCREATE(8)
NAME
lvcreate - Create a logical volume
SYNOPSIS
lvcreate option_args position_args
[ option_args ]
[ position_args ]
-a|--activate y|n|ay
--addtag Tag
--alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit
-A|--autobackup y|n
-H|--cache
--cachemetadataformat auto|1|2
Для справки характерны общие принципы, по которым формируется примеры ввода команд
[OPTION] - опциональная часть команды
... - опции можно вводить последовательно
[FILE] - директория для выполнения
y|n - требуется подтверждение ввода
Разделы мануала:
Имя (NAME)
Синопсис (SYNOPSIS)
Описание (DESCRIPTION)
Использование (USAGE)
Примеры (EXAMPLES)
Прочее (SEE ALSO)
и другие в зависимости от функциональности описанной программы
Все страницы мануалов индексируются в mandb
man -k или apropos позволяет осуществить поиск по ключевому слову в mandb
вывод можно также отфильтровать grep
mandb автоматически строится по cron
вручную ребилд можно запустить через mandb
Vim
VisualIMproved
Редактор по-умолчанию в системе, используемый в том числе многими командами
Vim является улучшенной версией vi
Vim имеет два режима: command mode и input mode

При запуске программы предлагается командный режим
Для перехода к вводу необходимо ввести "a" или "i"
В левом нижнем углу появится обозначение режима INSERT
Выйти в командный режим необходимо через "Escape"
"o" запустит ввод с новой строки
":wq!" - выйти из vim при нахождении в командном режиме
"!" обозначает, что выход без каких-либо подтверждений
":q!" - выход без сохранения
"dd" - удаление строки
"d$" - удалит ввод после курсора
"yy" - копирование текущей строки
"p" - вставка из буфера
"v" - visual mode
"gg" - курсор в начало документа
"G" - курсор в конец документа
"u" - откатить изменения
"Ctrl-r" - перейти на шаг вперед
"/text" - поиск текста text
"?text" - поиск в направлении назад
"^" - переход в начало текущей строки
"$" - переход в конец текущей строки
":%s/old/new/g" - замена текста "old" на "new" глобально (без "g" будет заменено только первое совпадение)
Глоббинг
Globbing - функционал шелла для подстановки имен файлов
Не являются регулярными выражениями
Мануалы находятся в man 7 glob
ls host* - найти файлы, которые начинаются с host
ls ?ost - найти файлы, которые заканчиваются на ost
ls [hm]ost - найти файлы, которые начинаются на h или m и имеют ost в названии
ls [!hm]ost - найти файлы, которые не начинаются на h или m
ls script[0-9][0-9] - найти файл, который заканчивается на две любые цифры
Cockpit
Является веб-сервисом для администрирования системы и мониторинга ресурсов
Первоначальная настройка осуществляется разрешением в systemctl сервиса
Требуется ввод пароля администратора
[admin@centos8 ~]$ systemctl enable --now cockpit.socket
Created symlink /etc/systemd/system/sockets.target.wants/cockpit.socket → /usr/lib/systemd/system/cockpit.socket.
Проверка статуса
[admin@centos8 ~]$ systemctl status cockpit.socket
● cockpit.socket - Cockpit Web Service Socket
Loaded: loaded (/usr/lib/systemd/system/cockpit.socket; enabled; vendor preset: disabled)
Active: active (listening) since Sun 2020-02-16 16:57:50 MSK; 2min 14s ago
Docs: man:cockpit-ws(8)
Listen: [::]:9090 (Stream)
Process: 8382 ExecStartPost=/bin/ln -snf active.motd /run/cockpit/motd (code=exited, status=0/SUCCESS)
Process: 8372 ExecStartPost=/usr/share/cockpit/motd/update-motd localhost (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 11313)
Memory: 1.8M
CGroup: /system.slice/cockpit.socket
Feb 16 16:57:50 centos8 systemd[1]: Starting Cockpit Web Service Socket.
Feb 16 16:57:50 centos8 systemd[1]: Listening on Cockpit Web Service Socket.
Дальнейшая эксплуатация осуществляется в браузере по порту, указаному в статусе LISTEN


Last updated
Was this helpful?