add homework 4.1

This commit is contained in:
2022-04-04 10:10:53 +07:00
parent 095dd4d5e7
commit 7ff630ea1b
2 changed files with 68 additions and 0 deletions

View File

@@ -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/)

View 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
???
```