From 37a74a2cf9fcc0723c6bd82829d941aec108a21c Mon Sep 17 00:00:00 2001 From: dannc Date: Thu, 3 Feb 2022 19:23:15 +0700 Subject: [PATCH] add homework 3.1 --- readme.md | 1 + src/homework/3.1/readme.md | 68 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 src/homework/3.1/readme.md diff --git a/readme.md b/readme.md index 71f7a03..08db62b 100644 --- a/readme.md +++ b/readme.md @@ -9,3 +9,4 @@ * [2.2 Основы Git](/src/homework/2.2) * [2.3 Ветвления в Git](/src/homework/2.3) * [2.4 Ветвления в Git](/src/homework/2.4) +* [3.1 Работа в терминале, лекция 1](/src/homework/3.1) diff --git a/src/homework/3.1/readme.md b/src/homework/3.1/readme.md new file mode 100644 index 0000000..7d03827 --- /dev/null +++ b/src/homework/3.1/readme.md @@ -0,0 +1,68 @@ +Выполнение [домашнего задания](https://github.com/netology-code/sysadm-homeworks/blob/devsys10/03-sysadmin-01-terminal/README.md) по теме "Работа в терминале, лекция 1". + +## Q/A + +1. Какие ресурсы выделены для виртуальной машины по умолчанию? + +``` +RAM: 1024 MB +CPU: 2 +VRAM: 4 MB +HDD: 64GB +``` + +2. Как добавить оперативной памяти или ресурсов процессора виртуальной машине? + +В конфигурацию `Vargrantfile` необходимо добавить следующие строки: +``` +config.vm.provider "virtualbox" do |v| + v.memory = 2048 + v.cpus = 4 +end +``` + +3. `man bash` + 1. какой переменной можно задать длину журнала history, и на какой строчке manual это описывается? + + При помощи проставления переменной `HISTSIZE`. Описание находится на 591 строке мануала. + Показать строки возможно при помощи указания кастомного пейджера для команды `man`: + ```shell + man --pager="less -N" bash + ``` + + 2. что делает директива `ignoreboth` в bash? + + Значение `ignoreboth` проставляется для переменной `HISTCONTROL` и является сокращением для значений `ignorespace` и `ignoredups`. + Конкретно это означает, что команды, которые начинаются с пробела или совпадают с предыдущей записью в истории, не попадут в файл истории `bash`. + + 3. В каких сценариях использования применимы скобки `{}` и на какой строчке man bash это описано? + + Фигурные скобки используются при написании сложных команд (`Compound Commands`). Про это написано на 196 строке мануала. + + 4. Как создать однократным вызовом touch 100000 файлов? Получится ли аналогичным образом создать 300000? Если нет, то почему? + + Создать множество файлов можно написанием сложной команды `touch {1..100000}`. Создать более `ARG_MAX` файлов в рамках одного запуска не получится. + На текущей версии linux данная переменная равна 2097152. + + 5. Что делает конструкция `[[ -d /tmp ]]` + + Возвращает 1, если `/tmp` существует и это директория, или 0, в ином случае. + + 6. Добейтесь в выводе type -a bash в виртуальной машине наличия первым пунктом в списке. + + Подобного можно добиться, сделав три шага: + * Создать новую директорию `mkdir /tmp/new_path_directory` + * Сделать символическую ссылку для баша `ln -s /usr/bin/bash /tmp/new_path_directory/bash` + * Изменив переменную окружения `PATH` с помощью `export PATH=/tmp/new_path_directory:${PATH}` + + Таким образом вывод команды будет таким, как в задаче: + ```shell + type -a bash + bash is /tmp/new_path_directory/bash + bash is /usr/bin/bash + bash is /bin/bash + ``` + 7. Чем отличается планирование команд с помощью `batch` и `at`? + + Ничем, это одна и та же команда. + \ No newline at end of file