106

Системный администратор Linux. Вопросы. Часть 2

В комментариях к предыдущему посту (Системный администратор Linux. Вопросы) собрались в основном писатели, а не читатели. Чаще всего звучал вопрос: «а это на какой уровень?». Ответ простой - ни на какой. Это всего часть вопросов от простого к сложному. И в данном посте тоже будет только часть.


Вторыми по популярности была критика вида «Ваши вопросы говно» и рекомендации как именно надо проводить собеседования и что спрашивать. По личному опыту, такое обычно звучит от «Диванных эникеев». По этому если у Вас пригорает - я на верном и пути. А главное, помните, Ваше мнение важно для всех людей в этой комнате:

Системный администратор Linux. Вопросы. Часть 2 Linux, Windows, Сисадмин, Отдел кадров, Пригорело, Собеседование, Длиннопост

Ну а тем, кому интересны вопросы, продолжаем.


В: Как сменить забытый пароль root?

О: Загрузиться с LiveCD, смонтировать файловую систему, сделать chroot, сменить командой passwd. Если файловая система поверх LVM - может понадобиться активировать LV.

В+: А если нет возможности использовать LiveCD?

О+: Можно попробовать загрузиться в Single Mode. В RHEL-based дистрибутивах надо в grub нажать E, найти init и исправить на init=/bin/bash, а так же опцию ro исправить на rw. После этого нажимаем X, система загрузится и сразу запустится shell от root. Далее меняем пароль командой passwd.


В: Вы подключаетесь к серверу по ssh и первое, что надо понять, это физический сервер или виртуальный. Для виртуального надо определить тип гипервизора.

О: Виртуалку можно определить по косвенным признакам. Например, не соответствие количества ядер и названия процессора. Не типовые объёмы диска или памяти. Опять же, вывод dmidecode будет меньше, чем на физическом сервере. В выводе будет фигурировать название гипервизора. Командами lspci, lsusb и dmesg так же можно посмотреть вендора оборудования там тоже будет упоминание гипервизора или вендора гипервизора.

В+: А более гарантировано и проще?

О+: Команда lscpu показывает, что процессор виртуализирован и название вендора гипервизора. На RHEL-based дистрибутивах есть команда virt-what, которая возвращает так же вендор гипервизора.


В: Вы подключились к серверу по ssh, видите, что это нечто линуксоподобное, но надо понять какая именно система перед нами.

О: Можно командой uname -a определить тип архитектуры и версию ядра. Если архитектура sparc - скорее всего перед нами Solaris. Если в названии ядра есть darwin - это macOS. Если в номере версии ядра есть el6, 7 или 8 - это что-то на базе RHEL. Буквы EL - Enterprise Linux. Цифра - мажорная версия. Можно по пакетному менеджеру. Yum, apt, yast, pkg и т.д.

В+: А явно?

О+: В папке /etc должен быть файл с названием, в котором есть слово release. Это centos_release, lsb_release и т.п. Можно сделать cat /etc/*release* и это покажет как название дистрибутива, так и его полную версию. Это работает на Solaris и большинстве Linux дистрибутивов. На mac для этого есть команда sw_vers.


В: При попытке запустить например apache он ругается, что 80 порт занят. Как посмотреть кем?

О: Командой netstat с ключами -p (port) и -l (listen).

В+: А если такой команды нет?

О+: В частном случае можно поискать в /etc конфиги других web серверов. Или можно воспользоваться командой ss с теми же ключами -lp.

В++: Есть ли какие либо ограничения при использовании этих команд?

О++: Да, PID будет показан только если команда исполняется от superuser, например от root. Либо надо дать право на работу с сокетами непривилегированным пользователям.


В: Выстрел самому себе ногу. Сделали chmod -x /bin/chmod. Как вернуть без перезагрузки?

О: Скопировать с другого сервера или с подключённого внешнего носителя.

В+: А без внешних операций?

О+: В linux при копировании происходит копирование его атрибутов. Можно скопировать любой файл в /bin и командой cat влить в него содержимое /bin/chmod. После чего получившимся файлом вернуть права на исходный.


В: Какие есть варианты авторизации по ssh?

О: По логину и паролю, по логину и ключу.

В+: А ещё?

О+: Через pam можно добавить любой другой метод. Например двухфакторную авторизацию сделать или доменную авторизацию без ввода в домен.


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

О: systool -c fc_host -v | grep ‘port_name’ или cat /sys/class/fc_host/host*/port_name

В+: А что такое WWN?

О+: Грубо говоря, это аналог mac-адреса, но в san сетях.


В: Мне надо запустить один и тот же скрипт 10 раз параллельно. Например некий нагрузочный тест. Как сделать это и как по завершению теста завершить все скрипты одной командой?

О: Надо иметь некий родительский скрипт, который через «&» запустит дочерние. При этом надо не давать завершиться родительскому скрипту. В таком случае сделав kill -9 pid_родительского_скрипта завершатся и дочерние скрипты.

В+: А если родительский скрипт завершится? Кто станет родителем дочерних?

О+: Процессы не могут существовать без родительского. В таком случае их родителем станет init или процесс с PID 0.

В++: Как посмотреть какие процессы были запущены через «&»?

О++: Командой jobs или аналогами.


В: Как посмотреть дерево процессов?

О: Командой pstree или ptree, в зависимости от дистрибутива.

В+: А более развёрнуто?

О+: Например через ps auxwwf


Продолжение следует. Небольших вопросов осталось примерно на один пост. Последний вопрос самый объёмный и он потянет на целый пост.

Дубликаты не найдены

GNU/Linux

692 поста13K подписчиков

Добавить пост

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.

Подробнее
Вы смотрите срез комментариев. Показать все
+8
Я начинающий , лет 8 только с Линуксом.
Получал образование в ЛЭТИ, как радиоинженер.
Нас учили пониманию ситуации и умению найти решение, используя все доступные источники информации. И знанию (единственному, беспрекословному знанию) этих источников.
На большинстве экзаменов по специальности было разрешено пользоваться всем, что угодно - конспектами, учебниками, шпорами....
Но при ответе преподаватель проверял, кучей вопросов, насколько ты понимаешь, почему именно такое решение.
В отличие от Ленинградского Политеха, где студентов заставляли зубрить, но не предавали значения навыкам поиска информации.

Этот подход у меня остался на всю жизнь.
Я практически не запоминаю команд, их правильное написание, ключи....
Но я абсолютно чётко знаю, что в такой ситуации, есть решение и нужно просто найти как правильно это сделать.
И где искать.
Зачем забивать голову?
Поставьте мне проблему на собеседовании и дайте небольшое время.
Я эту проблему решу.
Но не из головы, непосредственно, а используя справочный аппарат.
раскрыть ветку 1
+1

Я бы не был таким самонадеянным. Не всегда проблема имеет прямое решение. Нужен глубокий анализ и понимание принципов работы ОС.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку
Лучшие посты за сегодня
5522

Ну привет

5175

Ремонт:)

4029

Зоркий бабулин глаз. Или whore-detector

3492

Мозоли

Мозоли Спорт, Авторский рассказ, Гимнастика, Тренер, Дети, Длиннопост
Показать полностью 1
2807

Имя для ребенка

2741

"Врачи говорят, что он просто герой, прогнозы были намного хуже"

2708

Ответ на пост «В Нижневартовске мужчина избил врача после осмотра его покрытой жены» 

2630

Обида

Показать полностью
2193

Кто пойдет к доске?

Кто пойдет к доске? Школа, Учитель, Образование, 1 сентября
Показать полностью 1
2080

Ответ на пост «Нарушитель правил передаёт что-то похожее на взятку ГАИшнику» 

Похожие посты закончились. Возможно, вас заинтересуют другие посты по тегам: