Олимпиада для unix администраторов (1 тур)


1. С помощью каких комбинаций клавиш в текстовых редакторах vi или vim скопировать в буфер 4 строки, начиная со строки, где находится курсор?
Ответ:  способов много,  навскидку можно ответить, что это можно сделать с помощью:  4yy, либо y4y, либо 4ddkp, либо v курсор y, либо 4+Shift+y

2. Вы в bash запустили команду echo $[5/2]. Какой будет результат?
Ответ:  ну тут все просто, ответ  2

3. В bash вы хотите сравнить два числа.  Какой оператор сравнения нужно применить, если нужно узнать,  что первое значение больше или равно второму?
Ответ:   Обычно применяют  -ge

4. Вам нужно запустить web-сервер Apache на порту 3128. С помощью  какой директивы в конфигурационном файле это можно сделать?
Ответ:  Listen  или Port

5. Как в Linux узнать текущий рабочий каталог процесса с pid = 4556?
Ответ:  Его можно найти в файлике /proc/4556/cwd


6. Как в Unix посмотреть какие файлы или устройства  использует процесс с pid = 85003?
Вообще этот вопрос вызвал много споров. Мы принимали следующие ответы:

    * Для Linux: никак или в ответе должно было быть упоминание, что это можно сделать с помощью дополнительной настройки ядра, например, sysctl -w kernel.pid_max = (число > 85003). По умолчанию значение переменной kernel.pid_max = 32768;
    * Для FreeBSD: fstat -p 85003 или установить lsof, а потом посмотреть с помощью lsof -p 85003. Утилиты lsof и procfs по умолчанию не установлены;
    * Для Solaris мы принимали ответ, что можно сделать с помощью утилиты pfiles.

Мы решили дать фору тем игрокам, которые за 2 минуты успели дать развернутый ответ на этот вопрос.

7. Какие из перечисленных типов хранилищ в MySQL  поддерживают транзакционность:  MyISAM, Memory, InnoDB, Archive, NDB, CSV?
Ответ:  Ну тут, конечно, все вспомнили InnoDB, но и NDB тоже поддерживает транзакции.

8. Как в PostgreSQL очистить файлы баз данных от уже удалённых записей?
Ответ:   Вот уже много лет,  любимой командой администраторов PostgreSQL  является VACUUM FULL.

9. Как очистить лог-файл /var/log/log, открытый  работающим процессом?
Ответ:  Тут как и в пером вопросе тоже сразу можно привести массу вариантов:  $echo –n > /var/log/log  или $ > /var/log/log или $ cat /dev/null > /var/log/log .

10. Вы зашли на сервер с Linux с помощью ssh. Как перегрузить этот сервер по sysrq-b?
Ответ:  вот такой командой - $ echo b > /proc/sysrq-trigger

11. Как подсчитать количество строк в текстовом файле file.txt?
Ответ:   Ну тут тоже самый привычный и распространенный сценарий у васех администраторов - $wc -l file.txt  .

12. Как найти подстроку  в файле, сжатом с помощью gzip?
Ответ:   Тоже вот прям сходу пара вариантов:  $zgrep  stroka  file или $zcat  file | grep stroka

13. Какой утилитой в Linux можно проверить состояние и включить/выключить кеширование на запись для SAS/SATA устройства (диска)?
Ответ:   hdparm в случае SATA или  sdparm  в случае SAS/SATA.

14. Как посмотреть версию и возможные параметры модуля e1000e для загруженного в настоящий момент ядра в Linux?
Ответ:  modinfo e1000e

15. Как в командной строке bash повторить команду, которую вы набирали ранее?
Ответ:  Тоже навскидку 3 варианта: Ctrl+r или !- или курсорные клавиши

16. Какой командой в Linux можно разрешить dump corefile-ов в текущей сессии без ограничения по размеру?
Ответ:  ulimit -c unlimited

17. Как записать 100 пакетов на интерфейсе eth0 в файл mytrace.raw, не ограничивая длину захваченного (captured) пакета?
Ответ:  tcpdump -i eth0 -c 100 -s 0 -w mytrace.raw

18. Как изменить процент зарезервированного для root-а места на файловой системе ext3 до 2%, смонтированной в /filesystem в Linux?
Ответ:   tune2fs -m2 /filesystem

19. Как в Linux смонтировать файловую систему tmpfs размеров 2Гб в /tmpfs?
Ответ:   mount none /tmpfs -t tmpfs -o size=2g

20. Как посмотреть таблицы NAT в «файрволе» на сервере с Linux (ядро 2.6.X)?
Ответ:  iptables -L -t nat

21. Какой утилитой в Linux можно посмотреть, какие системные вызовы делает работающий процесс?
Ответ:  Любимой утилитой всех системных администраторов - strace

22. Как посмотреть процессы пользователя vasya, отсортировав их по resident size в порядке убывания?
Ответ:  Вообще вариантов ответа очень много, но вот, например один из них: ps nu -U vasya --sort -rss

23. Как смонтировать каталог /var/log/mydaemon в /mydaemon?
Ответ:  mount /var/log/mydaemon /mydaemon -o bind

24. Какое максимальное число адресов можно использовать в ipv4 сети /26?
Ответ:  62. Потому что 2 адреса из 64: Широковещательный адрес и Адрес сети – являются служебными.

25. Как затереть нулями первые 64Мб диска /dev/sda?
Ответ:  dd if=/dev/zero of=/dev/sda bs=64M count=1 или dd if=/dev/zero of=/dev/sda bs=1M count=64

26. Какова последовательность пакетов tcp при установке соединения (укажите типы пакетов)?
Ответ:

    * хост A посылает хосту B пакет с установленным битом SYN и 32-битным значением ISSa в поле Sequence Number
    * хост B отвечает хосту A пакетом с установленными битами SYN и ACK, 32-битным значением ISSb в поле Sequence Number, и значением (ISSa+1) в поле ACK
    * хост A отвечает хосту B пакетом с установленным битом ACK, значением (ISSa+1) в поле Sequence Number, и значением (ISSb+1) в поле ACK.

27. Какой параметр ядра отвечает за максимальный размер памяти, доступный для выделения процессам в Linux?
Ответ:  vm.overcommit_ratio

28. Как в Linux сделать так, чтобы core-файлы сохранялись c именем /var/tmp/core.{pid}?
Ответ:   sysctl -w kernel.core_pattern="/var/tmp/core.%p"

29. Как одной командой «сбросить» все переменные окружения (сделать «пустое» окружение) в текущей сессии в Linux?
Ответ:  env -i  

30. Как включить jumbo-frames на сетевом интерфейсе eth0?
Ответ:   ifconfig eth0 mtu 9000

Комментариев нет:

Отправить комментарий