Как учиться по этому курсу
Linux — это инструмент, а не теория. Книгу по Linux можно прочитать за выходные и через две недели забыть всё. Чтобы знания осели, нужно делать руками. В этом уроке — как именно делать руками, чтобы каждый час чтения превращался в час навыка.
Раскладка экрана
Лучший способ изучать этот курс — открыть терминал параллельно с уроком, разделив экран пополам. Слева — курс в браузере, справа — терминал.
На macOS — split-screen режим (Mission Control), на Linux — большинство тайловых WM это делают одной кнопкой (Super+Right на GNOME), на Windows — Snap Layouts (Win+Z).
Зачем разделение? Чтобы не переключаться. Между Cmd+Tab и Cmd+Tab теряется фокус. А когда курс и терминал рядом, переключение происходит просто глазами — это в 10 раз быстрее.
Sandbox-папка
Первое, что нужно сделать — создать sandbox. Это папка, в которую можно лезть с rm -rf без страха.
$ mkdir -p ~/linux-sandbox
$ cd ~/linux-sandbox
$ pwd
/home/user/linux-sandbox
На macOS путь будет /Users/user/linux-sandbox. На Linux — /home/user/. Подробнее про различия в модуле 4.
Внутри sandbox делайте подпапки на каждый урок, чтобы не путаться:
$ mkdir -p ~/linux-sandbox/module-04/lesson-02
$ cd ~/linux-sandbox/module-04/lesson-02
Sandbox — это место, где разрешено ВСЁ. Удалять, ломать, делать chmod 000, создавать симлинки в пустоту. Если что-то сломалось — rm -rf ~/linux-sandbox && mkdir ~/linux-sandbox, и вы снова на старте. Никакой потери данных, потому что в sandbox нет ваших файлов.
Главное правило: НИКОГДА не выполняйте команды из курса в рабочих папках (~/Documents, рабочий проект, и так далее). Всё — только в sandbox. Если урок просит rm -rf foo/ — это работает в sandbox/foo, но если случайно сделать в ~/Documents/foo (важные документы), вы потеряете данные.
Принцип «руками, не глазами»
В курсе много блоков с кодом:
$ ls -la
total 24
drwxr-xr-x 3 user user 4096 May 13 19:00 .
drwxr-xr-x 47 user user 4096 May 13 18:55 ..
-rw-r--r-- 1 user user 42 May 13 19:00 test.txt
Соблазн — пробежать глазами и идти дальше. Это плохая стратегия. Правильная стратегия:
- Открыть терминал.
- Вбить команду РУКАМИ (не копировать).
- Посмотреть на вывод у себя.
- Сравнить с тем, что в курсе. Если отличается — понять почему.
- Прочитать объяснение в курсе.
«Вбить руками» — это критично. Когда вы копируете команду, мозг не запоминает. Когда вы набираете каждую букву, пальцы запоминают. Через две недели мышечная память сделает ls -la автоматически — без размышления, какая буква где.
Установите man-pages
man (manual pages) — это встроенная документация Linux. Когда видите незнакомую команду — man COMMAND. На большинстве систем man уже установлен, но иногда он минимален. Поставьте полный пакет.
На Ubuntu/Debian:
$ sudo apt update
$ sudo apt install -y man-db manpages manpages-dev
На macOS man-pages идут с системой, но для GNU-утилит (после brew install coreutils) их надо устанавливать отдельно через brew install gnu-tools-man.
Откройте man для ls — пробежитесь по разделам:
$ man ls
Управление в man:
j/kили стрелки — листать вниз/вверх/pattern— поискq— выходh— справка
Привыкайте к man с самого начала. Когда столкнётесь с незнакомой опцией --time-style=full-iso — первое, куда вы должны пойти, это man ls, а не Stack Overflow. Привычка к man — это половина того, что отличает Junior от Middle.
Не бойтесь rm -rf (в sandbox)
Один из главных страхов новичков — «случайно удалю что-то важное». Этот страх парализует и мешает учиться. Решение — sandbox. В sandbox нет ничего важного. Делайте rm -rf от души.
Чтобы убедиться, что вы НЕ в важной папке, перед удалением всегда смотрите pwd:
$ pwd
/home/user/linux-sandbox/module-04/lesson-02
$ rm -rf *
Если pwd показывает что-то типа /home/user/Documents или /, остановитесь.
Никогда, никогда, НИКОГДА не запускайте rm -rf / или rm -rf /*. Это удалит всю систему. На современных GNU rm это блокируется через --preserve-root (по умолчанию), но rm -rf --no-preserve-root / всё ещё работает и убьёт систему. Не пишите такое даже «для эксперимента в виртуалке» — пусть пальцы вообще не привыкают к этой последовательности.
Делайте упражнения
В конце каждого урока есть блок «Попробуй сам» с конкретными командами. Не пропускайте. Они спроектированы так, чтобы потренировать именно ту мышцу, которую урок развивает.
В конце каждого модуля — экзамен из 6 вопросов, объединяющих темы модуля. Не пропускайте экзамены. Они вытаскивают «вроде понял» и проверяют на «реально понял».
Если экзамен валится — не идите дальше. Перечитайте уроки, переделайте упражнения. Linux строится снизу вверх, и неуверенность в модуле 4 даст путаницу в модуле 15.
Дополнительные инструменты на случай чего
Если что-то сломалось в системе, и вы не знаете как починить — три точки опоры:
tldr — это сообщественный проект с краткими примерами. Когда man tar пугает 800 строк документации, tldr tar даёт 5 наиболее частых сценариев. Установите.
$ sudo apt install -y tldr
$ tldr tar
Итог: чек-лист перед стартом
Перед тем, как идти в модуль 2, проверьте:
- Открыт терминал параллельно с курсом
- Создана папка
~/linux-sandbox/ - Поставлен
man-db(или эквивалент) - Установлен
tldr(опционально, но полезно) - Понимание: команды вбиваются руками, не копируются
Если всё [x] — переходите к модулю 2: что такое Linux и как он устроен.