Как стать автором
Обновить

Девять признаков сурового администратора Unix

Время на прочтение 4 мин
Количество просмотров 131K
Автор оригинала: Paul Venezia
Я, к сожалению, не нашел русского перевода этого текста, хотя мне он показался крайне… просветляющим, что ли.

Признак 1: мы не используем sudo


Как CAPS LOCK — «круиз-контроль для крутотенюшки», так и sudo — «костыль для сомневающихся». Если нам нужно сделать что-то от имени root, мы используем su, а не фигню навроде sudo. Если какая-то из Unix-подобных операционных систем заставляет нас использовать sudo, то первое что мы делаем — sudo su и устанавливаем пароль для пользователя root, чтобы комфортно пользоваться su в дальнейшем. Постоянное использование sudo можно сравнить с плаванием c надувным кругом в животе — это безопаснее, да, но лишает необходимости обдумывания поступков.

Признак 2: мы используем vi, а не emacs, и уж точно не pico или nano


Несмотря на то, что emacs близок и люб сердцам многих администраторов Unix, на самом деле это эквивалент Microsoft Word для Unix. Vi — а в особенности vim — настоящий инструмент сурового Unix гуру, которому нужно быстро делать то, что ему нужно без всякой ерунды, которую таскает с собой emacs. В emacs встроен чертов тетрис, чтобы было чем заняться, да.

Я неохотно признаю, что все эти свистелки и перделки в vim, такие как сворачивание кода и синтаксическая подсветка воспринимаются совершеннейшей фигней, но когда мозг уже слабо работает, концепция модального редактирования в vi очень помогает. А малый размер и существование для всех платформ в итоге создает Единственный Истинный Редактор. Спасибо, Билл, спасибо, Брэм.

Признак 3: регулярные выражения — наше оружие


Для непосвященных даже безобидное регулярное выражение выглядит так, будто их клавиатуру стошнило. Для нас же это чистая, истинная поэзия. Заключенная в сложности pcre сила несравнима ни с одним другим инструментом. Если Вам нужно заменить каждый третий символ по порядку в файле из 100 тысяч строк (кроме случая, когда четвертым символом является четверка), регулярные выражения не просто являются отличным инструментом, они являются единственным инструментом для такой задачи. И те, кто уклоняются от регулярных выражений всего лишь оказывают медвежью услугу не только себе, но и своим коллегам. В любом заповеднике суровых администраторов Unix найдется парочка знатоков регулярных выражений — этим парням постоянно присылают тонны сообщений в электронную почту с примерами регулярных выражений и слезливыми просьбами расшифровать, затем обычно следует никогда не выполняемое обещание выпивки.

Признак 4: мы ленивы по сути своей


Когда решение проблемы требует от нас множества повторяющихся рутинных действий, то мы всегда предпочтем написать код, который это сделает. Обычно это занимает меньше времени, нежели рукопашный метод, но не всегда. Все равно, мы скорее займемся созданием того, что мы можем использовать повторно потом, нежели будем решать проблему здесь и сейчас. Обычно это пригождается потом, через несколько лет, когда мы встречаем схожую проблему и можем вытащить из рукава несколько сотен строчек кода на Perl, лежащих в нашей домашней директории, решить проблему за несколько минут и вернуться к улучшению нашего кода. Или к незаконченному на три звезды уровню в Angry Birds.

Признак 5: мы предпочитаем элегантные решения


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

Признак 6: мы уверены, что ответ на вопрос зависит от вопрошающего


Достижение определенного уровня Unix-просветления заключается в абсолютной уверенности в Ваших фундаментальных знаниях. Это также означает, что мы никогда не верим в проблему, пока не увидим ее сами. Скажите суровому администратору Unix, что файл «исчез» — и получите в ответ презрительную насмешку. Докажите, что это действительно произошло — и он погрузится в решение проблемы без оглядки, копая до тех пор, пока не найдет подходящее осмысленное объяснение причины и подходящее решение. Многие считают, что это признак высокомерия или заносчивости. Так и есть, однако смиритесь, мы это заслужили.

Признак 7: мы ближе к патологоанатомам, нежели к докторам


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

Нам несложно перезапустить процесс или выдать разрешения 777 на файл или директорию. Но это только половина решения проблемы. Почему этому процессу нужен перезапуск? Нормальные процессы не нужно перезапускать, и нам надо знать, почему это правило не выполняется.

Признак 8: мы знаем о Windows больше, чем показываем


Даже несмотря на то, что на наших машинах не установлен Windows и мы ни капельки не беспокоимся о серверах с Windows, обычно мы неплохо умеем диагностировать и исправлять проблемы Windows. Это потому, что мы сталкивались с этими проблемами, когда они просачивались в зону нашей ответственности. Однако мы не любим признавать это, поскольку в большей части случаев Windows не разделяет глубоко логичные принципы Unix, и это нам не нравится. См. также признаки 5 и 6 выше.

Признак 9: перезагрузка — не наш метод


Компьютеры с Unix не нуждаются в перезагрузке. Пока у нас есть хотя бы малейший шанс исправить проблему без перезагрузки, мы будем пытаться это сделать. Мы уверены, что перезагрузка нужна только в случае изменений ядра или аппаратной части, а решение проблемы при помощи перезагрузки — временное. Если проблема возникла однажды и была «решена» при помощи перезагрузки, то она появится снова. Мы лучше найдем решение проблемы, чем перезагрузимся и будем ожидать ее повторения.

Если некоторые из этих принципов кажутся асоциальными или трудными для понимания с позиции простого смертного, то это как раз потому, что так оно и есть. Там, где другие видят невнятные, слишком сложные методы, мы видим просветление, рожденное годами обучения, опыта и, что важнее всего, логики.
Теги:
Хабы:
+139
Комментарии 192
Комментарии Комментарии 192

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн
PG Bootcamp 2024
Дата 16 апреля
Время 09:30 – 21:00
Место
Минск Онлайн
EvaConf 2024
Дата 16 апреля
Время 11:00 – 16:00
Место
Москва Онлайн