360

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

Данный пост является продолжением серии постов про собеседования на должность системного администратора linux. По традиции комментарии к предыдущему посту (Системный администратор Linux. Вопросы. Часть 2) в большинстве своём скатились в срач. Адекватных были единицы, но ради них эти посты я и пишу.


У меня меленькая просьба к подписчикам и тем, кто сохраняет в избранное мои посты - оставляйте хоть какой-то фидбек. Хотя бы в виде плюса или минуса посту. Сейчас примерно половина сохранений без оценки и это нагоняет тоску.

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

Вводные завершены, продолжаем список вопросов и ответов.


В: Как отключить iptables на RHEL/Centos 7?

О: Начиная с 7й версии было изменено название демона с iptables на firewalld. Для отключения надо сделать systemctl stop firewalld, а так же отключить его запуск при загрузке systemctl disable firewalld.

В+: Всегда ли этого достаточно?

О+: Нет. Иногда используются надстройки и кастомные скрипты для восстановления правил iptables после перезагрузки. Надо просмотреть вывод systemctl status на предмет скриптов восстановления iptables, а так же post-up, pre-up, post-down, pre-down скрипты в /etc/sysconfig/network-scripts/.


В: Как выполнить некий скрипт на условной 1000 серверов?

О: Можно написать скрипт, который будет обходить сервера по списку и выполнять на них нужные действия.

В+: А есть какие то готовые решения?

О+: Да. Сейчас особенно популярен Ansible. Помимо него есть puppet, chef и т.д. Так же есть различные web-интерфейсы для данных систем. Такие как платный Ansible Tower или бесплатные AWX, Foreman.


В: Необходимо сделать резервное копирование неких данных. Что бы Вы использовали? Как сделать дёшево и как правильно?

О: Самое простое и дешевое решение это архивация неких данных и вынос на внешний носитель. Для работы с обычными файлами этот метод вполне рабочий. А вот для копирования баз данных, особенно больших и нагруженных, такой метод не подходит. Всё дело в том, что между началом копирования и завершением проходит достаточно много изменений в базе и на выходе получается не консистентный бекап. В таких случаях используется логирование действий для последующей «догонки» базы до актуального состояния. Например в psql для этого используется WAL, у oracle это FRA и т.д., но это уже в зоне ответственности администратора баз данных. Виртуальные машины можно бекапить снапшотами с ротацией и выносом их на другой носитель.

В+: А более «взрослые» решения?

О+: Для этого есть масса программно-аппаратных комплексов. Обычно это некий софт, под управлением которого работают дисковые массивы с дедупликацией, компрессией и репликацией. Для наиболее холодных или наиболее разностных данных используются ленточные библиотеки.


В: Есть безлимитный бюджет и задача построить максимально отказоустойчивую инфраструктуру. Ваши действия.

О: Основное правило - всех элементов по два. Если говорить про сервер, под систему должно быть два диска в зеркале (тут обычно спрашивается про то, какие raid бывают) или загрузка по SAN, две сетевые карты с LACP или иной active-active агрегацией, два независимых HBA адаптера в двух PCI слотах, каждый из которых подключается в отдельную SAN фабрику. Два блока питания на раздельных линиях питания. Разумеется таких серверов должно быть тоже два. Желательно в разных, георазнесённых, ЦОДах.

В+: А что касается остальной, не серверной части?

О+: Тот же принцип - всего по два. Главное, что бы приложение, которое работает в этой инфраструктуре, тоже умело резервироваться. Т.е. работало по принципу active-active или active-standby без участия человека. Так же, надо учитывать, что одно «плечо» должно тянуть суммарную нагрузку и при этом не упираться в свой предел. Например, штатный максимум по нагрузке на CPU одного плеча - 40%. При падении старого плеча будет 80%. И останется 20% на непредвиденные ситуации, которые часто в таких случаях появляются.


В: Что нужно для кластерной виртуализации?

О: Основное требование - наличие общего хранилища. Так же желательно иметь одинаковые настройки сети на всех нодах кластера. Это нужно для горячей миграции и для миграции машин при авариях.


В: Каким образом можно подключить диски к кластеру?

О: Общее хранилище может быть реализовано различными средствами - SAN, iSCSI, Ceph.

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

О+: Всё зависит от инфраструктуры, целей, бюджета и количества инженеров, выделенных на поддержку. Например Ceph можно собрать из весьма разносортных нод. При минимальном бюджете это хорошее решение. Вот только затраты человеческих ресурсов на него значительно завышены. SAN - дорогое по железу и относительно простое в поддержке решение. В любом случае придётся платить. Либо за железо, либо инженерам.


В: В чём преимущество Fibre Channel перед iSCSI?

О: В SAN сетях есть гарантированная доставка, меньше накладных ресурсов, сеть разрабатывалась как транспорт для дисковых носителей. В тоже время iSCSI это надстройка над ethernet, со всеми его недостатками.

В+: Допустим у нас есть два простых FC свича и два Ethernet свича. Каждую пару свичей мы соединим двумя линками. Что с ними произойдёт?

О+: FC свичи, при наличии лицензии, объединят два линка в один с удвоенной пропускной способностью. Ethernet свичи получат так «кольцо» и перестанут работать спустя какое-то время, которое зависит от объёма траффика в данном сегменте сети.


В: Есть некая виртуальная машина на VMWare. У машины 2 гигабайта памяти. В настройках машины стоят галочки «Можно добавлять память на горячую» и «Можно добавлять процессор на горячую». Внутри машины стоят все нужные гостевые дополнения. Система стоит x64. Можно ли сделать машине 6 гигабайт памяти на горячую?

О: Нет. На горячую можно будет подойти к отметке в 4 гигабайта, но пересечь её не получится.

В+: Почему? Система, ведь, поддерживает?

О+: Основной принцип памяти - отсутствие фрагментации. Т.е. вся память должна быть непрерывна. Если система стартует с объёмом памяти менее 4 гигабайт, часть старших адресов 32-битной шины резервируется под ввод-вывод. Соответственно расширять память можно до этих пределов. Если на старте памяти было 4 гигабайта и более, под ввод-вывод резервируется блок в верхней части уже существующего 64-битного адресного пространства.


В: Есть неограниченный бюджет и некая абстрактная платформа, которая умеет много памяти. Какой теоретический максимум памяти можно установить в такой сервер если система x86 и если система x64?

О: Предел x86 - 32 бита непрерывного адресного пространства, т.е. 4 гигабайта. Однако с использованием PAE объём памяти увеличивается до 64 гигабайт, но не более 4 гигабайт на процесс, т.к. адресная шина так и сталось 32 бита. Теоретический предел существующих x64 систем - 48 бит адресного пространства.

В+: Из чего получаются эти 48 бит?

О+: Размер страницы памяти 4 килобайта или 12 бит. Нумерация страниц - 36 бит. Итого получается 256 терабайт памяти.


На этом пока всё. Остался последний большой вопрос, объёмом на отдельный пост.

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

+18

Ethernet свичи получат так «кольцо» и перестанут работать спустя какое-то время, которое зависит от объёма траффика в данном сегменте сети.


А если они в стп умеют?

раскрыть ветку 15
+15
Тоже первая мысль про stp. Мне кажется, сейчас уже все управляемые свичи это умеют. А неуправляемые в продакшене использовать, ну такое себе решение. Опять же, забабахать агрегацию портов на свичах кто мешает? И хоть 8 линков используй. Короче, без четкого ТЗ, результат - ХЗ)
раскрыть ветку 3
+1

Так-то да)

0

Умеют даже свитчи в составе домашних роутеров.

0
Агрегация наше всё. Сейчас только так и подключаем уровень доступа, если у коммутатор полностью гигабитный. От 2 до 4 аплинков в агрегацию.
+2
Или в LASP.
тут вроде про линуксоида. А скатились и в сетевика.
раскрыть ветку 2
+3
LACP
раскрыть ветку 1
0

Которые не умеют ещё надо подыскать ;)

0

Или VLANы на портах разные...

0

Самый тупой вопрос, но жизненный.

Чувствуете Боль?

0
Дополню: "Ethernet свичи получат ТАК "НАЗЫВАЕМОЕ" «кольцо» и перестанут работать спустя какое-то время"
-8

Специально было указано, что железки простые. На умных да, STP для изоляции или LACP для агрегации.

раскрыть ветку 3
+8

Простой файберчаннел... Да ещё с программно-лицензионными фичами... Ну да, ну да... 😂


Да и ценник, и возможности некоторых "простых" свитчей уже не тот, что десять лет назад.

раскрыть ветку 1
0
Опять же, ввиду нечеткой постановки вопроса - возможен вариант, что нихрена со свичами не будет. Нигде в вопросе не указано, что к ним подключены устройства генерирующие трафик, а "железки простые". То есть служебный трафик генерировать они сами не будут. Или я неправ?)
Иллюстрация к комментарию
ещё комментарии
+15

Это все так на уровне общего представления(которое тоже естественно необходимо иметь)

Если машина не заводится - проверьте подачу топлива, бензонасос, наличие искры

Однако некоторых моментов можно просто не знать по той причине что тупо не приходилось заниматься конкретной задачей.

Как выполнить некий скрипт на условной 1000 серверов?

О+: Да. Сейчас особенно популярен Ansible. Помимо него есть puppet, chiff и т.д. Так же есть различные web-интерфейсы для данных систем. Такие как платный Ansible Tower или бесплатные AWX, Foreman.

Вот мне не приходилось выполнять скрипт на 1000 серверов. Я понятия не имею, как называются готовые решения. Но знаю, что задача тривиальная, решается элементарно и гуглится с одного запроса.


К тому же есть варианты решения задачи. можно долбиться по SSH на каждый, а если сервера в каком либо кластере, то можно попробовать централизованный планировщик. А можно примонтировать всем сервакам NFS папку и cron пусть проверяет определенный скрипт. Если сервера в контейнерах, то скрипт можно просто на хосте запустить.


А вот реальные задачи - что-то типа

При попытке миграции высоконагруженного  Zabbix c MariaDB на PGSQL+TimeScaleDB(с целью секционирования БД и отключения Zabbix HouseKeeper) возникает ошибка vaсuum, гугление которой ведет только на порносайты...

нужно уметь решать и все. Уметь копаться во всех этих потрахах, а если задача не может быть решена в лоб, то грамотно уметь искать костыли и пути обхода.


Поэтому все эти собеседования могут дать лишь общее представление, и рубить человека потому- что он не знает конкретной реализации конкретной задачи - тупняк.


К примеру человеку, с соображающей головой во всех этих линуксах и имеющим опыт вообще не в нагрузку будет разобраться с каким нибудь Asterisk, даже если он до этого никогда с ним не сталкивался.

раскрыть ветку 1
+18

"Если у вас есть 1000 серверов значит есть и какое-то средство администрирования. А если нет то вы идиот, а мама мне говорила держаться от идиотов подальше." Вот так примерно должен звучать правильный ответ на этот вопрос.

+34
ответный пост

Коснемся темы бекапа, вроде простой вопрос но как много но..


Мне совсем не понравились ответы на эти вопросы, к сожалению очень похоже на презентацию систем хранения,

---


В: Необходимо сделать резервное копирование неких данных. Что бы Вы использовали? Как сделать дёшево и как правильно?


О: Самое простое и дешевое решение это архивация неких данных и вынос на внешний носитель. Для работы с обычными файлами этот метод вполне рабочий. А вот для копирования баз данных, особенно больших и нагруженных, такой метод не подходит. Всё дело в том, что между началом копирования и завершением проходит достаточно много изменений в базе и на выходе получается не консистентный бекап. В таких случаях используется логирование действий для последующей «догонки» базы до актуального состояния. Например в psql для этого используется WAL, у oracle это FRA и т.д., но это уже в зоне ответственности администратора баз данных. Виртуальные машины можно бекапить снапшотами с ротацией и выносом их на другой носитель.


В+: А более «взрослые» решения?


О+: Для этого есть масса программно-аппаратных комплексов. Обычно это некий софт, под управлением которого работают дисковые массивы с дедупликацией, компрессией и репликацией. Для наиболее холодных или наиболее разностных данных используются ленточные библиотеки.


---

В общем случае, следуя ответам, получим на выходе набор байт а не бекап.

Задача бекапирования на самом деле намного сложнее.

Представьте что у вас файловое хранилище на несколько десятков терабайт, и туда идет запись 7*24, причем записываемые файлики размеров гигабайт по 5-10.


Взрослые решения являются взрослыми из за цены, недавно на HPE day это обсуждали, нормального бекапа все равно не получается, к сожалению оркестраторы не всегда возможно использовать, а иногда они просто не в состоянии помочь.


Бекап это то что позволяет восстановить доступ доступ к сервису, в наикратчайшие сроки(этим в основном и определяется стоимость решения), и вообще его надо делить на три части:

- оперативный(восстановление после программных сбоев или неверных действий пользователей);

- аварийный(восстановление после выхода из строя оборудования);

- архив(восстановление данных после уничтожения оборудования без возможности его восстановления или приобретения идентичного, так же касается разного специфического софта).


Каждый из видов делается независимо и по разным расписаниям, но тут могут быть варианты, например аварийный снимать с оперативного и так далее, тут зависит от возможностей софта хранящего данные.

Показать полностью комментарии 19
+6
Бэкапить виртуалки снапшотами это полный пиздец. Мало того что снижается производительность, так есть ещё вероятность потерять все данные в случае роста снапа.
раскрыть ветку 9
+1

И как систему на лету бэкапить ещё?)

0

Про это же хотел написать. Автор скорее дезинформирует в части вопросов, а не делится полезной информацией.

0
смотря какая нагрузка на запись, остальное похер
раскрыть ветку 1
0
Ага, расскажите это RO реплики SQL сервера
0

Ещё бывают снапшоты уровня схд)

0

А как по вашему бэкапят виртуалки? Все энтерпрайз решения для резервного копирования снэпшотят.

раскрыть ветку 3
0
Создаётся снап, со снапа делается бэкап, снап удаляется.
раскрыть ветку 2
+6
"В: Есть безлимитный бюджет и задача построить максимально"
"В: Есть неограниченный бюджет..."
Иллюстрация к комментарию
+12

Максимально отказоустойчивая структура идёт не по два, а 2n+1

раскрыть ветку 25
+1

Да, согласен. Однако 2n+1 это минимально возможная максимальная отказоустойчивость.

раскрыть ветку 1
+4

На максимально возможную максимальную отказоустойчивость даже с безлимитным бюджетом все равно придется добавить 100-200 килопрезидентов. 😁

0

это для кворума. Но если актив-пассив - можно обойтись и без него.

раскрыть ветку 21
0

А как пассив без кворума узнает, что он уже может быть активом?

раскрыть ветку 20
0
Вероятно в данном случае, упрощённо, можно понятие "отказоустойчивости" подменить даже на "высокую доступность", в рамках собеседований, думаю, не столь критично.
+5

В: Как отключить iptables на RHEL/Centos 7?

Он уже отключен. Нет, firewalld это не iptables. Нет, он не переименован. Нет, ufw, firewalld, ipf, ipfw, iptables, pf и виндовый брендмауер - это разные ферворлы.

Если вопрос звучит как "как отключить фаервол" - то да, ответ верный. Но вопрос скорее должен звучать как "как ВКЛЮЧИТЬ iptables на rhel/centos7" (systemctl stop firewalld, systemctl disable firewalld, yum install iptables-services, $EDITOR /etc/sysconfig/iptables, systemstl start iptables, systemctl enable iptables)



Главное, что бы приложение, которое работает в этой инфраструктуре, тоже умело резервироваться. Т.е. работало по принципу active-active или active-standby без участия человека

Это совершенно не обязательно. Приложение может считать себя единственным и не уметь в резервирование в принципе. Оно может даже быть запущенно в единственном экземпляре, а переезд может осуществлять pcs/drbd или "кластерная виртуализация".

раскрыть ветку 3
-1

Эм... А ничего, что firewalld в centos 7 - это просто обертка iptables? Включите firewalld и посмотрите iptables-save.

раскрыть ветку 2
+4

А ниче, что iptables это всего лишь средство управления фаерволом netfilter?

раскрыть ветку 1
+13

Зачем линуксоидам фидбэки? Они же самодостаточны :D

раскрыть ветку 4
+12

- Разрешите просить руку Вашей дочери.

- А что, своей нет?

- Есть, но устала..

раскрыть ветку 3
-1
Намёк поняли. Кармодрочер.
раскрыть ветку 1
-2

KDE, Gentoo, трудное детство, деревянные игрушки и скользкий подоконник?

+29

Н-да с резервным копированием, сетями и отказоустойчивой инфраструктурой у автора не очень. Зато  знает много полезных линуховых команд наизусть.

раскрыть ветку 4
+11

Хорошо, что ты показал, где именно он ошибается и неправ

раскрыть ветку 3
0
Про кольцо в езернет например.
-23

Заплатите - покажу. А кто в теме и так знает.

раскрыть ветку 1
ещё комментарии
+3

Fra логи у оракла? Предлагаете копировать и их для консистентности? Тогда есть для вас плохие новости

раскрыть ветку 2
0
Fra это область восстановления, в нее входят как flashback логи, так и archivelog-и плюс бекапы. Наверное автор имел ввиду archive логи.
раскрыть ветку 1
0

Да, вот только скопировав датафайлы и архив логи поднять потом базу вряд ли получится. Без того, по крайней мере, чтобы чекпоинт поставить в базе перед копированием логов. Однозначно легче делать бэкапы стандартными средствами не воротя костылей.

+7
Я конечно дико извиняюсь, но уровень этих вопросов - это не Linux-админ, а средненький инженер эксплуатации в местечковом ЦОДе/интеграторе.
раскрыть ветку 18
0

Почему так решили? С такими знаниями искал инженера в Москве, от 120к вилка была. На собеседованиях очень тухло было, очень.

раскрыть ветку 1
0
Тухло было потому что на рынке перебор *вайтишников*, последние пару лет такая бодяга. Нормальные кадры трудоустроены и прикормлены.
0
В корне не согласен. Хз как в России, нов Европе это вполне неплохого уровня специалист. У меня конечно есть к чему прикопаться в вопросах, но в целом понимание процесса есть же.
раскрыть ветку 12
+1

Да? Считаете с этими знаниями можно неплохо зарабатывать? Поехать, чтоли?

раскрыть ветку 1
0
Ну мы то не в Европе, хотя и жаль. Согласен, для них - это уровень "крепкого" технаря, но в местных реалиях, увы,картина иная.
раскрыть ветку 9
-10

Как уже говорилось - часть вопросов на понимание уровня кругозора и не пригодятся непосредственно при работе. Линуксовый админ не будет строить ЦОД, но должен иметь представление о его работе.

раскрыть ветку 2
+4

Про вопросы с памятью на вмваре какой то бред. Не лучше ли спросить например сколько должно быть свободного пространства на сторадже от общего объёма машин и от типа их использования. Чтобы не получить залупу во время копирования каким нибудь вимбэкапом во время того как кто-то решит залить на файлшару пару сотен гб видео с региков или сделать бэкап бд.

раскрыть ветку 1
ещё комментарии
+2

Почему вопросах для "Linux-админа" только один вопрос по Linux, и то - безграмотный?


Ведь можно было даже такой тупой (для админа) вопрос, как включение/отключение службы фаервола задать с пользой. Например:

В: Если вы привыкли работать с iptables, можно ли дополнительно поставить его в систему с firewalld?

В: Можно ли одновременно запустить firewalld и iptables?

В: Что нужно сделать, чтобы избежать возможных проблем, если у вас в системе есть как firewalld, так и iptables?


Конечно, iptables еще много где на плаву, но на месте работодателя я бы уже хотел человека знакомого c минимальным управлением фаерволом через firewalld.

Иллюстрация к комментарию
раскрыть ветку 1
0

Хороший и интересный материал. Спасибо!

+2

Зачем вы холиварите, если здесь просто общие вопросы с общими ответами, чтобы задать направление, куда копать при подготовке к собеседованию и заодно проверить себя на пробелы? Нет какой-то истины, все везде зависит от ситуации, т.к. наворотить можно чего угодно с каждой стороны

раскрыть ветку 7
+8

Не-не-не, тут не в холиваре дело. Дело в вопросах вида:

В чём преимущество Fibre Channel перед iSCSI?

Постановка вопроса угрёбищная по определению. Отвечающийся изначально ставится в позицию, что Fibre Channel лучше iSCSI. А если у него обратное мнение, и он может это аргументировать?


Это всё равно, что спросить:

Почему @gidravydra умнее, чем @YolkinRU?

Этот вопрос ставит вас изначально в невыгодную ситуацию. Смогли объяснить - признали, что я умнее. Не смогли - не ответили на вопрос на собеседовании.


Правильный вопрос должен звучать так:

Что лучше, Fibre Channel или iSCSI, и почему?
раскрыть ветку 5
0

И почему?

раскрыть ветку 3
-4

Эээ.. Нет.

В чем преимущество fc перед iscsi?

В чем преимущество iscsi перед fc?

Преимущества можно заметь на недостатки - ибо и таи и сям есть и первые и вторые. И ни один из них не лучше.

А вопрос "что лучше" звучит как


Что лучше - бмв х5 или карьерный самосвал, и почему.

-1

Потому что в высоких материях автор не очень шарит.

+7
Сhiff.. Формулировка вопроса тоже огонь. тоже мне вопросы уровня "как сложить два числа? ну сейчас популярны блокчейн и облачные вычисления"
дальше не читала ибо ясно-понятно
ещё комментарии
+1
Фидбек?

Записал в блокнотик ещё кучу того что я не знаю из поста и комментов. Взрустнул и пошёл самообразовываться дальше XD

Спасибо за труд!
+1

По сторэджам немного устаревшая инфа. Под SAN что имеется в виду? Допотопный FiberChannel? Можно бы рассказать про iSER/RoCE, NVMEoF

раскрыть ветку 1
+1
олигархов завезли
+1

Насчёт общего СХД через сан свитч и hba - система уже устаревает. Сейчас в моду входит программный сторадж и hci решения. Хотя чем больше в это вдаваться, чем больше понимаешь, что нет ничего идеального. Но радует , что fc сменяется на tengig

+1

Частный опыт сисадминчика, решавшего/решившего (?) частные задачи.

+1

Казалось, что на esxi добавление памяти на горячую с 1 гб до 16 проходило без проблем. На досуге проверю.


К фаерволу на centos7  я бы добавил ещё информацию о  selinux.

ещё комментарии
+1

> Однако с использованием PAE объём памяти увеличивается до 64 гигабайт, но не более 4 гигабайт на процесс, т.к. адресная шина так и сталось 32 бита.

На самом деле, может быть и больше 64 Гб:

"On Intel 64 processors, the page directory pointer entry supports physical address size of the underlying implementation (reported by CPUID.80000008H). Legacy PAE enabled paging ... can address physical memory greater than 64-GByte if the implementation’s physical address size is greater than 36 bits."

Т.е. на 64-битных машинах, работающих в 32-битном режиме, физический адрес не ограничен 32 или 36 битами, а только реальной разрядностью шины.

> Теоретический предел существующих x64 систем - 48 бит адресного пространства.

52, на самом деле:

"Intel 64 architecture expands physical address extension (PAE) paging structures to potentially support mapping a 64-bit linear address to a 52-bit physical address. In the first implementation of Intel 64 architecture, PAE paging structures support translation of a 48-bit linear address into a 40-bit physical address. Other implementations may support different physical address sizes. The physical address width, MAXPHYADDR, is reported by CPUID.80000008H:EAX[bits 7:0]."

Но это мелочи, наверное, в целом вполне адекватные ответы. Если человек не пишет ОС и не ныряет с головой в документацию по процессору, таких тонкостей он знать и не обязан)

0

"Например Ceph можно собрать из весьма разносортных нод. При минимальном бюджете это хорошее решение."
Кто-то в проде с цефом не разу не работал похоже, а только читал про него) Это отвратительное решение. Для цефа только однородное железо, с ssd-кэшем и прямые руки. Самое простое будет поднять NFS-хранилку.

0

А почему нельзя сделать  iptables --flush ?

0
ох бля надо стальной анус иметь, чтобы выкладывать любую инфу в рунете касательно админства. у нас каждый второй кардиолог со стажем, а гуру администрирования вообще не счесть. дерьмом обольют потом не отмоешься
раскрыть ветку 3
0

Ну тут реально часть ответов не грамотна. Если ты linux-админ, зачем в виртуализацию лезть.

раскрыть ветку 2
0
я бы ответил, но, как не ответь, бойцы лора только грязью поливать умеют и поэтому это абсолютно бессмысленно
раскрыть ветку 1
0
Вот тоже иногда не понимаю таких собеседований. Ну не сталкивался я с этим по работе если, то откуда мне знать обо всех нюансах. Я когда то был связистом и с компами был не то что на Вы, но даже на Ваше Величество! И как то позвали меня в банк заниматься видеонаблюдением и АТСками, там немного освоил комп. Дальше меня позвали на банкоматчика, я на собеседовании так и сказал, что я с ними не работал, но меня взяли, как потом сказали, за честность. Дорос я с банкоматами до уровня, что мне звонили из других регионов для консультации в ремонте. Потом в жизни получилось, что была в другом банке должность банкоматчика, и начальник спросил, не хочу ли я у него поучится администрированию более глубже. Так вот, вывода ни какого нет, просто что есть люди, которые по месту схватывают информацию и быстро обучаются. А за посты спасибо! Как раз решил для себя освоить Linux
0
Остался один вопрос - это чё, действительно можно выучить?????????
По моему астрофизика выглядит проще блеать!!!!
раскрыть ветку 3
+1

Есть гораздо более сложные профессии.

0
Достаточно аналитического склада ума, желания и времени. Есть профессии гораздо сложнее
0
Реально. Не все так страшно
0

отключился на слове  iptables.. отлично выспался, ставлю плюсик!

0

бля

не считаю себя тупым, но

а чё там в Линуксе такого прям?

просветите плиз)


мож сам уверую xD

раскрыть ветку 2
+1

Зарплата выше)

раскрыть ветку 1
0

спецом подождал

нуууу, к тебе отнеслись толерантно(т.е. - ни плюс, ни минус)

по ходу, тема стоящая)

0
Тут что-то на эльфийской, не могу прочесть.
А если серьёзно, то как, скажем, "до такой жизни докатился?") Сколько и чего нужно знать, чтобы считать себя +/- неплохим админом? Да и вообще комфортно себя чувствовать в IT и т.д.
раскрыть ветку 2
+2

Вас ждёт разочарование, чем больше вы знаете, тем больше вы понимаете, что ничего не знаете.

раскрыть ветку 1
0
плюсану, а еще в огонь будут подливать псевдогуру с лора, да простит меня макаронный монстр, уверенные, что их решения однозначно верные; так что придется не только постоянно чет узнавать и выглядеть бодро, но и от пидарасов вроде чувака в соседней ветке отбиваться перед руководством ))
0
а можно ли подключить fc корзину с дисками без железного контроллера? есть корзина и fc свичи и куча проводов. к обычному серверу с проксмоксом, к примеру.
раскрыть ветку 4
0

Может имелось ввиду без свитча?

раскрыть ветку 3
0

в корзине есть только FC коннекторы, а в серваке (обычный супермикро) fc нету, только ethernet. вот и интересно, можно ли как-то обойтись без железного контроллера. или вообще как подключить корзину, чобы хотя бы цефа поднять.

раскрыть ветку 2
0

+. вот фидбек

0

Есть небольшой вопрос. Вы случаем не в теле2 работаете?

0

Как вернуть себе права sudo если ты испохабил /etc/sudoers ? Ну вот прям без перезагрузки?

раскрыть ветку 9
+1

Как испохабил. Удалил себя из группы? Есть ли root и пароль от него? Есть ли доступ к физический доступ к консоли?

раскрыть ветку 7
0

Накосячить в синтаксисе. Сервер виртуальный и пароль от рута не назначен.  Виртуализация под Xen, модификатор загрузки выставлен не показывать меню grub

раскрыть ветку 6
0

Попросить у того, у кого остался туда судо.

-1

"Начиная с 7й версии было изменено название демона с iptables на firewalld"

Бред. Файрволд это поттеринговысер прокладка для iptables. Это раз. Iptables это не демон, а тулза управления файером линуха который зовется netfilter. Это два. И iptables уже депрекейтед, это три.

И четвёртое, уровень вопросов - для среднячкового технаря, админом тут не пахнет.

-2

Минуснул. Ничего личного. За ради фидбэка.

-1
Стесняюсь комментировать)
а так читаю
спасибо
Похожие посты
7246

Пришёл на собеседование , а у него образование УЧИЛИЩЕ им. какого то Баумана !!! Я ему сказала что нам требуется с высшим образованием !!!

фото из открытых источников

Пришёл на собеседование , а у него образование УЧИЛИЩЕ им. какого то Баумана !!! Я ему сказала что нам требуется с высшим образованием !!! Собеседование, Отдел кадров, Трудоустройство, Работа

Рассказала эту историю на корпоративе начальница отдела персонала будучи в лёгком подпитии.Далее с её слов:

Когда я была помоложе то устроилась в отдел кадров одного небольшого завода и потребовался им один технический специалист на должность ведущего инженера.

И пришёл к ним один дядечка в очках , поговорили и знаниях , выяснили друг у друга все значимые моменты по работе и трудоустройству , и под конец я спросила у него какое учебное заведение он закончил.

Дядечка: Высшее Техническое училище им Н.Э. Баумана.

Я: Извините но нам требуется с высшим образованием а у вас всего лишь училище.

Дядечка:Но это и есть высшее образование .

Я: Не морочьте мне голову , я что не знаю что такое училище . Всего хорошего вы нам не подходите.

И дядечка в очочках ушёл.

А я потом в обед возмущалась своей начальнице что меня пытался надурить со своим училищем этот дядька .

Пришёл на собеседование весь такой холёный , очки одел , а у него образование УЧИЛИЩЕ им. какого то Баумана !!! Я ему два раза сказала что нам требуется с высшим образованием !!! Еле выпроводила.

И сижу жду одобрения , а начальница так пристально на меня смотрит и говорит , "Лучше ты бы в школе хорошо училась , чем так хорошо кушала , быстро найди этого дядечку".

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

3907

Вы нам не подходите

Мой друг работал инженером в одной из структур ЮКОСа, гонял на вахты по нефтянке в Сибири, денег хватало, но когда ЮКОС развалили их всех сократили. Сидит без работы 2-3 месяца, работу найти не может, денег нет, семья, маленький ребёнок.


От большого отчаяния решил пойти в грузчики, позвонил в одну организацию, ему сказали бери документы и резюме.


Когда приехал сотрудница кадрового отдела взяла документы, уже готова была оформлять на работу, но заглянула в резюме и говорит:

- Извините, но вы нам не подходите.

Друг начал удивляться - почему, мол?

Она - у вас опыт работы по специальности, высшее образование, найдите себе нормальную работу, здесь же контингент алкаши да зеки в грузчиках. Друг начал убеждать, что семья, денег нет, уже на любую работу согласен. Кадровик сказала - нет и не уговаривайте, я вас не возьму, не портите себе жизнь, ищите нормальную работу.


Друг расстроился, но женщина была права, он в итоге через некоторое время нашёл работу по специальности и сделал неплохую карьеру.

2229

Напарничек - Собеседование !!!

фото из открытых источников

Напарничек - Собеседование !!! Напарник, Собеседование, Отдел кадров, Работодатель, Соискатель, Кража, Обман

В своё время много лет назад работал мастером строительно-монтажных работ на одном объекте и это был мой один из первых , сам в то время ещё был молодой да не опытный . Работали две недели через две. Две недели я со своей бригадой работников и меняла нас другая бригада во главе с другим мастером Антоном.Так мы и работали месяцев шесть, по началу при смене бригад писали приёмо-передаточные акты со списком оставшихся материалов не вовлечённых в работу , оборудования и инструментов.Потом стали доверять друг другу и передача производилась чисто формально на словах .Называли друг друга НАПАРНИКАМИ ...


А потом когда мы приехали менять их ,выяснилось что за день до нашего приезда Антон уехал и уволился. В то время сотовая связь была дорогая ,тем более межгород,а сотовые телефоны были далеко не у всех.

Начали работать и выясняется что поизчезало много чего ,уж не знаю продал или с собой увёз , т.к. говорили что за ним машина приехала ,а ключи от склада один экземпляр  у него были,а вторые у меня. Так как ответственных лиц больше не было на объекте , решили часть украденного повесить на меня , другую часть на сотрудника отдела кадров которая без обходного и акта передачи ТМЦ уволила и на бухгалтерию т.к. не сверились по остаткам и списанию материалов .Пытались найти его по адресу который был в отделе кадров, но там такой давно не жил,номера телефона его не было и был ли он не известно.Потом через каких то знакомых его передали ему, что бы вернул что взял , на что мы все были посланы и следы его затерялись где то на Северах на вахтах. Хотел даже написать заявление в Милицию (тогда была она ещё) , но меня отговорили на работе и решено что с меня будут удерживать 25% зарплаты в счёт уплаты украденного на протяжении 6 месяцев,а если бы подал заяву то могли бы взыскать полную сумму с меня ,а это примерно зарплата моя за два года .

Да я был молод и глуп , доверял людям ,полагался на их слово. Сейчас бы со мной такой номер не прошёл ни со стороны Работодателя,ни со стороны Напарничка.

И вот по прошествии многих лет у нас в организации требовался руководитель проекта на крупный объект и мы искали человека туда . И пришел один кандидат , прошел первичное собеседование у менеджера по персоналу, а второе собеседование по знаниям , документации ,правильностью оформления и ведения тех документации ,нормативами, правилами и многим другим параметрам проводил я.

И тут я захожу в переговорную  , а дальше немая сцена - Стоим друг напротив друга я и Антон из прошлого , а менеджер по подбору персонала представляет меня и говорит "Если вы пройдёте собеседование у Сергея Ивановича (и кивает на меня) тогда просим оформляться.

Антон молча собирает свои документы и молча уходит. А Менеджер смотрит на меня и хлопает своими большими глазками и с недоумением  говорит "Он же нам подходил по всем параметрам , почему он ушёл?". Это не наш человек точно , ответил я ей и вышел тоже.

Если бы попался тогда он мне , отхреначил бы точно , а по прошествии многих лет посмотрел на него , пускай катится на все четыре стороны жизнь сама накажет его, а злость и обида на него уже прошла.Но на работу к нам его бы точно не взял...

Земля круглая оказалась...

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

Ответ на пост «Hr-менеджеры, они такие» 

Лет 10 назад  на периферии двоюродный брат устраивался на должность ITшника на Почту России. Причём у них там даже сервак линуховый стоял, т.е. далеко не эникей был нужен.


Договаривался напрямую с руководителем, но собеседоваться попал к HR.

HR: Как часто выпиваете?

Брат: Да я совсем не пью, есть нюансы со здоровьем.

HR: Категория С реальный опыт есть или только в правах открыта?

Брат: Иногда управляю, но редко.

HR: С вашими нюансами со здоровьем сможете по 6 часов в за рулём и до тонны посылок в день разгружать?

Брат:😳😳😳


Потом разобрались, основной контингент  мужиков на вакансии водителя у них был.


Интересно окончание истории: брата конечно взяли, с IT там жопа была, за неделю всё разгрёб, настроил удалёнку и договорился, что лично приезжать будет 1 раз в неделю, остальное, если что, удалённо разрулит. Почта в городе 40-50 км по не очень хорошей дороге, на авто ехать чуть меньше часа за ЗП 15 тыс. его устраивало тем более в своей деревне также подрабатывал выездами, сервер настроить, упавший веб сайт поднять и т.п. админские функции.


Проработал он так 1.5 месяца. Потом местные "куры" раскудахтались: как так, мы тут всю неделю сидим, а этот приезжает изредка, ещё и ЗП больше нашей. С работой пришлось расстаться. Мерило количества работы методом усталости со времён ожидания светлого будущего осталось, а структура государственная...

55

Большинство антивирусов оказались подвержены атаке через символические ссылки

Большинство антивирусов оказались подвержены атаке через символические ссылки Антивирус, Mac Os, Windows, Linux, Длиннопост

Исследователи из компании RACK911 Labs обратили внимание на то, что почти все антивирусные пакеты для Windows, Linux и macOS были уязвимы для атак, манипулирующих состоянием гонки (race conditions) во время удаления файлов, в которых обнаружено вредоносное ПО.


Для проведения атаки необходимо загрузить файл, который антивирус распознает как вредоносный (например, можно использовать тестовую сигнатуру), а через определённое время, после выявления вредоносного файла антивирусом, но непосредственно перед вызовом функции для его удаления, подменить каталог с файлом символической ссылкой. В Windows для достижения того же эффекта выполняется подмена каталога при помощи точки соединения (directory junction). Проблема в том, почти все антивирусы должным образом не выполняли проверку символических ссылок и, считая что удаляют вредоносный файл, удаляли файл в каталоге на который указывает символическая ссылка.


В Linux и macOS показано как таким способом непривилегированный пользователь может удалить /etc/passwd или любой другой системный файл, а в Windows DDL-библиотеку самого антивируса для блокирования его работы (в Windows атака ограничена только удалением файлов, которые в текущим момент не используются другими приложениями). Например, атакующий может создать каталог "exploit" и загрузить в него файл EpSecApiLib.dll с тестовой сигнатурой вируса, после чего перед удалением заменить каталог "exploit" на ссылку "C:\Program Files (x86)\McAfee\Endpoint Security\Endpoint Security Platform", что приведёт к удалению библиотеки EpSecApiLib.dll из каталога антивируса. В Linux и macos аналогичный приём можно проделать с подменой каталога на ссылку "/etc".


#!/bin/sh

rm -rf /home/user/exploit ; mkdir /home/user/exploit/

wget -q https://www.clicklink.app/download/eicar.com.txt -O /home/user/exploit/passwd

while inotifywait -m “/home/user/exploit/passwd” | grep -m 5 “OPEN”

do

rm -rf /home/user/exploit ; ln -s /etc /home/user/exploit

done


Более того, во многих антивирусах для Linux и macOS было выявлено использование предсказуемых имён файлов при работе с временным файлами в каталоге /tmp и /private/tmp, что могло использоваться для повышения привилегий до пользователя root.


К настоящему времени проблемы уже устранены большинством поставщиков, но примечательно, что первые уведомления о проблеме были направлены производителям ещё осенью 2018 года. Несмотря на то, что не все производители выпустили обновления, им было дано на исправление как минимум 6 месяцев, и RACK911 Labs считает, что теперь вправе раскрыть сведения об уязвимостях. Отмечается, что компания RACK911 Labs давно занимается работой по выявлению уязвимостей, но она не предполагала, что с коллегами из антивирусной индустрии будет так трудно работать из-за затягивания выпуска обновлений и игнорирования необходимости срочного устранения проблем с безопасностью.


Продукты, подверженные проблеме (свободный антивирусный пакет ClamAV в списке отсутствует):


Linux

BitDefender GravityZone

Comodo Endpoint Security

Eset File Server Security

F-Secure Linux Security

Kaspersy Endpoint Security

McAfee Endpoint Security

Sophos Anti-Virus for Linux


Windows

Avast Free Anti-Virus

Avira Free Anti-Virus

BitDefender GravityZone

Comodo Endpoint Security

F-Secure Computer Protection

FireEye Endpoint Security

Intercept X (Sophos)

Kaspersky Endpoint Security

Malwarebytes for Windows

McAfee Endpoint Security

Panda Dome

Webroot Secure Anywhere


macOS

AVG

BitDefender Total Security

Eset Cyber Security

Kaspersky Internet Security

McAfee Total Protection

Microsoft Defender (BETA)

Norton Security

Sophos Home

Webroot Secure Anywhere

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

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

«Всё, что имеет начало, имеет и конец, Нео».

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

Серия вопросов подходит к завершению и остался последний, самый объёмный вопрос:


В: У Вас маленькая организация. Есть некий сервер, который совмещает в себе много разных функций. Шлюз, файлопомойка, прокси, web-сервер, даже есть виртуалка на KVM, внутри которой крутится условная 1С на windows. В один прекрасный момент к Вам начинают сыпаться сообщения от пользователей, что «Всё тормозит и ничего не работает». Ваши действия? Что и как диагностировать будете? Какими командами? Гуглить времени нет из-за ощущения влажного дыхания директора в затылок.


О: Диагностику можно условно разделить на четыре этапа. По количеству компонентов, которые могли стать «слабым звеном». Это процессор, память, диск и сеть. Но, в первую очередь, надо смотреть в логи. Основное - dmesg, syslog, messages. Зачастую это сэкономит массу времени. Так же не стоит забывать про встроенные средства обзорного мониторинга. Например sar позволяет понять что происходило с системой в последнее время без внешнего мониторинга. Так же различные средства внешнего мониторинга позволят получить обзор системы за последнее время и понять какие метрики являются аномальными. Если этого нет, метрик недостаточно или нужно смотреть в реальном времени - по шагам смотрим каждый компонент:


- Процессор. Необходимо понимать и знать какая нагрузка на процессор данного сервера является штатной. Т.е. нагрузка в 80% может быть вполне нормальной для сервера, а 20% может быть повышенной. Для этого нужен какой-либо мониторинг, который обеспечивает хранение исторических данных, внешний - zabbix, observium, spectrum, munin, или внутренний - sar. Текущую нагрузку можно посмотреть командой top и её производными, htop, atop и прочими, либо sysstat, vmstat. Можно посмотреть load average командой uptime. Если нагрузка аномальна - надо понимать из чего она складывается. Тут три основных компонента - User time, IO wait и System или kernel time. Соответственно это время процессора, затраченное на приложения пользователя, ожидания ввода/вывода и на работу самом системы. С user time всё относительно просто. Достаточно определить проблемное приложение и «поправить» его настройки или просто перезапустить его. IO wait - скорее всего проблема с дисковой подсистемой и более детально об этом будет ниже. Если повышен System time - значит сама система потребляет завышенное количество ресурсов. Причин может быть много и надо иметь более детальное представление о системе. Например старые версии Ubuntu имели глючный kswapd, который утилизировал процессор на 100% при своей работе. Или большое количество сетевых пакетов в следствии той или иной разновидность dos/ddos. Или «залипло» некое приложение пользователя и плодит тяжелые для системы операции, такие как выделение/освобождение памяти или создание большого количества процессов и их завершение.


- Память. Утилизацию можно посмотреть командами top, free, cat /proc/meminfo, vmstat, sar. Необходимо обратить внимание на объём свободной памяти и использование swap. Надо понимать, что метрика «free» не всегда отображает реальное положение дел. В частности буферы/кеш, которые могу занимать память, но могут выгружаться из неё при необходимости. Так же надо знать какие данные попадают в swap. Например, почему при свободной памяти может использоваться swap.


- Диск. Крайне желательно понимать что за диски, как они подключены и собраны. Информацию по использованию можно посмотреть командами iostat или iotop. Первая работает в разрезе блочных устройств, вторая по приложениям. Метрики на которые надо обратить внимание - скорость чтения/записи, время ожидания, количество операций, утилизация устройства. Далее, в зависимости от типа дисков, есть разные варианты развития событий. У виртуальных машин при аномалиях нужно смотреть на диски гипервизора и их утилизацию. У физических серверов - на тип диска и транспорт подключения. Если это обычный диск - смотрим smart и прочие метрики диска командами smartctl, hddtemp, hddparm. Большое количество bad-блоков или перегрев диска могут отрицательно влиять на скорость. Если диски собраны в raid - смотрим на его состояние. Если это программный рейд - команды mdadm или zpool. Для аппаратных через утилиты производителя или через iLO. Для внешних диском надо смотреть из транспорт. Это FC или сеть. Для FC смотрим статистику портов на SAN свичах командами sfpshow, porterrshow и т.д. Для сети смотрим количество ошибок портах командами ifconfig, ip, cat /proc/net/dev. Для внешних дисков так же надо смотреть нагрузку на дисковом массиве или SDS. Так же это могут быть так называемые шумные соседи, которые при отсутствии QOS или его неправильной настройке могут оказывать взаимное влияние.


- Сеть. Для начала можно просто проверить пингом. Обычным и тяжелыми пакетами, размером 1кб. Далее смотрим ошибки на портах сервера или на коммутаторе (если есть доступ). Команды выше. Проверяем настройки командой ethtool. Смотрим скорость интерфейса и подключения. Смотрим внешний мониторинг на предмет утилизации сети. Пробуем проверить качество канала чем то простым, вроде ftp. Если сервер удалённый - смотрим маршруты, на предмет потерь и перестройки. Для этого можно использовать tracepath или mtr.


На этом всё. Для тех, кто дочитал до конца всю серию постов и кому это всё интересно - у меня есть небольшой бонус:


В конце января я решился на один интересный эксперимент. Я выложил на популярных сайтах по поиску работы своё резюме с завышенным ценником. Ну вернее я выложил в регионе резюме с московской зарплатой. Раз в неделю я понижал ожидаемый уровень зарплаты и смотрел количество отзывов, приглашений на собеседования, реальных собеседований, а так же приглашений на работу. Следующий пост будет накопительным, с января по текущую дату, а дальнейшие посты - еженедельные отчёты по успехам. Ну и в последнем посте я попытаюсь собрать всю информацию и сделать отчёт, на сколько востребованы Linux-администраторы в регионах, что предлагают и что ожидают в ответ.


To be continued…

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

Системный администратор 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


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

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

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

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


Если кто пропустил, вот начало: Системный администратор Linux и продолжение: Продолжение поста «Системный администратор Linux»


В комментариях к предыдущим постам было высказано много мнений по поводу тематики и самих вопросов. Была и критика, и занудство, и здравые мысли. От себя могу сказать, что это не универсальный список вопросов для собеседования. Это то, с чем у нас приходится сталкиваться чаще всего, что надо понимать и без чего рост компетенций будет заметно усложнён. Часть вопросов просто для понимания кругозора кандидата.

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

Так же и у нас: лучше долго выбирать наиболее подходящих под специфику и быстро догнать до нужного уровня, чем взять и обучить с нуля пусть даже очень грамотного новичка или не профильного специалиста.


Вопросы будут в порядке сложности. На многие вопросы я постараюсь давать два ответа. Первый - краткий и достаточный для того, что бы его зачесть. Второй ответ - более правильный или более развёрнутый, дающий кандидату преимущество перед остальными. Некоторые вопросы/ответы будут в форме диалога.


Готовы? Ну тогда поехали!


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

О: uname -a

В+: А если только версию?


О+: uname -r


В: Как узнать какие модули ядра загружены?

О: lsmod

В+: Как загрузить и выгрузить модуль?

О+: Загрузить командой modprobe, выгрузить ей же, но с ключом --remove, если модуль не используется.


В: Есть сервер с двумя интерфейсами. Один интерфейс смотрит в интернет, другой в локалку. На обоих адреса прописаны статикой. Как пользователей из локалки выпустить в интернет через этот сервер?

О: Маршрут по умолчанию должен быть назначен на интерфейс с интернетом, нужно поднять NAT через iptables и SNAT/DNAT или MASQUERADE, надо включить forward пакетов.

В+: Как именно это сделать?

О+: Для примера шлюз будет на RHEL-based дистрибутиве. В других дистрибутивах есть созвучные или аналогичные опции. В настройках интерфейса с локалкой надо прописать defroute=no, на интерфейсе с интернетом defroute=yes. Либо можно указать маршрут в файле route-название_интерфейса, который располагается рядом с файлом настроек интерфейса. Настройка NAT будет зависеть от того, фиксирован ли список клиентов в локалке или нет. Если фиксирован - настройка через SNAT, если не фиксирован - MASQUERADE. Так же, если к клиенту будут обращения из внешней сети, придётся использовать DNAT. Включить forward пакетов можно временно командой echo 1 > /proc/sys/net/ipv4/ip_forward или постоянно, прописав net.ipv4.ip_forward = 1 в файл /etc/sysctl.conf и загрузить их из файла командой sysctl -p.

О++: Можно ещё поднять прокси и выпустить через него. Например squid. При этом либо явно указав этот прокси у клиентов, либо прозрачно, через iptables и POSTROUTING.


[Дословный синтаксис команд не нужен. Главное, что кандидат понимает что именно и как он будет делать. Если кандидат расскажет ещё что такое этот ip_forward - это будет дополнительным плюсом.]


В: Есть сервер с двумя интерфейсами, к каждому из которых подключён отдельный интернет провайдер. Например первый 100 мегабит, второй 50. Можно ли как-то получить суммарный внешний канал в 150 мегабит?

О: Штатно - нельзя. Но можно поставить пакет iproute2, который позволяет сделать два маршрута по умолчанию, каждый из которых будет иметь свой вес. Например вес первого интерфейса сделать вес 2, а второго - 1. Тогда трафик будет пытаться направляться в соотношении 2 к 1 относительно интерфейсов. В идеальных условиях это даст суммарные 150 мегабит. В реальных - будет зависимость и «тяжелых» сессий, которые будут привязываться к одному конкретному интерфейсу.


В: Как посмотреть какой DNS использует система? У нас настроен DHCP и «в лоб» в настройках на клиенте ничего нет. Файл /etc/resolv.conf много где считается устаревшим и там может быть пусто.

О: Попробовать отрезольвить любой адрес. Например командами nslookup, host или dig. Они показывают какой DNS сервер был использован.

В+: А если у нас какая нибудь Ubuntu, которая из коробки за собой тянет dnsmasq? В таком случае эти команды будут говорить, что DNS сервером является 127.0.1.1 или 127.0.0.53. Как быть?

О+: Если есть dnsmasq, значит у него есть конфиги и логи, в которых можно посмотреть что он использует. В крайнем случае можно использовать tcpdump и посмотреть какие есть исходящие подключения на 53 порт.


В: Как посмотреть таблицу маршрутизации на любой системе?

О: Это можно сделать командами route -n или ip r

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

О+: Команда netstat -rn работает везде, на Linux, Windows, MacOS, Solaris. Даже на Android. В некоторых системах это единственный вариант посмотреть маршруты.


В: Есть LVM. На одной VG есть 2 LV. Один смонтирован в корень системы, другой в /home. При создании разделов ошиблись и создали корень слишком маленький, а home слишком большой. Можно ли как-то перекинуть место из одного раздела в другой? Оба раздела содержат данные, которые нельзя удалять. В разделе home есть достаточно свободного места. Систему нельзя перезагружать.

О: Уменьшить можно, если файловая система позволяет уменьшать свой размер. Например ext4 позволяет это сделать, а xfs - нет. Увеличивать разделы можно «на горячую». Для уменьшения надо размонтировать /home, уменьшить файловую систему, уменьшить LV с этим разделом, смонтировать /home, увеличить LV раздела с корнем, увеличить файловую систему. Командой lvextend с ключом -r последние два действия можно совместить.

В+: А есть там xfs?

О+: Тогда придётся использовать временный диск. Скопировать на него данные из /home, пересоздать раздел меньшего размера, скопировать данные обратно. Можно командами pvs или vgs посмотреть свободное место на LVM. Возможно не всё пространство было размечено и его можно будет использовать вместо временного диска.


В: Как определить тип файловой системы, в которую отформатирован LV раздел в LVM? Команда fdisk -l показывает, что код раздела 83 или 8E, т.е. раздел Linux или LVM раздел.

О: Если раздел смонтирован можно командами df -T, mount или findmnt

В+: А если не смонтирован?

О+: Команда lsblk с ключом -f показывает тип файловой системы и метки, например для oracleasm дисков.


В: Как получить сводку о всём железе?

О: Командами группы ls. Например lspci, lsusb и т.д. Либо cat /proc/cpuinfo, cat /proc/meminfo и т.д.

В+: А более развёрнуто? Например с серийными номерами памяти и количеством плашек памяти?

О+: Можно через smbios командой dmidecode. Либо через ipmitool подключиться к менеджменту, если он есть, и через его shell достать данные.


В: Как обновить все пакеты, кроме одного? Например кроме ядра.

О: В RHEL-based командой yum update --exclude kernel*. В других дистрибутивах должен быть похожий ключ, который можно посмотреть в man’е к пакетному менеджеру.

В+: А если постоянно исключить из обновления?

О+: Можно использовать yum versionlock kernel*. В других дистрибутивах так же можно поискать в man’е по словам lock, hold или freeze.


Для начала, думаю, достаточно. Продолжение будет в следующих постах. Постараюсь сильно с ними не затягивать.

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

Системный администратор Linux

К сожалению я не успел в очередную волну историй про собеседования, но всё же хочется поделиться своим опытом со стороны работадателей. Как часто бывает в больших организациях, собеседование проходит в несколько этапов. Однако самый первый и самый важный этап - техническое собеседование. Надо выяснить уровень знаний претендента, умение находить решения не типовых задач и провести первичную оценку адекватности, как бы смешно это не звучало. Так получилось, что результате реорганизации в моём отделе образовалось некоторое количество вакансий. И это именно системные администраторы. И именно Linux.


Для начала немного теории. Системный администратор, это человек, в зоне ответственности которого именно операционная система. Чаще всего это серверные версии операционок. Это и Windows, и Linux, и всякая экзотика типа Solaris, HP-UX или AIX. А вот заправка картриджей, решение вопросов «У меня Excel не работает» или «У меня почта отправляется» - это хелпдеск, а не администрирование системы. К сожалению, в маленьких фирмах эти две должности зачастую объединены в одну. Отсюда и стереотипы, что сисадмин это мастер на все руки. Он и утюг посмотрит, и ноут починит, и 1С на сервере обновит. А если из клавиатуры вытрясет все крошки - может решить мировую проблему голода.


Так же стоит сказать, что в больших организациях сисадмины специализируются зачастую только на одном направлении. Обычно таких направлений два. Это семейство ОС Windows и семейство ОС Linux/Unix. Внутри каждого направления бывает дополнительные разделения. Например это виртуализация на какой-либо из платформ, либо это высоконагруженные системы обработки данных, либо сервера под базы данных и т.д. Хороший администратор отлично знает своё направление и понимает принципы работы смежных.


Кандидаты бывают разные, но в 95% случаев резюме мало соответствует реальности. Чаще всего получается так:

- Я ставил на ноут Ubuntu и значит могу написать «Экспертные знание в области Linux».

- В наследство от предыдущего админа достался шлюз на FreeBSD - как минимум надо перечислить всё, что там стоит и что лично не настраивал.

- Написал Hello world на Python/Lua/etc - опыт программирования не меньше Middle в резюме.


И таких примеров масса. Где-то когда-то слышал или кто-то на работе использовал - значит надо указать в резюме.

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

Для оценки у меня есть список 40 вопросов разного уровня. Чем дальше по списку человек заходит - тем больше вероятность, что он будет у нас работать. Уровень от «как посмотреть версию ядра» или «как можно назначить ip адрес на интерфейс» до «принципы построения высоконадёжных кластеров виртуализации» и «преимущества Fibre Channel перед iSCSI». За пару лет я провёл больше сотни собеседований и на все вопросы никто ещё не ответил, но были люди, которые знали ответы на многие из них, а чего не знали - с подсказками понимали. Всего их было четверо и все в настоящий момент работают со мной.


В зависимости от уровня знаний и стремлений кандидата собеседование длится от 20 секунд до 3 часов. При этом мы не тираны и не маринуем 3 часа «без вынимачки». Мы и кофе напоим и печеньками угостим. Обычно две трети времени занимают наши вопросы и треть времени мы отвечаем на вопросы кандидата и рассказываем об организации.


Ну и на последок «успешные» примеры:


Успеть за 20 секунд.

- Как у Вас со знаниями Linux?

- Никак.

- До свидания.

Кандидат откликнулся на вакансию Старший системный администратор Linux.


Не интересно.

- У Вас в резюме опыт работы с Centos, Gentoo, FreeBSD. На сколько хорошо Вы с ними знакомы?

- Никак не знаком. Мне они не интересны.

- Зачем откликались на вакансию линукс-админа?

- …

- Всего доброго.

Зачем было тратить своё и чужое время - не понятно.


Уровень английского - made in velikobritania.

- Как исключить из обновления пакет?

- …

- Ну какой ключик надо использовать?

- …

- Хорошо, Вы набрали man yum, нажали слэш для поиска и что будете искать? Там же много всего. Какое слово?

- …

- У Вас указано уверенное владение английским. Есть слово include, включить. А как будет наоборот, исключить?

- Uninclude?

- [тихий мат про себя]

Самое страшное, что это не единичных случай. Дважды только за прошлую неделю.


Что-то где-то слышал…

- У Вас в резюме есть опыт работы с git. Как сделать коммит в текущую ветку?

- …

- Надо набрать git и что? Какое слово дальше?

- …

- Зачем писать то, чего не знаете?

- …

Копипаста чужих резюме - зло.


Провал памяти.

- У Вас указан опыт разработки на Python. Какие есть встроенные типы структур данных?

- …

- Есть list, список, есть dict, словарь. А третий тип?

- Я не помню названия.

- Хорошо, list это прямые скобки, dict - фигурные, последний тип tuple - кортеж. Какие у него скобки?

- …

- Что за проект Вы писали на Python?

- Не помню.

- Ну что он делал? Для чего?

- Это давно было. Не могу сказать.

Знание Python это плюс в резюме только если оно действительно есть.


Это то немногое, что вспомнилось только за последние пару недель. Часто человека пытаешься подвести к ответу, доходит чуть ли не до такого: каким таким top можно посмотреть какую такую нагрузку на какой такой процессор?

Ожидание: «Нагрузку на процессор можно посмотреть командой top».

Реальность: […белый шум в глазах…]


Данный текст побудило написать профессиональное подгорание.

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

P.S: Если ты понял почти всё из сказанного, тебя это повеселило, ты живешь в Ростове-на-Дону и хочешь работать по специальности из заголовка за ЗП выше средней по рынку - милости прошу в телеграмм. Логин такой-же, как и тут. Да простят меня модераторы и не сочтут рекламой.

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

Вопрос на ЛОГИку

Прихожу в контору на собеседование, общаюсь сперва с девушкой эйч-аршей, очаровываю ее, что не сложно обычно, дальше ведет она меня к местному админу. Захожу к нему в каморку, сидит молодой парень, слегка пришибленный, как мне показалось, но админы же, мы все немного странные. Стали мы с ним беседовать. Я рассказал, кто я по жизни, с кем продвигаюсь, что умею, чему учусь. А он мне сразу такое:

- Вот тебе вопрос на логику: представь, что приходит к тебе юзер и говорит, мол, комп у него не работает. Твои действия?

- Спрошу, что именно не так...

- Да не, - морщится админ, - он тебе ничего вразумительного ответить не может.

- Сгоняю за паяльником и плоскогубцами и постараюсь спросить так, чтобы получить таки вразумительный ответ, - попытался отшутиться я.

- Так... - админ явно был чуть сбит с толку, - давай уберем из уравнения пользователя, его нет, вот совсем.

- Ну хорошо, - говорю, - комп включается?

- Да, работает, стоит включенный, на первый взгляд все нормально.

- Хм... Ну тогда полезу в его админку, логи посмотрю, чего было там...

- Вот! - админ чуть не запрыгал от радости, - молодец! Я же намекал: вопрос на ЛОГИку!


Я на него посмотрел с легкой опаской, мол, не, брат, ты и правда страннее, чем на первый взгляд показался. А потом подумал, а вообще-то он прав. Ну да, у него своя, со стороны не совсем очевидная ЛОГИка, но вот такой вот он есть, судя по всему нормально работает. Он себе берет помощника, с которым будет говорить на одном языке, понимать друг друга с полуслова. Так что норм, хороший админ и вопросы интересные.

Но работать там я, конечно, не стал. Пошел искать того, кто со мной на одном языке говорит.

1258

Как я собеседование провалил.

Позвонил мне друг и предложил взять офис на обслуживание. У меня свободное время как-раз было, согласился. Приехал, пообщался с людьми, посмотрел с чем работать - пара серверов и несколько компов, ничего сложного. Условия устроили и меня и принимающую сторону, но зафиксировать договор решили через неделю, когда директор будет на месте.

Приезжаю через неделю, встретились, проводили меня в кабинет директора и оставили с ним наедине. Я ожидаю краткого разговора о расписании и прочих формальностях, а он зачем то начинает спрашивать о деталях в которых ничего не понимает, да и не должен забивать ими голову, например как часто я буду дефрагментировать диски?

На дворе давно уже двадцать первый век, эпоха ядра NT, а меня расспрашивают о мифах из времен Windows 95. Я и отвечаю в духе мол ерунда это всё. И, честно говоря, совсем не понимаю зачем весь этот разговор. Идеальный сисадмин должен быть невидим как домовой, или суслик тот самый, и всё работает "само собой". Так что любопытство директора тут кажется мне совершенно излишним и никак я его не поддерживаю, стараюсь своими односложными ответами ускорить переход к деловой части разговора.

Но как ни странно, после нескольких дилетантских вопросов директор говорит спасибо и провожает меня из кабинета.

Я выхожу в растерянности, не понимая что это было и вижу, что к директору заводят ещё одного человека. И тут то до меня доходит, что это было собеседование!

Ну екарный бабай, предупреждать же надо. :)

Конечно, меня не взяли.

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