add homework 3.1

This commit is contained in:
2022-02-03 19:23:15 +07:00
parent e8132417ba
commit 37a74a2cf9
2 changed files with 69 additions and 0 deletions

View File

@@ -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`?
Ничем, это одна и та же команда.