что нужно уметь системному администратору
Основы системного администрирования: что нужно знать сисадмину?
Системный администратор — это специалист, который отвечает за слаженную работу компьютеров, локальных сетей, оборудования и программного обеспечения на заданной ему «территории». Данных специалистов часто можно встретить :
Системное администрирование — это постоянный рабочий процесс, результатом которого является слаженная работа всего предприятия или организации, где трудится сам сисадмин. Поэтому эффективность работы этого специалиста напрямую влияет на показатели эффективности всей компании.
Системное администрирование
Системное администрирование — это определенные должностные требования, которые могут частично отличаться на разных предприятиях, но обязательны к выполнению. Системное администрирование может нести в себе:
Основы системного администрирования
Чтобы «войти» в профессию «системное администрирование», нужно соответствовать определенным требованиям. Часто эти требования, опять же, зависят от компании, куда планируете устраиваться. Но общие основы системного администрирования все равно можно выделить.
Итак, системный администратор должен:
Какие бывают направления системного администрирования
Как видно, спектр работ, которые затрагивает системное администрирование, очень широкий. Поэтому и основы администрирования для вхождения в эту профессию будут отличаться. В некоторых случаях сисадмину понадоби тся изучить язык программирования, чтобы писать небольшие скрипты для наладки системы, а иногда это ненужно. Очень часто администратору придется иметь дело с «Консолью» в Windows или с «Терминалом» в Linux. Поэтому не лишним будет изучить работу с этими инструментами.
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.
Системный администратор — что нужно знать, чтобы получать 160 000 рублей
Это не тот администратор, который ставит вам Windows.
Просматривая на сайтах объявления с IT-вакансиями, иногда можно наткнуться на что-то подобное:
Давайте выясним, кто такой системный администратор и что он делает.
Системный администратор для обычных людей
Есть два подхода к работе системного администратора — обывательский и профессиональный.
С точки зрения простого человека, администратор — специалист по компьютерам широкого профиля:
В общем, для масс сисадмин — это синоним слова «компьютерщик».
Системный администратор для ИТ-компаний
Другое дело — системный администратор в IT-компаниях. Там требования уже намного выше, и от работника ждут высокой квалификации в таких областях:
Если в обычных компаниях сисадмин — это мастер на все руки, то в ИТ-компаниях это «начальник отдела инфраструктуры, повелитель серверов и магистр автоматизации».
Что делает сисадмин
Вот как может выглядеть типичный список задач на день у такого сисадмина:
Понятно, что не каждый рабочий день и не у каждого администратора именно такой. Иногда на одну задачу может уйти несколько дней, а иногда в день бывает одна простая задача на полчаса.
Есть такая присказка про сисадминов: если системный администратор ничего не делает весь день и при этом всё работает, то это хороший сисадмин. Потому что его главная задача — сделать так, чтобы всё работало без сбоёв.
Сисадмин и девопс — это одно и то же?
Мы рассказывали про девопс-инженеров — ребят, которые тоже занимаются автоматизацией IT-процессов. Часто у них и у сисадминов появляются очень похожие задачи, но в целом — это разные профессии. Можно сформулировать отличие так:
Как стать сисадмином
Варианта два: пройти курсы или осваивать всё самому и постепенно.
С курсами вы получаете много теории по разным темам, но практика на занятиях может отличаться от того, с чем вам придётся работать в компании. Такие курсы хорошо проходить, когда у вас уже есть опыт и вы хотите подтянуть навыки.
Второй способ — самостоятельное изучение всего на реальных задачах. Например, так:
В таком режиме уже через 3–4 месяца вы станете вполне себе системным администратором начального уровня и сможете брать более сложные задачи.
Как стать системным администратором — пособие для начинающих (часть 2)
В этой части: подробнее о жизни эникейщика: как устроиться, чем заниматься, чего избегать, к чему стремиться.
Я откладываю вопрос о «будущем сисадмина» на следующие части — сейчас я сфокусируюсь на том, как начинается карьера. Повторю, опытным администраторам всё это будет казаться либо обидным, либо очевидным — но я достаточно посмотрел за эту весну на людей, которые пытаются «вскочить в индустрию», но у них не получается. Именно для них этот цикл статей. (Я не ощущаю себя достаточно умным, чтобы рассказывать про будущее карьеры для людей, у которых опыта, возможно, больше, чем у меня).
Вступление
Примерно до середины 2000ых было два пути стать системным администратором: через путь эникейщика и через профильное высшее образование (обычно, в всякого рода институтах связи). Первое давало много опыта, второе — довольно много знаний (из которых большая часть не нужна). Сейчас появился третий — всякого рода «курсы системного администрирования», которые, реально, тлен и прах (если судить по тому, что знают и умеют те, кто их закончил).
Я пока сфокусируюсь на первом — а именно, «через эникеи в админы».
Что должен знать эникей?
То, что я напишу, вызовет бурю возмущения (во всяком случае, именно такую бурю обычно вызывает текст вакансии с такими требованиями и з/п в 15-17 т.р. (Санкт-Петербург)).
Нужно: уметь установить виндоуз, починить ей загрузчик, точно знать, где находятся программы, данные пользователей и т.д. (то, что называется «уверенный пользователь windows»). Дальше интеренее: нужно иметь представление об СКС (объяснить, какие пары и зачем переворачиваются в кроссе), знать про маршрутизацию (на уровне объяснить что от чего отделяет маска сети), DNS (на уровне знания про существования RR и способности определить IP по dns-имени в консоли), диагностику сети (знать, что такое пинг и уметь интерпретировать его вывод), нужно иметь какой-никакой опыт с офисными приложениями, уметь читать отлупы почтовых серверов.
Тяжеловатый список, правда? Последний раз, когда я искал помощника сисадмина, я решил не сдаваться и остановился именно на таком уровне. Нужно сказать, человек таки (через 3 недели) нашёлся.
Итак, первое — это знания. Где их получить? Видимо, дома. Внимательно думайте что делаете, старайтесь разобраться «почему». Каждая переустановка windows с нуля — ваш проигрыш.
Второе — адекватность. Свободный график, поблажки по времени работе — это удел админов. Эникейщик должен быть вовремя (и никого не волнует маршрутка в пробке), он должен быть приветлив к пользователям, он должен владеть русским языком и более-менее письменным этикетом (чтобы отвечать на письма внутри компании вменяемо).
Собеседование
Дальше вам нужно оценить адекватность людей вокруг. Трудная задача. Не стоит заигрывать в крутых админов и панибратствовать (см п.1), спросите, чем занимается компания, если видите затруднения в ответе, уточни, что интересует только то, с чем нужно будет работать по должностным обязанностям. Многие компании представляют из себя жуткое сплетение разных ООО, которые делают что попало, и рассказывать про бизнес вам никто не будет.
Кстати, об ответе на вопрос «долго ли вы у нас собиратесь работать?», отвечайте честно: «хочу набраться опыта, думаю, что минимум год, если будет интересно, то дольше». Вполне разумный срок для эникейщика. Поиск работника не менее геморройный, чем поиск работы, так что человек с намерением поработать пару месяцев энтузиазма не вызовет, но и обещание работать в качестве эникея тут до гробовой доски тоже не вызовет доверия к вашим словам.
Что делать, устроившись на работу?
В этой секции о том, как выполнять служебные обязанности. О том, что на самом деле (для собственного карьерного продвижения делать, чуть ниже).
Во-первых, осознайте, для чего вас наняли на работу: снять с админа работу. Не её излишек, очень редко администратор бывает совсем уж занят, а снять с него самую неприятную её часть: общение с пользователями и танцы вокруг компьютеров с бубном.
Вообще, это касается не только «помощника», всегда соглашайтесь на любую разовую работу (ну, кроме работы наркодиллером и испытателем ракет) — однократно вы получите от этой работы больше опыта, чем работодатель от вас пользы. Один раз протащили СКС — пачка опыта, один раз разобрались с видеокамерами — другой бесценный опыт. Научились программировать системный телефон АТС — опять же опыт. Опыт, опыт, опыт. Столкнувшись с проблемой пытайтесь не только решить её здесь и сейчас, но ройте по-максимуму. Если есть время, старайтесь прочитать в гугле хоть сколько-то про каждое новое название, которое встречаете.
Что на самом деле нужно делать?
Итак, у вас есть сколько-то времени ежедневно между звонками бухгалтеров о залипшей кнопке, посылом «пойти почини вот ту неведомую фигню» и прочими глупыми, жрущими время и низкооплачиваемыми вещами.
Это время можно:
а) Потратить на игры. Уносить сразу же. Не только потратите всё время, но ещё и получите массу проблем по работе, потому что будете тупить, тормозить и не успевать сделать, что сказали.
б) Потратить на сёрфинг, вконтактик, чатики, двачики, лепру, ещё какой другой замечательный в своей социализации сервис. Примерно то же самое, правда, менее опасно для работы.
в) Тратить на самообучение.
И вот это — главное.
Запомните, главные различия между админом и эникейщиком: теоретические знания и опыт. Опыт вы вычитать не сможете, он придёт со временем. Но какой именно он придёт, и, главное, первый пункт зависит ТОЛЬКО от того, сколько вы будете читать.
Читать, читать, читать, читать.
Если на работе есть проф. литература — читать всё. Даже если половину не понимаете. Прочтёте всю полку — начинайте читать то, что не поняли раньше.
Поток знаний, который на вас обрушится из самой глупой и зачуханной админской книжки достаточен, чтобы вкачать 2-3 левела по администрированию, причём по совершенно несвязным с темой книги темам. (Воспоминания: книжка по 2003 экчейнжу мне дала огромный пласт знаний по устройству виндов и active directory, наверное, больше, чем про эксчейнж).
Первые книги будет читать безумно тяжело. Но это нужно делать, потому что если вы не научитесь учиться, то пик вашей карьеры — престарелый полуадмин-идиот. Я таких встречал, они в 45+ лет несут наивную ахинею про антивирусы и глючную винду. Преимущественно такие выживают в гос. организациях или подыхающих от безделия полусоветских конторах.
Итак, читать, читать, читать.
Что делать, если литературы нет?
1) Купить (иногда кусается)
2) Читать, что есть (с экрана)
3) Попытаться попросить купить книжки за счёт компании (шансов мало, но есть).
В любом случае, читать, читать, читать. Договоритесь с самим собой — не менее часа в день на чтение _КНИГ_. Болтовня на тематических ресурсах за это не засчитывается. Сразу отвечаю на вопрос, каких книг: всех, которые хоть как-то касаются того, с чем вы работаете и до которых у вас дотянулись руки. За условный год вам нужно прочитать не меньше 20-30 книг, что очень, очень, очень много (это не беллитристика, некотрые умные книги нужно 2-3 раза перечитывать). Если уж совсем хочется руководства — ну, хотя бы «DNS и Bind» Альбеца и Ли. В принципе, Неймет хорош, он, правда, не по виндовой части. От себя ещё порекомендую Филимонова, «Основы мультисервисных сетей Ethernet», даёт очень мощный пинок по куче технологий. Но, 2-3 книги погоды не делают — читать, читать, читать.
Следующий пункт: общение на тематических форумах, комьюнити, и т.д. Полезно, но не заменяет книги. Лучше читать ответы, максимум, задавать вопросы. Умничать пока рано, но если вас тыкают носом в вашу глупость, страйтесь выяснить, почему вы всё ещё идиот, а не устраивайте битву троллей за кубок Флеймера. Если уж втянулись в спор, то аргументируйте — ищите источники, доказывайте. В принципе, один затяжной холивар может привести к тому, что вы сильно улучшите свои знания в области — но это при условии, что вы пытаетесь доказать свою точку зрения по источникам, а не громким и могучим IMHO.
Далее, как уже сказано ранее, старайтесь разобраться. Если вы будете задавать идиотские вопросы по работе, то это нормально (учтите, только, что админ не бог, и если он отмахивается, то есть вероятность, что он просто не знает).
Что учить?
Как сказано ранее, на первых порах всё — смежные вопросы из книг дадут вам первичные знания широкого спектра.
К моменту, когда вы это всё изучите, вы с большой вероятностью уже будете иметь какой-никакой опыт и вполне сойдёте за начинающего админа.
Чего избегать?
Тут мы начинаем самую сложную часть.
Во-первых, в мире Windows принято пиратить платный софт. В мире линукса тоже, только платного софта почти нет, в репозиториях много нужного и опенсорсного, так что проблема менее остра.
Наш доблестный уголовный кодекс предусматривает, что виноват тот, кто софт ставил. И если по служебной записке — то «по предварительному сговору», то есть отмазок нет. Если что-то случится — вас попытаются сделать виноватым. Учитывайте это, старайтесь держаться от Microsoft, Adobe, Autocad, 1С подальше. К сожалению, выбора нет, решайте сами — рисковать потенциальным условным сроком или вполне неиллюзорно вылететь с работы «за идиотизм». Это проф.риск многих начинающих админов (а так же цена работы с хорошо знакомой windows).
Вас могут попытаться сделать гибридом грузчика и помощника завхоза. От переноски серверов (легко) и серверных упсов (тяжело) вам не отвертеться, а вот от всякой завхозной ерунды — старайтесь уклоняться. Ибо время ест, а квалификации не добавляет.
Начинающему сисадмину: как из хаоса сделать порядок
Я системный администратор FirstVDS, и это — текст первой вводной лекции из моего краткого курса помощи начинающим коллегам. Специалисты, которые недавно начали заниматься системным администрированием, сталкиваются с рядом одних и тех же проблем. Чтобы предложить решения, я взялся написать этот цикл лекций. Некоторые вещи в нём специфичны для технической поддержки хостинга, но в целом, могут оказаться полезными если не для всех, то для многих. Поэтому я адаптировал текст лекции, чтобы поделиться здесь.
Не имеет значения, как называется ваша должность — важно, что по факту вы занимаетесь администрированием. Поэтому начнем с того, чем должен заниматься системный администратор. Основная его задача — это приведение в порядок, поддержание порядка и подготовка к грядущим увеличениям порядка. Без системного администратора на сервере начинается бардак. Логи не пишутся, или в них пишется не то, ресурсы распределяются неоптимально, диск заполняется всевозможным мусором и система начинает медленно загибаться от такого количества хаоса. Спокойно! Системные администраторы в вашем лице приступают к решению проблем и устранению бардака!
Столпы системного администрирования
Однако прежде, чем приступать к решению проблем, стоит познакомиться с четырьмя основными столпами администрирования:
Документация
Документация подразумевает под собой не чтение документации (хотя без этого никуда), но и ведение.
Как вести документацию:
В каком формате вы это будете делать, зависит только от вас: это может быть система с заметками, личный блог, текстовый файл, физический блокнот. Главное, чтобы ваши записи отвечали следующим требованиям:
Вот так может выглядеть документация: от примитивных записей в блокноте (картинка выше), до полноценной многопользовательской базы знаний с тегами, поиском и всеми возможными удобствами (ниже).
Вам не только не придётся искать одни и те же ответы дважды: документирование будет замечательным подспорьем в изучении новых тем (конспекты же!), прокачает ваше паучье чутьё (способность диагностировать сложную проблему, бросив один поверхностный взгляд), добавит организованности в ваши действия. Если документация будет доступна вашим коллегам, то позволит им разобраться, что и как вы там нагородили, когда вас не будет на месте.
Шаблонизация
Шаблонизация — это создание и использование шаблонов. Для решения большинства типовых вопросов стоит создать определённый шаблон действий. Для диагностики большинства проблем следует использовать стандартизированную последовательность действий. Когда вы что-то починили/установили/оптимизировали, работоспособность этого чего-то стоит проверять по стандартизированным чек-листам.
Шаблонизация — лучший способ организации рабочего процесса. Используя типовые процедуры для решения наиболее частых проблем, вы получаете много всего классного. Например, использование чек-листов позволит вам диагностировать все важные для работы функции и отбросить диагностику маловажной функциональности. А стандартизированные процедуры сведут к минимуму ненужные метания и снизят вероятность ошибки.
Первым важным моментом является то, что процедуры и чек-листы тоже нужно документировать. Если просто надеяться на память, можно пропустить какую-нибудь реально важную проверку или операцию и всё развалить. Второй важный момент — все шаблонные практики можно и нужно модифицировать, если этого требует ситуация. Идеальных и абсолютно универсальных шаблонов нет. Если проблема есть, а шаблонная проверка её не выявила — это не значит, что проблемы нет. Однако прежде, чем браться за проверку каких-то маловероятных гипотетических проблем, всегда стоит сперва сделать быструю шаблонную проверку.
Оптимизация
Оптимизация говорит сама за себя. Рабочий процесс нужно максимально оптимизировать в плане время- и трудозатрат. Тут вариантов бессчётное множество: выучите горячие клавиши, сокращения, регулярные выражения, доступные инструменты. Ищите варианты более практичного использования этих инструментов. Если вы 100 раз на дню вызываете команду, повесьте её на клавиатурное сокращение. Если вам нужно регулярно подключаться к одним и тем же серверам, запишите alias в одно слово, который будет вас туда подключать:
Ознакомьтесь с разными вариантами доступных инструментов — возможно, есть более удобный терминальный клиент, DE, менеджер буфера обмена, браузер, почтовый клиент, операционная система. Узнайте, какими инструментами пользуются ваши коллеги и знакомые — может, они выбирают их не просто так. После того, как вы подберете инструменты, научитесь их применять: выучите ключи, сокращения, tips and tricks.
Оптимально используйте стандартные инструменты — coreutils, vim, регулярные выражения, bash. Для последних трёх есть огромное количество замечательных мануалов и документация. С их помощью можно довольно быстро перейти от состояния «я чувствую себя обезьяной, которая колет орехи ноутбуком — до «я обезьяна, которая использует ноутбук, чтобы заказать себе орехокол».
Автоматизация
Автоматизация перенесет тяжёлые операции из наших уставших рук в неутомимые руки автоматики. Если какая-то стандартная процедура выполняется в пяток однотипных команд, то почему бы не обернуть все эти команды в один файлик и не звать одну команду, которая этот файлик качает и выполняет?
Собственно автоматизация на 80% состоит из написания и оптимизации своих собственных инструментов (и ещё на 20% из попыток заставить их работать как надо). Это может быть просто продвинутый однострочник или же огромная всемогущая тулза с веб-интерфейсом и API. Главный критерий здесь — создание инструмента должно занимать не больше времени и усилий, чем количество времени и усилий, которое вам этот инструмент сэкономит. Если вы пять часов пишете скрипт, который вам больше никогда не пригодится, для задачи, на решение которой у вас без скрипта ушел бы час-другой — это очень плохая оптимизация рабочего процесса. Можно потратить пять часов на создание инструмента, только если количество, тип задач и время это позволяют, что бывает нечасто.
Автоматизация необязательно подразумевает написание полноценных скриптов. Например, чтобы создать кучу однотипных объектов из списка, достаточно ловкого однострочника, который автоматом сделает то, что вы бы делали руками, переключаясь между окнами, с кучами копипаста.
Собственно, если построить процесс администрирования на этих четырёх столпах, то можно довольно быстро повысить свою эффективность, продуктивность и квалификацию. Однако этот список нужно дополнить ещё одним пунктом, без которого работа в IT практически невозможна — самообразованием.
Самообразование сисадмина
Чтобы быть в этой сфере хоть чуть-чуть компетентными, нужно постоянно учиться и узнавать новое. Если у вас нет ни малейшего желания сталкиваться с неизвестным и разбираться, вы очень быстро «просядете». В IT постоянно появляются всевозможные новые решения, технологии и методы, и если вы не изучаете их хотя бы поверхностно — вы на пути к проигрышу. Многие области информационных технологий стоят на весьма сложном и объёмном базисе. Например, работа сети. Сети и интернет есть везде, вы сталкиваетесь с ними ежедневно, но стоит копнуть в технологии, которые стоят за ними, вы обнаружите огромную и очень сложную дисциплину, изучение которой — ни разу не прогулка в парке.
Я не стал включать этот пункт в список, потому что он — ключевой для IT в общем, а не только для системного администрирования. Естественно, выучить абсолютно всё и сразу не получится — у вас просто физически не хватит времени. Поэтому при самообразовании следует помнить о необходимых уровнях абстракции.
Вам необязательно сразу учить, как работает внутренний менеджмент памяти у каждой отдельно взятой утилиты, и как он взаимодействует с менеджментом памяти Linux, но вот что оперативная память из себя представляет схематически, и зачем она нужна, знать неплохо. Вам необязательно знать, как структурно отличаются заголовки у TCP и UDP, но было бы неплохо понимать основные отличия протоколов в работе. Вам не нужно изучать, что из себя представляют затухания сигнала в оптике, но было бы неплохо знать, почему настоящие потери всегда наследуются по узлам. Нет ничего плохого в том, чтобы знать как работают определённые элементы на определённом уровне абстракции и необязательно разбирать абсолютно все уровни, когда абстракции нет вообще (вы просто свихнётесь).
Однако в своей области рассуждать на уровне абстракции «ну это такая штука, которая позволяет показывать сайтики» — не очень хорошо. Следующие лекции будут посвящены обзору основных областей, с которыми системному администратору приходится сталкиваться в работе на более низких уровнях абстракции. Я постараюсь ограничить количество обозреваемых знаний минимальным уровнем абстракции.
10 заповедей системного администрирования
Итак, мы усвоили четыре основных столпа и фундамент. Можно начинать решать проблемы? Ещё нет. Перед этим желательно ознакомиться с так называемыми «best practices» и правилами хорошего тона. Без них есть вероятность, что вы принесёте больше вреда, чем пользы. Итак, начнём:
Основные инструменты, с которыми вам придётся работать больше 50% времени — grep и vim. Что может быть проще? Поиск по тексту и редактирование текста. Однако и grep, и vim — мощнейшие многофункциональные мультитулы, которые позволяют искать и редактировать текст эффективно. Если какой-нибудь виндовый notepad позволит вам просто написать/удалить строчку, то в vim’е можно делать с текстом почти что угодно. Не верите — вызовите из терминала команду vimtutor и начинайте учить. Что же касается grep — основная его сила в регулярных выражениях. Да, сам инструмент позволяет довольно гибко задавать условия поиска и выводимые данные, но без RegExp это особого смысла не имеет. И регулярные выражения знать нужно! Хотя бы на базовом уровне. Для начала я бы посоветовал вам посмотреть вот это видео, в нём разбираются основы основ регулярных выражений и их применения совместно с grep. Ах да, при совмещении их с vim, вы получаете ULTIMATE POWER возможность делать с текстом такие вещи, что их приходится обвешивать значками 18+.
Я бы посоветовал запомнить, что примерно выполняет каждая отдельная тулза и ключики к самым часто используемым командам, для всего остального есть man. Не стесняйтесь звать man, если вы в чём-то сомневаетесь. И обязательно прочитайте man на сам man — он содержит важную информацию о том, что вы найдете.
Зная эти инструменты, вы сможете эффективно решить значительную часть задач, с которыми столкнетесь на практике. В следующих лекциях мы рассмотрим, когда применять эти инструменты и структуры основных служб и приложений, к которым они применяются.
С вами был системный администратор FirstVDS Кирилл Цветков.