Руководство по использованию команды “useradd” в Linux



























Rate this post

 

В этом руководстве показано, как создавать пользователей в Linux с помощью командной строки.

Хотя многие настольные Linux-дистрибутивы представляют собой графический инструмент для создания пользователей, у вас есть хорошая возможность, чтобы узнать, как это сделать из командной строки, чтобы вы могли передавать свои навыки из одного дистрибутива другому без изучения новых пользовательских интерфейсов.

Создание

Синтаксис:

useradd <имя пользователя=””> [опции]

* опции не являются обязательными при создании пользователя.

Пример:

useradd dmosk

* в данном примере создается учетная запись dmosk.

Для учетной записи стоит сразу создать пароль:

passwd dmosk

* после ввода, система попросит ввести пароль дважды.

1. Как добавить нового пользователя в Linux

Для создания/добавления нового пользователя используется команда “useradd” с аргументом “username”, где username – это имя нового пользователя, которое будет использоваться для входа в систему.
За один раз можно добавить только одного пользователя, и его имя должно быть уникальным (то есть отличаться от имен других пользователей, уже существующих в системе).

Например, добавляем пользователя “techmint”:


[root@tecmint ~]# useradd tecmint

После выполнения данной команды, новый пользователь будет создан в заблокированном состоянии. Чтобы разблокировать пользовательский аккаунт, необходимо задать его пароль с помощью команды “passwd”.


[root@tecmint ~]# passwd tecmint Changing password for user tecmint. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully.

После создания нового пользователя его запись автоматически добавляется в пароль “/etc/passwd” и имеет следующий вид:

tecmint:x:504:504:tecmint:/home/tecmint:/bin/bash

Она состоит из семи разделенных двоеточием полей, каждое из которых имеет свое назначение:

Username: имя пользователя, используемое для входа в систему. Может иметь длинц от 1 до 32 символов.
Password: пользовательский пароль (или символ x), который хранится в зашифрованном виде в файле /etc/shadow.
User ID (UID): каждый пользователь должен иметь User ID (UID) – идентификатор пользователя. По умолчанию UID 0 зарезервирован для root, а UID в диапазоне 1-99 для других предопределенных аккаунтов. UID в диапазоне 100-999 предназначены для пользовательских аккаунтов и групп.
Group ID (GID): идентификатор группы – Group ID (GID), хранится в файле /etc/group file.
User Info: это опциональное поле и оно позволяет вам задать дополнительную информацию о пользователе, например полное имя. Это поле заполняется с помощью команды “finger”.
Home Directory: абсолютный путь к домашней директории пользователя.
Shell: абсолютный путь к командной оболочке пользователя, например /bin/bash.

2. Создание пользователя с нестандартным размещением домашней директории

По умолчанию команда “useradd” создает домашнюю директорию пользователя в /home и называет ее именем пользователя. Поэтому, например, для приведенного выше примера, мы увидим домашнюю директорию созданного нами пользователя “tecmint” в “/home/tecmint”.
Однако это действие можно изменить с помощью опции “-d”, указав после нее расположение новой домашней директории. Например, приведенная ниже команда создаст пользователя “anusha” с домашней директорией “/data/projects”.


[root@tecmint ~]# useradd -d /data/projects anusha

Вы можете просмотреть расположение домашней директории пользователя, а также другую информацию о нем:


[root@tecmint ~]# cat /etc/passwd | grep anusha anusha:x:505:505::/data/projects:/bin/bash

3. Создание пользователя с заданным User ID

В Linux каждый пользователь имеет свой собственный UID (Unique Identification Number). По умолчанию при создании нового пользователя ему присваивается userid 500, 501, 502 и т.д.
Но мы можем создать пользователя с заданным userid с помощью опции “-u”. Например, приведенная ниже команда создает пользователя “navin” с userid “999”.


[root@tecmint ~]# useradd -u 999 navin

Теперь мы можем проверить, что пользователь создан действительно с этим идентификатором.


[root@tecmint ~]# cat /etc/passwd | grep tecmint navin:x:999:999::/home/navin:/bin/bash

Замечание: Обратите внимание, что user ID должен отличаться от user ID пользователей, уже существующих в системе.

4. Создание пользователя с заданным Group ID

Аналогично, каждый пользователь имеет свой GID (Group Identification Number). Мы можем создавать пользователей с заданным group ID с помощью опции -g.

В этом примере мы добавим пользователя “tarunika” с заданными UID и GID:


[root@tecmint ~]# useradd -u 1000 -g 500 tarunika

Проверим, правильно ли сработала команда:


[root@tecmint ~]# cat /etc/passwd | grep tarunika tarunika:x:1000:500::/home/tarunika:/bin/bash

5. Добавление пользователя в несколько групп

Опция “-G” используется для добавления пользователя в дополнительные группы. Названия групп разделяются запятой без пробелов.
В приведенном ниже примере мы добавляем пользователя “tecmint” в группы admins, webadmin и developer.


[root@tecmint ~]# useradd -G admins,webadmin,developers tecmint

Теперь проверим, в каких группах числится пользователь, с помощью команды id.


[root@tecmint ~]# id tecmint uid=1001(tecmint) gid=1001(tecmint) groups=1001(tecmint),500(admins),501(webadmin),502(developers) context=root:system_r:unconfined_t:SystemLow-SystemHigh

6. Добавление пользователя без домашней директории

В некоторых ситуациях мы не хотим, по соображениям безопасности, давать пользователям домашние директории. В таком случае, когда пользователь авторизуется в системе сразу после ее запуска, его домашней директорией будет root. Если такой пользователь использует команду su, то он авторизуется в домашней директории предыдущего пользователя.
Для создания пользователя без домашней директории используется опция “-M”. Например, создадим пользователя “shilpi” без домашней директории.


[root@tecmint ~]# useradd -M shilpi

Давайте проверим, что пользователь создан без домашней директории, с помощью команды ls:


[root@tecmint ~]# ls -l /home/shilpi ls: cannot access /home/shilpi: No such file or directory

7. Добавление пользовательского аккаунта с ограниченным сроком действия

По умолчанию, когда мы добавляем пользователя с помощью команды “useradd”, его аккаунт не имеет сроков действия, то есть дата истечения сроков его жизни установена в 0 (никогда не истекает).
Однако мы можем установить дату истечения с помощью опции “-e”, задав дату в формате YYYY-MM-DD. Это полезно при создании временных аккаунтов для каких-то конкретных задач.
В приведенном ниже примере мы создаем пользователя “aparna” со сроком жизни его аккаунта до 27 апреля 2015 года в формате YYYY-MM-DD.


[root@tecmint ~]# useradd -e 2015-03-27 aparna

Далее, проверяем сроки действия аккаунта и пароля с помощью команды “chage”.


[root@tecmint ~]# chage -l aparna Last password change : Mar 28, 2014 Password expires : never Password inactive : never Account expires : Mar 27, 2015 Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7

8. Создание пользователя с ограниченным временем действия пароля

Аргумент “-f” используется для того, чтобы задать количество дней, через которое пароль перестанет действовать. По умолчанию его значение равно -1, при этом время действия пароля не ограничивается.
В примере мы задаем для пользователя “tecmint” время действия пароля 45 дней с помощью опций “-e” и “-f”.


[root@tecmint ~]# useradd -e 2014-04-27 -f 45 tecmint

Ключи (опции)

КлючОписание и примеры
























-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Разрешает создание учетной записи с повторяющимся UID
useradd dmosk -u 15 -o
-pЗадает пароль
useradd dmosk -p pass
-rСистемная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN – SYS_UID_MAX из файла /etc/login.defs)
useradd dmosk -r
-RКаталог, в который выполняется chroot
useradd dmosk -R /var/chroot/home
-sПуть до оболочки командной строки
useradd dmosk -s /bin/csh
-uЗадает UID
useradd dmosk -u 666
-UИмя группы будет таким же, как у пользователя
useradd dmosk -U

Актуальный список ключей можно получить командой useradd -h.

Редактирование

Синтаксис:

usermod <имя пользователя=””> [опции]

Пример:

usermod dmosk -G wheel

* эта команда добавит пользователя dmosk в группу wheel

Удаление

Синтаксис:

userdel <имя пользователя=””> [опции]

Пример:

userdel dmosk

Блокировка

Можно заблокировать пользователя, не удаляя его из системы:

usermod -L <имя пользователя=””>

Пример:

usermod -L dmosk

Чтобы разблокировать пользователя, вводим:

usermod -U <имя пользователя=””>

Работа с группами

Добавление:

groupadd <группа> [опции]

Редактирование:

groupmod <группа> [опции]

Удаление:

groupdel <группа> [опции]

Примеры работы с учетными записями

Команда useradd

Во-первых, давайте посмотрим на поведение команды useradd по умолчанию. Вы когда-нибудь запускали следующую команду?

useradd NewUser

Мы еще не видели дистрибутив, где эта команда создала полную учетную запись пользователя. Даже после установки пароля для нового пользователя вам потребуется использовать дополнительные параметры.

Например, в нашей системе указанная выше команда добавила следующую запись в файл /etc/passwd.

Команда useradd в Linux

Если вы читали статью о перечислении пользователей в Linux, вы, вероятно, уже знакомы с содержанием файла /etc/passwd. Сначала это выглядит хорошо, но если вы начнете копать, вы скоро заметите, что некоторые вещи не совсем правильные.

Во-первых, второе поле содержит «х». Это означает, что заполнитель для информации о пароле находится в /etc/shadow. Но мы не установили пароль. Это означает, что тестовый пользователь не сможет войти в систему.

Во-вторых, домашний каталог. Дело в том, что /home/test не существует. Даже после того, как вы установили пароль, произойдет ошибка, если пользователь войдет в систему. В зависимости от другой конфигурации ваша система Linux может запретить пользователю входить без действительного домашнего каталога. Скорее всего, пользователь test позволит войти в систему, по крайней мере, в текстовом режиме. Но пользователь test не сможет создать свой домашний каталог.

В-третьих, оболочкой по умолчанию является sh, а не bash. Мы не используем sh как оболочку. Вы, вероятно, тоже не знаете, потому что bash является оболочкой по умолчанию в большинстве дистрибутивов Linux.

В то время как useradd-х поведение можно немного изменить, отредактировав /etc/login.defs, существует мало шансов, что приведенная выше команда создаст полную учетную запись пользователя. Useradd является низкоуровневая утилита. Тем не менее, просмотр настроек в /etc/login.defs может быть полезен.

Синтаксис команды useradd

Команда useradd принимает в качестве аргумента имя пользователя, а также различные опции.

Синтаксис команды следующий:

useradd опцииимяпользователя

Создание нового пользователя

Чтобы просто создать пользователя используется команда useradd без каких-либо опций. Указывается только имя пользователя.

sudo useradd pupkin

Данная команда создает нового пользователя с системными параметрами по умолчанию, которые прописаны в файле /etc/default/useradd

Чтобы пользователь мог войти в систему, необходимо задать для него пароль. Для этого используем команду:

sudo passwd pupkin

Создание нового пользователя с домашней директорией в /home

Создадим пользователя и его домашнюю директорию.

sudo useradd -m pupkin

Домашняя директория создается по умолчанию в каталоге /home. Имя директории совпадает с именем пользователя.

Создание нового пользователя с произвольной домашней директорией

Чтобы создать пользователя с домашней директорией, расположенной в произвольном месте, используется опция -d, после которой указывается путь до директории. Директорию необходимо создать заранее.

Создаем домашнюю директорию для будущего пользователя:

sudo mkdir -p /users/pupkin

Копируем файлы и директории, которые по умолчанию создаются в домашней директории пользователя в данной системе. Данные файлы находятся в директории /etc/skel

sudo cp -rT /etc/skel /users/pupkin

Создаем пользователя и указываем домашнюю директорию:

sudo useradd -d /users/pupkin pupkin

Меняем права доступа у домашней директории:

sudo chown -R pupkin:pupkin /users/pupkin

Задаем пароль для пользователя:

sudo passwd pupkin

Можно просмотреть информацию о пользователе, которая сохранена в файле /etc/passwd

cat /etc/passwd | grep pupkin pupkin:x:1001:1001::/users/pupkin:/bin/sh

Команда useradd. Создание пользователя с произвольной домашней директорией

Создание нового пользователя с произвольными UID, GID

Каждый пользователь в Linux имеет свой числовой идентификатор — UID, а также идентификатор основной группы пользователя — GID.

При создании пользователя можно задать произвольные номера UID и/или GID. При указании номера группы, группа с этим номером должна быть создана заранее.

useradd -u 1234 -g 1222 pupkin

Создание пользователя с указанием оболочки (shell)

По умолчанию новые пользователи создаются с оболочкой /bin/sh Чтобы задать другую оболочку, используется опция -s /путь/до/оболочки

sudo useradd -m -s /bin/bash pupkin

Смотрите также: Как определить и изменить командную оболочку (shell) в Linux

Создать пользователя и добавить его в группы

Обычно пользователи в Linux принадлежат нескольким группам. Чтобы при создании нового пользователя задать группы, к которым он будет принадлежать, используется опция -G список,групп

sudo useradd -m -G adm,cdrom,wheel -s /bin/bash pupkin

Смотрите также: «Добавление пользователя в группу. Списки пользователей и групп в Linux»

В чем отличия adduser и useradd?

useradd — это низкоуровневая утилита для создания пользователей в Linux.

adduser — представляет собой более простое решение для создания пользователей и по факту является надстройкой над useradd, groupadd и usermod.

Утилита adduser доступна не во всех дистрибутивах Linux. Реализация adduser также может отличаться. Если в дистрибутиве присутствует утилита adduser, то для создания пользователей рекомендуется использовать именно ее.

Команда Adduser

Adduser недоступен. в некоторых дистрибутивах Linux. На других это мягкая ссылка на useradd. В то время как на некоторых других, это сценарий Perl.

Adduser – это интерактивная утилита высокого уровня. В качестве бэкэнда используется утилита низкого уровня useradd. Настройки в /etc/login.defs будут использоваться при использовании adduser. На дистрибутивах, основанных на Debian, даже страница man рекомендует использовать его с помощью команды useradd.

Вызов adduser только с именем пользователя проведет вас через ряд вопросов.

Команда Adduser

После ответа на несколько вопросов будет создана полная учетная запись пользователя. Новый пользователь готов войти через ваш менеджер входа в систему или в текстовом режиме.

Чтобы достичь почти того же результата с помощью низкоуровневой утилиты useradd, команда должна выглядеть примерно так:

sudo useradd -d /home/test -m -s/bin/bash -c FullName,Phone,OtherInfo test && passwd test

В опции -с могут быть удалены без проблем, то разделенный запятыми список, который следует будут добавлены комментарии к /etc/passwd. Но даже тогда adduser сохраняет две дополнительные команды.

У Adduser есть список доступных вам опций. Вот короткий список, который, я думаю, будет наиболее полезно узнать. Обратитесь к справке или справочной странице для получения более подробной информации.

  • –system: добавить системного пользователя. По умолчанию системные пользователи помещаются в группу nogroup. Чтобы добавить системного пользователя в существующую группу, укажите параметр –gid или –ingroup.
  • –home DIR: использовать DIR в качестве домашнего каталога вместо стандартного. При необходимости будет создан каталог и скопированы файлы скелета.
  • –shell SHELL: используйте SHELL вместо значения по умолчанию.
  • –ingroup GROUP: установить первичную группу пользователя на GROUP
  • –add_extra_groups: добавить нового пользователя в дополнительную группу, определенную в файле конфигурации.

Файл конфигурации AddUser позволяет установить значения по умолчанию, которые будут использоваться при создании учетной записи. Файл хорошо документирован и позволяет устанавливать значения по умолчанию, такие как:

  • Оболочка по умолчанию
  • Домашний каталог
  • Дополнительные группы
  • Добавить дополнительные группы


[spoiler title=”Источники”]

  • https://linuxinsider.ru/kak-sozdat-polzovatelya-linux/
  • https://www.dmosk.ru/miniinstruktions.php?mini=linux-users
  • http://rus-linux.net/MyLDP/consol/15-primerov-po-useradd.html
  • https://andreyex.ru/linux/komandy-linux-i-komandy-shell/useradd-protiv-adduser-v-chem-raznitsa/
  • https://pingvinus.ru/note/useradd


[/spoiler]


2020-07-27T15:39:49
Linux

Резервное копирование в Linux – команда tar



























Rate this post

Аббревиатура tar предназначена для иллюстрации того, что отдельные файлы GZIP были сжаты настолько широко и максимально плотно, насколько это возможно. Упакованный файл может заканчиваться на .tar.gz и .tar.bz2. Иногда используется двойное окончание – .tar.gz. ZIP, который был разработан для слияния и сжатия, но оказался более мощным и поэтому в значительной степени подавляет файл .tar.

Как можно догадаться по двойному расширению формата, состоящему из двух файлов, это фактически два в одном. TAR объединяет несколько объектов данных в один пакет под систему Windows. Это полезно, если, например, необходимо отправить несколько документов, изображений или предложить их для загрузки.

Расширения в формате .tar в основном предназначены для операционной системы Linux. В мире Windows они довольно необычны и редко встречаются. По этой причине система не может открыть эти файлы без дополнительного программного обеспечения.

Синтаксис командной строки

Прежде чем перейти к использованию команды tar, давайте начнем с рассмотрения базового синтаксиса.

tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]

  • OPERATION– Разрешается и требуется только один аргумент. Наиболее часто используемые операции:

    • –create( -c) – Создание нового tar-архива.
    • –extract( -x) – Извлечь весь архив или один или несколько файлов из архива.
    • –list( -t) – отобразить список файлов, включенных в архив

  • OPTIONS – Наиболее часто используемые операции:

    • –verbose( -v) – Показать файлы, обрабатываемые командой tar.
    • –file=archive=name( -f archive-name) – Указывает имя файла архива.

  • ARCHIVE_NAME – Название архива.
  • FILE_NAME(s)– список имен файлов, разделенных пробелами, которые нужно извлечь. Если не предусмотрено, весь архив будет извлечен.

При выполнении команды tar вы можете использовать длинную или краткую форму операций и параметров tar. Длинные формы более читабельны, а короткие формы – быстрее. Опции длинной формы имеют префикс двойной тире ( –). Параметры короткой формы имеют префикс с одним тире ( -), который можно опустить.

1. Создание архива tar

С помощью следующей команды создается архив archive.tar с подробным выводом информации, включающий файлы file1, file2 и file3:

tar –totals –create –verbose –file archive.tar file1 file2 file3

Но длинные опции и параметры можно заменить (при возможности) однобуквенными значениями:

tar –totals -cvf archive.tar file1 file2 file3

Создание архива tar

Создание архива Tar Gz

Gzip – самый популярный алгоритм сжатия tar-файлов. При сжатии архивов tar с gzip имя архива должно заканчиваться либо tar.gzили tgz.

Чтобы создать архив tar.gz из заданных файлов, вы можете использовать следующую команду:

tar -czf archive.tar.gz file1 file2

Опция  -zсообщает tar сжать архив, используя алгоритм  gzip.

Создание архива Tar Bz2

Другим популярным алгоритмом сжатия tar-файлов является bzip2. При сжатии архивов tar с bzip2 имя архива должно заканчиваться либо tar.bz2 либо tbz.

Когда указана опция  -j , tar будет использовать алгоритм bzip2 сжатия архива.

Следующая команда создаст архив tar.bz2 из заданных файлов:

tar -cjf archive.tar.bz2 file1 file2

2. Просмотр содержимого архива

Следующая команда выводит содержимое архива, не распаковывая его:

tar -tf archive.tar

Отображение архива

Листинг архива Tar

Чтобы перечислить содержимое tar-архива, используйте операцию –list( -t).

tar -tf archive.tarfile1 file2 file3

Если вы укажете содержимое архива с помощью параметра –verbose( -v), tar будет печатать больше информации, например, владельца, размера файла, метки времени и т.д.:

tar -tvf archive.tar-rw-r–r– linuxize/users 0 2018-09-08 20:15 file1 -rw-r–r– linuxize/users 0 2018-09-08 20:15 file2 -rw-r–r– linuxize/users 0 2018-09-08 20:15 file3

Извлечение архивов Tar Gz и Tar Bz2

При извлечении сжатых архивов, например, tar.gzили tar.bz2 вам не нужно указывать параметр декомпрессии. Команда такая же, как при извлечении архива tar:

tar -xf archive.tar.gztar -xf archive.tar.bz2

Извлечение определенных файлов из tar-архива

Чтобы извлечь определенные файлы из архива tar, добавьте список имен файлов, разделенных пробелами, которые будут извлечены после имени архива:

tar -xf archive.tar file1 file2

При извлечении файлов вы должны указать свои точные имена, включая путь, как напечатано –list( -t).

Извлечение одной или нескольких каталогов из архива аналогично извлечению файлов:

tar -xf archive.tar dir1 dir2

Если вы попытаетесь извлечь файл, который не существует, появится сообщение об ошибке, подобное приведенному ниже:

tar -xf archive.tar READMEtar: README: Not found in archive tar: Exiting with failure status due to previous errors

Извлечение файлов из архива Tar с помощью подстановочного знака

Чтобы извлечь файлы из архива на основе шаблона подстановочных знаков, используйте переключатель –wildcards и укажите шаблон, чтобы предотвратить интерпретацию оболочки.

Например, чтобы извлечь файлы, имена которых заканчиваются на .js(файлы Javascript), вы можете использовать:

tar -xf archive.tar –wildcards ‘*.js’

Добавление файлов в существующий архив

Чтобы добавить файлы или каталоги в существующий архив tar, используйте операцию –append( -r).

Например, чтобы добавить файл с именем newfile в archive.tar, вы можете использовать:

tar -rvf archive.tar newfile

Удаление файлов из tar-архива

Используйте операцию –delete для удаления файлов из архива.

Например, чтобы удалить файл с именем file1 из archive.tar, вы можете использовать:

tar –delete -f archive.tar file1

Общая информация по работе с Tar

  1. tar —help — вызов справки по командам и параметрам
  2. man tar  — вызов расширенной документации
  3. официальная документация по команде tar — ссылка

Архивация Zip в Linux

Архиватор zip — это звезда в мире ПО (ну не считая rar) этот формат очень популярен для windows систем и он по умолчанию уже встроен в чистую сборку операционной системы, поэтому только установив виндовус вы уже можете разархивировать файлы в формате zip

но давайте перейдем к делу, в Linux и Unix системах дела обстоят по другому, это формат Tar идет по умолчанию, а вот для zip надо  поставить пакет unzip

Установка:

  1. sudo apt-get update && apt-get upgrade
  2. sudo apt-get install unzip

Создание ZIP архива

Для начала запомним шаблон или синтаксис команды для создания архива zip в linux:

zip [опции] <имя файла.zip=””> [файлы или папки которые будем упаковывать]

Опции для создания архива tar:

  • r (recurse) — рекурсивное создание архива
  • s (size) — разбивка архива на определенный размер k (kB), m (MB), g (GB) или t (TB)
    пример: zip -s 300m <файл 1=”” гб=””>
    на выходе получим:
    file.zip (300 mb, master file)
    file.001.zip (300 mb)
    file.002.zip (300 mb)
    file.003.zip (100 mb)
  • P (password) — запаролировать архив  (можно использовать ключ e тогда пароль будете вводить в отдельной строке со звездочками )
    пример: zip -P мойпароль -r file.zip ./home/nibbl/foto
    пример2: zip -er file.zip ./home/nibbl/foto
  • x — исключаем файлы или каталоги из архива
  • 1-9 — степень сжатия (где 1 без сжатия, а 9 лучшее сжатие)

zip –r  -9 -P 123 — archive.zip /home/nibbl/desktop/myfile 

— данной командой мы заархивировали с сжатием папку myfile создали архив с именем archive.zip и установили пароль на архив 123

Творение tar-архива без сжатия в Linux

Для создания такого архива используется команда:

tar -cf filename.tar file1 file2 fileN

Метеопараметр —cf отвечает за создание архива filename.tar, в который войдут указанные файлы. Вместо файлов смогут быть указаны и директории.

Создание архива с использованием сжатия в Linux

Поскольку для стягивания доступны как минимум два метода, для использования каждого из них используется отдельный набор параметров.

Образчик сжатия Gzip:

tar -cvzf filename.tar.gz dir_name

В данном случае мы попытались запаковать папку dir_name в картотека filename.tar.gz. Из указанных параметров -z указывает на использование метода Gzip, а -v выводит результаты процесса творения архива с указанием упакованных файлов или папок.

Читайте также:  Настройка Iptables (примеры) Часть 2

Распаковать zip архив

рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив :

unzip <имя файла.zip=””>

Опции для создания архива tar:

  • d (directory) — указать директорию для разархивации
  • l — вывести список файлов в архиве
  • d — удалить определенный файл или каталог из уже сделанного архива
  • v — показывает детальную информацию по файлам в архиве  ()

unzip <имя файла.zip=””> —  распаковываем архив в категорию в которой находимся
unzip <имя файла.zip=””> -d /home/nibbl/desktop — распаковываем архив на рабочий стол

Общая информация по работе с Zip

  1. zip —help или unzip —help   —  вызов справки по командам и параметрам
  2. man zip или man unzip  — вызов расширенной документации
  3. официальная документация по команде zip — ссылка

 

Прочие возможности tar в Linux

tar предоставляет множество полезных возможностей. Например, возможно указать файлы и каталоги, которые не будут включены в архив, добавить файлы (именованная область данных на носителе информации) в имеющийся архив (1) учреждение или структурное подразделение организации, осуществляющее хранение, комплектование, учёт и использование архивных документов; 2) собрание письменных памятников (рукописей, писем и т), взять список объектов для запаковки из текстового файла и много что ещё. Во всем обилии опций как всегда поможет разобраться

man tar

или же

tar –help

Утилита командной строки tar используется для службы с архивами в операционных системах на базе UNIX. С ее помощью можно архивировать данные и улучшить использование дискового пространства.

Программа для открытия файлов TAR в системе Windows

Особенно популярным и удобным программным обеспечением для распаковки и открытия файлов .tar.gz и .tar.bz2 в Windows является WinRAR.

Winrar признана классикой среди упаковочного ПО и может быть загружена в тестовой версии с сайта производителя WindowsRAR.ru. С ней файлы в системах Windows могут сжиматься намного эффективнее, чем с форматами ZIP. Лучшая и самая важная функция WinRAR понятна и отлично выполняется упаковщиком: экономит место на диске, время передачи. В дополнение к основной задаче, программное обеспечение предлагает множество других инструментов при архивировании файлов.

Главное преимущество WinRaR заключается в том, что она распознает двойные файлы и распаковывает их непосредственно за один шаг. Даже если вы дважды откроете .tar.gz и .tar.bz2, вы сможете напрямую просмотреть отдельные папки, упакованные в него с помощью архиватора. Это особенно удобно и стоит запомнить, поскольку на самом деле в формате .bz есть только один файл .TAR. Только в нем находятся отдельные оригинальные файлы.

Программа для открытия TAR файлов используется в пробной версии бесплатно в течение 40 дней. Далее производитель предложит вам купить лицензию.

Как распаковать TAR файл?

Уже во время установки ПО можно задать параметры, чтобы файлы .tar распаковывались с помощью WinRAR.

Если на жестком диске есть папка в формате .tar.gz, вы можете просто распаковать ее, дважды щелкнув, как и любой другой архив, поддерживаемый WinRAR.

Если вы не отметили TAR во время установки, файлы этого формата все еще можно извлечь, используя WinRAR.

Если архиватор уже открыт, перейдите в «Файл», чтобы найти путь, по которому находится папка .tar, и два раза кликните по маркеру.

Теперь содержимое архива должно отображаться в программе для открытия TAR файлов.

Как открыть и разархивировать файл TAR?

Если вы часто работаете с архивами .TAR, WindowsRAR следует установить в качестве стандартной для распаковки форматов .tar.gz и .tar.bz2. Если формат папки еще не связан с другим ПО сжатия, два раза нажмите папку TAR. Во втором случае кликните правой клавишей по маркеру упакованного файла TAR, выберите параметр “Открыть с помощью”. В новом окне теперь представлены программы, открывающие файлы в формате TAR.

Если WinRAR отсутствует в списке, выберите «Поиск» в нижней области. Теперь проследите путь, по которому расположен архиватор, и установите его как стандартную программу для открытия расширения TAR. Прежде чем подтвердить настройку нажатием «ОК», убедитесь, что в левой части флажок “Всегда открывать тип файла с выбранной программой”.

Примеры

gz

Распаковка .gz файла:

tar -xvf archive.tar.gz 

* при возникновении ошибки This does not look like a tar archive, можно воспользоваться командой gzip -d archive.tar.gz.

bz2

tar -xvjf archive.tar.bz2

* ключ j отвечает за работу с bz2.

Если система ругается на bzip2, значит нужно его установить:

yum install bzip2

apt-get install bzip2

pkg install bzip2

* соответственно, для CentOS (RPM based), Ubuntu (deb based), FreeBSD (BSD based).

Если видим ошибку tar: Unrecognized archive format, воспользуемся следующей командой:

bzip2 -d archive.tar.bz2

gzip

tar -xvzf archive.tar.gzip

* ключ z отвечает за работу с gzip.

tgz

Распаковывается, как gzip:

tar -xvzf archive.tgz

Распаковать в определенную папку

tar -C /home/user -xvf archive.tar.gz

* ключ -C используется для указания папки, куда необходимо распаковать файлы из архива.

Распаковка без вложенной папки

Такой способ можно использовать для распаковки в заранее подготовленный каталог. Будет некий эффект переименовывания каталога или аналог «Распаковать здесь»:

tar -C /home/admin/mytar -xvf admin.tar.gz –strip-components 1

* каталог /home/admin/mytar заранее должен быть создан; –strip-components 1 пропустит одну вложенную папку внутри архива.

Исключение файлов по маске

Если необходимо пропустить некоторые файлы, вводим команду с ключом –exclude:

tar -czvf archive.tar.gz /wwwsite –exclude=’sess_*’

* в данном примере мы создадим архив archive.tar.gz, в котором не будет файлов, начинающихся на sess_.


[spoiler title=”Источники”]

  • https://windowsrar.ru/tar
  • https://andreyex.ru/operacionnaya-sistema-linux/sozdanie-i-izvlechenie-arhivov-s-pomoshhyu-komandy-tar-v-linux/
  • https://losst.ru/komanda-tar-v-linux
  • https://www.nibbl.ru/ubuntu/komanda-tar-i-zip-v-linux.html
  • https://www.linux16.ru/articles/kak-v-linux-raspakovat-tar-gz.html
  • https://www.dmosk.ru/miniinstruktions.php?mini=tar-unix


[/spoiler]


2020-07-27T15:39:49
Linux

Работа с процессами в Linux



























3.2/5 — (4 голоса)

Команда ps выводит список текущих процессов на вашем сервере. Используется обычно в сочетании с командой grep и more или less.

Примечание: more и less – дополнительные команды, которые помогают фильтровать и разбивать на страницы выходные данные ps, так как они часто бывают довольно длинными.

Как использовать команду ps

Общий синтаксис команды ps выглядит следующим образом:

ps [OPTIONS]

По историческим причинам и из соображений совместимости команда ps принимает несколько различных типов параметров:

  • Опции стиля UNIX, перед которыми стоит одна черточка.
  • Варианты стиля BSD, используемые без тире.
  • Длинные опции GNU, начинающиеся с двух тире.

Все типы опций могут быть смешанными, но в некоторых особых случаях могут возникать конфликты, поэтому лучше придерживаться одного типа опций. Опции BSD и UNIX могут быть сгруппированы.

В простейшей форме, когда используется без какой-либо опции, ps будет напечатано четыре столбца информации для минимум двух процессов, запущенных в текущей оболочке, самой оболочки и процессов, которые выполняются в оболочке при выполнении команды.

ps

Вывод включает в себя информацию о shell (bash) и процессе, запущенном в этой оболочке (введенная вами команда ps):

PID TTY TIME CMD 1809 pts/0 00:00:00 bash 2043 pts/0 00:00:00 ps

Четыре колонки помечены PID, TTY, TIMEи CMD.

  • PID- Идентификатор процесса. В большинстве случаев при запуске psкоманды наиболее важной информацией, которую ищет пользователь, является идентификатор процесса. Знание PID позволяет убить сбойный процесс.
  • TTY – Название управляющего терминала для процесса.
  • TIME – Совокупное время ЦП процесса, показанное в минутах и ​​секундах.
  • CMD – Имя команды, которая использовалась для запуска процесса.

Вывод выше не очень полезен, так как он не содержит много информации. Настоящая сила команды ps появляется при запуске с дополнительными опциями.

Команда ps принимает огромное количество опций, которые можно использовать для отображения определенной группы процессов и различной информации о процессе, но для повседневного использования требуется лишь несколько из них.

Команда ps чаще всего используется со следующей комбинацией параметров:

Форма BSD:

ps aux

  • Опция a указывает ps вывести на дисплей процессы всех пользователей, за исключением тех процессов, которые не связаны с терминалом и процессами группы лидеров.
  • В u – подставки для ориентированных на пользователя формате, который обеспечивает подробную информацию о процессах.
  • Опция x в ps перечисляет процессы без управляющего терминала. В основном это процессы, которые запускаются во время загрузки и работают в фоновом режиме.

Команда будет отображать информацию в одиннадцати столбцах USER, PID, %CPU, %MEM, VSZ, RSS, STAT, START, TTY, TIMEи CMD.

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.8 77616 8604 ? Ss 19:47 0:01 /sbin/init root 2 0.0 0.0 0 0 ? S 19:47 0:00 [kthreadd] …

Мы уже объяснили метки PID, TTY, TIMEи CMD. Вот объяснение других меток:

  • USER – Пользователь, который запускает процесс.
  • %CPU- Процесс использования процессора .
  • %MEM – Процент резидентного установленного размера процесса к физической памяти на машине.
  • VSZ – Размер виртуальной памяти процесса в KiB.
  • RSS- Размер физической памяти , используемой процессом.
  • STAT- Код состояния процесса, который может быть Z (zombie), S (sleeping), R (running)  .. и т. д.
  • START – время, когда команда началась.

Чтобы напечатать дерево процессов, добавьте опцию f. Это укажет ps отобразить древовидное представление дочерних процессов.

ps auxf

Команда ps также позволяет вам сортировать вывод. Например, чтобы отсортировать вывод на основе использования памяти, вы бы использовали:

ps aux –sort=-%mem

форма  UNIX:

ps -ef

  • Опция e указывает ps отобразить все процессы.
  • f – полноформатный список, который содержит подробную информацию о процессах.

Команда будет отображать информацию в столбцах UID, PID, PPID, C, STIME, TIME и CMD.

UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:47 ? 00:00:01 /sbin/init root 2 0 0 19:47 ? 00:00:00 [kthreadd] …

Метки, которые еще не объяснены, имеют следующее значение:

  • UID – То же USER, что и пользователь, который запускает процесс.
  • PPID – Идентификатор родительского процесса.
  • C- То же %CPU, что процесс загрузки процессора.
  • STIME- То же START, что и время начала команды.

Чтобы увидеть только процессы, запущенные от имени определенного пользователя, используйте следующую команду, где andreyex указано имя пользователя:

ps -f -U andreyex -u andreyex

Пользовательский формат

Опция o позволяет указать, какие столбцы будут отображаться при выполнении команды ps.

Например, чтобы напечатать информацию только о PID и COMMAND вы бы выполнить одну из следующих команд:

ps -efo pid,commconsole-bash ps auxo pid,comm

## Использование команды ps может использоваться в сочетании с другими командами через трубопровод. Если вы хотите отобразить вывод команды ‘ps’, по одной странице за раз передайте его в команде less:

console-bash ps -ef | less

Выходные данные команды ‘ps’ могут быть отфильтрованы с помощью grep, например, чтобы показать только процесс, принадлежащий пользователю root, вы должны запустить:

console-bash ps -ef | grep root “ `

Выбор конкретных процессов

Вы можете вывести определенные процессы с помощью ps с помощью различных критериев выбора.

Например, если вы знаете идентификатор процесса PID, вы можете просто использовать следующую команду:

ps -p

Например:

ps -p 22813

Вы можете выбрать несколько процессов, указав несколько идентификаторов процесса следующим образом:

ps -p “

Например:

ps -p “22813 28599”

Вы также можете указать их с помощью списка, разделенного запятыми:

ps -p ,

Например:

ps -p 22813,28599

Скорее всего, вы не будете знать идентификатор процесса, и его легче искать по команде. Для этого используйте следующую команду:

ps -C <команда>

Например:

ps -C nginx

Другие способы фильтрации результатов – по группам. Вы можете искать по имени группы, используя следующий синтаксис:

ps -G
ps –Group

Например, чтобы узнать все процессы, выполняемые группой accounts, выполните следующие действия:

ps -G “accounts”
ps –Group “accounts”

Вы также можете выполнять поиск по идентификатору группы GID вместо имени группы с помощью строчной буквы g следующим образом:

ps -g
ps –group

Если вы хотите найти все процессы, выполняемые конкретным пользователем, выполните следующую команду, указав имя пользователя:

ps U

Например:

ps U gary

Обратите внимание, что это показывает человека, чьи учетные данные используются для запуска команды. Например, если вы вошли в систему как gary и запустите указанную выше команду, она покажет всю команду, которую вы выполняете. Если вы входите в систему как tom и используете sudo для запуска команды, то приведенная выше команда покажет команду tоm’а, которую запускает gary, а не tom.

Чтобы ограничить список только процессами, действительно запущенными gary, используйте следующую команду:

ps -U “gary”

Форматирование вывода команды ps

По умолчанию вы получаете четыре столбца, когда используете команду ps: PID, TTY, Time, Command. О них написано в начале статьи.

Вы можете получить полный список, выполнив следующую команду:

ps -ef

Опция -e, показывает все процессы, а -f показывает полную информацию: UID – идентификатор пользователя выполняющего команду, PID – это идентификатор процесса команды, PPID – идентификатор родительского процесса, который отпустил команду, C – количество дочерних процессов, STIME – это время начала процесса, TTY, TIME, CMD.

Вы можете получить еще больше информационных столбцов, используя следующую команду:

ps -eF

Дополнительные столбцы – SZ, RSS и PSR. SZ – это размер процесса, RSS – реальный размер памяти, а PSR – процессор, которому назначена команда.

Вы можете указать пользовательский формат, используя следующий формат:

ps -e –format

Доступны следующие форматы: %cpu, %mem, args, c, cmd, comm, cp, cputime, egid, egroup, etime, euid, euser, gid, group, pgid, pgrp, ppid, start, sz, thcount, time, uid, uname и многие другие, ознакомиться с ними в разделе помощи man.

Чтобы использовать форматы, введите следующее:

ps -e –format=”uid uname cmd time”

Вы можете смешивать и сопоставлять элементы по своему усмотрению.


Вывод без опций

PS (process state) — стандартная утилита всех дистрибутивов Linux, используемая через консоль. Ее основное предназначение — отображение информации обо всех запущенных процессах. Количество и детально показываемых сведений зависит от установленных опций, которые выбираются при непосредственной активации самой команды. Об опциях мы поговорим немного позже, а сейчас давайте просто введем ps в «Терминале» и нажмем на Enter.

Использование команды PS в Linux без применения опций

Как видно на скриншоте ниже, отобразилось всего строки, среди которых находится оболочка bash и сам процесс рассматриваемой команды.

Результат использования команды PS в Linux без применения дополнительных опций

Конечно, здесь может быть еще несколько пунктов, что зависит от количества запущенных пользовательских программ, однако в большинстве случаев пользователей такой вывод не устраивает, поэтому мы и предлагаем перейти к изучению дополнительных опций.

Вывод списка всех процессов

Утилита PS без указания специальных опций не позволяет получить полезную информацию, которая может пригодиться во время изучения списка активных процессов, поэтому и важно применять аргументы. Первый из них отвечает за отображение абсолютно всех текущих задач, а строка принимает вид ps -A.

Использование команды PS в Linux для вывода всех процессов

В итоге отобразится огромное количество строк, с которыми следует разобраться. Делятся сведения на несколько столбцов. PID отображает идентификационный номер процесса и может использоваться, например, для быстрого завершения работы этой программы или проверки дерева задач. TTY — имя терминала, где запущен текущий процесс. TIME — время работы, а CMD — название команды задачи.

Результат использования команды PS в Linux для вывода всех процессов

Дополнительно можно использовать команду ps -e, чтобы отобразить список всех процессов, если предыдущий вариант вас не устраивает.

Альтернативная команда PS в Linux для вывода всех процессов

Как видно, выдача после активации опции -e получилась точно такая же, как и при вводе аргумента -A.

Результат использования альтернативной опции PS в Linux для вывода всех процессов

Существует формат вывода BSD, отвечающий за отображение связанных с пользователями процессов, а также отображает более детальные сведения о работе задач, нагрузке их на процессор и точное расположение. Для получения таких сведений следует использовать ps au.

Использование дополнительных опций команды PS в Linux для вывода в формате BSD

На указанном ниже изображении вы видите, что количество столбцов значительно прибавилось. В итоге к ознакомлению будет доступен полный список процессов с привязкой к учетной записи и отображением места расположения.

Результат использования дополнительных опций PS в Linux для вывода в формате BSD

Полноформатный листинг

Рассмотренные выше примеры позволяли отобразить практически все необходимые сведения, которые могут быть полезны начинающим пользователям. Однако иногда требуется получить более детальный листинг, например, чтобы определить источник вызова процесса. Тогда на помощь придет строка такого вида: ps -ef.

Использование дополнительных опций для полноформатного листинга PS в Linux

Отобразятся практически те же столбцы, о которых мы уже говорили ранее, но дополнительно появится детальная развертка о расположении и первый же пункт будет отвечать за источник вызова задачи.

Результат использования опций для полноформатного листинга PS в Linux

Отображение пользовательских процессов

Опция -x отвечает за отображение процессов, которые были отсоединены от терминала, то есть запущены лично пользователем. Если вы хотите узнать, какие именно задачи были открыты от имени текущей учетной записи, в консоли достаточно будет ввести строку ps -x и нажать на Enter.

Использование опций команды PS в Linux для вывода пользовательских процессов

Вывод будет максимально информативный, но без дополнительных сведений. Однако ничего не помешает задействовать и дополнительные опции, например, -eM для показа контекста безопасности.

Результат вывода пользовательских процессов через команду PS в Linux

Если же требуется получить информацию о данных другого пользователя, измените строку на ps -fU lumpics, где lumpics замените на необходимое имя.

Использование опций команды PS в Linux для вывода процессов конкретного пользователя

В результатах вывода обратите внимание на первый столбец. Вы не найдете там других владельцев кроме указанного в команде до ее активации.

Результат вывода процессов определенного пользователя PS в Linux

Как напечатать дерево определённого процесса

Вы можете получить дерево процессов только нужной вам программы следующим образом (замените sshd на интересующий вас процесс):

ps -f –forest -C sshd

Или так:

ps -ef –forest | grep -v grep | grep sshd

Об опции -C будет рассказано далее в этой статье.

Фильтрация вывода ps по определённым строкам (по имени команды, например)

Вы можете направить вывод из ps через grep и найти нужные записи о процессах по любым строкам. Здесь мы ищем записи, соответствующие поисковому запросу «firefox»:

ps -e | grep firefox

В этом случае выходные данные представляют собой одну запись для интересующего нас процесса. Конечно, если бы мы запустили несколько экземпляров Firefox, в списке было бы более одного элемента.

Больше столбцов в выводе ps

Чтобы добавить дополнительные столбцы к выводу, используйте параметр -f (полный формат).

ps -ef | less

Дополнительный набор столбцов включён в вывод ps.

Из новых столбов появились:

  • UID: идентификатор пользователя владельца этого процесса.
  • PPID: идентификатор родительского процесса.
  • C: Количество детей, которые есть у процесса.
  • STIME: Время начала. Время, когда процесс был запущен.

Используя опцию -F (дополнительный полный формат), мы можем получить ещё больше столбцов:

ps -eF | less

Если у вас маленькое окно терминала, то столбцы, которые мы получаем в этот раз, требуют прокрутки экрана в сторону, чтобы показать их все. Нажатие клавиши «Стрелка вправо» смещает дисплей влево.

Теперь добавились следующие столбцы:

  • SZ: размер страниц ОЗУ образа процесса.
  • RSS: резидентный размер набора. Это не подкачанная физическая память, используемая процессом.
  • PSR: процессор, которому назначен процесс.

Нужно ли указывать дефис перед опциями ps

В некоторых примерах вы можете увидеть использование ps с опциями без дефиса или с длинными вариантами написания опций в стиле GNU. Для совместимости, ps поддерживает все три формата. Опции без дефиса — это стиль BSD и значение опций с дефисом и без может быть различным!

Пример показа процессов в формате BSD:

ps au # ИЛИ ps axu

В этой команде значение опций следующее:

  • u — ориентированный на пользователя формат
  • a — убирает ограничение «только свои процессы»
  • x — убирает ограничение «только процессы с терминалом»

Проще говоря, если использовать вместе a и x, то будут показаны все процессы.

Нужно быть аккуратным, и не забывать ставить дефис если вы используете опции UNIX, поскольку в случае неопределённости ps будет пытаться трактовать в разных вариантах. В этой инструкции кроме рассмотренного примера везде используются опции UNIX.

Заключение

Команда ps является одной из наиболее часто используемых команд при устранении неполадок в системах Linux. Она имеет много вариантов, но, как правило, большинство пользователей используют либо ps aux или ps -ef для сбора информации о запущенных процессах.

Для получения информации обо всех доступных опциях ps введите man ps в своем терминале.


[spoiler title=”Источники”]

  • https://1cloud.ru/help/security/ispolzovanie-komandy-ps-dlya-prosmotra-protsessov-linux
  • https://andreyex.ru/operacionnaya-sistema-linux/komanda-ps-v-linux/
  • https://lumpics.ru/command-ps-in-linux/
  • https://ZaLinux.ru/?p=3596


[/spoiler]


2020-07-27T15:39:49
Linux

Пошаговая установка freebsd 11 для чайников



























2/5 — (11 голосов)

Как обычно, сначала нам нужно скачать установочный образ, и только потом может быть выполнена установка и настройка freebsd 11.

Шаг 1. Загрузка образа

На официальном сайте есть несколько версий для разных архитектур, нам нужна amd64 или x86, в зависимости от количества оперативной памяти, которую вы желаете использовать.

Мы будем устанавливать последнюю версию FreeBSD 11.1, но если позже выйдет более новая версия, то я думаю, что статья будет все еще актуальна и для нее.

Шаг 2. Запись образа на диск

Далее вам нужно записать полученный образ на диск или на флешку. Вы можете использовать один из известных вам методов для этого. Например, в Linux вы можете использовать Unetbootin или Etcher, а в Windows есть Rufus.

Далее вставьте носитель в компьютер и измените настройки BIOS так, чтобы загрузка выполнялась из вставленного носителя. Чтобы войти в BIOS, во время загрузки нажмите одну из клавишей: F2, F11, F12 перед загрузкой операционной системы. Затем перейдите на вкладку “Boot” и поставьте там ваш носитель на первое место.

Установка FreeBSD 11

Шаг 1. – Запуск установки.

При первой загрузке нас встречает меню загрузчика FreeBSD.(Рис.4)

  1. Boot Multi User [Enter] –  Загрузка в многопользовательском режиме.
  2. Boot Single User – Загрузка в однопользовательском режиме.
  3. Escape to loader prompt – Переход в командную строку загрузчика.
  4. Reboot – Перезагрузка.

Жмём [Enter]  для выбора первого пункта, или можно подождать 10 секунд и нас автоматически перенаправит к стандартной установке.

Меню загрузчика FreeBSD.

Рис.4 – Меню загрузчика FreeBSD.

Далее нас приветствует уже установщик FreeBSD.(Рис.5)


[перевод] Добро пожаловать в FreeBSD! Вы хотите начать установку или использовать live CD? [/перевод]

  • – Установка.
  • – Переход в консоль.
  • –  Загрузка в режиме Live CD.

Выбираем , Жмём “Enter”.

Установщик FreeBSD.

Рис.5 – Установщик FreeBSD.

Шаг 2. – Выбор раскладки.

Выбираем раскладку. Русская раскладка мне не нужна, меня устраивает раскладка по умолчанию (английская). Жму “Continue with default keymap”.(Рис.6)

Выбор раскладки.

Рис.6 – Выбор раскладки.

Шаг 3. – Имя сервера.

Пишем удобное для нас имя сервера, подберите такое имя, чтобы вам потом удобно было с ним работать. Много времени на раздумья тратить не стоит. После установки имя легко можно изменить,

Я ввожу – “freebsditdeer”, Жмём .(Рис.7)

Имя сервера FreeBSD.

Рис.7 – Имя сервера FreeBSD.

Шаг 4. – Выбор компонентов.

Выберите дополнительные системные компоненты для установки(Рис.8):

  • base-dbg – Пакеты для отладки системы.
  • doc – Дополнительная документация.
  • kernel-dbg – Пакеты для отладки ядра.
  • lib32-dbg – Пакеты для отладки 32х битных приложений.
  • lib32 – Библиотека совместимости для 32x битных приложений.
  • ports – Дерево портов.
  • src – Дерево исходного кода системы.
  • tests – Тестирование.

Выбор дополнительных системных компонентов для установки.

Рис.8 – Выбор дополнительных системных компонентов для установки.

По умолчанию отмечены lib32 и ports. Для стандартной серверной сборки этих компонентов достаточно. Лично я ничего больше выбирать не буду. а вы – на свое усмотрение. Выбираем (пробелом), а после  жмём < OK >.

Шаг 5. – Разметка диска.

Выбор способа разметки диска.(Рис.9)

  • Auto (UFS) – Автоматическая разметка диска.
  • Manual – Ручная разметка диска.
  • Shell – Ручная разметка через консоль.
  • Auto (ZFS) – Установка на Raid.

Я выбираю автоматическую разметку диска. – Auto (UFS).  Идём далее…

Выбор способа разметки диска.

Рис.9 – Выбор способа разметки диска.

Нам предлагается выбрать куда именно устанавливать FreeBSD: < Entire Disk > – весь диск, или < Partition > – Раздел диска.(Рис.10) Если у вас на жестком диске не одна система, то выбирайте  раздел, но лично у меня чистый диск, предназначенный только для FreeDSD. Я жму – < Entire Disk >.

Выбор расположения системы.

Рис.10 – Выбор расположения системы.

Выберите таблицу разделов. Я выбираю GTP, Жмём < OK >.(Рис.11)

Выбираем таблицу разделов.

Рис.11 – Выбираем таблицу разделов.

Проверьте предложенную разметку диска. По завершении нажмите кнопку «Finish».(Рис.12)

Предложенная разметка диска.

Рис.12 – Предложенная разметка диска.

Даём согласие на применение новой разметки диска. Жмём < Commit >.(Рис.13)

Даём согласие на применение новой разметки диска.

Рис.13 – Даём согласие на применение новой разметки диска.

Шаг 6. – Установка базовой системы.

Установка базовой системы проходит в автоматическом режиме, без участия пользователя. Просто ждём пару минут…(Рис.14)

Установка базовой системы.

Рис.14 – Установка базовой системы.

Шаг 7. – Ввод пароля root.

Вводим пароль суперпользователя root. Из соображений безопасности при вводе пароля на экране ничего меняться не должно, не пугайтесь что пароль у вас не пишется, всё так и должно быть.(Рис.15)

Ввод пароля суперпользователя.

Рис.15 – Ввод пароля суперпользователя.

Шаг 8. – Настройка сети.

Выбираем сетевую карту(интерфейс), так как у меня она одна, то выбирать не приходится. Жмём  < OK >.(Рис.16)

Выбор сетевого интерфейса.

Рис.16 – Выбор сетевого интерфейса.

“Хотим ли мы настроить IPv4 для этого интерфейса?” – Конечно хотим как же нам без сети… Жмём < Yes >.(Рис.17)

Хотим ли мы настроить IPv4 для этого интерфейса?

Рис.17 – Хотим ли мы настроить IPv4 для этого интерфейса?

“Вы хотите использовать DHCP для настройки этого интерфейса?” – Для сервера важно иметь статический(постоянный) IP адрес, для того чтобы он не менялся необходимо прописать его вручную, либо зарезервировать на DHCP сервере, я выбираю первый вариант – прописать вручную, а значит DHCP сервер нам не нужен. Жмём < NO >. (Рис.18) Идём далее…

Вы хотите использовать DHCP для настройки этого интерфейса?

Рис.18 – Вы хотите использовать DHCP для настройки этого интерфейса?

Вводим свои настройки.(Рис.19)

  • IP Address – Вводим IP адрес нашей freebsd.
  • Subnet Mask – Маску сети.
  • Default Router – Шлюз по умолчанию.

Вводим настройки сетевого интерфейса.

Рис.19 – Вводим настройки сетевого интерфейса.

“Хотим ли мы настроить IPv6 для этого интерфейса?” – Нет не хотим. Жмём < NO >.(Рис.20)

Хотим ли мы настроить IPv6 для этого интерфейса?

Рис.20 – Хотим ли мы настроить IPv6 для этого интерфейса?

Предлагается ввести адреса DNS серверов. Если вы получали настройки по DHCP то поля с адресами уже будут заполнены.(Рис.21)

Я ввожу IP адрес своего роутера(шлюза) – 192.168.3.1 и на всякий случай DNS Google – 8.8.8.8. Жмём < OK >.

Вводим DNS сервера.

Рис.21 – Вводим DNS сервера.

Шаг 9. – Выбор локации.

Выбираем свое местоположение, для определения временной зоны. Я проживаю в Санкт-Петербурге и время тут не отличается от московского.

Выбираю регион – “8 Europe”(Рис.22), страну –  “39 Russian Federation”(Рис.23) и часовой пояс – “2 MSK+00 – Moscow area”,подтверждаю выбор – жму < Yes >.(Рис.24)

 Выбор региона.

Рис.22 – Выбор региона.Выбор страны.

Рис.23 – Выбор страны.Выбор часового пояса.

Рис.24 – Выбор часового пояса.

Шаг 10. – Настройка даты и времени.

Настройка даты и времени, Если что-то не совпадает – меняйте. У меня расхождений нет. Дважды Жму < Skip >.(Рис.25)(Рис.26)

Настройка даты.

Рис.25 – Настройка даты.Настройка времени.

Рис.26 – Настройка времени.

Шаг 11. – Настройка автозапуска служб.

Выберите службы, которые вы хотите запускать при загрузке.(Рис.27)

  • local_unbound – Локальное кеширование.
  • sshd – Демон для удаленного подключения по SSH.
  • moused – Поддержка PS/2 клавиатур.
  • ntpd – Сервер времени.
  • powerd – Динамически настраиваемая частота процессора, в зависимости от нагрузки системы.
  • dunpdev – Включить дампы сбоя ядра в /var/crash.

Вам не помешает sshdntpd и powerd. Лично я оставлю только powerd. В следующих статьях мы настроим sshdntpd вручную. Выбираем(пробелом) и жмем < OK >.

Добавление служб в автозагрузку.

Рис.27 – Добавление служб в автозагрузку.

Шаг 12. – Настройки безопасности.

Выберите параметры  безопасности системы.(Рис.28)

  1. Hide processes runing as other users – Скрыть процессы, выполняемые другими пользователями.
  2. Hide processes runing as other groups – Скрыть процессы, выполняемые другими группами пользователей.
  3. Disable reading kernel message buffer for unprivileged users – Отключение чтения буфера сообщений ядра для непривилегированных пользователей.
  4. Disable process debugging facilities for unprivileged users – Отключение средств отладки процессов для непривилегированных пользователей.

  5. Randomize the PID of newly created processes – Рандомизировать PID вновь созданных процессов.
  6. Insert stack guard page ahead of the growable segments – Вставить страницу защиты стека перед растущими сегментами.
  7. Clean the /tmp filesystem on system startup – Очистка каталога /tmp при запуске системы.
  8. Disable opening Syslog network socket (disables remote logging) – Отключить открытие сетевого сокета Syslog (отключает удаленную регистрацию).
  9. Disable Sandmail service – Отключить службу Sendmail.

Отмечаем(пробелом) 3, 4, 7, 8 и если не собираетесь устанавливать на FreeBSD почтовый сервер то и 9. жмём < OK >.

 Выбор параметров безопасности системы.

Рис.28 – Выбор параметров безопасности системы.

Шаг 13. – Добавление учетных записей пользователей.

Вы бы хотели сейчас добавить пользователей в устанавливаемую систему? – Я хотел бы, Жму < Yes >.(Рис.29)

Хотите добавить пользователя?

Рис.29 – Хотите добавить пользователя?

Вводим Username и Full name, Я ввожу дважды – firstdeer. Дальше действуйте на свое усмотрение, я все оставляю по умолчанию, Ввожу и подтверждаю пароль.(Рис.30)

Если вы на 11 шаге выбрали sshd, то рекомендую добавить своего пользователя в группу – wheel, чтобы вы смогли авторизоваться по ssh и получить права суперпользователя.

В строке напишите “wheel”- Login group is firstdeer. Invite firstdeer into other groups? []: wheel. Лично я этого делать не буду.

Добавление нового пользователя.

Рис.30 – Добавление нового пользователя.

Нам предоставят для проверки введенную нами информацию и спросят все ли нас устраивает… OK? (yes/no): вводим yes.(Рис.31)

Получим сообщение: adduser INFO: Successfully added (firstdeer) to the user database.(Успешно добавлен (firstdeer) в пользовательскую базу данных.)

Если вам достаточно одного пользователя то на вопрос “Add another user?/Добавить другого пользователя” напишите “no”. Мне достаточно, я и пишу…

Добавить нового пользователя?

Рис.31 – Добавить нового пользователя?

Настройка графического окружения во FreeBSD

После того как freeBSD установлена и запущена, то первое, что мы увидим это командную строку.

Работать в командной строке не то чтобы не удобно, потому что очень даже удобно, а скорее не по используешь машину как развлекательный медиа центр, и то можно из командной строки слушать музыку, короче говоря, зачем нужна во freeBSD графическая среда каждый решает для себя сам, а в этом посте мы пройдем по шагам как превратить командную строку в графическую среду.

Подготовка к настройке

Если только у вас не настроена команда sudo то залогиньтесь под рутом, а если хотите все делать с командой sudo то сначала настройте sudo.

Первое, что надо сделать это поменять командный интерпретатор. Для этого запустите chpass:

chpass username

Так как в freeBSD в основном приходится работать в командной строке (по крайней мере после установки), сразу же что нужно сделать, это заменить оболочку которая идет по умолчанию на более функциональную, например такую как csh (вторая строчка):

#Changing user information for username. Shell: /bin/csh Full Name: username Office Location: Office Phone: Home Phone: Other information:

Следующее, что может понадобиться это немного настроить интернет если мы выходим туда через роутер. Есть такой файлик, называется /etc/resolv.conf, там прописывается ip адресс маршрутизатора. Перейдите в рута и откроете этот файл на редактирование в идущем по умолчанию редакторе ee:

suee /etc/resolv.conf

и добавьте адрес маршрутизатора, в моем случае его адрес 172.22.193.1:

nameserver 172.22.193.1

Для выхода и сохранения нажмите один раз на Esc и два раза на a.

Теперь должен заработать интернет (в случае если он ранее не работал и по причине что описана выше). Чтобы проверить, что интернет работает про пингуем ресурс ya.ru

ping ya.ru PING ya.ru (213.180.193.3): 56 data bytes 64 bytes from 213.180.193.3: icmp_seq=0 ttl=55 time=19.865 ms 64 bytes from 213.180.193.3: icmp_seq=1 ttl=55 time=23.762 ms 64 bytes from 213.180.193.3: icmp_seq=2 ttl=55 time=20.075 ms 64 bytes from 213.180.193.3: icmp_seq=3 ttl=55 time=19.721 ms

Установка оконного сервера Xorg

После того как мы убедились, что связь есть, можно продолжить дальнейшую настройку freeBSD. Так как мы хотим вместо командной строки видеть графическую среду, то для начала нам нужно установить какую-нибудь реализацию X Window System. Одной из таких реализаций является Xorg. Установим пакет Xorg командой pkg install:

pkg install xorg

После этого начнется процесс установки пакета Xorg с выводом информации об установке, как, например, вытаскивание пакетов из репозитория, затем их распаковка и установка.

Так как в дальнейшем нам надо будет редактировать текстовые файлы, нам надо установить более удобный редактор чем ee, например vim и файловый менеджер Midnight commander, так как нам надо будет перемещаться по файловой системе:

pkg install vim mc

На данный момент Xorg у нас есть, но это только оконная система или X Window System которая знает как рисовать окна, как их перемещать, как они между собой перерисовываются когда одно закрывает другое, как они должны взаимодействовать с устройствами ввода, в частности как они должны обрабатывать сообщения поступающие от клавиатуры и мыши, короче говоря реализует все базовые функции графической среды. В принципе для того, чтобы работать в графической среде этого будет достаточно, после вызова команды startx появится какая никакая графическая среда. Однако нам нужно FullHD разрешение, рабочий стол, чтобы было красиво, много эффектов и пр., для этого нам надо еще установить какое-нибудь графическое окружение или среду рабочего стола и таких несколько. Самые популярные это GNOME и KDE. Но ни гном ни кеды мне не подходят так как они слишком тяжелые. Лучшим выбором будет более легкий Xfce или MATE. Давайте поставим MATE:

pkg install mate

На данном этапе, если мы пропишем необходимые конфиги в конфигуркционных файлах ~/.xinitrc и /etc/rc.conf и запустим службы dbus и hald, то запустив команду startx мы увидим графическую среду.

Но если мы перезагрузимся, то запуска графической среды мы не увидим, так как она запускается командой startx, а чтобы эту команду ввести нужно сначала залогиниться в систему.

Если нужна графика еще до ввода креденшиналсов, то есть до ввода логина и без всяких запусков startx, то нам понадобиться менеджер экранов Display Managers, но о нем по говорим чуть дальше. А сейчас давайте пропишем все необходимые конфиги, что бы поднималась графическая среда.

Настройка конфигурационного файла /etc/rc.conf

Откройте на редактирование файл /etc/rc.conf:

vim /etc/rc.conf

И добавьте такие строки:

dbus_enable=”YES” hald_enable=”YES”

/etc/rc.conf

hostname=”freebsd” keymap=”ru.koi8-r.kbd” ifconfig_em0=”DHCP” ifconfig_em0=”inet 172.22.193.36 netmask 0xffffff00″ defaultrouter=”172.22.193.

1″ local_unbound_enable=”YES” sshd_enable=”YES” moused_enable=”YES” ntpd_enable=”YES” # Set dumpdev to “AUTO” to enable crash dumps, “NO” to disable dumpdev=”AUTO” dbus_enable=”YES” hald_enable=”YES”

Это означает, что сервисы hald и dbus будут запускаться при запуске системы, а сейчас запустим их вручную:

serivce dbus startserivce hald start

Для того, чтобы появилась графическая среда, все что осталось нам сделать это создать в домашних каталогах всех пользователей желающих работать в графичейской среде файл .xinitrc и поместить туда строчку exec mate-session:

cd # cd без параметров переходит в домашний каталог текущего пользователяecho “exec mate-session”>.xinitrc

Теперь все готово, осталось только запустить команду startx

startx

и вместо командной строки появится рабочий стол среды MATE:

Установка менеджера экранов Slim

Если нужен менеджер экранов, то хорошим выбором будет slim:

pkg install slim

После того как менеджер экранов slim установим добавим его в конфигурационный файл /etc/rc.conf (строчка 14):

hostname=”freebsd” keymap=”ru.koi8-r.kbd” ifconfig_em0=”DHCP” ifconfig_em0=”inet 172.22.193.36 netmask 0xffffff00″ defaultrouter=”172.22.193.1″ local_unbound_enable=”YES” sshd_enable=”YES” moused_enable=”YES” ntpd_enable=”YES” # Set dumpdev to “AUTO” to enable crash dumps, “NO” to disable dumpdev=”AUTO” dbus_enable=”YES” hald_enable=”YES” slim_enable=”YES”

И теперь нам необходимо либо перезагрузиться либо запустить сервис slim. Для запуска сервиса введите:

service slim start

Теперь после выхода из окружения рабочего стола (выбором кнопки Log out), а так же после перезагрузки системы мы уже попадем не в командную строку, а в оконный менеджер, где будет окно ввода логина и пароля:

Guest Additions. Только для людей запускающих FreeBSD на виртуальной машине VirtualBox

Если вы запускаете FreeBSD на виртуальной машине VirtualBox (как я), то для комфортной работы нужно еще до установить Guest Additions, чтобы разрешение было под размеры дисплея, а так же чтобы мышка при попадении в зону окна где работает freeBSD становилась фрибээсдэшной.

А пока для работы в окне VirtualBox нужно щелкнуть мышкой в любом месте окна, таким образом VirtualBox захватит мышку и все команды поступающие от мышки будут направляться на обработку в freeBSD запущенной в виртуалбоксе. Если надо вернуться обратно в ту среду, из которой запущен виртуалбокс, нужно нажать правый ctrl.

Это крайне не удобно, поэтому давайте установим Guest Additions:

pkg install virtualbox-ose-additions

Для того, чтобы guest additions режим стартовал при загрузке системы откроем на редактирование файл /etc/rc.conf

vim /etc/rc.conf

и добавим две строчки (15 и 16):

/etc/rc.conf

hostname=”freebsd” keymap=”ru.koi8-r.kbd” ifconfig_em0=”DHCP” ifconfig_em0=”inet 172.22.193.36 netmask 0xffffff00″ defaultrouter=”172.22.193.

1″ local_unbound_enable=”YES” sshd_enable=”YES” moused_enable=”YES” ntpd_enable=”YES” # Set dumpdev to “AUTO” to enable crash dumps, “NO” to disable dumpdev=”AUTO” dbus_enable=”YES” hald_enable=”YES” slim_enable=”YES” vboxguest_enable=”YES” vboxservice_enable=”YES”

Теперь настроем X11. Перейдите в рута и запустите команду Xorg -configure:

Xorg -configure Warning

Если команду Xorg -configure запустить уже из под запущенного графического режима, то она не запуститься, поэтому перед ее запуском стопоните сервисы dbus и hald:

service dbus stop

service hald stop

service slim stop

При этом в домашнем каталоге рута появится файл xorg.conf.new. Откройте его на редактирование: vim /root/xorg.conf.new

и измените драйвер мыши на Driver ‘vboxmouse’ (строчка 30):

xorg.conf.new

Section “ServerLayout” Identifier “X.

org Configured” Screen 0 “Screen0” 0 0 Screen 1 “Screen1” RightOf “Screen0” InputDevice “Mouse0” “CorePointer” InputDevice “Keyboard0” “CoreKeyboard” EndSection Section “Files” ModulePath “/usr/local/lib/xorg/modules” FontPath “/usr/local/lib/X11/fonts/misc/” FontPath “/usr/local/lib/X11/fonts/TTF/” FontPath “/usr/local/lib/X11/fonts/OTF/” FontPath “/usr/local/lib/X11/fonts/Type1/” FontPath “/usr/local/lib/X11/fonts/100dpi/” FontPath “/usr/local/lib/X11/fonts/75dpi/” EndSection Section “Module” Load “glx” EndSection Section “InputDevice” Identifier “Keyboard0” Driver “kbd” EndSection Section “InputDevice” Identifier “Mouse0” Driver “vboxmouse” EndSection Section “Monitor” Identifier “Monitor0” VendorName “Monitor Vendor” ModelName “Monitor Model” EndSection Section “Monitor” Identifier “Monitor1” VendorName “Monitor Vendor” ModelName “Monitor Model” EndSection Section “Device” ### Available Driver options are:- ### Values: : integer, : float, : “True”/”False”, ### : “String”, : ” Hz/kHz/MHz”, ### : “%” ### [arg]: arg optional Identifier “Card0” Driver “vboxvideo” BusID “PCI:0:2:0” EndSection Section “Device” ### Available Driver options are:- ### Values: : integer, : float, : “True”/”False”, ### : “String”, : ” Hz/kHz/MHz”, ### : “%” ### [arg]: arg optional #Option “ShadowFB” # [] #Option “DefaultRefresh” # [] #Option “ModeSetClearScreen” # [] Identifier “Card1” Driver “vesa” BusID “PCI:0:2:0” EndSection Section “Screen” Identifier “Screen0” Device “Card0” Monitor “Monitor0” SubSection “Display” Viewport 0 0 Depth 1 EndSubSection SubSection “Display” Viewport 0 0 Depth 4 EndSubSection SubSection “Display” Viewport 0 0 Depth 8 EndSubSection SubSection “Display” Viewport 0 0 Depth 15 EndSubSection SubSection “Display” Viewport 0 0 Depth 16 EndSubSection SubSection “Display” Viewport 0 0 Depth 24 EndSubSection EndSection Section “Screen” Identifier “Screen1” Device “Card1” Monitor “Monitor1” SubSection “Display” Viewport 0 0 Depth 1 EndSubSection SubSection “Display” Viewport 0 0 Depth 4 EndSubSection SubSection “Display” Viewport 0 0 Depth 8 EndSubSection SubSection “Display” Viewport 0 0 Depth 15 EndSubSection SubSection “Display” Viewport 0 0 Depth 16 EndSubSection SubSection “Display” Viewport 0 0 Depth 24 EndSubSection EndSection

Теперь скопируйте этот файл в /etc/X11 с именем xorg.conf:

cp xorg.conf.new /etc/X11/xorg.conf

И последнее, что осталось сделать, это перезагрузиться:

shutdown -r now

Если не был установлен какой-нибудь оконный менеджер, то после перезагрузки вход в систему будет из командной строки.

Введите свои креденшиналсы, и после того как войдете под своим юзером, запустите startx и графическая среда должна развернуться в полный размер дисплея, а принадлежность мышки между виртуалбоксом и средой в которой виртуалбокс запущен будет меняться автоматически, в случае если установлен оконный менеджер, например slim этого делать не надо, так как графическая среда поднимется автоматически.

FreeBSD с разрешением FullHD

Что еще можно поставить

После того как все настроено, можно установить привычный гуевый софт такой как браузер, офис и пр. Давайте установим firefox — браузер, libre office — документы, электронные таблицы, презентации, gimp — графический редактор, rhythmbox — проигрыватель:

pkg install firefox libreoffice gimp rhythmbox

Например так выглядит gimp во freeBSD (это уже среда рабочего стола Xfce):

Если захотите запустить среду рабочего стола Xfce, то установите Xfce командой: pkg install xfce

а затем надо будет прописать в файле ~/.xinitrc строчку:

/usr/local/bin/startxfce4

Линки

Installing Guest Additions causing (Ubuntu) — http://askubuntu.com/questions/526995/installing-guest-additions-causing-problems

Источник: http://dev-blogs.com/freebsd-customize/

I. Создание загрузочной флешки с FreeBSD

1.Вставьте USB флешку в USB разъем.

2. Установите скачанную утилиту Win32 Disk Imager. (прим. I accept the agreement > Next > Next > Install > Finish).

3. В Win32 Disk Imager выберите букву USB флешки и нажмите на синюю иконку. В появившемся окне выберите скачанный Вами ранее IMG-образ с FreeBSD, а затем нажмите Открыть (Рис.1).

Рис.1

.

4. Нажмите Write, затем, в появившемся окне, нажмите Yes. После чего начнётся создание загрузочной USB флешки (Рис.2).

Рис.2

.

5. После завершения создания загрузочной USB флешки нажмите OK  и закройте программу (Рис.3).

Рис.3

.

II. Установка FreeBSD

1. Вставьте загрузочную USB флешку с FreeBSD в разъём USB.

2. Сразу после запуска компьютера необходимо вызвать Boot menu. Т.к. на разных материнских платах и ноутбуках клавиши вызова Boot menu отличаются, ниже приведена таблица (Рис.4) в соответствии с которой Вам необходимо нажать соответствующую клавишу (прим. если у Вас стационарный компьютер, и Вы не знаете какая материнская на нём стоит, обесточьте компьютер, откройте боковую крышку системного блока и посмотрите модель материнской платы).

Рис.4

.

3. Boot menu незначительно отличается на разных моделях и приблизительно выглядит следующим образом (Рис.5, Рис.6).

Рис.5

.

Рис.6

.

4. Выберите загрузку с USB флешки (Рис.5, Рис.6) и нажмите Enter.

5. В меню выберите первый пункт и нажмите Enter (Рис.7).

Рис.7

.

6. В появившемся окне выберите Install и нажмите Enter (Рис.8).

Рис.8

.

7. В разделе раскладки клавиатуры выберите Russian koi8-r и нажмите Enter (Рис.9).

Рис.9

.

8. Выберите Continue with ru.koi8-r.kbd keymap и нажмите Enter (Рис.10).

Рис.10

.

9. Выберите hostname (прим. можно выбрать любое, в дальнейшем его можно будет изменить), затем нажмите Enter (Рис.11).

Рис.11

.

10. В качестве компонентов для установки выберите lib32, ports, src (прим. чтобы отметить компонент как выбранный нужно его выделить и нажать пробел), затем нажмите Enter (Рис.12).

Рис.12

.

11. Выберите автоматическую разметку Auto (UFS), затем нажмите Enter (Рис.13).

Рис.13

.

12. Выберите Entire Disc, затем нажмите Enter (Рис.14).

Рис.14

.

13. Выберите пункт GPT, затем нажмите Enter (Рис.15).

Рис.15

.

14. Удостоверьтесь, что автоматическая разметка произведена верно, затем выберите Finish и нажмите Enter (Рис.16).

Рис.16

.

15. Выберите Commit и нажмите Enter (Рис.17).

Рис.17

.

16. Начнётся процесс установки (Рис.18).

Рис.18

.

17. После окончания установки необходимо придумать, ввести и повторить пароль для суперпользователя (root) (прим. при вводе пароля, символы не отображаются) (Рис.19).

Рис.19

.

18. В появившемся окне выберите сетевой интерфейс (прим. если у Вас их несколько — выберите тот, который вы хотите настроить для доступа к сети), затем нажмите Enter (Рис.20).

Рис.20

.

19. Для настройки IPv4 выберите Yes и нажмите Enter (Рис.21).

Рис.21

.

20. Для получения настроек по DHCP выберите Yes и нажмите Enter (Рис.22).

Рис.22

.

21. В появившемся окне настроек IPv6 выберите No и нажмите Enter (Рис.23).

Рис.23

.

22. В появившемся окне нажмите Enter т.к. Вы получили настройки по DHCP и адрес уже заполнен (Рис.24).

Рис.24

.

23. Выберите необходимый регион (прим. для России это Europe), затем нажмите Enter (Рис.25).

Рис.25

.

24. Выберите страну и нажмите Enter (Рис.26).

Рис.26

.

25. Выберите необходимый часовой пояс, затем нажмите Enter (Рис.27).

Рис.27

.

26. Подтвердите выбор часового пояса выбрав Yes, затем нажмите Enter (Рис.28).

Рис.28

.

27. Выберите дату (прим. если дата указана верно, то просто выберите Skip, в противном случае укажите дату вручную) (Рис.29).

Рис.29

.

28. Выберите время (прим. если время указано верно, то просто выберите Skip, в противном случае укажите время вручную) (Рис.30).

Рис.30

.

29. Выберите компоненты, которые  будут запускаться автоматически при загрузке системы (прим. чтобы отметить компонент как выбранный нужно его выделить и нажать пробел), после выбора компонентов нажмите Enter (Рис.31).

Рис.31

.

30. Выберите третий пункт: Disable reading kernel message buffer for unprivileged users и нажмите Enter (Рис.32).

Рис.32

.

31. Для того, чтобы добавить пользователя выберите Yes и нажмите Enter (Рис.33).

Рис.33

.

32. В строках Username и Full name введите имя пользователя и полное имя (прим. можно указывать любые). В строке Login group введите wheel. Для строк Enter password и Enter password again необходимо придумать, ввести и повторить пароль для пользователя (прим. при вводе пароля символы не отображаются). В остальных строках нажимайте Enter (Рис.34).

Рис.34

.

33. Для подтверждения регистрации пользователя, напротив строки OK? (yes/no) введите yes. Напротив строки Add another user? введите no (Рис.35).

Рис.35

.

34. Выберите Exit и нажмите Enter (Рис.36).

Рис.36

.

35. В появившемся окне выберите No и нажмите Enter (Рис.37).

Рис.37

.

36. Для перезагрузки системы выберите Reboot и нажмите Enter (Рис.38).

Рис.38

.

37. После перезагрузки введите в строке login root, а в строке Password пароль, который вы указывали ранее (прим. см. пункт 17) (Рис.39).

Рис.39

.

III. Установка Xorg и GNOME 3 в FreeBSD

1. Прежде чем устанавливать Xorg и GNOME 3, необходимо проверить соединение с Интернет (прим. особенно это актуально, если доступ осуществляется через роутер). Для этого зайдите через root и введите следующие команды:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 14px !important; line-height: 15px !important;”> # su # ee /etc/resolv.conf




12# su# ee /etc/resolv.conf

Как это показано на Рис.40.

Рис.40

.

2. В строке nameserver должен быль прописан адрес DNS-сервера (прим. у Вас этот адрес будет другой), если  его нет — пропишите адрес вручную (Рис.41).

Рис.41

.

3. После того как Вы проверили (прим. или прописали вручную) адрес DNS-сервера, нажмите Esc. В появившемся окне выберите leave editor и нажмите Enter (Рис.42).

Рис.42

.

4. Выберите пункт save changes и нажмите Enter (Рис.43).

Рис.43

.

5. Для установки Xorg введите:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 15px !important;”> # pkg install xorg




1# pkg install xorg

Затем в строке Do you want to fetch and install it now введите Y (Рис.44).

Рис.44

.

6. В строке Proceed with this action введите Y, после чего начнётся установка Xorg (Рис.45).

Рис.45

.

7. Для установки GNOME 3 введите:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 15px !important;”> # pkg install gnome3




1# pkg install gnome3

Как это показано на Рис.46.

Рис.46

.

8. В строке Proceed with this action введите Y, после чего начнётся установка GNOME 3 (Рис.47).

Рис.47

.

9. Для настройки автоматического запуска GNOME 3 введите:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 15px !important;”> # ee /etc/rc.conf




1# ee /etc/rc.conf

Как это показано на Рис.48.

Рис.48

.

10. Допишите в самом конце строчку:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 15px !important;”> gnome_enable=”YES”




1gnome_enable=”YES”

Затем нажмите Esc (Рис.49).

Рис.49

.

11. В появившемся окне выберите leave editor и нажмите Enter (Рис.50).

Рис.50

.

12. Выберите пункт save changes и нажмите Enter (Рис.51).

Рис.51

.

13. Для перезагрузки введите:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 15px !important;”> #reboot




1#reboot

Как это показано на Рис.52.

Рис.52

.

14. После перезагрузки, для входа в систему потребуется ввести пароль, который Вы указали ранее и нажмите Sign In (Рис.53).

Рис.53

.

15. После ввода пароля загрузится рабочий стол (Рис.54).

Рис.54

.

 Установка FreeBSD и графической оболочки GNOME 3 завершена.

.


[spoiler title=”Источники”]

  • https://losst.ru/ustanovka-freebsd-11
  • https://itdeer.ru/ustanovka-freebsd-11-1/
  • https://crb-otradnoe.ru/konfiguratsiya/poshagovaya-ustanovka-freebsd-11-dlya-chajnikov.html
  • https://lyapidov.ru/setup-freebsd-and-gui-from-usb/


[/spoiler]


2020-07-27T15:39:49
Linux

Настройка фаервола в Ubuntu с помощью утилиты UFW



























Rate this post

UFW (Uncomplicated Firewall – несложный фаервол) –  удобный интерфейс для управления политиками безопасности межсетевого экрана. Наши серверы постоянно подвергаются различным атакам или сканируются в поиске уязвимостей. Как только эти уязвимости находятся, мы рискуем стать частью ботнета, раскрыть конфиденциальные данные или потерять деньги из-за сбоев в работе веб-приложений. Одной из первых мер по снижению рисков безопасности является грамотная настройка правил межсетевого экрана. В нашем руководстве мы рассмотрим основные команды и правила работы с утилитой UFW.

Предварительные требования

  1. Для начала работы с UFW вам потребуется суперпользователь(возможность исполнения команд под sudo).  

  2. Утилита  UFW предустановлена в системе. Если по какой-то причине она была отсутствует, вы можете установить ее  с помощью команды:

    sudo apt-get install ufw

Проверка правил и текущего состояния UFW

В любое время вы можете проверить состояние UFW с помощью команды:

sudo ufw status verbose

По умолчанию UFW отключен, так что вы должны увидеть что-то вроде этого:

Status: inactive

Если UFW включен, то в консоли будут перечисляться заданные правила. Например, если firewall настроен таким образом – SSH (порт 22) соединение из любой точки мира, консоль может выглядеть следующим образом:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
 
To                         Action      From
—                         ——      —-
22                         ALLOW IN    Anywhere
22 (v6)                    ALLOW IN    Anywhere (v6)
 

Так вы всегда можете узнать как настроен фаервол. 

Внимание! Проведите начальную настройку перед включением UFW. В частности, должен быть доступен SSH(22 порт). В ином случае вы рискуете потерять доступ к серверу.

Краткое описание

С английского языка название дословно переводится как несложный (упрощенный) брандмауэр. Особенность продукта — минимализм с графической оболочкой на основе командной строки. Если кратко, то UFW используют для базовых настроек межсетевого экрана. Он содержит необходимый минимум функций для стандартной защиты корпоративных ресурсов. Создание более сложных правил и тонкая настройка доступны в iptables.

Изначально решение разрабатывалось для операционных систем семейства Debian и Ubuntu. Дальнейшие действия выполняются под управлением Ubuntu.

Предварительная подготовка

Если UFW не установлен на серверной платформе, используем стандартную утилиту:

sudo apt-get install ufw

Второй вариант – утилита установлена, но неактивна, тогда прописываем:

sudo ufw enable

Важно! Любые действия, связанные с конфигурированием продукта, выполняются с правами суперпользователя.

После инсталляции проверим состояние программы:

sudo ufw status verbose

Стандартная конфигурация программы блокирует входящий трафик, но разрешает исходящий. Чтобы изменить параметры, открываем системный файл:

sudo nano /etc/default/ufw

sudo ufw default deny incoming
sudo ufw default allow outgoing

Первая строка отвечает за блокировку, а вторая за исходящие подключения.

Настройка

UFW распределяет правила согласно профилям программ. Они хранятся по следующему пути:

/etc/ufw/applications.d

Создание нового или редактирование текущего профиля проводится администратором в ручном режиме. Для начала ознакомимся с текущими профилями:

sudo ufw app list

Просмотр подробной информации по любой записи осуществляется при помощи следующей команды:

sudo ufw app info ‘name’

Где name — наименование профиля, которое заключается в одинарные кавычки.

Например, просмотрим сервис OpenSSH:

Первая строка — имя новой записи в UFW. Вторая описывает заголовок, по которому профиль будет идентифицироваться. Третья содержит краткое описание сервиса (рекомендуется использовать 1-2 предложения). Последняя строка указывает порты, которые необходимо открыть для работы приложения.

Сохраняем файл и перезагружаем межсетевой экран:

ufw reload

Следующий шаг — прописываем политику для новой записи. Доступно два режима: разрешить (Allow) и запретить (Deny). Синтаксис выглядит следующим образом:

ufw

Где action – одно из двух значений Allow или Deny, а name_profile — наименование профиля.

Операции с портами

Для открытия/закрытия портов также используется команды Allow/Deny, в зависимости от требований администратора. Синтаксис выглядит следующим образом:

sudo ufw /

Расшифровка:

1. action — одно из двух действий: разрешить (Allow) или запретить (Deny);
2. port — цифровое имя порта, для которого применяется правило;
3. name_protocol — наименование протокола.

Если требуется указать перечень портов, используем двоеточие между начальной и конечной точкой. Альтернативный вариант — использовать имя службы, для которой создается запись. Например, откроем порт для сервиса HTTP:

sudo ufw allow http

Важно! UFW разрешает стандартный порт, который закреплен за службой. Если значение отличается от общепринятых, то создавать правило по имени сервиса нельзя — оно не активируется.

Операции с IP-адресами

Аналогично портам правила создаются правила и для IP-адресов. Синтаксис идентичен предыдущему пункту:

sudo ufw from

Action – принимает значение Allow или Deny, IP-адрес – адрес оборудования, которому предоставляется/запрещается доступ к серверу.

Например, команду разрешить устройству с IP-адресом 10.68.23.15 доступ к всем портам сервера можно записать так:

sudo ufw allow from 10.68.23.15

Также доступна опция идентификации порта, например:

sudo ufw allow from 10.68.23.15 to any port 22

Добавление словосочетания to any port (name) задает конкретное значение порта, для которого доступ будет открыт. Вместо name указываем номер порта.

Если требуется создать правило для нескольких IP-адресов, используем видоизмененный синтаксис:

sudo ufw allow from 10.68.23.0/24

адрес>

Операции с сетевым интерфейсом

При создании профилей также применяют имена сетевых интерфейсов. Синтаксис представлен ниже:

sudo ufw in on <имя интерфейса=””> to any port <порт>sudo ufw in on

Поле action, как и в предыдущих разделах, принимает состояние Allow и Deny, а опция name_interface отвечает за наименование сетевого интерфейса, для которого создается правило.

Для просмотра списка активных интерфейсов вводим в терминале команду:

ifconfig -a

Также доступна дополнительная опция to any port — для однозначной идентификации порта.

Удаление записей

Чтобы удалить созданное ранее правило, используем ключ delete. В общем виде команда выглядит так:

sudo ufw delete

Где number — порядковый номер записи в таблице конфигурации UFW. Чтобы проставить цифровые значения для каждой строки, укажем в терминале:

sudo ufw status numbered

После этого просто указываем номер записи в таблице. Допустим:

sudo ufw delete 7

Перезагрузка не требуется.

Настраиваем UFW в Ubuntu

Устанавливать UFW в операционную систему не нужно, поскольку он присутствует там по умолчанию. Однако в стандартном своем виде он неактивен и не имеет вообще никаких правил. Сначала займемся активацией, а потом рассмотрим основные действия. Однако первоочередно следует изучить синтаксис, и особенно это касается тех юзеров, кто планирует задействовать данный межсетевой экран на постоянной основе.

Шаг 1: Изучение синтаксиса

Как известно, UFW — консольная утилита, а это значит, что управление ею осуществляется через стандартный «Терминал» или любой другой пользовательский. Взаимодействие такого рода выполнимо с помощью специально установленных команд. Все они всегда имеются в документации, однако читать огромную кучу материалов не имеет смысла, особенно в случае с сегодняшним инструментом. Принцип ввода выглядит так: sudo ufw опции действие параметры. sudo отвечает за запуск от имени суперпользователя, ufw — стандартный аргумент, обозначающий вызываемую программу, а остальные фразы и определяют устанавливаемые правила. Именно на них мы и хотим остановиться более детально.

  • enable — стандартный параметр, отвечающий за включение брандмауэра. При этом он будет автоматически добавлен в автозагрузку.
  • disable — отключает UFW и убирает его из автозагрузки.
  • reload — используется для перезагрузки Firewall. Особенно актуально после установки новых правил.
  • default — обозначает, что следующая опция установится по умолчанию.
  • logging — активирует создание лог-файлов, в которых будет храниться вся основная информация о действии межсетевого экрана.
  • reset — сбрасывает все настройки до стандартных.
  • status — используется для просмотра текущего состояния.
  • show — быстрый просмотр отчетов о работе фаервола. К этому параметру применимы дополнительные опции, но о них мы поговорим в отдельном шаге.
  • allow — задействован при добавлении разрешающих правил.
  • deny — то же самое, но применяется для запрещения.
  • reject — добавляет отбрасывающее правило.
  • limit — установка лимитирующих правил.
  • delete — удаляет указанное правило.
  • insert — вставляет правило.

Как видите, команд не так уж и много. Их точно меньше, нежели в других доступных межсетевых экранах, а запомнить синтаксис можно уже через несколько попыток взаимодействия с UFW. Осталось только разобраться с примером конфигурации, чему и будут посвящены следующие этапы сегодняшнего материала.

Шаг 2: Включение/Отключение/Сброс настроек

Мы решили выделить несколько конфигурационных моментов в один этап, поскольку они частично связаны между собой и похожи по реализации. Как вы уже знаете, UFW изначально находится в отключенном состоянии, поэтому давайте активируем его, применив всего одну команду.

  1. Откройте панель с приложениями и запустите «Терминал». Вы можете открыть консоль и другим удобным для вас способом.
  2. Переход к терминалу для дальнейшей настройки межсетевого экрана UFW в Ubuntu

  3. Прежде чем выполнять активацию, проверьте, возможно, ранее вы или другое приложение уже активировало межсетевой экран. Осуществляется это путем ввода команды sudo ufw status.
  4. Команда для проверки текущего состояния межсетевого экрана UFW в Ubuntu

  5. Введите пароль для получения прав суперпользователя и нажмите Enter. Учтите, что при этом методе ввода символы не отображаются в строке в целях безопасности.
  6. Ввод пароля суперпользователя при взаимодействии с UFW в Ubuntu

  7. В новой строке вы получите информацию о текущем состоянии UFW.
  8. Просмотр информация о текущем состоянии межсетевого экрана UFW в Ubuntu

  9. Активация фаервола выполняется через уже упомянутый выше параметр, а вся команда выглядит так: sudo ufw enable.
  10. Ввод команды для активации межсетевого экрана UFW в Ubuntu

  11. Вас уведомит о том, что брандмауэр включен и будет запускаться вместе с операционной системой.
  12. Информация об успешной активации межсетевого экрана UFW в Ubuntu

  13. Для отключения используйте sudo ufw disable.
  14. Команда для отключения функционирования межсетевого экрана UFW в Ubuntu

  15. О деактивации уведомит практически такое же сообщение.
  16. Уведомление об успешном отключении межсетевого экрана UFW в Ubuntu

  17. В будущем, если потребуется сбросить правила или это нужно сделать уже сейчас, вставьте команду sudo ufw reset и нажмите на клавишу Enter.
  18. Команда для сброса текущих настроек межсетевого экрана UFW в Ubuntu

  19. Подтвердите сброс, выбрав подходящий вариант ответа.
  20. Подтверждение сброса правил при восстановлении стандартных параметров UFW в Ubuntu

  21. Вы увидите шесть различных строк с адресами резервных копий. Можете в любой момент переместиться к этому расположению, чтобы восстановить параметры.
  22. Информация о создании резервных копий UFW в Ubuntu

Теперь вы знаете о том, какие именно команды отвечают за управление общим поведением рассматриваемого сегодня Firewall. Все остальные этапы будут нацелены исключительно на конфигурацию, а сами параметры приведены в качестве примера, то есть вы должны изменять их, отталкиваясь от своих потребностей.

Шаг 3: Установка правил по умолчанию

В обязательном порядке следует применить правила по умолчанию, которые будут относиться ко всем входящим и исходящим соединениям, не упомянутых отдельно. Это означает, что все входящие подключения, не обозначенные вручную, будут заблокированы, а исходящие при этом проходят успешно. Вся схема реализуется следующим образом:

  1. Запустите новую сессию консоли и введите команду sudo ufw default deny incoming. Активируйте ее нажатием на клавишу Enter. Если вы уже ознакомились с указанными выше правилами синтаксиса, то знаете, что это означает блокировку всех входящих соединений.
  2. Ввод команды для установки стандартных правил по умолчанию для входящих соединений UFW в Ubuntu

  3. В обязательном порядке потребуется ввести пароль суперпользователя. Вы будете его указывать каждый раз при запуске нового сеанса консоли.
  4. Ввод пароля суперпользователя при внесении изменений UFW в Ubuntu

  5. После применения команды вы будете уведомлены о том, что правило по умолчанию вступило в силу.
  6. Уведомление об успешном внесении изменений стандартных параметров входящих соединений UFW в Ubuntu

  7. Соответственно, потребуется задать вторую команду, которая будет разрешать исходящие соединения. Выглядит она так: sudo ufw default allow outgoing.
  8. Ввод команды для установки правил по умолчанию для исходящих соединений в UFW в Ubuntu

  9. Еще раз появится сообщение о применении правила.
  10. Информация о применении правил по умолчанию для исходящих соединений в UFW в Ubuntu

Теперь вы можете не беспокоиться о том, что какие-либо неизвестные входящие попытки подключения пройдут успешно и кто-то сумеет получить доступ к вашей сети. Если же вы не собираетесь блокировать абсолютно все входящие попытки соединения, пропустите указанное выше правило и переходите к созданию собственных, детально изучив следующий этап.

Шаг 4: Добавление собственных правил межсетевого экрана

Правила брандмауэра — главная настраиваемая опция, ради которой пользователи и задействуют UFW. Мы на примере инструмента OpenSSH сейчас рассмотрим пример разрешения доступа, а также не забудем и про блокировку по портам. Для начала вам необходимо запомнить дополнительные команды синтаксиса, отвечающие за добавление правил:

  • ufw allow имя_службы
  • ufw allow порт
  • ufw allow порт/протокол

После этого можете смело приступать к созданию разрешающих или запрещающих правил. Давайте по порядку разберемся с каждым типом политик.

  1. Используйте sudo ufw allow OpenSSH для открытия доступа к портам службы.
  2. Установка правила соединений для службы через ее название в UFW в Ubuntu

  3. Вы будете уведомлены о том, что правила были обновлены.
  4. Информация о применении введенных изменений в UFW в Ubuntu

  5. Открыть доступ можно и путем указания порта, а не имени службы, что выглядит так: sudo ufw allow 22.
  6. Ввод команды для внесения правил по номеру порта в UFW в Ubuntu

  7. Это же самое происходит и через порт/протокол — sudo ufw allow 22/tcp.
  8. Ввод команды для внесения правил по номеру порта и протоколу в UFW в Ubuntu

  9. После внесения правил проверьте список доступных приложений, введя sudo ufw app list. Если все было применено успешно, необходимая служба отобразится в одной из следующих строк.
  10. Просмотр списка добавленных служб в межсетевой экран UFW в Ubuntu

  11. Что касается разрешений и запрещения передачи трафика по портам, то это осуществляется путем ввода синтаксиса ufw allow направление порт. На скриншоте далее вы видите пример разрешения исходящего трафика по порту (sudo ufw allow out 80/tcp), а также запрещающую политику по этому же направлению во входящую сторону (sudo ufw deny in 80/tcp).
  12. Установка правил для направления трафика в UFW в Ubuntu

  13. Если вас интересует пример добавления политики путем ввода более широкого обозначения синтаксиса, используйте пример ufw allow proto протокол from ip_источника to ip_назначения port порт_назначения.
  14. Установка правил с расширенным синтаксисом в UFW в Ubuntu

Шаг 5: Установка правил limit

Мы вынесли тему установки правил limit в отдельный этап, поскольку об этом необходимо поговорит подробнее. Данное правило ограничивает количество подключенных IP-адресов к одному порту. Наиболее очевидное применение этого параметра — защита от атак, которые подразумевают перебор паролей. Осуществляется установка стандартной политики так:

  1. В консоли пропишите sudo ufw limit ssh/tcp и нажмите на Enter.
  2. Установка ограничений для порта при настройке межсетевого экрана UFW в Ubuntu

  3. Введите пароль от своей учетной записи суперпользователя.
  4. Ввод пароля для установки лимитов для подключения к порту UFW в Ubuntu

  5. Вы будете уведомлены о том, что обновление правил прошло успешно.
  6. Информация об обновлении правил для лимитов в UFW в Ubuntu

Точно таким же образом устанавливаются политики ограничений и на другие приложения. Используйте для этого название службы, порт или порт/протокол.

Шаг 6: Просмотр состояния UFW

Иногда юзеру требуется посмотреть текущее состояние брандмауэра не только в плане активности, но и установленных правил. Для этого существует отдельная команда, о которой мы говорили ранее, а сейчас рассмотрим ее более детально.

  1. Пропишите sudo ufw status, чтобы получить стандартные сведения.
  2. Команда для проверки текущего статуса работы экрана UFW в Ubuntu

  3. В новых строках будут отображены все установленные политики по адресам, протоколам и названиям служб. Справа показаны действия и направления.
  4. Отображение основных правил при просмотре состояния экрана UFW в Ubuntu

  5. Более детальные сведения отображаются при использовании дополнительного аргумента, а команда приобретает вид sudo ufw status verbose.
  6. Просмотр подробной информации о существующих правил в UFW в Ubuntu

  7. Список всех правил в непонятном для начинающих юзеров виде выводится через sudo ufw show raw.
  8. Просмотр всех правил в развернутом состоянии в UFW в Ubuntu

Есть и другие опции, отображающие определенные сведения о существующих правилах и состоянии межсетевого экрана. Давайте вкратце пробежимся по всем ним:

  • raw — показывает все активные правила, используя формат представления iptables.
  • builtins — включает только правила, добавленные в качестве по умолчанию.
  • before-rules — отображает политики, выполняемые перед принятием пакета из внешнего источника.
  • user-rules — соответственно, показывает добавленные пользователем политики.
  • after-rules — то же самое, что и before-rules, но включает только те правила, которые активируются уже после принятия пакетов.
  • logging-rules — показывает сведения о событиях, которые записываются в журнал.
  • listening — используется для просмотра активных (прослушиваемых) портов.
  • added — задействован при просмотре недавно добавленных правил.

В необходимый для вас момент вы можете использовать любую из этих опций, чтобы получить желаемую информацию и задействовать ее в своих целях.

Шаг 7: Удаление существующих правил

Некоторые пользователи, получив нужные сведения о существующих правилах, желают удалить некоторые из них, чтобы наладить соединение или задать новые политики. Рассматриваемый брандмауэр позволяет сделать это в любой доступный момент, что осуществляется так:

  1. Вставьте команду sudo ufw delete allow out 80/tcp. Она автоматически удалит правило, разрешающее исходящие соединения через порт/протокол 80/tcp.
  2. Удаление правила исходящего соединения в UFW в Ubuntu

  3. Вы будете уведомлены о том, что политика успешно удалена как для протокола IPv4, так и для IPv6.
  4. Информация об успешном удалении правила исходящего соединения UFW в Ubuntu

  5. Это же касается и запрещающих соединений, например, sudo ufw delete deny in 80/tcp.
  6. Удаление правила для блокировки входящих соединений по порту в UFW в Ubuntu

Используйте опции просмотра состояния, чтобы скопировать требуемые правила и удалить их так же, как это было продемонстрировано в примере.

Шаг 8: Включение логирования

Последний этап сегодняшней статьи подразумевает активацию опции, которая автоматически время от времени будет сохранять информацию о поведении UFW в отдельный файл. Необходима она далеко не всем пользователям, а применяется так:

  1. Напишите sudo ufw logging on и нажмите Enter.
  2. Команда для активации сохранения журнала событий UFW в Ubuntu

  3. Дождитесь появления уведомления о том, что журнал теперь будет сохраняться.
  4. Уведомление об успешной активации сохранения журнала событий UFW в Ubuntu

  5. Вы можете применить и другую опцию, например, sudo ufw logging medium. Существует еще low (сохраняет сведения только о заблокированных пакетах) и high (сохраняет всю информацию). Средний вариант записывает в журнал заблокированные и разрешенные пакеты.
  6. Выбор опции для включения журналирования в межсетевом экране UFW в Ubuntu

Выше вы изучили целых восемь этапов, которые используются для настройки брандмауэра UFW в операционной системе Ubuntu. Как видите, это очень простой межсетевой экран, который подойдет даже начинающим юзерам из-за легкости освоения синтаксиса. UFW еще можно смело назвать хорошей заменой стандартному iptables, если он вас не устраивает.

Как просмотреть статус UFW?

По умолчанию UFW в неактивном состоянии т.е. нет правил брандмауэра не настроен и весь трафик разрешен.Чтобы увидеть статус, введите следующую команду:

$ sudo ufw status

Настройка политики по умолчанию

По умолчанию, когда UFW активируется он блокирует весь входящий трафик на межсетевой экран / сервер.Только исходящий трафик разрешен.Вы можете просмотреть правила по умолчанию UFW, введя следующую команду:

$ grep ‘DEFAULT_’ /etc/default/ufw

Пример результата:

DEFAULT_INPUT_POLICY=”DROP” DEFAULT_OUTPUT_POLICY=”ACCEPT” DEFAULT_FORWARD_POLICY=”DROP” DEFAULT_APPLICATION_POLICY=”SKIP”

Политика по умолчанию работает хорошо для серверов и ноутбуков / рабочих станции, так как вам нужно только открыть ограниченное количество входящих портов.Это хорошая политика,  она закрывает все порты на сервере / брандмауэра, и вам нужно только открыть порты один за другим.Вы можете выполнить следующие команды, чтобы установить политику, блокировать все входящие соединения и разрешить только исходящие соединения от сервера / межсетевого экрана:

$ sudo ufw default allow outgoing $ sudo ufw default deny incoming

Создание первого правила брандмауэра, чтобы разрешить подключение к SSH (TCP-порт 22)

Введите следующую команду, чтобы разрешить SSH-соединения с сервером:

$ sudo ufw allow ssh

ИЛИ

sudo ufw allow 22/tcp

Скажем, если вы работаете в SSH на порту 2020, введите следующую команду:

$ sudo ufw allow 2020/tcp

Следующие правила открывают доступ к TCP SSH порт 22 только на 10.8.0.1 (т.е. ваш сервер SSH слущает на IP 10.8.0.1 порт 22) из любого места:

$ ufw allow proto tcp from any to 10.86.115.66 port 22

Разрешение соединения в UFW

Вы можете легко разрешить входящие соединения на порт/диапазон, название приложения, IP-адреса/подсети в UFW.
Проверьте приведенные ниже примеры.

а) Предоставление приложений по имени или номеру порта/диапазон

ufw allow service-name

или

ufw allow port/tcp

Например

ufw allow ssh or ufw allow 22/tcp ufw allow ftp or ufw allow 21/tcpsudo ufw allow 1500:2000/tcp

б) Разрешение IP-адреса/подсети

Ниже команда позволяет устанавливать соединение с конкретным IP или подсети, а также мы можем использовать определенные номера портов.
Для того, чтобы разрешить соединения с определенного IP-адреса

ufw allow from 10.200.20.45

Чтобы указать IP-адрес, который разрешен для подключения к определенному порту запуска

ufw allow from 10.200.20.45 to any port 22

Выше позволяет IP-адрес 10.200.20.45 только для подключения через SSH

Чтобы разрешить определенную подсеть IP-адресов для подключения к системе с помощью CIDR обозначения для указания сетевой маски

ufw allow from 192.168.1.0/24

Выше позволяет IP – адрес от 192.168.1 до 192.168.1.254 для подключения к системе
Вы можете также указать порт назначения подсети

ufw allow from 192.168.1.0/24 to any port 22

Это означает, что IP-адрес от 192.168.1 до 192.168.1.254 может подключаться к системе через порт 22, который является SSH.

в) Разрешить именем интерфейса

Если нам нужно разрешить соединения через имя интерфейса его можно указать так:

ufw allow in on eth0 to any port 80

Как запретить соединения в UFW

По умолчанию UFW настроен запрещать все входящие соединения.

а) IP-адрес/подсеть

Если мы хотим заблокировать некоторые конкретные адреса IP-доступа, то мы можем сделать это с помощью следующей команды:

ufw deny from 192.168.1.15

Это будет блокировать все входящие соединения от хоста с IP-адресом 192.168.1.15

Далее заблокируем всю подсеть:

ufw deny from 150.165.125.0/24

Это будет блокировать все соединения, поступающие из этой подсети.

б) Запретить порты и приложения

Запретить порт или услугу

ufw deny 80/tcp

или

ufw deny httpsudo ufw deny 1500:2000/tcp * Запрет диапазонов портов *

Удаление и получение номеров правил

Когда вы добавляете много правил, вы можете лучше отслеживать их, просматривая их номера. Номера можно получить с помощью следующей команды:

ufw status numbered

Вывод

ufw status numbered Status: active To Action From — —— —- [ 1] 22/tcp ALLOW IN Anywhere [ 2] 22 ALLOW IN Anywhere [ 3] 80/tcp ALLOW IN Anywhere [ 4] 53/tcp ALLOW IN Anywhere [ 5] 22/tcp (v6) ALLOW IN Anywhere (v6) [ 6] 22 (v6) ALLOW IN Anywhere (v6) [ 7] 80/tcp (v6) ALLOW IN Anywhere (v6) [ 8] 53/tcp (v6) ALLOW IN Anywhere (v6)

Допустим, мы хотим удалить правила номер 2. Мы делаем это следующей командой:

ufw delete 2

Заметка :

После удаления второго правила в брандмауэре, правило 3 будет теперь новое правило 2. Таким образом, если вы хотите удалить текущее правило 3, вы будете удалять, используя номер 2.

ufw delete allow http

Сброс правил

Если вы недовольны существующим правилам, и вы хотите, чтобы начать все сначала, вы можете сделать это, запустив

ufw reset

Вход и перезагрузка

Чтобы включить использование протоколирования следующей команды:

ufw logging on

Если вы хотите отключить ведение журнала по какой-то причине (не рекомендуется), вы можете использовать следующую команду:

sudo ufw logging off

Журналы по умолчанию находятся в файле /var/log/ufw.log. Чтобы увидеть их в режиме реального времени, используйте -f, как это:

tail -f /var/log/ufw.log /pre> You will see all actions of firewall in that file. If you need to reload firewall for some reason, because you changed some config files manually, use following command. ufw reload

Если вы хотите увидеть правила, которые были недавно добавлены

ufw show added

Файлы конфигурации UFW

Для большинства сценариев, вы можете использовать терминальные команды, но в некоторых случаях, может вы захотите отредактировать конфигурационные файлы напрямую. В UFW есть несколько конфигурационных файлов, а именно:

/etc/ufw/before.rules/etc/ufw/before6.rules

Эти два файла содержат правила, которые вычисляются перед всеми правилами, которые вы добавили в UFW. Так что если вы хотите, чтобы некоторые правила выполнялись первыми. Первый файл для ipv4 и второй один для v6

etc/ufw/after.rules/etc/ufw/after6.rules

Они оцениваются после правил команды ufw. Они хороши для использования, если вы хотите переопределить какое-то правило и применить его независимо. Опять же, два файла, для двух версий протокола IP, которые в настоящее время используются.

/etc/default/ufw

Здесь у нас есть модули ядра, использующиеся в ufw, а также другие параметры. Вы можете изменить конфигурационные файлы только как root, и вы можете использовать любой текстовый редактор. который Вам нравится.

Избегайте добавления повторяющихся правил

Далее рассмотрим механизм против повторяющихся правил. Сначала мы откроем порт 101

sudo ufw allow 100

Обратите внимание, что команда без протокола, как и выше открывает оба UDP и TCP-порт. Так давайте выполним ту же команду еще раз, чтобы увидеть, что происходит

ufw allow 100

Вывод

Skipping adding existing rule Skipping adding existing rule (v6)

Это не позволяет нам добавить дубликат правила. Это хорошо, но есть еще шанс, что мы можем добавить дубликат правила этой серии команд:

ufw allow 101/udp ufw allow 101/tcp

Указав TCP и UDP порт 101, мы все еще можем добавить открытый порт 101 для всех протоколов и это дубликат правила, как порт 101 открыт дважды, один раз для каждого протокола и один раз для всех из них.

ufw allow 101

Это оставляет место для ошибок, и это, как правило, не является хорошей практикой. Нам нужно отменить все три команды с помощью команды ufw delete, если мы хотим вернуться к значению по умолчанию для порта 101.

Для закрытия некоторого порта, вы запускаете некоторые команды, просто вместо того, чтобы разрешить, введите deny.

В этой статье мы рассмотрели использование UFW, который является несложным брандмауэром, используемым для разрешения или ограничения трафика. Это очень мощный брандмауэр для регулирования трафика в вашей системе. Не стесняйтесь опробовать команды в вашей системе.

 


[spoiler title=”Источники”]

  • https://community.vscale.io/hc/ru/community/posts/208348529-%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-%D1%84%D0%B0%D0%B5%D1%80%D0%B2%D0%BE%D0%BB%D0%B0-%D0%B2-Ubuntu-%D1%81-%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E-%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B-UFW
  • https://serverspace.by/support/help/ispolzovanie-utility-ufw-na-linux/
  • https://lumpics.ru/configuring-ufw-in-ubuntu/
  • https://system-admins.ru/kak-nastroit-brandmauer-ufw-na-ubuntu-16-04-lts/
  • https://andreyex.ru/ubuntu/kak-nastroit-brandmauer-ufw-na-ubuntu-18-04/


[/spoiler]


2020-07-27T15:39:49
Linux

Монтирование диска в Linux – команда mount



























Rate this post

 

Монтирование – это подключение диска, раздела, каталога или файла в корневую систему Linux.

Как уже сказано было выше, в ОС «Линукс» имеется общая корневая система. Именно к ней подключаются все устройства и ресурсы, которыми пользуется владелец ПК. Если углубиться в эту сферу более подробно, Windows выполняет процедуры аналогично, но все процесс скрыты от пользователя.

После монтирования определённый раздел становится частью корневой системы, которая всяческими способами пытается сделать свою работу максимально прозрачной. К примеру, после монтирования оперативной памяти или удаленной системной папки пользователь может изучить ее в файловом менеджере. Допускается работа с такими разделами. Она будет аналогична работе, которая касается локального диска.

1. Описание утилиты.

Mount — утилита командной строки в UNIX-подобных операционных системах. Применяется для монтирования файловых систем.

Фактически смонтированный раздел становится частью корневой файловой системы и система старается сделать работу со всеми разделами, независимо от их файловых систем, прозрачной. Это значит, что если вы приделаете участок оперативной памяти или удаленную сетевую папку, то сможете работать с ней в файловом менеджере точно так же, как и с локальным диском.

Например, вы хотите примонтировать флешку. Вы даете системе команду подключить ее в папку /run/media/имя_пользователя/UUID_флешки/. Система определяет файловую систему устройства, а затем, используя драйвера ядра подключает ее к указанной папке. Дальше вам остается работать с той папкой, как с любой другой. Больше ни о чем думать не нужно. Когда надумаете извлечь флешку, ее нужно отмонтировать.

2. Общий синтаксис.

Для монтирования в CentOS 7 используется команда mount.

Рассмотрим ее параметры:

# mount /файл_устройства /папка_назначения

Или расширенный вариант:

# mount опции -t файловая_система -o опции_монтирования /файл_устройства /папка_назначения

Опции задают различные дополнительные особенности работы утилиты. Опция -t необязательна, но она позволяет задать файловую систему, которая будет использована и иногда это очень полезно. С помощью опции -o вы можете задать различные параметры монтирования, например, монтировать только для чтения и так далее. Последних два параметра — это файл устройства, например, /dev/sda1 и папка назначения, например, /mnt.

Перед тем как перейти к рассмотрению примеров работы утилитой, давайте рассмотрим ее основные опции:

  • -V — вывести версию утилиты;
  • -h — вывести справку;
  • -v — подробный режим;
  • -a, –all — примонтировать все устройства, описанные в fstab;
  • -F, –fork — создавать отдельный экземпляр mount для каждого отдельного раздела;
  • -f, –fake — не выполнять никаких действий, а только посмотреть что собирается делать утилита;
  • -n, –no-mtab — не записывать данные о монтировании в /etc/mtab;
  • -l, –show-labels — добавить метку диска к точке монтирования;
  • -c — использовать только абсолютные пути;
  • -r, –read-only — монтировать раздел только для чтения;
  • -w, –rw — монтировать для чтения и записи;
  • -L, –label — монтировать раздел по метке;
  • -U, –uuid — монтировать раздел по UUID;
  • -T, –fstab — использовать альтернативный fstab;
  • -B, –bind — монтировать локальную папку;
  • -R, –rbind — перемонтировать локальную папку.

Вывод списка смонтированных файловых систем(ФС)

При выполнении без аргументов команда mount выведет все подключенные в данный момент ФС:

$ mount

По умолчанию результат будет содержать все ФС, в том числе виртуальные, такие как cgroup, sysfs и т. д. Каждая строка содержит информацию об имени устройства, директории, в которой оно смонтировано, типе и опциях монтирования в следующей форме:

имя_устройства on директория type тип_файловой_системы (опции)

Для отображения только ФС определенного типа используется опция -t. Например, так можно отобразить только разделы ext4:

$mount -t ext4

Монтирование файловой системы

Для подключения файловой системы к конкретному местоположению (точке монтирования) команда mount используется в следующей форме:

mount [опции…] имя_устройства директория

После подключения точка монтирования становится корневой директорией смонтированной ФС. Например, смонтировать жесткий диск /dev/sdb1 в директорию /mnt/media можно следующим образом:

$ sudo mount /dev/sdb1 /mnt/media

Обычно при монтировании устройства с распространенной ФС, например, ext4 или xfs, команда mount автоматически определяет ее тип. Однако, некоторые ФС не распознаются. Их тип нужно указывать в явном виде. Для этого используется опция -t:

mount -t тип имя_устройства директория

Чтобы указать дополнительные опции монтирования, используется флаг -o:

mount -o опции_монтирования имя_устройства директория

Можно указать несколько опций, разделенных запятыми (после запятых не должно быть пробелов). Ниже предоставлены основные опции команды

-V — вывести версию утилиты;
-h — вывести справку;
-v — подробный режим;
-a, —all — примонтировать все устройства, описанные в fstab;
-F, —fork — создавать отдельный экземпляр mount для каждого отдельного раздела;
-f, —fake — не выполнять никаких действий, а только посмотреть что собирается делать утилита;
-n, —no-mtab — не записывать данные о монтировании в /etc/mtab;
-l, —show-labels — добавить метку диска к точке монтирования;
-c — использовать только абсолютные пути;
-r, —read-only — монтировать раздел только для чтения;
-w, —rw — монтировать для чтения и записи;
-L, —label — монтировать раздел по метке;
-U, —uuid — монтировать раздел по UUID;
-T, —fstab — использовать альтернативный fstab;
-B, —bind — монтировать локальную папку;
-R, —rbind — перемонтировать локальную папку.

Полный список опций можно получить, выполнив команду man mount.

Монтирование разделов с помощью mount

Монтирование разделов с помощью mount выполняется очень просто. Фактически в большинстве случаев будет достаточно упрощенной версии команды. Например, смонтируем раздел /dev/sdb6 в папку /mnt:

sudo mount /dev/sdb6 /mnt/

В большинстве случаев вы будете вынуждены выполнять команду mount с правами суперпользователя, если обратное не указано в fstab (опция монтирования users). Вы можете посмотреть информацию о процессе монтирования добавив опцию -v:

sudo mount -v /dev/sdb6 /mnt/

Если нужно, вы можете указать файловую систему с помощью опции -t:

sudo mount -v -t ext4 /dev/sdb6 /mnt

Если необходимо примонтировать файловую систему только для чтения, то вы можете использовать опцию -r или опцию монтирования -o ro, результат будет одинаковым:

sudo mount -t ext4 -r /dev/sdb6 /mnt
$ sudo mount -t ext4 -o ro /dev/sdb6 /mnt

Вы можете использовать и другие опции чтобы выполнить монтирование разделов linux, например, указать, что на этом разделе нельзя выполнять программы:

sudo mount -t ext4 -o noexec /dev/sdb6 /mnt

Обратите внимание, что вы не можете использовать опции uid, gid, fmask для файловых систем ext. Они поддерживаются только в FAT, vFAT, exFAT.

Вы можете использовать не только имена устройств чтобы выполнить монтирование диска в linux. Для этого можно применять UUID или метки, например, монтирование с помощью UUID:

sudo mount –uuid=”b386d309-05c1-42c8-8364-8d37270b69e0″ /mnt

Посмотреть uuid для ваших разделов можно с помощью команды:

sudu blkid

Точно так же вы можете использовать метки. Команда монтирования диска linux будет выглядеть так:

sudo mount –label=”home” /mnt/

Вы можете примонтировать одну папку в другую, для этого используйте опцию –bind

sudo mount –bind /mnt/ /media/

Возможно, не только монтирование разделов linux, но и монтирование файлов, если они содержат файловую систему, например, образов дисков. Монтирование образа диска linux работает точно так же:

sudo mount ~/file.iso /mnt

Посмотреть список всех примонтированных устройств можно просто выполнив mount без параметров:

mount

4. Список смонтированного.

Посмотреть список всех примонтированных устройств можно просто выполнив mount без параметров:

# mount

Примеры использования mount

Давайте рассмотрим несколько примеров использования утилиты. Как правило для монтирования нужно выполнить всего два действия

  1. Создать точку монтирования
  2. Примонтировать файловую систему

Монтирование USB-накопителя/жесткого диска

В большинстве современных дистрибутивов Linux, например, Ubuntu, USB-накопители автоматически монтируются при подключении, но иногда может потребоваться ручное монтирование устройства. Чтобы смонтировать USB-накопитель, выполните следующие действия.

Создайте точку монтирования

sudo mkdir -p /media/usb

Если USB-накопитель использует устройство /dev/sdd1, его можно смонтировать в директорию /media/usb следующей командой:

sudo mount /dev/sdd1 /media/usb

Для поиска устройства и типа файловой системы можно воспользоваться любой из следующих команд:

  • fdisk -l
  • ls -l /dev/disk/by-id/usb*
  • dmesg
  • lsblk

Монтирование файлов ISO

Для монтирования файла ISO используется петлевое (loop) устройство — специальное виртуальное устройство, которое позволяет осуществлять доступ к файлу как к блочному устройству.

Сначала нужно создать точку монтирования в любой желаемой директории:

sudo mkdir /media/iso

Смонтируйте файл ISO следующей командой:

sudo mount /path/to/image.iso /mnt/iso -o loop

Не забудьте заменить /path/to/image.iso на путь к вашему файлу ISO.

Монтирование NFS

Для монтирования системы NFS требуется установить клиент NFS. Установка клиента NFS в Ubuntu и Debian:

sudo apt install nfs-common

Установка клиента NFS в CentOS и Fedora:

sudo yum install nfs-utils

Создайте директорию, которая будет точкой монтирования удаленной файловой системы:

sudo mkdir /media/nfs

Обычно требуется автоматическое монтирование удаленной директории NFS при загрузке. Для этого нужно изменить файл конфигурации /etc/fstab. Откройте его в любом текстовом редакторе, например:

sudo nano /etc/fstab

Добавьте в файл следующую строку, заменив сервер:/директория на имя или IP-адрес сервера NFS и экспортируемую директорию:

#       

             сервер:/директория    /media/nfs nfs      defaults    0       0

Смонтируйте ресурс NFS следующей командой:

sudo mount /mnt/nfs

или

sudo mount -a

5. Размонтирование разделов.

Когда вы хотите завершить работу с устройством, особенно с флешкой, его нужно размонтировать. Для этого существует утилита umount. В качестве параметров она принимает точку монтирования или устройство.

Например:

# sudo umount /mnt

Теперь ваше устройство не смонтировано, но иногда может возникнуть ошибка размонтирования.

Система сообщит, что устройство занято:

umount: /mnt: target is busy.

Проблему можно решить закрыв все программы, которые могут использовать любой файл в этой папке. Какие именно это программы вы можете узнать с помощью команды lsof:

# lsof -w /mnt
# lsof -w /dev/sdb6

Здесь вы видите всю необходимую информацию, чтобы понять что происходит и что с этим делать. Утилита вывела название программы, ее PID, и даже файл, с которым она работает. Вы можете завершить все программы, а потом снова повторить попытку или используйте опцию -l, файловая система будет отключена немедленно, несмотря на то, что она занята:

# sudo umount -l /mnt

Пользовательские пространства имен

В листинге 1 приведена часть кода модуля PAM (pluggable authentication module, подключаемого модуля авторизации), который предоставляет каждому пользователю, кроме root, обособленное пространство имен. Если директория /tmp/priv/USER существует, то она будет смонтирована с помощью bind на директорию /tmp в пользовательском пространстве имен.

Каждому пользователю – свой root

Настройка системы для организации отдельных каталогов root для каждого пользователя

Вы узнали в деталях, как можно реализовать частные пользовательские файловые системы, включая действия, которые необходимо выполнить при входе пользователя в систему. В данном разделе вы найдете более полные скрипты, используемые при создании учетных записей пользователей и во время загрузки системы.

В листинге 4 показан пример скрипта, используемого при создании любой учетной записи пользователя.


[spoiler title=”Источники”]

  • https://www.vseprolinux.ru/mount
  • https://hamsterden.ru/mount-umount/
  • https://ITProffi.ru/podklyuchenie-fajlovyh-sistem-komanda-mount-v-linux/
  • https://losst.ru/montirovanie-diska-v-linux
  • https://www.ibm.com/developerworks/ru/library/l-mount-namespaces/index.html


[/spoiler]


2020-07-27T15:39:49
Linux