mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-25 23:32:37 +03:00
add homework 3.1
This commit is contained in:
@@ -9,3 +9,4 @@
|
|||||||
* [2.2 Основы Git](/src/homework/2.2)
|
* [2.2 Основы Git](/src/homework/2.2)
|
||||||
* [2.3 Ветвления в Git](/src/homework/2.3)
|
* [2.3 Ветвления в Git](/src/homework/2.3)
|
||||||
* [2.4 Ветвления в Git](/src/homework/2.4)
|
* [2.4 Ветвления в Git](/src/homework/2.4)
|
||||||
|
* [3.1 Работа в терминале, лекция 1](/src/homework/3.1)
|
||||||
|
|||||||
68
src/homework/3.1/readme.md
Normal file
68
src/homework/3.1/readme.md
Normal 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`?
|
||||||
|
|
||||||
|
Ничем, это одна и та же команда.
|
||||||
|
|
||||||
Reference in New Issue
Block a user