25 вопросов задаваемых на собеседовании системным администраторам Linux

в 13:21, , рубрики: linux, ит-инфраструктура, Настройка Linux, системное администрирование

Перевод Андрей А. Породько. Оригинал Pradeep Kumar · March 21, 2016 (http://www.linuxtechi.com/25-interview-questions-for-linux-administrator-job/).
Надеюсь кому-нибудь пригодится. Меня спрашивали про ps, top и overcommitment в kvm ;-)
Внимание! Много букв и нет картинок.
От переводчика. Пожалуйста, не пишите в комментариях что что-то можно сделать по-другому — это перевод. Когда вам зададут на интервью в RedHat подобный вопрос, у вас будет возможность проявить себя ;-)

Вопрос:1 Что такое Kdump и для чего предназначен?

Ответ:

Kdump это механизм сохранения дампов при крахе системы или панике ядра. Дампы могут быть сохранены как на удаленной машине, так и на локальном диске. Анализируя дампы мы можем найти корневую причину отказа системы или паники ядра. В случае, если у вас есть платная поддержка ОС, вы можете отправить файл vmcore поставщику для дальнейшего анализа.

Вопрос:2 Как узнать когда файловая система проверялась последний раз?

Ответ:

При помощи команды tune2fs мы можем проверить, когда файловая система последний раз сканировалась на предмет ошибок.
# tune2fs -l <Device_Name> | grep «Last checked»

Вопрос:3 Как изменить срок действия пароля пользователя без изменения самого пароля?

Ответ:

Команда chage позволяет задать дату (срок) действия пароля для локальной учетной записи пользователя. Синтаксис команды такой:
# chage -d <date-in-yy-mm-dd> <User_Name>

Вопрос:4 Как заставить fsck проверить файловую систему ОС при следующей перезагрузке?

Ответ:

Для принудительного запуска утилиты fsck для проверки конкретной файловой системы при следующей перезагрузке, нужно создать пустой файл с именем 'forcefsck' в корне этой файловой системы. Например, если мы хотим проверить файловую системы смонтированную в каталог /home, команду будет выглядеть примерно так:
# cd /home; touch forcefsck; reboot

Вопрос:5 Каким инструментом анализируются дампы краха системы или файл vmcore в ОС CentOS 7 & RHEL 7?

Ответ:

Утилита или команда crash операционных систем CentOS 7 и RHEL 7 позволяет проводить анализ файлов дампов.

Вопрос:6 Как установить все патчи за исключением патчей ядра в CentOS и RHEL?

Ответ:

Параметр '–exclude=kernel*' команды yum позволяет установить все патчи кроме предназначенных для ядра. Например так:
# yum update –exclude=kernel*

Если добавить следующую строку в файл '/etc/yum.conf' мы предотвратим любые обновления ядра навсегда:
exclude=kernel*

Вопрос:7 Как проверить, что вы работаете на физическом или виртуальном сервере?

Ответ:
С помощью команды dmidecode мы можем проверить платформу сервера. Например так:
# dmidecode -t system | grep «Product Name»
Product Name: VMware Virtual Platform

Вопрос:8 Что такое automounter и для чего он служит?

Ответ:

Automounter это сервис в операционной системе Linux которые используется для монтирования удаленной или локальной файловой системы автоматически в момент обращения к ней. Когда файловая система неактивна в течение определенного периода времени сервис automounter (autofs) автоматически размонтирует ее. Основная польза от autofs заключается в том, что мы не должны монтировать файловую систему каждый раз когда она нам нужна, automounter сделает это за нас при обращении к этой файловой системе.

Вопрос:9 Как принудить пользователя изменить пароль при регистрации?

Ответ:

Команда 'chage' позволяет задать время окончания действия пользовательского пароля, например «chage -d 0 <user_name>». После этого, при попытке регистрации пользователя в системе (в том числе и по ssh), он будет получать предупреждение «Срок действия вашего пароля истек. Вы должны изменить ваш пароль и войти заново».

Вопрос:10 Как узнать как завершилась последняя команда — успешно или нет?

Ответ:

Можно получить статус завершения последней команды из переменной среды '$?', в ней хранится код завершения. Например:
# ls -l /var/
# echo $?
0
# ls -l /var/wwer
# echo $?
2
Код завершения 0 означает что команды выполнена успешно, любой отличное от нуля число свидетельствует об ошибке.

Вопрос:11 Как узнать, установлен ли конкретный rpm-пакет?

Ответ:

Возьмем например postfix. Следующее использование команды rpm покажет нам, установлен ли postfix или нет:
[root@cloud ~]# rpm -q postfix –last
postfix-2.10.1-6.el7.x86_64 Saturday 27 February 2016 11:56:43 PM EST
[root@cloud ~]#

Для этих же целей мы можем воспользоваться командой yum:
[root@cloud ~]# yum history package postfix

Вопрос:12 Как войти в режим одиночного пользователя (single user mode) в RHEL 7?

Ответ:

При загрузке системы нужно войти в меню загрузчика GRUB2, нажать 'e', найти строку начинающуюся с 'linux16/vmlinz' и заменить параметр 'ro' на 'rw init=/sysroot/bin/bash'. Нажать ctrl-x для продолжения загрузки.

Вопрос:13 Какая команда позволяет изменить имя хоста навсегда в CentOS 7 & RHEL 7?

Ответ:

Команда 'hostnamectl' используется для задания или изменения имени хоста. Например, так:
# hostnamectl set-hostname «New_HostName»

Кроме hostnamectl могут быть использованы команда 'nmtui'& 'nmcli', которые тоже могут изменять имя хоста в CentOS 7 и RHEL 7.

Вопрос:14 Как включить политики паролей (password policies) в Linux?

Ответ:

Политики паролей (password policies) включаются через pam (подсистему загружаемых модулей аутентификации). В Centos и RHEL у нас есть файл "/etc/pam.d/system-auth", в котором мы определяем требования к паролям. В ОС, основанных на Debian, для этих же целей служит файл "/etc/pam.d/common-password".

Вопрос:15 Как узнать, какие модуля ядра загружены в ОС Linux?

Ответ:

Команда 'lsmod' выдает список загруженных модулей ядра.

Вопрос:16 Какой командой можно проверить состояние ввода-вывода в Linux?

Ответ:

Есть несколько команд, таких как 'sar', 'iostat' и 'vmstat' с использованием которых мы можем проверить состояние ввода-вывода в Linux.

Вопрос:17 Каково назначение файлов '/etc/lvm/backup' и '/etc/lvm/archive'?

Ответ:

Каждый раз, когда мы создаём или изменяем любой lvm раздел, резервная копия метаданных сохраняется в файле '/etc/lvm/backup', а архив метаданных ведется в файле '/etc/lvm/archive' file. Используя команду vgcfgrestore мы можем восстановить метаданные группы томов lvm.

Вопрос:18 Как просмотреть таблицу маршрутизации в Linux?

Ответ:

Используя команды 'route -n' и 'netstat -nr' мы можем просмотреть таблицу маршрутизации в Linux.

Вопрос:19 Что происходит на фоне когда вы заходите по ssh на сервер Linux?

Ответ:

Каждый раз, когда мы заходим по ssh на любой Unix сервер, устанавливает TCP соединение между Клиентом и Сервером по порту 22 (по-умолчанию, если не указано другое) и Сервер выдает список версию протокола SSH которую он поддерживает. Если клиента она «устраивает», то соединение продолжается и после того как Сервер передаст свой публичный ключ и Клиент сохранит его в файле '~/.ssh/known_hosts' мы получим подсказку ssh.

Вопрос:20 Как изменить порт по-умолчанию для SSH на сервере Linux?

Ответ:

Значение порта по-умолчанию (22) для SSH может быть изменено в параметре «Port <NNN>» в файле '/etc/ssh/sshd_config'. Где NNN — это номер порта. После внесения изменений в этом файл, сервис SSH следует перезапустить.

Вопрос:21 Как увидеть временные метки dmesg в RHEL7?

Ответ:

Добавим параметр '-T' к команде dmesg можно увидеть временные метки dmesg.

Вопрос:22 Как узнать модель физического сервера из командной строки?

Ответ:

С помощью команды dmidecode можно узнать производителя и модель физического сервера. Например:
# dmidecode -t system

Handle 0x0011, DMI type 1, 27 bytes
System Information
Manufacturer: HP
Product Name: ProLiant DL580 Gen8
Version: P79
Serial Number: CKX42926E0
UUID: 97387735-1541-238A-1B33-533850564430
Wake-up Type: Power Switch
SKU Number: 728551-B21
Family: ProLiant

Вопрос:23 Как узнать версию BIOS сервера из командной строки?

Ответ:

С помощью команды dmidecode можно получить версию bios:
# dmidecode -t bios
# dmidecode 2.12
SMBIOS 2.8 present.

Handle 0x0010, DMI type 0, 24 bytes
BIOS Information
Vendor: HP
Version: P79
Release Date: 04/01/2014
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 16384 kB

Вопрос:24 Как расширить существующую группу томов lvm?

Ответ:

Сначала нужно создать pv (физический том) на пустом новом диске (например /dev/sdb) командой «pvcreate /dev/sdb» и затем, командой vgextend расширить группу: «vgextend <vloume_group_name> /dev/sdb».

Вопрос:25 Как посмотреть номер WWN на карте HBA на сервере Linux?

Ответ:

Существует как минимум, два способа с помощью которых можно узнать номер WWN для карты HBA.

Первый, с использованием команды systool. Например так:
# systool -c fc_host -v | grep «port_name»

Второй способ — просмотреть содержимое файла классов в файловой системе sys:
# cat /sys/class/fc_host/host*/port_name
0x7001639028cbeca0
0x7001639028cbefa2
0x7001639028cbf5d8
0x7001639028cbf6da

Автор: AxianLTD

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js