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.3 Ветвления в Git](/src/homework/2.3)
|
||||
* [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