Команды SSH - это очень важный инструмент любого системного администратора или продвинутого вебмастера, который размещает сайты не на обычном хостинге, а на выделенном сервере. Настройка таких серверов обычно происходит через консоль при помощи команд Linux.
Для подключения можно использовать различные программы, например, PuTTY. SSH также обрабатывает и Bitvise SSH Client. По сути, они представляют собой одно и то же. Поэтому большинство администраторов используют то, к чему просто привыкли.
PuTTY SSH
Ниже на фото представлена консоль программы PuTTY. При подключении в любой программе нужно указывать хост (IP адрес) сервера и порт, на котором работает эта консоль. Обычно это 22-й порт.
Некоторые оболочки для подключения к серверу предлагают запомнить ваш логин и пароль. Это делать не рекомендуется. Максимум что можно запомнить - логин, чтобы упростить работу. Но пароль всегда вводите заново. Такие клиенты иногда взламываются, и затем злоумышленники воруют ваши данные.
Bitvise SSH Client
Также SSH Linux команды отлично работают и в Bitvise SSH Client. Консоль точно такая же, но, кроме этого, в этой программе сразу открывается FTP.
Использовать можно что угодно. Главное, чтобы вам нравилось и всё работало. Принцип везде одинаковый.
Команды SSH для мониторинга системы
Команды SSH-консоли позволяют следить за сервером. Для этого достаточно набрать команду htop. Результатом будет изображение, которое вы видите ниже.
На всех компьютерах будет разная информация. В данном случае приведен слабый сервер с одним процессором и всего 671 Мб оперативной памяти.
Графа Uptime показывает, сколько времени прошло с перезапуска системы. Если работа по администрированию сервера и контролю его состояния в целом выполнена профессионально, работать без перезагрузок он будет долго. Ведь если всё хорошо работает, то зачем перезапускать?
Здесь очень важной строчкой является Load Average с тремя значениями. Первое показывает среднюю нагрузку за последнюю минуту, второе - за последние 5 минут, третье - за последние 15 минут. Эта нагрузка определяется не так, как в стандартном диспетчере задач Windows.
Нагрузка может быть и больше 100. Даже больше 200. Система работает так: если показание за последнюю минуту будет меньше или равно 1 и при этом на компьютере одно ядро, то сервер справляется с нагрузкой. То есть здесь нужно учитывать соотношение количества ядер и цифр на экране. Если всё 1 к 1 или меньше, то это хорошо. Чем меньше значение, тем быстрее работает операционная система в целом.
Если нагрузка 4 на двухъядерном сервере, то нагрузка превышает в 2 раза возможности для стабильной работы. Старайтесь следить за этой цифрой. Если нагрузка большая, то постарайтесь оптимизировать работу сервера и того, что там работает.
Нагрузку, как правило, может давать работа с файлами или с базой данных.
Использовать команду htop может любой пользователь на сервере. Но смотреть нагрузку и запросы всех баз данных всех пользователей может только root. Для этого нужно войти на сервер через SHH и ввести команду mytop.
Здесь отображаются все текущие запросы с подробной информацией:
- ID запроса (чем дольше работает сервер, тем больше будет цифра);
- пользователь, который выполняет запрос;
- хост, где выполняется запрос;
- база данных;
- сколько времени выполняется запрос;
- сам запрос.
Самое важное здесь - время исполнения. Самые длинные процессы находятся внизу. Если вы видите, что какой-то mysql-запрос выполняется пару минут, то это ненормально. Нажмите кнопку k (от слова kill) и введите ID. В итоге вы сможете завершить запрос. Убейте таким образом все долгие запросы и сможете разгрузить сервер.
Далее, чтобы устранить проблему (а она будет появляться снова, и вы не сможете всегда вручную кикать проблемные строки), нужно посмотреть, что это за база и какой запрос происходит. Определите самые долгие и оптимизируйте их.
Основные команды Linux
Существуют различные команды SSH. У всех разное назначение. Например:
Видео: 100 САМЫХ ЛУЧШИХ И ПОЛЕЗНЫХ КОМАНД В MINECRAFT 1.8+
- для работы с файлами;
- для отображения системной информации;
- для управления процессами;
- для архивации;
- для работы с сетью;
- для работы с mysql;
- для поиска;
- для установки прав доступа на файлы;
- для установки пакетов.
Рассматривать все необязательно. С большинством из них вы будете сталкиваться по ходу работы с консолью.
Сейчас рассмотрим базовые команды, которые нужны всегда и везде. Если вы их запомните, то будете помнить всегда.
Работа с файлами
Обратите внимание на то, что пути в командах надо писать исходя из того, где вы находитесь. Например, команда ls даст список текущей директории. Переходы по папкам посредством cd можно делать сразу в нужную, а не по одной.
Всегда смотрите на пути, которые вы пишете в командах. Также можно использовать "маски". Например, удалить все файлы txt можно, введя команду rm *.txt. Под звездочкой понимается что угодно, главное, чтобы в конце было .тхт.
Архивация файлов
Видео: 10 ПОЛЕЗНЫХ КОНСОЛЬНЫХ КОМАНД В КС ГО для МУВИМЕЙКИНГА (CS:GO)
Чтобы ознакомиться с этим вопросом, изучите фото ниже.
Системная информация
Основные команды приведены на фото.
Установка программ
Не все команды SSH срабатывают сразу после установки операционной системы. Многие утилиты нужно устанавливать. Это очень просто.
Видео: Dota 2 Scripts: Useful console commands / Полезные консольные команды
Например, команды htop и mytop изначально в комплекте не идут. Их нужно устанавливать. Для этого вводим sudo apt-get install htop.
Устанавливать нужно из пользователя root. У других недостаточно прав.
Принцип установки одинаковый для всех программ. Просто в конце меняется вместо htop на нужную вам утилиту (для дальнейших команд).