Я только что купил книгу «UNIX в двух словах» по-настоящему дешево, хотя я провожу большую часть своего времени в той или иной форме Linux. Первая половина книги посвящена командам и синтаксису оболочки. О том, сколько из этого можно перевести или использовать в Linux?
2 ответа
Основные понятия (каналы, файлы, устройства, сети) остаются неизменными. Синтаксис оболочки также применим к Linux - почти все Unix-подобные ОС используют одну и ту же оболочку Bourne (sh) и / или ее производные (bash особенно распространен, zsh , вероятно, второй).
Основные команды (ls
, mv
, rm
) остаются прежними, но их параметры могут отличаться. В частности, большинство дистрибутивов Linux поставляются с инструментами GNU coreutils , которые имеют гораздо более широкий диапазон возможностей, чем их аналоги из BSD и Unix.
Некоторые другие команды также полностью заменены в Linux (пример: хотя такие инструменты сетевой конфигурации, как ifconfig
и route
все еще существуют в Linux, они считаются устаревшими в пользу ip
).
Когда вы углубляетесь в конфигурацию системы, вы начинаете видеть большие различия. Например, аутентификация (PAM, BSD Auth, /etc/shadow
) и пользовательские базы данных (NIS, nsswitch); процесс загрузки (SysV init vs BSD init vs systemd vs Upstart); наименование устройства (eth0
против tlp0
против en0
, MAKEDEV против udev).
Одной из важных тем является установка программного обеспечения: как правило, дистрибутивы Linux предоставляют ряд предварительно собранных пакетов вместе с инструментом "менеджер пакетов", который загружает и устанавливает их. Загрузка и компиляция вручную из исходного кода (./configure && make
) довольно редка.
Большинство из них, как правило, даже если не все команды в точности одинаковы, важно, чтобы вы понимали принципы и принципы их работы, тогда вам будет относительно легко использовать другие или новые. Синтаксис и понимание того, как работает командная строка - это самое важное. Хотя я бы сказал, что 90% того, что я использую для UNIX (на моем Mac), я использую точно так же в Ubuntu (включая ls, cd и т. П.), Есть некоторые специфичные для Linux команды, однако, если вы знаете, как использовать в командной строке вы можете подобрать их просто отлично. Но да, почти все то же самое, и все должно быть хорошо.