Содержимое
#вашивопросы В вакансиях и требованиях часто пишут "опыт владения unix/linux системами, опыт работы с командной строкой, уверенный пользователь Linux". Что это означает? Какие нужны навыки? И как этому научиться? Я всю жизнь пользуюсь Windows и мне норм. Чтобы с этим разобраться нужно поставить себе linux в качестве ОС на компьютере и с ней работать? Если в вакансии требуется знание Linux, значит эта компания использует сервера с Linux, и пишет ПО, которое будет запускаться на Linux. Таких компаний, думаю, большинство. Разработка под Windows - это прерогатива платформы .Net (чаще всего на языке C#). Если вы не метите в «шарписты» - линукс точно нужен. И даже если метите - всё равно, скорее всего, пригодится. Почему айтишники любят линукс? По мнению многих, он гораздо удобнее для профессиональных целей, во многом проще и к тому же часто бесплатный. Обычные пользователи предпочитают Windows потому что он им привычнее. Юзеры чаще всего работают только с GUI - графическим интерфейсом пользователя - все эти окошечки и кнопочки, на которые надо нажимать. И для задач пользователя, их хватает - проверить почту, погуглить и написать какие-нибудь документы в ms office. А задача разработчика - писать программы - требует большего набора инструментов, кнопочек и менюшек на все потребности не хватит. Гораздо более гибкие возможности даёт командная строка. В windows это cmd - и она дико неудобная. Есть еще Powershell, он посимпатичнее, но всё равно. А вот линуксовая командная строка, скажем, bash - это просто небо и земля по сравнению с виндой. В былые времена разработчики, работающие с виндоуз, изворачивались как могли, чтобы поставить командную строку Linux на Windows: устанавливали себе разные cygwin и mingw - которые эмулировали bash на винде. Когда начинающие айтишники боятся пробовать что-то еще кроме Windows - это просто потому что он тупо привычнее, и не было опыта работы с другими ОС. Так вот, возвращаясь к вакансиям, где требуют линукс - в таких компаниях используются сервера с линуксом. На работе вам нужно будет к этим серверам подключаться по протоколу ssh и что-то с ними делать. Когда вы подключаетесь удаленно к серверу с линуксом, на нём не будет никаких кнопочек и менюшечек - только командная строка Linux и надо уметь с ней работать. Программы, которые вы будете ставить на эти сервера - должны быть написаны именно под Linux, а перед тем как вы их запустите на сервер, нужно будет запускать их у себя локально - и проверять, что они правильно работают именно на Linux. (Небольшой спойлер: часто эта задача решается с помощью контейнеров docker, а контейнеры докера - это тоже всегда линукс.) Откуда взять линукс, если у вас windows? - Если у вас windows-10, то в нём уже есть встроенный linux - видимо, даже microsoft признал, что без линукса никуда - тут инструкция, как его подключить. - Другой вариант для экспериментаторов - поставить ОС Linux в качестве второй операционной системы на ваш компьютер и работать с ним не через винду. - Ещё - можно запустить линукс прямо на винде в виртуальной машине (погуглите про virtual box) - это будет операционная система, которая будет запускаться в отдельном окошке и «думать», что она стоит на настоящем компьютере, а не в виртуальной машине. - Ещё один совсем легковесный вариант - поставить себе docker - и в нём запускать линукс для экспериментов (правда, заодно придётся разобраться с докером - но это точно пригодится в дальнейшем). Где научиться линуксу? Я начинала знакомство с *nix по книге Unix. Командное окружение - она хоть и довольно старая, но на удивление не устаревшая (раздел про си новичкам можно пропустить) - вот по ней можно освоить все основные команды для работы с Unix и Linux - и заодно восхититься, как же много он умеет. Помимо этого - посмотрите курсы по введению в линукс, скажем на платформе stepik - там есть бесплатные. А для более профессионального освоения линукс и обучения основам администрирования, можно рассмотреть и платные курсы, например вот этот на гикбрейнс, и не только там. Ваши вопросы можно присылать сюда: @hum_it_bot