По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Команды Linux могут показаться пугающими на первый взгляд, если вы не привыкли использовать терминал. Для выполнения операций и процессов в вашей системе Linux существует огромное количество команд.
Независимо от того, являетесь ли вы новичком в Linux или опытным пользователем, полезно иметь список общих команд под рукой. В этом руководстве вы найдете часто используемые команды Linux, а также загружаемую шпаргалку (так называемый cheatsheet) с синтаксисом и примерами.
Скачать PDF
Список команд Linux
Важное замечание: В зависимости от настроек вашей системы для выполнения некоторых из приведенных ниже команд может потребоваться запуск sudo.
Информация об оборудовании
Показать сообщения, которые выводило ядро во время загрузки:
dmesg
Показать информацию о процессоре:
cat /proc/cpuinfo
Показать свободную и использованную память с:
free -h
Список информации о конфигурации оборудования:
lshw
Показать информацию о блочных устройствах:
lsblk
Показать устройства PCI в древовидной схеме:
lspci -tv
Отображение USB-устройств в виде древовидной диаграммы:
lsusb -tv
Показать информацию об оборудовании из BIOS:
dmidecode
Показать информацию о диске:
hdparm -i /dev/disk
Провести тест скорости чтения на устройстве/диске:
hdparm -tT /dev/[device]
Проверка на нечитаемые блоки на устройстве/диске:
badblocks -s /dev/[device]
Поиск
Поиск определенного паттерна в файле:
grep [pattern] [file_name]
Рекурсивно искать паттерн в каталоге:
grep -r [pattern] [directory_name]
Найти все файлы и каталоги, связанные с конкретным именем:
locate [name]
Вывести список имен, начинающиеся с указанного символа a в указанном месте /folder/location, с помощью команды find:
find [/folder/location] -name [a]
Просмотр файлов, размер которых превышает указанный размер + 100M в папке:
find [/folder/location] -size [+100M]
Файлы
Список файлов в каталоге:
ls
Список всех файлов (включая скрытые):
ls -a
Показать каталог, в котором вы сейчас работаете:
pwd
Создать новый каталог:
mkdir [directory]
Удалить файл:
rm [file_name]
Удалить каталог рекурсивно:
rm -r [directory_name]
Рекурсивно удалить каталог без подтверждения:
rm -rf [directory_name]
Скопировать содержимое одного файла в другой файл:
cp [file_name1] [file_name2]
Рекурсивно скопировать содержимое одного файла во второй файл:
cp -r [directory_name1] [directory_name2]
Переименовать имя_файла1 в имя_файла2:
mv [file_name1] [file_name2]
Создать символическую ссылку на файл:
ln -s /path/to/[file_name] [link_name]
Создать новый файл:
touch [file_name]
Показать содержимое файла:
more [file_name]
Показать первые 10 строк файла:
head [file_name]
Показать последние 10 строк файла:
tail [file_name]
Зашифровать файл:
gpg -c [file_name]
Расшифровать файл:
gpg [file_name.gpg]
Показать количество слов, строк и байтов в файле:
wc
Навигация
Подняться на один уровень вверх в структуре дерева каталогов:
cd ..
Перейти в каталог $ HOME:
cd
Изменить местоположение на указанный каталог:
cd /chosen/directory
Сжатие файлов
Заархивировать существующий файл:
tar cf [compressed_file.tar] [file_name]
Извлечь заархивированный файл:
tar xf [compressed_file.tar]
Создайте сжатый gzip tar-файл:
tar czf [compressed_file.tar.gz]
Сжать файл с расширением .gz:
gzip [file_name]
Передача файлов
Скопировать файл в каталог сервера через ssh:
scp [file_name.txt] [server/tmp]
Синхронизировать содержимое каталога с резервным каталогом:
rsync -a [/your/directory] [/backup/]
Пользователи
Показать подробности об активных пользователях:
id
Показать последние системные логины:
last
Показать, кто в данный момент вошел в систему:
who
Показать, какие пользователи вошли в систему и их активность:
w
Добавить новую группу:
groupadd [group_name]
Добавить нового пользователя:
adduser [user_name]
Добавить пользователя в группу:
usermod -aG [group_name] [user_name]
Удалить пользователя:
userdel [user_name]
Изменить информацию о пользователе:
usermod
Установка пакета
Список всех установленных пакетов с yum:
yum list installed
Найти пакет по связанному ключевому слову:
yum search [keyword]
Показать информацию и краткую сводку о пакете:
yum info [package_name]
Установить пакет с помощью менеджера пакетов >YUM:
yum install [package_name.rpm]
Установить пакет с помощью менеджера пакетов >DNF:
dnf install [package_name.rpm]
Установить пакет с помощью менеджера пакетов >APT:
apt-get install [package_name]
Установить пакет .rpm из локального файла:
rpm -i [package_name.rpm]
Удалить пакет .rpm:
rpm -e [package_name.rpm]
Установить программное обеспечение из исходного кода:
tar zxvf [source_code.tar.gz]
cd [source_code]
./configure
make
make install
Процессы
Показать снимок активных процессов:
ps
Показать процессы в древовидной диаграмме:
pstree
Показать карту использования памяти процессами:
pmap
Показать все запущенные процессы:
top
Завершить процесс Linux с заданным идентификатором:
kill [process_id]
Завершить процесс с определенным именем:
pkill [proc_name]
Завершите все процессы, помеченные как proc:
killall [proc_name]
Список и сводка остановленных заданий в фоновом режиме:
bg
Перевод последней фоновой задачи в активный режим:
fg
Перевод конкретной задачи в активный режим:
fg [job]
Список файлов, открытых запущенными процессами:
lsof
Системная информация
Показать информацию о системе:
uname -r
Показать информацию о релизе ядра:
uname -a
Показать, как долго работает система, включая среднюю нагрузку:
uptime
Показать имя хоста системы:
hostname
Показать IP-адрес системы:
hostname -i
История перезагрузки системы:
last reboot
Показать текущее время и дату:
date
Запрос и изменение системных часов:
timedatectl
Показать текущий календарь (месяц и день):
cal
Список залогиненых пользователей:
w
Показать текущего пользователя:
whoami
Показать информацию о конкретном пользователе:
finger [username]
Использование диска
Показать свободное и использованное пространство на смонтированных системах:
df -h
Показать свободные иноды (inode) на смонтированных файловых системах:
df -i
Показать разделы диска, размеры и типы:
fdisk -l
Показать использование диска для всех файлов и каталогов:
du -ah
Показать использование диска в каталоге, в котором вы находитесь:
du -sh
Показать целевую точку монтирования для всей файловой системы:
findmnt
Смонтировать устройство:
mount [device_path] [mount_point]
SSH
Подключиться к хосту как пользователь:
ssh user@host
Подключиться к хосту через SSH порт по умолчанию 22:
ssh host
Подключиться к хосту, используя определенный порт:
ssh -p [port] user@host
Подключиться к хосту через telnet порт по умолчанию 23:
telnet host
Разрешение файлов
Назначить права на чтение, запись и выполнение всем:
chmod 777 [file_name]
Дать владельцу право на чтение, запись и выполнение, а также разрешение на чтение и выполнение для группы и других пользователей:
chmod 755 [file_name]
Назначить полное разрешение владельцу, а также разрешение на чтение и запись для группы и других пользователей:
chmod 766 [file_name]
Изменить владельца файла:
chown [user] [file_name]
Изменить владельца и групповое владение файлом:
chown [user]:[group] [file_name]
Сеть
Список IP-адресов и сетевых интерфейсов:
ip addr show
Назначить IP-адрес интерфейсу eth0:
ip address add [IP_address]
Отображение IP-адресов всех сетевых интерфейсов:
ifconfig
Показать активные (прослушиваемые) порты:
netstat -pnltu
Показать порты tcp и udp и их программы:
netstat -nutlp
Показать больше информации о домене:
whois [domain]
Показать DNS информацию о домене:
dig [domain]
Обратный поиск по домену:
dig -x host
Обратный поиск IP-адреса:
dig -x [ip_address]
Поиск IP для домена:
host [domain]
Показать локальный IP-адрес:
hostname -I
Скачать файл из домена с помощью команды wget:
wget [file_name]
Сочетания клавиш Linux
Убить процесс, запущенный в терминале:
Ctrl + C
Остановить текущий процесс:
Ctrl + Z
Вырезать одно слово перед курсором и добавить его в буфер обмена:
Ctrl + W
Вырезать часть строки перед курсором и добавить ее в буфер обмена:
Ctrl + U
Вырезать часть строки после курсора и добавить ее в буфер обмена:
Ctrl + K
Вставить из буфера обмена:
Ctrl + Y
Вызвать последнюю команду, которая соответствует предоставленным символам:
Ctrl + R
Запустите ранее вызванную команду:
Ctrl + O
Выйти из истории команд без выполнения команды:
Ctrl + G
Запустить последнюю команду еще раз:
!!
Выйти из текущей сессии:
exit
Заключение
Чем чаще вы используете команды Linux, тем лучше вы их запомните. Не переживайте о запоминании их синтаксиса - используйте наш шпаргалку.
А больше материалов про Linux можно найти в нашем разделе.
Всем привет! Сегодня в статье рассмотрим установку MySQL Server на CentOS 7. MySQL – популярная реляционная СУБД с открытым кодом, и, её популярность означает огромное количество информации в интернете и большое количество хорошо документированных библиотек. MySQL поддерживает множество стандартных функций, присущих СУБД – репликацию, триггеры и прочие.
В большинстве дистрибутивов по умолчанию присутствуют репозитории, в которых есть нужный нам пакет MySQL – однако, на примере CentOS 7 Minimal я хотел бы показать процесс добавления официального YUM репозитория от Oracle, в котором всегда доступна последняя версия.
Процесс установки
Предварительно нам необходимо установить wget чтобы скачивать файлы – для этого выполните команду yum install wget.
Далее, для начала процесса установки необходимо зайти на сайт MySQL по следующему линку: http://dev.mysql.com/downloads/repo/yum/ , выбрать необходимый дистрибутив (в нашем случае - Red Hat Enterprise Linux 7 / Oracle Linux 7) и нажать Download. Ссылка для скачивания может быть получена без регистрации, для этого нужно найти слова «No thanks, just start my download»
Скопируем адрес ссылки и выполним команду wget с этим адресом:
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
Без каких-либо модификаторов команда wget скачает файл в каталог, в котором вы находитесь в данный момент, далее необходимо выполнить команду rpm –Uvh mysql57-community-release-el7-11.noarch.rpm - для более простого ввода имени пакета воспользуйтесь табуляцией (нажать Tab).
Теперь подключен официальный репозиторий Oracle, настала очередь установки непосредственно самого MySQL сервера:
yum –y install mysql-community-server
Процесс скачивания и установки пакета займёт какое-то время.
Далее необходимо разрешить автозапуск демона MySQL при загрузке:
/usr/bin/systemctl enable mysqld
И запустить сам MySQL сервер:
/usr/bin/systemctl start mysqld
Настройка безопасности
После старта сервера, необходимо настроить политики безопасности – для этого служит скрипт mysql_secure_installation - но предварительно нам понадобится случайно сгенерированный пароль для root – его можно выяснить с помощью команды grep 'temporary password' /var/log/mysqld.log. Пример на скриншоте ниже:
Далее нужно ввести команду /usr/bin/mysql_secure_installation и вам будет предложено ввести данный пароль на рут, поменять его на нечто вроде E+FW4tz8$?/7$dCm и ответить на несколько вопросов:
Set root password? [Y/n] Y - установка пароля на root;
Remove anonymous users? [Y/n] Y - удаление анонимных пользователей;
Disallow root login remotely? [Y/n] Y - запрет удаленного логина;
Remove test database and access to it? [Y/n] Y - удаление тестовых баз данных и доступа к ним;
Reload privilege tables now? [Y/n] Y - перезагрузка привилегированных таблиц;
Очень советую пароль придумать максимально сложный – кроме того, по дефолту, у вас не получится поставить простой пароль.
Создание тестовой базы данных и манипуляции с пользователями
Когда вам понадобится дать доступ какому-нибудь приложению доступ к вашей БД, ни в коем случае нельзя этого делать от пользователя root – для каждого приложения должен быть создан свой пользователь. Для создания, сначала необходимо зайти в MySQL от имени администратора с помощью команды mysql -u root -p mysql . Далее я приведу пример создания БД testdb и открытия полного доступа к этой БД для пользователя testuser (имя пользователя и пароль соответственно необходимо скорректировать относительно вашей непосредственной задачи):
create database testdb;
grant all on appdb.* to 'testuser'@'localhost' identified by 'password';
quit
Для проверки доступа нужно использовать команду mysql -u testuser -p -h localhost testdb , а для выводы всех имеющихся БД – команду SHOW DATABASES;
Рассмотрим пример создания пользователя для MySQL и просмотра списка всех пользователей. MySQL содержит информацию о пользователях в своей собственной базе данных под названием mysql, внутри которой информация о пользователях находится в виде таблицы под названием user. Если вы хотите вывести весь список пользователей, то необходимо выполнить следующую команду:
SELECT User, Host, Password FROM mysql.user;
Это стандартный MySQL синтаксис. Давайте разберемся с ним:
SELECT - запрос информации;
User, Host, Password - конкретизация полей, из которых информация должна быть извлечена. В данном случае мы ищем информацию о пользователе, хостнейме и зашифрованном пароле;
FROM mysql.user - запрашиваем информацию мы из БД mysql и таблицы user;
; - точка с запятой означают конец команды, в MySQL все запросы должны кончаться точкой с запятой;
В интерфейсе Elastix 4 существует большое множество инструментов, позволяющих осуществлять автоматическое распределение звонков. Про один из таких инструментов, мы расскажем в сегодняшней статье. Речь пойдёт о модуле Follow Me, с помощью которого можно перенаправить звонок, поступивший на определенный внутренний номер по любому направлению, доступному на IP-АТС.
Настройка
Давайте перейдём к настройке. Для того, чтобы попасть в модуль проходим следующий путь – с главной страницы - PBX → PBX Configuration → Follow Me, откроется следующее окно:
Справа находится список доступных внутренних номеров (Extensions), настроенных на нашей IP-АТС, для которых мы будем настраивать правила Follow Me. Для каждого Extension’а правила настраиваются отдельно. Выберем из списка нужный номер, например - 112 – Operator2, откроется функционал модуля Follow Me:
Как видно, функционал модуля делится на 4 части - Edit Follow Me, Call Confirmation Configuration, Change External CID Configuration и Destination if no answer
Если нажать в самом верху на кнопку Edit Extension 112, то мы попадаем в модуль настройки внутреннего номера – Extensions, для номера 112. Нажав на кнопку Delete Entries, мы удалим правила Follow Me для номера 112.
Раздел Edit Follow Me
Данном разделе настраиваются основные правила модуля, а именно – стратегия обзвона, время, в течение которого будет звонить телефон 112, прежде чем переключиться на другие номера, список номеров, на которые необходимо распределить звонок по определенной стратегии и т.п. Рассмотрим доступные функции данного раздела:
Disable - Включает или отключает правила Follow Me для данного номера
Initial Ring Time - Время, в течение которого АТС будет пытаться установить соединение с данным номером, прежде чем включатся правила Follow Me и не пойдёт обзвон номеров из списка Follow-me List
Ring Strategy - Стратегия обзвона номеров из списка Follow-me List
Ring Time - Время, в течение которого будут АТС будет пытаться установить соединение с номерами, указанными в Follow-me List. Максимально возможное значение – 60 секунд
Follow-Me List - Список номеров, на которые необходимо распределить вызов по выбранной в Ring Strategy стратегии. Можно отправлять вызовы на внешние и мобильные номера, для этого нужно указать префикс выхода на внешнюю линию, которую использует ваш провайдер, сам мобильный или внешний номер и в конце обязательно #. Например 984951234567# - где 8 – префикс выхода на внешнюю линию.
Extension Quick Pick - На каком номере должна закончиться стратегия обзвона
Announcement - Голосовое сообщение. Можно например сообщить, что вызов переводится на секретаря. Записи добавляются через модуль - System Recordings
Play Music On Hold? - Проигрывать ли Music On Hold
CID Name Prefix - Опционально можно добавить звонкам некий префикс, который будет отображаться на телефонах при звонке по правилам Follow Me.
Alert Info - Данная опция помогает различить звонки с разных SIP устройств
Раздел Call Confirmation Configuration
Данный раздел помогает настроить опции подтверждения принятия звонка. Особенно полезно, когда в Follow Me указаны внешние номера.
Confirm Calls - Если данная опция включена и звонок уходит на внешний номер, то удаленной стороне будет озвучено предложение “нажмите 1 если хотите принять звонок”.
Remote Announce - Сообщение удаленной стороне с предложением принять звонок, например - “нажмите 1 если хотите принять звонок”
Too-Late Announce - Сообщение удаленной стороне о том, что звонок уже успели принять, прежде чем они нажали цифру 1
Раздел Change External CID Configuration
В данном разделе доступны настройки отображения CallerID:
Destination if no Answer
Данный раздел позволяет настроить правила, по которым будет обрабатываться звонок, если ни один из номеров в списке Follow-Me List его не принял. Это может быть любое направление, доступное на IP-АТС – IVR, группа обзвона, голосовая почта и прочие.