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/master.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 vfat -о code-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 По
умолчанию
при загрузке
менеджер PCMCIA-устройств
запускается
и пробует все
драйверы. При
необходимости
можно отредактировать
файл /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 -n
-о remount -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.