your_little_knight
@your_little_knight

Что нужно изучать, чтобы лучше понимать Linux?

Здравствуй, QA!
Хочу в совершенстве знать линукс - знать, как работает ядро системы, как работает файловая система, как в данной архитектуре запускаются приложения, что такое зависимости, пакеты, репозитории и как они работают. Прошел курс на Stepik от института биоинформатики СПБГУ, очень понравилось, но там всего очень мало - просто работа с терминалом Ubuntu и всякими полезными фишками терминала.
Понимаю - вопрос, возможно, будет раздражать опытных гуру, которые отправят меня в google и на линукс-форумы, но хочется всё же узнать: если есть какая-то ультимативно полная знаний о Линуксе книжка, которая может заменить несколько тонн поисковых запросов - порекомендуйте.
Если такой нет, расскажите, как Вам, опытному линукс-юзеру - собирателю Arch из чистого ядра - удалось достичь таких высот, что Вы читали и где получали драгоценные знания.
И дистрибутив посоветуйте напоследок для новичка. Убунту - это лучшее для новичка или есть что-то более способствующее пониманию работы Линукса?
  • Вопрос задан
  • 3038 просмотров
Пригласить эксперта
Ответы на вопрос 7
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
Про файловую систему - изучить права доступа в POSIX, понять как работают iNode, почитать про File System Hierarchy Standard

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

Ну и желательно практика - поднять виртуалку с линуксом, попробовать в ней разные штуки. Суть в том, что именно через терминал делается большинство настроек, поэтому навык работы в шелле - критически необходим.
Как запорешь несколько виртуалок, получишь опыта больше, чем пролистав книжку.
Ответ написан
Zoominger
@Zoominger Куратор тега Linux
System Engineer
По устройству - читайте Немет. Книга, правда, несколько устарела, но архитектура Linux меняется очень медленно и всё равно осталась в тех временах.
По командной строке читайте Шоттс, отрабатывая на практике.

По дистрибутиву - ставьте Убунту в виртуалке, на реальное железо не ставьте.

Самый же лучший бустер - опыт работы, теория даст ну от силы 15-20% знаний. Ещё можете поставить Линукс на ПК в синглбуте, тогда глюки и корявость системы на десктопе прямо-таки с головой погрузят вас в увлекательный мир геморроя. Месяц-два и будете уже прожжёным линуксоидом.
Ответ написан
alpik
@alpik
no I, no mine
Пользуйтесь как основной системой, решайте практические задачи.
Чтобы лучше понять устройство - ставьте Linux from scratch, Arch, если много времени и упорства - Gentoo.
Успехов :)
Ответ написан
@phrippy
Краткое пособие для начинающих:
1. Начните

Просто начни использовать линукс-дистрибутив на практике и с каждым разом ставь себе задачи все сложнее и сложнее. В принципе, даже конкретная книжка не нужна - гугла вполне хватит. Еще потом и свою книжку можно написать. (Сам не понял, шутка ли это)
Ну и сам дистрибутив менять в процессе на более "сложный". Убунту - это, конечно, удобно, но польза от нее только для чайников.
Хотя можно прям сразу начать со сборки своего ядра в генту, но это крэйзи-вей какой-то
Ответ написан
@greylordo
О, а набежали то, набежали))
Генту, Скрейтч... Зачем? Спугнуть будущего пользователя Линукс?
Я понимаю желание изучать, но для начала сойдёт обычное использование Линукс. Та же классическая Убунта подойдет. И да - желательно на реальном, но не на основном железе. Не нужно только думать, что Убунту для хомячков. В организациях и серверных решениях этот дистрибутив популярен, пригодится в будущем. Можешь так же к гному привыкать, так как его пилят ред хат, как впрочем и само ядро. Да и волокиты меньше с Убунту. Я для Линукс использую сейчас ноут б.у., взятый с известного сайта объявлений. Можно за те же 12 тыщ найти с конфигом CPU i3, 12Gb RAM, 120 SSD, ~650 GTX GPU. И изучай. Как только освоишься, сразу переходи на Арч. Лично я убил кучу нервных клеток, примерно 3 дня на кучу попыток поставить себе Арч и в итоге достиг своего. В процессе установки, используя Арч вики, поймёшь - из чего примерно состоит дистрибутив, насладишься скоростью работы pacman (не сразу, придет время и поймёшь) и познакомишься с командами. Но это только начало пути. В процессе использования Арча тоже нужно подчерпывать знания из той же Арч вики, а такая возможность представится, поверь. Не забудь про репозиторий herecura в Арче, чтобы не обламываться. Возможно это будут и другие форумы или тот же ютуб. Когда освоишься в Арче и поймёшь, что ты теряешь кучу времени на действия, которые автоматизированы в той же Убунту (это как правило sudo systemctl enable/start сервис) или же замучаешься пользоваться напильником, или захочется ощущать, что твоя система - это что-то единое целое а не мозаика, то возвращайся на Убунту. Вот и весь секрет. Только практика.
P.S. пользуюсь Линуксом с 2009-2010
Ответ написан
sn0rk64
@sn0rk64
учи си и копайся в системных либах, переписывай их. напиши свой прокси сервер, шелл, примитивную файловую систему и тд.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 45 000 до 70 000 ₽
HighTeam Москва
от 60 000 до 120 000 ₽
Бастион Москва
от 50 000 до 70 000 ₽