mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-25 15:22:37 +03:00
add homework 4.1
This commit is contained in:
@@ -18,3 +18,4 @@
|
||||
* [3.7. Компьютерные сети, лекция 2](/src/homework/3.7)
|
||||
* [3.8. Компьютерные сети, лекция 3](/src/homework/3.8)
|
||||
* [3.9. Элементы безопасности информационных систем](/src/homework/3.9)
|
||||
* [4.1. Командная оболочка Bash: Практические навыки](/src/homework/4.1/)
|
||||
|
||||
67
src/homework/4.1/readme.md
Normal file
67
src/homework/4.1/readme.md
Normal file
@@ -0,0 +1,67 @@
|
||||
Выполнение [домашнего задания](https://github.com/netology-code/sysadm-homeworks/blob/devsys10/04-script-01-bash/README.md)
|
||||
по теме "4.1. Командная оболочка Bash: Практические навыки".
|
||||
|
||||
## Q/A
|
||||
|
||||
## Обязательная задача 1
|
||||
|
||||
Есть скрипт:
|
||||
```bash
|
||||
a=1
|
||||
b=2
|
||||
c=a+b
|
||||
d=$a+$b
|
||||
e=$(($a+$b))
|
||||
```
|
||||
|
||||
Какие значения переменным c,d,e будут присвоены? Почему?
|
||||
|
||||
| Переменная | Значение | Обоснование |
|
||||
| ------------- | ------------- | ------------- |
|
||||
| `c` | ??? | ??? |
|
||||
| `d` | ??? | ??? |
|
||||
| `e` | ??? | ??? |
|
||||
|
||||
|
||||
## Обязательная задача 2
|
||||
На нашем локальном сервере упал сервис и мы написали скрипт, который постоянно проверяет его доступность, записывая дату проверок до тех пор, пока сервис не станет доступным (после чего скрипт должен завершиться). В скрипте допущена ошибка, из-за которой выполнение не может завершиться, при этом место на Жёстком Диске постоянно уменьшается. Что необходимо сделать, чтобы его исправить:
|
||||
```bash
|
||||
while ((1==1)
|
||||
do
|
||||
curl https://localhost:4757
|
||||
if (($? != 0))
|
||||
then
|
||||
date >> curl.log
|
||||
fi
|
||||
done
|
||||
```
|
||||
|
||||
### Ваш скрипт:
|
||||
```bash
|
||||
???
|
||||
```
|
||||
|
||||
## Обязательная задача 3
|
||||
Необходимо написать скрипт, который проверяет доступность трёх IP: `192.168.0.1`, `173.194.222.113`, `87.250.250.242` по `80` порту и записывает результат в файл `log`. Проверять доступность необходимо пять раз для каждого узла.
|
||||
|
||||
### Ваш скрипт:
|
||||
```bash
|
||||
???
|
||||
```
|
||||
|
||||
## Обязательная задача 4
|
||||
Необходимо дописать скрипт из предыдущего задания так, чтобы он выполнялся до тех пор, пока один из узлов не окажется недоступным. Если любой из узлов недоступен - IP этого узла пишется в файл error, скрипт прерывается.
|
||||
|
||||
### Ваш скрипт:
|
||||
```bash
|
||||
???
|
||||
```
|
||||
|
||||
## Дополнительное задание (со звездочкой*) - необязательно к выполнению
|
||||
|
||||
Мы хотим, чтобы у нас были красивые сообщения для коммитов в репозиторий. Для этого нужно написать локальный хук для git, который будет проверять, что сообщение в коммите содержит код текущего задания в квадратных скобках и количество символов в сообщении не превышает 30. Пример сообщения: \[04-script-01-bash\] сломал хук.
|
||||
|
||||
### Ваш скрипт:
|
||||
```bash
|
||||
???
|
||||
```
|
||||
Reference in New Issue
Block a user