1. Что такое shell?

Дословно shell переводится как «оболочка». Это программа, которая принимает команды юзера из командной строки, преобразует их в понятную для операционки форму и выводит ответ операционки в понятной для юзера форме :). Другое название shell - командный интерпретатор. Вот несколько наиболее юзабельных shell'ов: bash, sh, csh, tosh, psh. Отличаются они тем, что у каждой shell свой язык для написания скриптов (у родственных шел-лов они почти одинаковые, как у bash и sh).

Еще они отличаются по функциональности: некото­рые позволяют редактировать вид командной строки. Почти у каждого шелла есть свои встроен­ные переменные. Если не знаешь, какой у тебя шелл, вводи команду echo $SHELL. Если хочешь поменять свой дефолтовый шелл, вводи команду chsh.

2. Что такое shell-скрипт?

Скрипт шелла (или сценарий) - это интерпрети-руемая прога, написанная на языке того или


иного шелла. Вспомни перл: там тоже исходник не компилируется, а интерпретируется. В на­шем случае в роли интерпретатора выступает шелл. Шелл-языки обычно обладают свойства­ми обычных структурно-ориентированных язы­ков (си, паскаль и т.п.). То есть в них имеются типичные структуры выбора (if), повторения (while). Например, язык шелла Csh очень похож на язык программирования С. Зачем это нужно? Ну, простой пример: тебе надо каждый раз при входе в систему набирать какую-нибудь коман­ду - так вот, чтоб не настукивать ее руками, ты пишешь небольшой скрипт, ставишь ему атри­бут выполняемого файла и прописываешь его в файле автозапуска.

3. Что такое консоль?

Консоль, или системная консоль, - это клава и монитор, подключенные непосредственно к ма­шине, где установлена система (ось). Вот если ты себе поставил линуху, то твои клава и мони­тор вместе составляют консоль. Также консолью (консольным режимом) называют текстовый ре­жим работы с nix-осями.

4. Что такое терминал?

Так как все nix'ы - многопользовательские оси, к одному компу можно подключить не только один монитор и одну клаву (консоль), а несколь­ко, через последовательные порты. Вот эти вот пары мониторов и клав и называются термина­лами. Не путать с системной консолью! Она од­на, и за ней обычно восседает админ :).

5. А что такое виртуальные консоли?


Для удобства юзеров в nix'ax реализован меха­низм виртуальных консолей. Это дает тебе сле­дующие преимущества: ты можешь залогинить-ся в систему одним именем, начать какую-то ра­боту, потом нажать Alt+F2, снова залогиниться (можно под другим именем) и работать во вто­рой консоли, в то время как первая чем-то заня­та. Если хочешь вернуться обратно, нажми Alt+F1. Нужна еще консоль? Ок, жми Alt+F3. По дефолту виртуальных консолей четыре, но их количество можно увеличить до двенадцати.

6. Как и где хранятся пароли юзеров в nix'ax?

Сразу чувствуется, что ты - хацкер:). Раньше все пароли хранились в знаменитом файле /etc/passwd в зашифрованном виде алгорит­мом DES или (в более продвинутых системах - например, OpenBSD) в MD5 или Blowfish. Шифровка производится так, что, не зная ис­ходный пароль, расшифровать ее нельзя. Па­роль может быть найден только методом под­бора - то есть слово из словаря шифруется и сравнивается с шифрованным оригиналом. Для таких целей существует множество прог­рамм: например, Crack или John The Ripper. A так как доступ к файлу /etc/passwd должен быть открыт для всех, взлом системы стано­вится несложным занятием. Но сейчас в ответ появилась новая система хранения паролей -shadow. Теперь на большинстве nix'ов пароли хранятся в файле /ect/shadow (естественно, в зашифрованном     виде,     в     *BSD /ete/master.passwd), доступ к которому зак­рыт всем, кроме рута. Получается, что для то­го чтобы получить пароль рута, нужен /etc/shadow, а для того чтобы получить


/etc/shadow, нужен пароль рута. Опять зам­кнутый круг:). Ох уж эти админы.

7. Что такое X-Window System?

X-Window System почти всегда называют просто X. Х - это графический интерфейс юзера. Реа­лизует работу юзера с осью при помощи око­шек, рабочего стола, мыша... Ну, сам подумай, какая в принципе разница, что ты делаешь: вво­дишь команды из командной строки или кли-каешь мышом по окошкам и кнопочкам. Нет, ну понятно, что это удобнее, в этом вся соль, но, так или иначе, ты посылаешь оси какие-то ко­манды, а она тебе отвечает. В случае с коман­дной строкой твои команды (в виде последова­тельности символов) обрабатывает шелл, а здесь их (в виде кликов на всякие графические объекты) обрабатывает X.

8. Что такое ядро (kernel)?   |

Ядро - это программа, собственно являющаяся осью. Что такое Линух вообще? Это ядро и куча всяких прог. Ты знал, что если урезать почти весь инструментарий, линуху можно установить на дискетку? Да, можно, там будет ядро и нес­колько мелких утилит. Тем не менее, основные функции будут работать.

9. Что такое модули ядра? I

Модули - это куски кода, которые не являются частью ядра, но по мере надобности могут в не­го загружаться. При этом перезагрузка не тре­буется. Иногда приходится устанавливать мо­дуль, если ты хочешь включить поддержку ново­го устройства. Для загрузки нового модуля ядра используется команда insmod, для удаления мо­дуля из ядра - rmmod, для вывода списка заг­руженных модулей - Ismod или cat /proc/modules.

10. Что значит «перекомпили­ровать ядро»?

Это значит добавить в ядро какой-то новый фрагмент кода. Надо взять исходники ядра (они поставляются в дистрибутиве) и откомпилиро­вать их вместе с нужным тебе новым кодом. Можно просто проапгрейдить ядро, скачав све­жие исходники и откомпилировав их.

11. Что такое дистрибутив?

Дистрибутив - это поставка линуха от той или иной программерской конторы. Они пишут прогу, которая облегчает процесс установки линухи на твоем компе, - инсталлятор. Еще они подбирают всякий полезный софт для те­бя. А теперь представь, что было бы, если бы не было дистрибутивов. Тебе бы пришлось самому находить все дрова под свое железо, самому компилить у себя исходники ядра, са­мому скачивать всякий софт, самому нас­траивать X, самому настраивать все осталь­ные параметры системы. Короче, ад.

12. Что такое bootloader?

Bootloader - это прога-загрузчик, которая обыч­но записывает себя в Master Boot Record (MBR) твоего жесткого диска. После загрузки компа BIOS передает управление тому, что записано в MBR, - а там как раз и сидит наша прога, кото­рая в свою очередь спрашивает у тебя, какую из установленных на твоем компе осей ты хочешь загрузить. В зависимости от твоего ответа она передает управление дальше. Юзабельными bootloader'ами можно назвать ULO (супер! пос­тавляется с линухой), loadlin (тоже идет с лину-хой), РМ Boot (Partition Magic Boot).

13. Что такое виртуальные экраны?

Когда ты работаешь в X, ты можешь включить поддержку виртуальных экранов. Эта идея напо­минает механизм виртуальных консолей, но, в отличие от последних, виртуальные экраны да­леко не так полезны :(. Суть их состоит в том, что ты можешь переключаться между десктопа-ми. Открыл какое-нибудь окно на одном дескто-пе и ушел на другой - новый. Но, млин, ведь на то и есть оконный режим, что ненужное пока ок­но можно свернуть на фиг. Зачем тогда эти экраны? Есть еще одна фича, которая лично ме­ня бесит: если ты включишь поддержку «смеж­ных краев», то при поднесении курсора к краю десктопа ты будешь перескакивать на соседний виртуальный экран. This sux! Напрягает конкрет­но!

14.Что значит «примонтировать/размонтировать»?


Примонтировать - подключить, сделать доступ­ной файловую систему на том-то физическом или логическом устройстве. Когда ты пихаешь дискетку в флоповод или сюдюк в соответствую­щее место, или просто хочешь полазать по вин-довому разделу харда, ты должен примонтиро-вать эти устройства, чтоб получить доступ к файлам на них. Кекс, только не говори, что ты не знал об этом! Делается это командой mount <путь к файлу монтируемого устройства> <путь к директории, куда монтируется «чужая» файловая система>

Например:

mount /dev/hda1 /mnt/win

После этого у нас в папке /mnt/win аккурат поя­вятся файлы первого раздела первого харда. Закончил работу с этими файлами? Неплохо бы ради приличия размонтировать устройство (например, сидюк тебе просто не удастся выта­щить, пока ты его не размонтируешь :)) коман­дой umount <путь к директории, куда замонти-ровано устройство. Заметь! Именно umount, a не uNmount! Ну, чего погрустнел? Не бойся, те­бе не придется все время вводить эти команды руками - существует много всяких прог, кото­рые за тебя все сделают, ты только возьми дис-трибутивчик посвежее.

15. Так, я прогрузился. А что, собственно, вообще такое — файловая система?

Файловая система - это определенный способ организации хранения информации на устрой­стве. Когда ты форматируешь диск, ты форма­тируешь его в какую-то файловую систему. Их много (FAT, NTFS, NFS, ext2 и т.д.), и это из-за того, что каждая ось предпочитает юзать свою собственную файловую систему. Но это не страшно - линуха поддерживает несколько фай­ловых систем.

16. Я поставил себе Linux, но у меня не работает звук. Что делать?

Набери команду sndconfig. Там тебе дадут пос­лушать всякие звучки и спросят, слышал ли ты их. Очень часто бывает так, что никаких звучков не слышно, но, тем не менее, если соврать и на­жать «Ок», все начинает работать. Если же ты используешь дистрибутив, не имеющий авто-' матической программы конфигурации звука, скачай с linuxdoc.org файл Sound-HOWTO, где имеется список поддерживаемых звуковых карт. Обычно для задействования драйвера звуковой карты тебе требуется командой insmod загру­зить драйвер (поставляемый в виде модуля яд­ра) с аппаратными параметрами устройства.

17. Ладно, мне понравился X, но как мне вернуться обратно в консольный режим?


Выбери в меню пункт log out, в появившемся окошке поставь галочку у log out, и тебя вы­кинут в консоль. Расскажу тебе пару секре­тов: нажми Ctrl+Alt+backspace... Тебя опять выкинуло в консоль! Это, якобы, аварийный выход из X, но многие его юзают все время :). Так удобнее.  Теперь вернись в Х и нажми Ctrl+Alt+ (+/- на цифровой клаве). Типа, ты переключился между графическими режимами. Юзай на здоровье -это не опасно :), это тебе не мастдай.

18. Что такое демон (daemon)?

Демоном называется программа, работающая в фоновом режиме (background) и не имеющая контрольного терминала. Резидентка, короче :0).

19. Что такое SUID/SGID программы?

SUID/SGID называются программы, которые из­меняют эффективный идентификатор пользова­теля/группы при выполнении. То есть, проще говоря, они позволяют тебе делать через себя какие-то действия, которые по умолчанию мо­жет делать только админ :0). Например, пинга-нуть кого-нибудь: пинг как раз относится к программам такого класса.

SO. Что такое эксплоит?

Допустим, один хацкер нашел дыру в вышеу­помянутом демоне. Теперь он пишет неболь­шую прогу (эксплоит), которая реализует юзанье этой дыры. Делается это для того, чтобы облегчить и ускорить процесс взлома и чтобы другие хацкеры тоже могли поюзать найденную дырку. Эксплоиты обычно постав­ляются в виде исходников.

21. Что значит «залогиниться в систему»?

Это значит - ввести свои логин и пароль, после чего система проверяет их правильностьи впускает тебя. Всё, теперь ты залогинился в систему.

22. Что такое extended partition ?

Это логический диск  жёсткого диска, содержащий другой логический раздел. Прямо как матрёшки (медведи на улицах, мужики, выпивающие с медведями на улицах, балалайка, Boris Eltzin с балалайкой, выпивающий с мужиками и медведями на улицах). :)

 

23. Что такое своп [swap] ?

 

Это раздел харда, который линуха создаёт для своппинга. То есть, запустил ты какое-нибудь приложение, но пока его не используешь. Если линухе не хватает оперативки -она аккуратно запишет это приложение на своп, а мозги, занимаемые им, освободит для других нужд. Потом, когда ты обратишь­ся к этому приложению, она достанет его об­ратно в память.

24. Что такое диспетчер окон?

Диспетчер окон - это прога, работающая под Х и занимающаяся рисованием окон (только наружной части - рамки, грубо говоря). Дис­петчер окон отвечает за адекватную реакцию окон на закрывание, перетаскивание, умень­шение, растяжение. Все что происходит внутри окна, диспетчера не касается.

25. Что такое графическая сре­да (GNOME/KDE)?

Графическая среда организует рабочий стол:

менюхи, панельки, бэкграунды, оформление стандартных кнопочек, менюшек... Только за окна не отвечает - это работа диспетчера. На самом деле диспетчер окон сам является частью графической среды, просто в nix'ax он реализован как отдельная программа.

26. Как сделать скриншот вХ?

Что, решил похвастаться перед подругами :)?

Кнопарь PrintScreen в линухах не работает. Для этих целей существуют специальные проги, такие как kSnapsnot (очень удобная). The Gimp тоже умеет делать скрины.

27. Мне надоела графическая среда GNOME. Как поменять на КОЕ или AnaotherLevel ?

Смотри: идешь в меню KDE -> System -> Desktop Switching Tool. Дальше легко разоб­раться. Эта утилитка меняет дефолтовую гра­фическую среду.


28. Блин, что я наделал!!! Как вернуть GNOME обратно?

Хе-хе :). Забрел неведома куда? Не бойся, где бы ты там ни был - везде найдется доступ к xTerm (или к другой проге, эмулирующей кон­соль). Запускай его и вводи в нем команду switchdesk. Вот она, родная утилитка:).

29. Почему после изменения в *BSD /etc/master.passwd ни­чего не меняется?

На самом деле система читает данные не из /etc/master.passwd, а из /etc/pwd.db и /etc/spwd.db. Для того чтобы конвертировать /etc/master.passwd в нужный формат, тебе сле­дует набрать следующее: pwd_mkdb /etc/mas­ter.passwd

30. Как мне получить доступ к cdrom'y?

Эх! Я же про монтирование рассказывал. Ну вот, смотри. Наберем: dmesg | grep CDROM. Ответ: ndc: CD-224E, ATAPI CDROM drive. Как видим, наш cdrom имеет название hdc. Теперь, чтобы примонтировать его, пишем 'mount /dev/hdc /mnt/cdrom, где /mnt/cdrom - папка, в которую ты хочешь примонтировать его.

31. Как подмонтировать vfat разделы, чтобы русские имена были видны?

В файл /etc/fstab добавим, например, такую строчку:

/dev/hda1 /mnt/win vfat noexec,rw,umask=002, codepage=866, iocharset=koi8-r,gid=100 0 0

Если же нужно на время примонтировать раз­дел, то введем следующую команду:

mount /dev/hda1 /mnt/win -t vfatcode-page=866, iocharset=koi8-r

32. Надписи на консоли появляются так быстро, что я не успеваю все прочесть.

Как же прочесть их?

Это очень просто. Если ты хочешь прочесть ин­формацию, выводимую при загрузке системы, просто набери dmesg | more. Если же ты хочешь просто прочесть то, что ушло за границы экра­на, нажми комбинацию клавиш: Shift + PgUP/PgDn.

33. Как заставить работать pcmcia-устройства под Linux'ом?              -——

Чтобы установить pcmcia-устройства, тебе необходимо получить последнюю версию на-


бора pcmcia-модулей для Linux с сайта http://pcmcia.sourceforge.org и на всякий слу­чай посмотреть, есть ли твое устройство в списке поддерживаемых. А вот если даже там его нет, то, возможно, оно... все равно будет работать :). Далее для установки выполни следующие операции: разархивируй дистри­бутив make config (необходимо указать пара­метры конфигурации) make all и make install По умолчанию при загрузке менеджер PCM­CIA-устройств запускается и пробует все драйверы. При необходимости можно отре­дактировать файл /etc/pcmcia, оставив только нужные драйверы.   ;

34. Я забыл пароль root'а! Что делать?                

Если ты работаешь в Open/Free/NetBSD, то тебе следует сделать следующее. Загрузись в Single User Mode (boot: -s), а затем, когда получишь ко­мандную строку, напиши:

'fsck -р / && mount -u /' и 'fsck -p /usr && mount /usr'                   

В этом случае мы монтируем корневой и /usr, если он находится на отдельном разде­ле. Теперь просто наберем passwd и введем новый пароль для root'a.

Если же ты работаешь на Unux'e, то делаем вот что:

Загружаем линукс с параметром -s (boot: linux -s) и после окончания загрузки меняем пароль root'a (или грузимся следующим образом - boot: linux init==/bin/sh, и исполняем команду mount -nremount -t ext2 /dev/hda2 / - это необходимо, пото­му что файловая система в данный момент смон­тирована в режиме только чтения).

35. Значит, теперь моя бабушка смо­жет, не зная пароль рута, найти мою порнушку?!

Да;). Но от этого можно очень просто защититься. Если ты работаешь на Unux'e, то в биосе установи загрузку только с жесткого диска и поставь пароль на биос - затем, в конфгурации lilo (/etc/lilo.conf), добавь запись следующего вида:

password = MyRassword

С данной опцией будет требоваться пароль на лю­бой вид загрузки. Если же ты хочешь установить запрос пароля на загрузку со специальными пара­метрами для ядра, то перед предыдущей строкой добавь слово restricted (не забудь после внесения изменений набрать от root'a 'lilo').

Для операционных систем Open/Free/NetBSD пос­тупаем так:

уберем из ядра возможность использования UKC -User Kernel Config (тем самым еще и запретим загрузку системы в single user mode), для этого заком-ментируем в конфиге ядра строчку:

option BOOT.CONF1G  # add support for boot –с

 

36. Как заставить WinModem рабо­тать лед линуксом?

До недавнего времени любой линуксоид сказал бы тебе, что WinModem'ы не работают под линуксом, но недавно для них, наконец, появились драйверы, которые    можно    получить   с    сайта:

http://www.close.u-net.com/ или http://www.lin-modems.org

 


37. Да, кстати. А как мне отформа­тировать дискету?

Хе-хе :0). Просто набирай:

fdformat/dev/ldOH1440 mkfe -t fat16 -m 0 /dev/fdOH1440 1440

38. Я скачал программу в исходни­ках, но не знаю, как ее установить!

Если программа состоит из одного исходника (нап­ример, ztob.c), то просто набери дсс -о zlob ziob.c.

Но это может не сработать, если в программе ис­пользуются функции не из glibc, и тогда для компи­ляции понадобится подключение динамических библиотек - например, если в программе есть функции для работы с библиотекой curses, исполь­зуемой для создания графического консольного интерфейса, то она (прога) должна быть скомпиле-на следующим образом: дсс -о zlob ziob.c -Icurses

Обычно все поставляемые GNU-программы в ис­ходниках имеют скрипт конфигурации configure, который мы запускаем, а затем набираем make, если скрипт выполнил работу без ошибок. Если же в программе есть еще какие-то специальные оп­ции для инсталляции - читаем файлы README или INSTALL, поставляемые с программой.

39. Как сделать, чтобы я мог обра­щаться к машинам через сеть по именам, не прописанным на dns-серверах?

В файл /etc/hosts добавь запись следующего фор­мата:

[IP адрес машины] [Желаемое имя машины] Например:

192.168.0.2 underworld

Действительным такое имя для машины будет только там, где ты сделал такую запись.

40. Windows после переустановки снесла lilo из mbr! Че делать-то?

Не парься, сейчас все исправим. Загрузи с диска или с дискеты ядро с параметром root=/dev/hda2 (/dev/hda2 - раздел диска, на котором находится корень твоей системы). Далее зайди в систему под root'ом и просто набери lilo, после чего lilo, прочи­тав свой конфиг, переза­пишет mbr.