Введение
Когда вы устанавливаете свежую версию ОС CentOS или любой другой Linux, то вам изначально доступен только один пользователь с именем root. root — это суперпользователь, который имеет полный доступ ко всем параметрами и конфигурациям ОС. Использовать учетную запись root рекомендуется
только в особых случаях, т.к. это способствует случайному совершению деструктивных и необратимых ошибок, исправить которые будет крайне сложно. Чтобы этого избежать рекомендуется создать на сервере как минимум еще одного пользователя и наделить его правами root, а использовать права root лишь тогда когда это потребуется при помощи команды — .
Создание новых учетных записей также потребуется когда к серверу необходимо предоставить доступ другим лицам.
Создание
Синтаксис:
useradd
* опции не являются обязательными при создании пользователя.
Пример:
useradd dmosk
* в данном примере создается учетная запись dmosk.
Для учетной записи стоит сразу создать пароль:
passwd dmosk
* после ввода, система попросит ввести пароль дважды.
Ключи (опции)
Ключ | Описание и примеры |
---|---|
-b | Задает базовый каталог для домашнего каталогаuseradd dmosk -b /var/home |
-c | Создает комментарий для описания учетной записиuseradd dmosk -c «Пользователя для управления системой» |
-d | Полный путь к домашнему каталогу пользователяuseradd dmosk -d /home/newuser |
-D | Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователейuseradd dmosk -Ds /bin/bash |
-e | Дата, после которой учетная запись устареет.useradd dmosk -e 2017-12-31 |
-f | Число дней, после которого учетная запись с устаревшим паролем будет заблокированаuseradd dmosk -f 0 |
-g | Задает основную группуuseradd dmosk -g altternativegroup |
-G | Задает дополнительные группыuseradd dmosk -G wheel |
-k | Путь к источнику скелета (файлы с шаблонами для нового пользователя)useradd dmosk -k /var/skel |
-m | При создании пользователя создать домашний каталогuseradd dmosk -m |
-M | Не создавать домашний каталогuseradd dmosk -M |
-N | Не создавать основную группу с таким же именем, как у пользователяuseradd dmosk -N |
-o | Разрешает создание учетной записи с повторяющимся UIDuseradd dmosk -u 15 -o |
-p | Задает парольuseradd dmosk -p pass |
-r | Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs)useradd dmosk -r |
-R | Каталог, в который выполняется chrootuseradd dmosk -R /var/chroot/home |
-s | Путь до оболочки командной строкиuseradd dmosk -s /bin/csh |
-u | Задает UIDuseradd dmosk -u 666 |
-U | Имя группы будет таким же, как у пользователяuseradd dmosk -U |
Актуальный список ключей можно получить командой useradd -h.
RedHat7 / CentOS 7: полезные команды
Опубликовано: 2 года назад
А у нас на работе случилось тестирование по знанию команд linux
На самом деле это круто, когда работа мотивирует изучать что-то новое и постоянно развиваться. Тем более, ребята подготовили неплохие конспекты и даже тем, кто с терминалом был «на вы» при минимальных усилиях разобраться в происходящем оказалось не очень сложно.
Глядя на эти конспекты, мне стало немного грустно — работа имеет свойство меняться, а терять такую крутую подборку не хотелось бы. Да и формат меня местами не устраивал. В итоге было решено переработать материал в такую простыню-шпаргалку, частично используя материалы для подготовки к тестированию, частично — расширяя своими заметками.
В этом посте осуществлена попытка собрать необходимый минимум полезных команд, часто используемых при решении типовых задач в ОС Linux, в частности — дистрибутивов Red Hat Enterprise Linux / Cent OS 7.
Настройка MySQL CentOS 7
По умолчанию MySQL будет слушать локальный хост 127.0.0.1. Если вы хотите, чтобы сервер был доступен из интернета, необходимо изменить несколько настроек в файле /etc/my.cnf. Однако, не рекомендуется делать сервер баз данных доступным через интернет. Чтобы указать внешний ip адрес, который нужно прослушивать используется строку bind_address:
Также в установке параметров по умолчанию есть некоторые настройки, которые могут быть потенциально не безопасными при доступе из внешней сети. Для этого чтобы их устранить запустите скрипт mysql_secure_installation:
Сначала нужно ввести пароль суперпользователя. По умолчанию система генерирует случайный пароль во время установки. Чтобы его посмотреть откройте еще один терминал и выполните:
Затем система сообщит, что ваш пароль устарел и нужно его поменять, введите два раза новый пароль:
Затем укажите что пароль менять не нужно. Отключите анонимных пользователей. Запретите удаленный вход от имени пользователя root:
Удалите тестовые таблицы:
И обновите таблицы привелегий:
Не рекомендуется постоянно работать с базами данных от имени пользователя root. Поэтому нужно создать обычного пользователя. Для этого сначала войдите в консоль управления с правами root:
Утилита, запросит пароль, введите пароль root, который задали на предыдущем этапе, дальше вы сможете выполнять команды mysql:
Давайте создадим пользователя dbuser для базы данных dbase, с паролем password. Вам нужно заменить эти значения на свои. Сначала создаем базу данных:
Дальше создадим первую таблицу в нашей новой базе данных, но перед этим войдем от имени только что созданного пользователя:
Переключите на новую базу данных:
Затем создайте таблицу:
Готово. Теперь вы знаете как выполняется установка MySQL CentOS 7. Давайте еще рассмотрим как сбросить пароль в MySQL.
FTP-клиент на CentOS
Для более удобной проверки настроек можно установить FTP-клиент прямо на сервер и с его помощью выполнять подключения.
Для этого выполняем установку клиента:
yum install ftp
И подключаемся к нашему серверу командой:
ftp localhost
Вводим логин и пароль, которые будут запрошены. После подключения мы увидим следующее:
Trying ::1…
Connected to localhost (::1).
220 (vsFTPd 3.0.2)
Name (localhost:root): ftpm1
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
Для теста можно загрузить файл на сервер FTP:
> put testfile.txt
* сам файл должен быть в каталоге, в котором мы были перед подключение к серверу FTP.
Если мы получим ошибку 500 active mode is disabled, use passive mode instead, просто переключаемся в пассивный режим:
> passive
Пользователи и группы
ОС UNIX предлагает базовые средства защиты и совместного использования файлов на основе отслеживания пользователя и группы, владеющих файлом, трех уровней доступа (для пользователя-владельца, для пользователей группы-владельца, и для всех остальных пользователей) и трех базовых прав доступа к файлам (на чтение, на запись и на выполнение). Базовые средства защиты процессов основаны на отслеживании принадлежности процессов пользователям.
Для отслеживания владельцев процессов и файлов используются числовые идентификаторы. Идентификатор пользователя и группы — целое число (обычно) в диапазоне от 0 до 65535. Присвоение уникального идентификатора пользователя выполняется при заведении системным администратором нового регистрационного имени. Среди пользователей системы выделяется один пользователь — системный администратор или суперпользователь, обладающий всей полнотой прав на использование и конфигурирование системы. Это пользователь с идентификатором 0 и регистрационным именем root.
Учетные записи пользователей, как и большинство другой информации о конфигурации системы UNIX, по традиции, представлена в виде текстовых файлов: /etc/passwd, /etc/group и /etc/shadow (в системах с теневым хранением паролей).
Основные команды для работы с пользователями и группами (часть команд указанных ниже будет требовать sudo для выполнения):
В современных дистрибутивах Linux вместо root аккаунта для администрирования как правило используется утилита sudo (substitute user and do), позволяющая выполнить команду от лица пользователя root.
Все настройки sudo находятся в файле /etc/sudoers. Здесь можно настроить очень много параметров, начиная от кому будет позволено выполнять команды от имени суперпользователя и заканчивая ограничением набора доступных команд. Неправильный синтаксис, добавленный в этот файл, может полностью нарушить распределение прав между пользователями. Потому для работы с этим файлом используется утилита visudo, которая открывает файл в обычном текстовом редакторе, но во время сохранения файла проверяет его синтаксис. Это позволяет избежать ошибок в конфигурации.
consolehelper
Consolehelper представляет собой оболочку для запуска GUI приложений. Когда он начинает работать, он проверяет конфигурацию PAM для требуемого применения. Это означает, что мы можем проводить аутентификацию пользователя с помощью всех установленных модулей PAM. Основной метод состоит в том, чтобы запросить пароль, но если мы имеем надлежащее оборудование. мы можем аутентифицировать с помощью смарткарты, жетонов, отпечатков пальцев и т.д. Конфигурация PAM выходит за рамки этого документа (см. PAM Руководство администратора), поэтому мы рассмотрим этап настройки consolehelper, необходимый для запуска приложений под root-ом и запросом пароля root.
В качестве примера, давайте настроим /usr/bin/xterm для запуска в качестве root-ого.
Во-первых, мы хотим сохранить возможность запускать Xterm под обычным пользователем. Поэтому создадим символическую ссылку /usr/bin/xterm-root для /usr/sbin/consolehelper:
ln -s /usr/sbin/consolehelper /usr/bin/xterm-root
Теперь для конфигурирования PAM — создайте файл /etc/pam.d/xterm-root:
#%PAM-1.0 auth include config-util account include config-util session include config-util
Наконец, настройте consolehelper на запуск /usr/bin/xterm под root-ом, командой ‘xterm-root’. Создайте файл /etc/security/console.apps/xterm-root:
USER=root PROGRAM=/usr/bin/xterm
Вот и все. Запускайте ‘xterm-root’ (из командной строки или ярлыком .desktop file), введите пароль и в путь. Если вы получили сообщение об ошибке: «Xlib: connecttion to «:0.0″ refused by server», запустите сначала ‘xhost local:root’.
Установка и базовая настройка vsFTPd
Обновляем систему:
yum update
Запускаем процесс установки:
yum install vsftpd
После открываем на редактирование следующий файл:
vi /etc/vsftpd/vsftpd.conf
И приводим его к следующему виду:
anonymous_enable=NO
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_min_port=40900
pasv_max_port=40999
* первые две строчки мы редактируем: anonymous_enable разрешает подключение анонимных пользователей, поэтому мы отключаем такую возможность; chroot_local_user запрещает выход за пределы домашней директории пользователя. Третью, четвертую и пятую строки мы дописываем — allow_writeable_chroot разрешает подключения пользователю, у которого есть права на запись в корневую директорию; это диапазон динамических портов, которые будут использоваться vsFTPd
Данный диапазон важно указывать, если используется брандмауэр. Сам диапазон можно задать любой из незарегистрированных портов
Отключаем SELinux следующими командами:
setenforce 0
sed -i «s/SELINUX=enforcing/SELINUX=disabled/» /etc/selinux/config
* первая команда отключит SELinux, вторая — отключит его автозапуск после перезагрузки.
Добавляем правила в брандмауэр для корректной работы FTP-сервера:
firewall-cmd —permanent —add-port=20-21/tcp
firewall-cmd —permanent —add-port=40900-40999/tcp
firewall-cmd —reload
Разрешаем автозапуск vsFTPd и запускаем его:
systemctl enable vsftpd
systemctl start vsftpd
По умолчанию, к vsFTPd нельзя подключиться с использованием учетной записи root. Поэтому нужно использовать другую пользовательскую запись или создать новую следующей командой:
useradd ftpuser -d /var/www -s /sbin/nologin
* ftpuser — имя учетной записи; /var/www — домашняя директория; /sbin/nologin запрещает локальный вход в систему.
Задаем пароль новому пользователю:
passwd ftpuser
Базовая настройка закончена — можно пробовать подключаться к FTP-серверу.
Настройка квот
Устанавливаем пакет для квотирования диска:
yum install quota
Открываем fstab и добавляем опции квотирования для нужного раздела:
vi /etc/fstab
/dev/sdb /var ext4 usrquota,grpquota 0 0
* в моем примере добавлены опции usrquota и grpquota для раздела /var.
Перемонтируем раздел, для которого должны работать квоты:
mount -o remount /var
Запускаем следующую команду для создания служебных файлов:
quotacheck -favugm
Включаем квоту для раздела:
quotaon -avug
Задаем квоту для пользователя виртуальной площадки:
edquota u10001
Disk quotas for user u10001 (uid 10001):
Filesystem blocks soft hard inodes soft hard
/dev/sdb 252432 2G 2G 10796 0 0
* в данном примере выставляем квоту в 2 Гб.
Проверить установленную квоту можно командой:
repquota /var
Группы пользователей
В Linux нескольких пользователей можно объединять в группы. Чаще всего группы используются для наделения членов группы определенными правами и организации совместного доступа к файлам.
По умолчанию при создании нового пользователя создается новая группа с таким же именем, что и у пользователя. Так сделано потому что права на запись, чтение, выполнение и т.п. привязываются не к пользователю, а к группе в которой он состоит.
Любой пользователь может состоять в одной или нескольких группах. Группы различаются на главные и вторичные. Главная (primary) группа всегда одна и к ней привязываются пользовательские процессы, а также файлы и папки, которые создал пользователь.
Узнать к каким группам принадлежит тот или иной пользователь.
или
Узнать группы текущего пользователя.
Узнать идентификаторы групп пользователя.
Узнать идентификаторы текущего пользователя.
Узнать какие пользователи состоят в группе.
Создание новой группы пользователей.
Удаление группы пользователей
Добавление пользователя в группу.
Удаление пользователя из группы.
Установка CentOS 7
Итак. Мы подготовили загрузочную USB флешку или CD/DVD с CentOS 7. Теперь можем переходить непосредственно к установке операционной системы на наш ПК или сервер.
Устанавливаем флешку или диск в наш ПК или сервер. Выставляем в BIOS загрузку с нашего источника.
Нас приветствует окно выбора. Мы можем установить CentOS 7 или протестировать наш ПК на совместимость с операционной системной и после перейти к установке. Я выбираю первый пункт. Нажимаем Enter.
Загружается графический интерфейс установки. Система спрашивает, на каком языке мы хотим продолжить установку? Я обычно выбираю английский, и вам совету. выбрать так же.
После выбора языка сразу же переходим к основным пунктам установки и настройки. Обо всем по порядку:
DATE & TIME — настройка времени, даты, часового поясаKEYBOARD — настройка способов ввода (выбор языков ввода)LANGUAGE SUPPORT — какие языки будет поддерживать система
SECURITY POLICY — настройки безопасностиINSTALLATION SOURCE — откуда будет вестить установкаSOFTWARE SELECTION — выбор пакетов установкиINSTALLATION DESTANATION — куда будем устанавливать (на какое устройство)NETWORK & HOSTNAME — сетевые настройки
Нажимаем INSTALLATION DESTANATION и выбираем жесткий диск, на который будем устанавливать нашу операционную систему
Заходим в настройки сети. У нас определилась сетевая карта, показывает ее MAC и скорость. Для ее активации необходимо переместить ползунок справа с OFF на ON
После этого заходим в Configure… Если вы хотите использовать статический IP, то переходите на вкладку IPv4 Settings и в поле Method выбирайте Manual и ниже вводите ваш IP, маску, шлюз, DNS.
Так же, для автоматического запуска сетевого подключения переходим на вкладку General и ставим галочку «Automatically connect to this network when it is avalible» — Автоматическое подключение к сети, когда это возможно.
На вкладке SOFTWARE SELECTION у нас нет выбора, так как мы устанавливаем версию minimal
Заходим на владку LANGUAGE SUPPORT и добавляем языки, которые нам необходимо, чтобы система поддерживала. Например я добавил Русский.
После того, как вы сделали основные настройки на главной станице внизу справа нажимаем Begin Istallation.
Сразу после нажатия данной кнопки, операционная система начала устанавливаться. И пока она копирует файлы, нам предлагают придумать ROOT пароль и создать пользователя для работы с системой.
Нажимаем создать пользователя. Нам предлагают ввести полное имя пользователя, его username (логин), сделать ли его администратором, и ввести ему пароль. Если вы читаете данную инструкцию, то в кнопочку Advanced… вам пока лучше не заходить.
Ну и точно так же задается пароль от ROOT. После создания пароля и пользователя остается только дождаться, пока система установится. Как только система установится, она предложит внизу справа нажать на кнопку Reboot.
Извлекаем наше устройство, с которого производилась установка, флешка или диск, и нажимаем кнопку Reboot и ждем загрузки операционной системы.
После перезагрузки осталось только авторизоваться в системе и проверить, то ли мы установили?
Переменные окружения
Переменные окружения в Linux — специальные переменные, определенные оболочкой и используемые программами во время выполнения. Могут быть определены как системой, так и пользователем. Переменные являются парамти ключ — строковое значение. Несколько значений разделяются двоеточием, если в значении присутствует пробел — нужно использовать кавычки.
Существует три типа переменных окружения:
— локальные переменные окружения (environmental variables) — определены только для текущей сессии, будут безвозвратно стерты по ее завершении. Вывести текущие переменные окружения — команда printenv или env без параметров
— пользовательские переменные окружения (shell variables) — определяются для конкретного пользователя и устанавливаются при входе в систему или удаленном подключении. Хранятся в файлах конфигурации .bashrc, .bash_profile, .bash_login, .profile и других, размещенных в директории пользователя. Для просмотра используется команда set.
— системные переменные окружения — доступны всем пользователям, загружаются при старте системы из файлов /etc/environment, /etc/profile, /etc/profile.d/ /etc/bash.bashrc.
Конфигурационные файлы переменных окружения:
- .bashrc — переменные конкретного пользователя, загружается каждый раз при создании пользователем терминального сеанса
- .bash_profile — загружается каждый раз при удаленном подключении по SSH
- /etc/environment — файл для работы с переменными окружения на системном уровне, будут доступны всем пользователям системы, в том числе при удаленном подключении
- /etc/bashrc — выполняется для всех локальных пользователей при создании сессии в терминале
- /etc/profile — выполняется для всех удаленных пользователей при открытии терминала
Команды для работы с переменными окружения:
Работа с текстовыми файлами, find и grep
less — программа для просмотра содержимого текстовых файлов с возможностью его прокрутки. Умеет искать текст по шаблону и подсвечивать результат. Быстро работает с файлами больших размеров, т.к. не нуждается в чтении всего файла перед стартом.
После открытия текстового файла внутри утилиты можно набирать разные команды (они отображаются в левом нижнем углу), рассмотрим некоторые из них.
Для вызова справки внутри утилиты воспользуйтесь клавишей h.
Поиск внутри утилиты:
В режиме поиска:
tail — утилита, выводящая несколько последних строк файла, head — несколько первых строк.
Отображение последних 10 строк файла:
По умолчанию tail выводит именно 10 последних строк.
iconv — преобразование кодировки файла
Find — команда для поиска файлов и каталогов на основе специальных условий.
Команда grep — поиск по шаблону в файле.
Настройка DNS на сетевом интерфейсе CentOS 7
Пропишем DNS. они находятся в файле resolv.conf. Пишем.
И прописываем в нем nameserver 192.168.102.1
перезапускаем интерфейс командой
/etc/init.d/network restart
или
service network restart
Пингуем яндекс, видим, что все ок.
Если у вас два интерфейса и вам нужно поставить основной, то делается это в файле /etc/sysconfig/network
Так же тут можно поменять имя хоста.
Задаем шлюз и имя сервера
Третий способ. Утилита system-config-network-tui
поставить ее можно из репозитория.
После установки пишем system-config-network-tui
Выбираем Device configuration
Выбираем нужный интерфейс
Задаем настройки
Задаем DNS
Задаем нужные DNS сервера и имя сервера
Save & out.
Четвертый способ через консоль mc
ставим ее yum install mc -y
Запускаем командой mc. Переходим для примера в каталог /etc/sysconfig/network-scripts
выбираем ifcfg-eth0 и нажимаем F4. Выбираем 3 пункт редактировать с помощью mc.
Как в CentOS 6-7 настроить статический ip адрес-01
Как в CentOS 6-7 настроить статический ip адрес-02
F10 чтобы выйти.
Вот уважаемые читатели мы с вами разобрались как происходит в centos настройка сети. На этом думаю закончим данную статью, если есть какие либо вопросы пишите помогу чем смогу.
Материал сайта pyatilistnik.org
Список пользователей — /etc/passwd
Список всех созданных пользователей хранится в текстовом файле —
Открыть список пользователей можно также следующей командой.
Формат данных в файле выглядит следующим образом.
- Логин пользователя: используется для входа в учетную запись. Длина логина не должна превышать 32 символа.
- Пароль: если вместо пароля стоит символ «x», то это означает, что пароль зашифрован и хранится в файле . Сам хеш пароля создается при создании пароля с помощью команды
- Идентификатор пользователя (UID): при создании нового пользователя ему присваивается идентификатор — 32 битовое целое число (UID). Для пользователя root всегда используется идентификатор со значением 0. Идентификаторы в пределах 1-9 зарезервированы для предопределенных аккаунтов. UID в пределах 100-999 зарезервированы для прочих системных аккаунтов.
- Идентификатор основной группы (GID): — 32 битовое целое число. Учетная может принадлежать одной основной группе. Доступные группы и пользователей, которые к ним причислены можно увидеть в файле /etc/group.
-
Контактная информация: добавляется с помощью команды .
5.1 Полное имя пользователя
5.2 Рабочий адрес
5.3 Рабочий номер телефона
5.4 Домашний номер телефона - Домашняя директория пользователя: полный путь директории в которую попадет пользователь после входа в учетную запись. Если директория не будет указана, то по умолчанию домашней директорией становится корень — .
- Командная оболочка: полный путь к файлу командной оболочки. Изменить оболочку можно с помощью команды .
Создайте виртуальную машину для SFTP-сервера
Чтобы создать виртуальную машину:
На странице каталога в консоли управления нажмите кнопку Создать ресурс и выберите пункт Виртуальная машина.
В поле Имя введите имя виртуальной машины, например .
Длина — от 3 до 63 символов.
Может содержать строчные буквы латинского алфавита, цифры и дефисы.
Первый символ — буква. Последний символ — не дефис.
Выберите зону доступности, в которой должна находиться виртуальная машина.
В блоке Образы из Cloud Marketplace выберите образ Centos 7.
В блоке Вычислительные ресурсы выберите следующую конфигурацию:
Платформа — Intel Cascade Lake.
Гарантированная доля vCPU — 20%.
vCPU — 2.
RAM — 2 ГБ.
В блоке Сетевые настройки выберите сеть и подсеть, к которым нужно подключить виртуальную машину. Если нужной сети или подсети еще нет, вы можете создать их на странице создания виртуальной машины.
В поле Публичный адрес оставьте значение Автоматически, чтобы назначить виртуальной машине случайный внешний IP-адрес из пула Яндекс.Облака. Чтобы внешний IP-адрес не изменялся после остановки виртуальной машины, сделайте его статическим.
Укажите данные для доступа на виртуальную машину:
В поле Логин введите имя пользователя.
В поле SSH-ключ вставьте содержимое файла открытого ключа. Пару ключей для подключения по SSH необходимо создать самостоятельно, см
раздел о подключении к виртуальным машинам по SSH.
Внимание
IP-адрес и имя хоста (FQDN) для подключения к машине будут назначены ей при создании. Если вы выбрали вариант Без адреса в поле Публичный адрес, вы не сможете обращаться к виртуальной машине из интернета.
Нажмите кнопку Создать ВМ.
Создание виртуальной машины может занять несколько минут.
Данные о паролях пользователей — /etc/shadow
В файле хранятся пароли пользователей в зашифрованном виде, а также дополнительные параметры, отвечающие за безопасность учетной записи пользователя.
Формат файла выглядит следующим образом.
- Имя пользователя (логин)
- Пароль в зашифрованном виде: если стоит !!, то пароль не был создан. Формат пароля — . показывает каким методом был зашифрован пароль:$1 — MD5.$2a — Blowfish.$2y — Blowfish.$5 — SHA-256.$6 — SHA-512 (наиболее предпочтительный).
- Количество прошедших дней (начиная с 01.01.1970) после последнего изменения пароля.
- Количество дней, до смены пароля (0 означает, что менять пароль можно в любой день).
- Срок использования пароля в днях (число дней до следующей смены пароля)
- Количество дней, в течении которых пользователь будет получать уведомления о смене пароля.
- Число дней после окончания срока действия пароля, когда пользователь еще может войти в свою учетную запись. Если пароль не сменить, после данного срока, то аккаунт будет заблокирован.
- Количество дней (начиная с 01.01.1970), после которых пароль будет заблокирован.
- Зарезервировано для использования в будущем.
Чтобы перевести число прошедших дней от 01.01.1970 (например 17701) в обычную дату (19.06.2018) воспользуйтесь командой.
Создайте резервную копию конфигурационных файлов на SFTP-сервере
В инструкции рассмотрено резервное копирование конфигурационных файлов (с расширением ) из папки .
Процесс резервного копирования:
- Упакуйте все нужные конфигурационные файлы в архив.
- Передайте архив на SFTP-сервер.
- Удалите архив на SFTP-клиенте.
Чтобы настроить процесс резервного копирования:
-
Зайдите по SSH на виртуальную машину SFTP-клиента таким же способом, как это было проделано для SFTP-сервера.
-
Установите переменные окружения для корректной работы скрипта. Для этого откройте файл
-
Добавьте следующие строчки в конец файла, подставив нужные значения:
-
Примените настройки:
-
Проверьте, что у вас появились данные переменные:
На экране должно появиться:
-
Запакуйте все конфигурационные файлы в один архив:
- — поиск всех файлов из папки .
- — перемещение конфигурационных файлов в архив .
-
Перешлите полученный архив на SFTP-сервер:
-
— загрузить файл на удаленный сервер.
-
– переменная, которая автоматически примет значение IP адреса SFTP-сервера.
-
— добавить к названию архива название компьютера, а также дату и время, когда был создан архив. Это позволит не потеряться в навигации по списку резервных копий на сервере.
Например, имя архива на сервере может выглядеть так: .
-
— отключить проверку SSL сертификатов со стороны SFTP-сервера. При этом трафик в рамках SSH-сессии все равно шифруется.
-
– переменная, которая автоматически примет значение SFTP-пользователя.
-
-
Удалите архив на SFTP-клиенте:
Все действия для создания резервной копии можно выполнить одной командой:
Перенаправление ввода/вывода
Процесс взаимодействия с пользователем выполняется в терминах записи и чтения в файл. Вывод на экран представляется как запись в файл, а ввод — как чтение файла. Файл, из которого осуществляется чтение, называется стандартным потоком ввода, а в который осуществляется запись — стандартным потоком вывода. Существует еще и стандартный поток ошибок, на который выводятся все сообщения об ошибках и те информативные сообщения о ходе работы программы, которые не могут быть выведены в стандартный поток вывода.
Можно организовать конвейер (pipe) выполняемых команд.
В примере выше вывод команды cat, т. е. текст из файла myfile, будет направлен на вход команды grep, которая выделит только строки, содержащие слово «Linux». Вывод команды grep будет, в свою очередь, направлен на вход команды wc -l, которая подсчитает число таких строк. Статус выхода из канала совпадает со статусом выхода, возвращаемым последней командой.