ZipSlack/BigSlack
Вы можете воспользоваться несколькими методами для загрузки ZipSlack и BigSlack. Наиболее обычный метод, это использование LINUX.BAT из DOS (или DOS режима из под Windows 9x). Файл должен быть изменён соответствующим образом для соответствия вашей системе.
Начните с открытияC:\LINUX\LINUX.BAT в вашем любимом текстовом редакторе. В шапке файла вы увидите большой комментарий. Он объясняет, что вам надо изменить в файле (а так же, как быть, если вы загружаетесь с внешнего Zip диска). Не волнуйтесь, если root= установка вне вашего понимания. В файле приведено несколько примеров, так что свобода выбора за вами. Если ваша попытка оказалась неудачной, вы можете попробовать опять изменить содержание файла, закомментировав не сработавшую строку, и разкомментировав другую.
После того, как вы разкомментировали нужную вам строку, путём удаления ''rem '' из начала строки, сохраните изменения и выйдите из редактора. Переведите ваш компьютер в режим DOS.
ПРЕДУПРЕЖДЕНИЕ окно DOS prompt в Windows 9x НЕ сработает.
Наберите C:\LINUX\LINUX.BAT, чтобы загрузить систему. Если всё в порядке, перед вами появится приглашение входа в систему (login).
Войдите, как root, без пароля. Скорее всего вы захотите установить пароль для root пользователя, и создать эккаунт для вас самих. Тогда вам надо посмотреть соответствующий раздел этой книги об основах использования системы.
Если файл LINUX.BAT не работает в вашей системе, вам следует заглянуть в C:\LINUX\README.1ST файл для ознакомления с другими методами загрузки..
Ar
tar(1) это GNU ленточный архиватор. Он берёт несколько файлов или каталогов и создаёт один большой файл. Это позволяет вам сжимать целое дерево каталогов, чего нельзя достигнуть при простом использовании gzip или
bzip2. tar имеет много параметров командной строки, которые описаны в man странице программы. В этом разделе будут рассмотрены наиболее распространённые варианты использования tar.
Чаще всего tar используется для распаковки и раз-архивирования пакетов, скачанных с вэб или ftp сайтов. Большинство файлов будут иметь .tar.gz
расширение. Это так называемый ''tarball''. Это означает, что несколько файлов были помещены в архив при помощи tar и затем этот архив был сжат при помощи gzip. Иногда они так же имеют расширение .tar.Z. Это означает то же самое, но обычно встречается на более старых Unix системах.
Так же вы можете встретить иногда .tar.bz2 файлы. Исходный текст ядра поставляется в таком виде, потому что так вам придётся скачивать меньший файл. Как вы уже вероятно догадались, это несколько файлов, объединённых в архив при помощи tar и сжатых при помощи bzip2.
Вы можете получить файлы из таких архивов, при помощи tar команды с определёнными аргументами командной строки. Разархивирование tarbal-а требует указания ключа -z, что фактически вызовет вначале выполнение
gunzip, для распаковки файла. Обычно tarbal-ы распаковываются такой командой:
$ tar -xvzf hejaz.tar.gz |
Довольно много опций. Что же все они означают? ''-x'' значит извлечь (extract). Это важно, так как именно этот параметр говорит tar-у, что именно делать с входным файлом. В этом случае мы опять разобьём архив на все те файлы, из которых он был составлен. ''-v'' скажет программе быть ''многословной'' (verbose). Указание этого ключа приведёт к тому, что в процессе извлечения будет выводиться список файлов, которые извлекаются. Вы можете смело отказаться от использования этого ключа, если вас раздражает вывод подобной информации. Так же вы можете использовать ''-vv'', чтобы программа стала совсем многословной, и отображала ещё больше информации о файлах, которые извлекаются. опция ''-z'' говорит tar-у, вначале пропустить файлhejaz.tar.gz
через gunzip. Ну и наконец, ''-f'' опция указывает, что далее в командной строке будет указанно имя файла, с которым надо работать.
Есть так же несколько других способов написания той же самой команды. На более старых системах, в которых отсутствует приличная версия GNU tar, вы можете встретить такой синтаксис:
$ gzip -dc hejaz.tar.gz | tar -xvf - |
и запишет вывод на диск.
Другой способ записи первой команды это запись без тире перед опциями:
$ tar xvzf hejaz.tar.gz |
$ tar -xvyf foo.tar.bz2 |
$ tar -xvzf /tmp/bar.tar.gz |
Второй наиболее распространённый вариант использования tar это создание ваших собственных архивов. Создание архива не более сложная процедура, чем разархивирование других файлов; просто требует другого набора опций командной строки.
Чтобы создать сжатый tar архив всех файлов текущего каталога (включая поддиректории и их файлы), вам следует воспользоваться командой:
$ tar -cvzf archive.tar.gz . |
это файл, который вы хотите создать. Вы можете назвать его как вам заблагорассудится, а если вы так же укажете полный путь, то файл будет создан в указанном каталоге. Вот пример:
$ tar -cvzf /tmp/archive.tar.gz . |
Астройка vi
Выбранный вами vi клон может быть настроен несколькими способами.
Множество команд может быть введено в командном режиме для настройки практически всего, что угодно. В зависимости от вашего редактора, вы можете активизировать функции, упрощающие программирование (такие, как подсветку синтаксиса, авто-отступы, и более), установите макрос для автоматизирования задач, активизации подстановки текста, и более.
Почти все из этих команд могут быть помещены в настроечный файл в вашем домашнем каталоге. elvis ищет .exrc файл, а vim ищет .vimrc файл. Большинство конфигурационных команд, которые могут быть введены из командной строки, могут быть размещены в настроечный файл. Включая установочную информацию, подстановку текста, макросы, и более.
Обсуждение всех этих опций и различий между редакторами, не является целью данной книги, так что если вы заинтересовались расширенными функциями редакторов, загляните в man страницу или зайдите на вэб сайт предпочитаемого вами редактора. Некоторые редакторы (как vim) содержат мощную справочную систему, доступную внутри редактора, по команде
:help. Вы так же можете заглянуть в книгу ''Изучаем Редактор vi'' Ламба и Роббинса.
Многие программы в Linux по умолчанию откроют текстовые файлы в vi. Например, редактирование ваших crontab задач загрузит vi по умолчанию. Если вам не нравится vi и хотите, чтобы другая программа запускалась по умолчанию, всё что вам надо сделать, так это установить значение VISUAL переменной окружения равное имени вашего любимого редактора. Для информации по установке переменных окружения смотрите раздел 5.1.3. Если вы хотите, чтобы ваш любимый редактор был редактором по умолчанию при каждом входе в систему, добавьте установку VISUAL переменной в ваш .bash_profile или .bashrc файл.
At
cat(1) это сокращение от ''concatenate'' (сцеплять, связывать). Изначально была разработана для объединения нескольких текстовых файлов в один, но может быть использована и для других целей.
Чтобы объединить два или несколько файлов в один, просто перечислите файлы после cat команды и пере направьте вывод в новый файл. cat работает со стандартным вводом и выводом, поэтому вам надо воспользоваться символами оболочки для пере направления. Например:
$ cat file1 file2 file3 > bigfile |
Эта команда возьмёт содержимое фалов file1, file2 и file3 и объединит их в файл bigfile.
Вы можете также использовать cat для просмотра содержимого фалов. Многие пользователи для просмотра текстовых фалов выполняют cat, имя фала, и затем пропускают вывод через more или less:
$ cat file1 | more |
Так же cat часто используется для копирования фалов. Вы можете скопировать любой файл, выполнив:
$ cat /bin/bash > ~/mybash |
Файл /bin/bash будет скопирован в ваш домашний каталог, под именем mybash.
Обсуждённые здесь примеры, это лишь несколько из возможных вариантов применения cat. Так как cat предоставляет расширенный контроль за стандартным вводом и выводом, она идеальна для применения в shell скриптах, и для использования в качестве части более сложных команд.
Бзор системы
Очень важно понять, как организован Linux перед тем, как погружаться в различные аспекты по его настройке. Система Linux кардинальным образом отличается от систем DOS или Windows (а так же Macintosh OS). Этот раздел ознакомит вас с расположением основных элементов системы.
Cho
Команда echo(1) выводит указанный текст на экран. Строку, которую вы хотите вывести, следует указать после echo команды. По умолчанию echo выведет текст и символ перевода строки после него. Вы можете указать опцию -n, чтобы строка не переводилась. Опция -e укажет команде искать эскейп символы в строке и выполнить их.
Command Purpose ls Выдаёт список
ncftp(1) (произносится ''Nik-F-T-P'') это альтернатива стандартному
ftp, поставляемая с Slackware. Это так же программа с текстовым интерфейсом, но предлагает много дополнительных функций в сравнении с ftp, включая:
Завершение по tab
Файл закладок
Passive and non-passive FTP transfer modes
More liberal wildcard uses
Command history
По умолчанию, ncftp попробует войти анонимно на указанный вами сервер. Вы можете заставить программу выдать вам логин приглашение, задав ''-u'' ключ. После входа в систему, вы можете пользоваться теми же командами, что и в ftp, только интерфейс немного отличается в лучшую сторону, больше похож на bash.
Cp
cp(1) применяется для копирования файлов. Пользователи DOS найдут её похожей на команду copy. Эта команда имеет очень много опций. Загляните в man страницу, если вам интересно.
Обычный вариант использования команды это копирование файла из одного места в другое. Например:
$ cp hejaz /tmp |
Эта команда создать копию файла hejaz из текущего каталога в /tmp каталог.
Многие пользователи предпочитают сохранять временные отметки файлов при копировании. Вот вам пример:
$ cp -a hejaz /tmp |
Это сохранит все временные отметки оригинального файла для копии.
Для того, чтобы рекурсивно скопировать содержимое каталога в другой каталог, вы воспользуетесь такой командой:
$ cp -R adirectory /tmp |
Это скопирует adirectory в каталог /tmp.
cp имеет гораздо больше опций, которые детально описаны в man странице.
d
Команда cd используется для смены рабочего каталога. Просто наберите cd и затем имя каталога, в который вы хотите перейти. Вот несколько примеров:
darkstar: $ cd /bin |
darkstar:/bin$ cd usr |
bash: cd: usr: No such file or directory |
darkstar:/bin$ cd /usr |
darkstar:/usr$ |
Обратите внимание, что если вы не указываете слэш в начале пути, команда пытается переместится в под-каталог текущего каталога.
Команда cd отличается от остальных тем, что она встроена в оболочку. Команды, встроенные в оболочку обсуждаются в разделе 5.1. Возможно, это ничего для вас не значит сейчас. В общем, это означает, что для этой команды нет man страницы. Вместо этого вам надо обратиться к help вашей оболочки. Например:
$ help cd |
Эта команда выдаст вам опции команды cd.
Документы HOWTO и mini-HOWTO
HOWTO - аббревиатура от англ. how to- как сделать. Эти документы описывают, как делать что-либо. Если вы установили пакет с коллекцией HOWTO, то вы можете найти их в каталоге /usr/doc/Linux-HOWTOs, а mini-HOWTO - в /usr/doc/Linux-mini-HOWTOs.
В этом же пакете вы так же можете найти коллекцию документов FAQ (Frequently Asked Questions - Часто Задаваемые Вопросы. Иногда можно найти русский вариант аббревиатуры ЧаВО) - это коллекция вопросов и ответов на них.
Эти файлы очень полезны в случае, если вы не вполне уверенны, как сделать какое-то определённое действие. Потрясающий спектр тем освещён в зачастую поражающих подробностях.
Другие файлы
Сценарии, описанные ниже- это все остальные загрузочные сценарии. Они обычно выполняются одним из вышеперечисленных основных сценариев, таким образом, всё что вам необходимо сделать для изменения настроек, это отредактировать содержание соответствующих файлов.
rc.cdrom
Если активизирован, то он проверит, есть ли компакт диск в приводе и если есть, то подключит его к /cdrom
.
rc.gpm
Запускает сервис основной поддержки мыши (general purpose mouse). Это позволит вам копировать и вставлять текст в консоли.
rc.ibcs2
Запускает поддержку Intel Binary Compatibility. Это необходимо только в том случае, если вы планируете выполнять программы, откомпилированные на SCO Unix или на других коммерческих Intel Unix разновидностях. В этом нет необходимости для запуска Linux программ.
rc.font
Загружает пользовательский экранный шрифт для режима командной строки.
rc.local
Содержит всю специфическую загрузочную информацию для вашей конкретной системы. В свеже-установленном дистрибутиве этот файл пуст. Он зарезервирован для использования администратором системы. Этот сценарий выполняется самым последним при загрузке.
Для активизирования сценария всё, что вам нужно сделать, это добавить ему разрешение на выполнение при помощи chmod программы. Чтобы выключить сценарий, удалите разрешение на выполнение соответствующего файла. Для получения дополнительной справки по chmod, смотрите раздел 5.2.2.
Elm
elm(1) это другой популярный текстовый клиент электронной почты. Его интерфейс не так дружественен, как интерфейс pine, эта программа явно гораздо старше.
По умолчанию вы попадаете в папку входящих сообщений. Сообщения высвечиваются с их номером, датой, отправителем и темой. Используйте стрелки, чтобы подсветить нужное вам сообщение. Нажмите ввод, чтобы просмотреть его.
Чтобы написать новое сообщение, нажмите m с главного экрана. d
пометит сообщение для удаления. А r используется для ответа на сообщение, которое вы читаете. Все эти кнопки перечислены внизу экрана.
man страничка более детально обсуждает elm, так что вам наверное стоит заглянуть туда перед тем, как пользоваться программой.
Elnet
Кто-то когда-то сказал, что telnet(1) это самое крутое, из всего, что он когда либо видел в мире компьютеров. Возможность удалённо подключаться и делать что-то на другом компьютере, выделяет Unix и Unix-подобные системы от других систем.
telnet позволяет вам войти в удалённую систему точно так же, как если бы вы сидели за этим компьютером. Указав ваше имя пользователя и пароль, вам выдаётся приглашение командной строки оболочки. С этого момента вы можете делать всё то же, что обычно выполняете в текстовой консоли. Писать письма, читать группы новостей, перемещать файлы, и т.д. Если вы в X и вы соединились с другим компьютером по telnet из xterm, вы можете выполнять программы на удалённом компьютере, а отображать на вашем. См. раздел 4.3.5.
Для подключения к удалённому компьютеру, воспользуйтесь таким синтаксисом:
$telnet <hostname> |
Если хост ответит, вы получите приглашение входа в систему. Введите имя пользователя и пароль. Ну вот. Теперь вы в оболочке. Чтобы выйти из вашей сессии telnet, воспользуйтесь либо exit, либо logout, на ваше усмотрение.
Важно
ВАЖНОЕ ЗАМЕЧАНИЕ: telnet не кодирует информацию, которую он посылает. Всё посылается, как обычный текст, даже пароли. Не желательно использовать telnet через интернет. Альтернатива -Secure Shell. Она кодирует весь трафик и доступна бесплатно. Смотрите http://www.ssh.org/ для справки.
Ess
Команда more очень удобна, но зачастую вы встретитесь с ситуацией, когда вы пропустили тот экран, который вам необходим. more не позволяет вернуться. Команда less(1) позволяет вам сделать это. Она используется так же, как и more команда, так что примеры, приведённые выше справедливы и для неё. В общем, less больше, чем more.
/Etc/hosts
Файл hosts позволяет осуществить простейший способ поиска хостов в домене. Он представляет собой список хостов и соответствующих им IP адресов. Это полезно в небольших сетях, где использование DNS не оправдано, так же этот файл используется во время загрузки системы, когда сервер имён ещё не доступен. Мой выглядит следующим образом:
127.0.0.1 localhost |
192.168.1.32 ninja.tdn ninja |
Первая строчка должна быть само-достаточной. Вторая может и не быть. Вы можете указать столько имён и синонимов для одного адреса, сколько захотите, разделяя их пробелами. Итак, у меня ''192.168.1.32'' переводится в ''ninja.tdn'' (и наоборот), но синоним ''ninja'' так же может быть использован, когда мне лень набирать ''.tdn'' (как обычно и происходит).
/Etc/inetdconf
Для операционной системы, ориентированной на сетевое использование, вполне нормальным является запуск различных сетевых сервисов. Обычно для каждого из сервисов должна существовать программа, которая будет сидеть и слушать запросы по соединениям. Что может стать обременительным для системы, если в ней запущенно слишком много различных сервисов. Для уменьшения загрузки системы была создана программа inetd. inetd- это ''интернет-суперсервер''. Эта программа слушает запросы по многим socket-ам, и когда поступает запрос, inetd передаёт управление соответствующему серверу, для обработки запроса. Таким образом вместо нескольких ожидающих серверов, запущен только один.
Файл настроек для inetd - /etc/inetd.conf. В нём определяется, какой сервер должен быть запущен для какого соединения. В man страничке для inetd(8) вы, конечно, можете найти больше информации о использовании программы. Давайте быстренько пробежимся по основным сервисам:
ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -l -i -a |
Эта строчка относится к ftp серверу. Обратите внимание, вначале идёт имя протокола - ''ftp'', а в конце - программа, которая должна быть запущена для ответа на запрос. В приведённом примере, программа, которая должна быть запущена для ответа на поступивший запрос соединения - это /usr/sbin/tcpd; это программа ''wraper'', которая обеспечивает основные требования безопасности для того сервера, для которого она запущена. wu.ftp фактически и есть наш ftp сервер21, но tcpd запускает его для вас. Больше информации вы можете найти в разделе 4.2.7.
Как и в большинстве системных файлов, строчки в inetd.conf комментируются символом #; вы можете активизировать и (или) остановить сервисы для inetd, откомментировав или закомментировав соответствующие строчки в этом файле и последующим перезапуском inetd.
/Etc/rcd/rcinetэто файл, используемый
Файл /etc/rc.d/rc.inet2 относится к другой части сети: установке сервисов и демонов22 и оперирует со всеми интересными настройками сети. Давайте рассмотрим блок для примера:
#Start the NAMED/BIND name server: |
if [ -f $NET/named ]; then |
echo -n ''named'' |
$NET/named -u daemon -g daemon |
fi |
Важна здесь четвёртая строчка, которая запускает named(8). Всё остальное лишь дополнения: ''if'' проверяет существует ли named программа там, где она должна быть, а echo строчка выдаёт на экран, что программа named запускается, при загрузке системы. Большинство серверов, запускаемых из rc.inet2, загружаются блоками вроде этого; простая проверка того, есть ли какие-то серьёзные причины, чтобы не запускать их, вывод информации о том, что они запускаются, и затем команды, загрузки самих сервисов. Опять таки, rc.inet2 достаточно подробно прокомментирован; погрузитесь в него на какое-то время, и вы найдёте много полезной и интересной информации.
/Etc/resolvconf
Этот файл сообщает всей основной системе, откуда брать DNS информацию. Все серверы имён, которыми вы пользуетесь, перечислены здесь, так же и имя домена вашего хоста. Вот вам пример этого фала (с laptop-а на котором я печатаю всё это - ninja.tdn):
domain tdn |
nameserver 192.168.1.1 |
search tdn. slackware.com |
Первая строчка описывает имя домена для ninja; это всё что идёт после имени домена в моём адресе. Вторая - DNS сервер в нашей домашней сети. Вы можете прописать их столько, сколько захотите; они будут обработаны в том порядке, в котором записаны, когда какой-то программе необходимо найти IP адрес, соответствующий какому-то доменному имени.
Последняя строчка немного интереснее. Она описывает все доменные имена, присваиваемые системе. Например, предположим, у меня есть машины zuul.tdn и hejaz.slackware.com. Я могу просто выполнить ping zuul и ping hejaz, чтобы пропинговать их, соответственно. ping вначале попробует добавить ''.tdn'' к имени zuul, и найдёт соответствующий хост. В случае с ''hejaz'' вначале будет опробовано имя ''hejaz.tdn''. Соответствующий хост не будет обнаружен, и поэтому будет произведён поиск ''hejaz.slackware.com'' и бинго. Следует отметить, что все домены, перечисленные в search должны заканчиваться на '.', за исключением последнего; если есть только один, то он же и является последним, и поэтому указывать '.' не надо.
Етевое оборудование
Как и большинство наиболее интересных вещей, которые вы можете делать с компьютером, подключение его к сети требует специального аппаратного оборудования. Возможно вам понадобится NIC (Network Interface Card - карта сетевого интерфейса), для подключения к LAN, возможно модем для подключения к провайдеру интернет, а может быть и оба (или несколько каждых из выше перечисленных, а может и ни одного).
При настройке удобно разделить аппаратные средства на скажем, PCMCIA (для laptop-ов) и не-PCMCIA категории. Суть этого разделения в том, что сейчас PCMCIA оборудование не поддерживается стандартной поставкой ядра, но поддерживается отдельным пакетом, включающим необходимые драйвера (как модули ядра) и некоторые программы для настройки и управления PCMCIA устройствами. Всё остальное, конечно, управляется стандартной поставкой ядра16.
Explodepkg
explodepkg (8) проделает то же, что installpkg
делает при распаковке пакета, но на самом деле не установит сам пакет, и не произведёт никаких изменений в базе данных пакетов. Она просто развернёт содержимое пакета в текущий каталог.
Если вы посмотрите На дерево каталогов исходников Slackware, вы увидите, как мы используем эту команду для ''структурных'' пакетов. Эти пакеты содержат скелет того, как конечный пакет будет выглядеть. Они хранят все необходимые имена файлов (нулевой длины), права доступа и принадлежности. build скрипт проделает cat с содержанием пакета из исходного каталога в build каталог пакета.
Форум обсуждения ZipSlack
Доступный в он-лайн форум для ZipSlack позволяет вам общаться с другими пользователями ZipSlack и BigSlack. Вы можете опубликовать свой вопрос тут, а так же можете помочь другим пользователям. Это очень хороший способ получения прямой помощи от других пользователей.
http://www.slackware.com/forum/
Fstab
Давайте рассмотрим пример файла /etc/fstab:
/dev/sda1 | / | ext2 | defaults | 1 1 |
/dev/sda2 | /usr/local | ext2 | defaults | 1 1 |
/dev/sda4 | /home | ext2 | defaults | 1 1 |
/dev/sdb1 | swap | swap | defaults | 0 0 |
/dev/sdb3 | /export | ext2 | defaults | 1 1 |
none | /dev/pts | devpts | gid=5,mode=620 | 0 0 |
none | /proc | proc | defaults | 0 0 |
/dev/fd0 | /mnt | ext2 | defaults | 0 0 |
/dev/cdrom | /cdrom | iso9660 | ro | 0 0 |
В первом столбце указанно имя устройства. В этом случае устройства, это пять разделов, разбросанных по двум SCSI жёстким дискам, два специальных файловых системы, которым не нужны файловые системы, флоппи дисковод и CD-ROM дисковод. Второй столбец указывает куда подключать устройство. Это должен быть существующий каталог, за исключением раздела подкачки. Третий столбец указывает тип файловой системы для устройства. Для обычного Linux раздела это будет ext2 (''second extended filesystem'' - вторая расширенная файловая система). Для CD-ROM это будет iso9660, а для Windows разделов это может быть, как msdos, так и vfat.
Четвёртый столбец перечисляет опции, которые используются при монтировании устройств. Почти всегда ''defaults'' вполне достаточно24. Тем не менее, устройствам, доступным только для чтения рекомендуется указывать параметр ro. Существует огромное количество различных опций. Смотрите man страницу fstab(5) для получения дополнительной информации. Последние два столбца используются программой fsck и другими командами для манипулирования дисками. Так же обращайтесь к man странице для получения разъяснений.
При установке Slackware Linux, программа установки генерирует минимальный fstab файл. Вам понадобится изменить этот файл только если вы хотите добавить диски, или захотите, чтобы устройства автоматически монтировались при загрузке.
Ftp
Для подключения к FTP серверу, просто выполните ftp(1), указав имя хоста к которому хотите соединиться:
$ftp <имя хоста> |
Если на указанном вами хосте есть FTP сервер, он спросит у вас имя пользователя и пароль. Вы можете войти с вашим собственным логином, если таковой у вас имеется, или вы можете войти, как ''anonymous''. Анонимные FTP сайты очень часто используются, как архивы программ. Например, чтобы скачать Slackware Linux через FTP, вы должны использовать анонимный FTP.
Подключившись, вы получите приглашение ftp>. Для FTP используются отдельные команды, но они похожи на стандартные команды. Вот список основных команд и для чего они используются:
Основы Slackware Linux
wget(1) это утилита командной строки, которая скачивает файлы с указанного URL. Она полезна при скачивании целых вэб сайтов, для просмотра в offline, или для более надёжной загрузки файлов с HTTP или FTP серверов, чем из Netscape. Основной синтаксис:
$wget <url> |
Вы так же можете указать опции. Например, такая команда загрузит Slackware вэб сайт:
$wget -recursive http://www.slackware.com |
wget создаст каталог www.slackware.com и запишет в него файлы, как они расположены на сайте.
wget так же может загружать файлы с FTP сайтов; просто укажите FTP URL вместо HTTP URL-а.
У wget есть гораздо больше опций, что делает её пригодной для использования в скриптах (зеркалирование вэб сайтов, и т.д.). man
страничка будет вашей следующей остановкой.
Ifconfig
Ну вот, ваше ядро уже умеет общаться с сетевым оборудованием. Теперь надо научить программы указывать ядру куда передавать информацию, и наоборот. Нам надо настроить интерфейс. Нам нужен ifconfig(8).
ifconfig лучше всего изучать на примерах; вы можете захотеть просто заглянуть в ваш rc.inet1 файл (описанный в разделе4.2.4), чтобы посмотреть, как программа запускается оттуда. Типичный вариант выглядит следующим образом:
# ifconfig eth0 192.168.1.10 broadcast 192.168.1.255 \ | |
netmask 255.255.255.0 |
Эта строчка поднимает eth0 (первый сетевой интерфейс; для token ring используется tr0, для ppp - ppp0, и т.д.), с IP адресом 192.168.1.10, широковещательным адресом 192.168.1.255 (вся подсеть 192.168.1.) и сетевой маской 255.255.255.0 (показывает, что три первых части IP адреса относятся к сети, а .10 относится к вашему хосту). До тех пор, пока вы не делаете что-то очень неординарное, вы можете почти всегда использовать широковещательный адрес, состоящий из первых трёх блоков вашего IP, и завершающийся числом 255. Так же, почти всегда вы можете пользоваться маской сети 255.255.255.0. Если вы делаете что-то неординарное, вы наверное знаете достаточно, и эта часть книги вам вовсе не понадобится.
ifconfig так же может быть использован для просмотра текущих настроек. Запустите его без опций или параметров, чтобы получить список всех ваших сетевых интерфейсов и их настроек.
Ill
Иногда что-то не так происходит с программами и возникает необходимость восстановить порядок в системе. Программа, предоставляющая такой вид услуг, называется kill(1). Она может быть использована для манипулирования процессами несколькими разными способами. Наиболее часто программа применяется, чтобы убивать процессы. У вас появится необходимость в этом, если программа вышла из под контроля и забирает много системных ресурсов, или если вам просто не нравится, что эта программа осталась в памяти.
Для того, чтобы убить процесс, вам надо знать либо его PID, либо имя. Чтобы получить PID воспользуйтесь программой ps, как это обсуждалось в предыдущем разделе. Например, чтобы убить процесс 4747, вы зададите такую команду:
$ kill 4747 |
Для того, чтобы убить процесс, вам надо быть его хозяином. Это сделано в целях безопасности. Если бы вы могли убивать процессы других пользователей, открылась бы возможность произведения множества злонамеренных вещей в системе. Разумеется, root может убить любой процесс в системе.
Есть так же другая разновидность программы kill, которая называется
killall(1). Функция программы соответствует её названию. Она убивает все из запущенных программ, с указанным именем. Если вы хотите убить все выполняемые vim процессы, вам следует воспользоваться такой командой:
$ killall vim |
Все vim процессы, выполняемые вами будут убиты. Если вы выполните команду, как root, то она убьёт вообще все vim процессы, выполняемые любым из пользователей. Это предоставляет интересный способ выбрасывания всех (включая и вас) из системы:
#killall bash |
Иногда обычное выполнение kill не справляется с поставленной задачей. Некоторые процессы не могут быть убиты обычной командой kill. Вам понадобиться воспользоваться более мощной версией. Если этот нудный процесс с PID4747 не умер после выполнения kill, вы можете попробовать следующее:
$ kill -9 4747 |
Практически наверняка, это заставит процесс 4747 умереть. Вы можете воспользоваться этим же ключом с killall программой. Этот ключ позволяет посылать различные сигналы программам. Обычный kill посылает процессу сигнал SIGTERM (terminate - завершиться). kill -9 посылает SIGKILL (kill - убить). В вашем распоряжении целый набор различных сигналов. Вы можете запросить список, выполнив:
$ kill -l |
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL |
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE |
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 |
13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD |
18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN |
22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ |
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO |
30) SIGPWR |
$ killall -KILL vim |
Inger
finger(1) запросит информацию о специфическом пользователе. Вы указываете finger-у имя пользователя, или email адрес, а программа попытается соединиться с нужным сервером и запросит имя пользователя, номер телефона офиса и другую подобную информацию. Вот пример:
$finger johnc@idsoftware.com |
finger может выдать имя пользователя, состояние почты, телефонные номера и файлы .plan и .project. Разумеется, выдаваемая сервером информация зависит от конкретного сервера. Сервер, поставляемый в Slackware, возвращает такую информацию:
Имя пользователя
Номер комнаты
Домашний телефон
Рабочий телефон
Login статус
Email статусs
Содержимое .plan файла из домашнего каталога пользователя
Содержимое .project файла из домашнего каталога пользователя
Первых четыре могут быть установлены или изменены при помощи chfn
программы. Эти параметры хранятся в /etc/passwd файле. Для изменения информации в ваших .plan и .project файлах, просто измените их при помощи вашего любимого текстового редактора. Они должны находится в вашем домашнем каталоге и называться, соответственно, .plan
и .project.
Многие пользователи пользуются finger для своего эккаунта с удалённых компьютеров, просто чтобы посмотреть, есть ли у них почта. Так же вы можете посмотреть план работы или текущий проект пользователя. John Carmack из id Software регулярно обновляет свой план-файл, чтобы держать сообщество пользователей в курсе того, над чем он сейчас работает.
Как и большинства программ, у finger есть опции. Опять таки, мы отправим вас к man странице за дополнительной информацией.
Инициализация сети
Уровни загрузки 2, 3 и 4 запустят сетевые сервисы. Следующие файлы ответственны за инициализацию сети:
rc.inet1
Этот файл, созданный программой netconfig, ответственен за настройку сетевого интерфейса.
rc.inet2
Выполняется после rc.inet1
и запускает основные сетевые сервисы.
rc.atalk
Запускает AppleTalk сервисы.
rc.httpd
Запускает вэб сервер Apache.
rc.samba
Запускает Samba сервис.
rc.news
Запускает сервер новостей.
Инициализационные сценарии runlevel
После того, как инициализация системы завершена, init переходит к инициализации runlevel. Runlevel описывает, в каком режиме ваш компьютер будет работать. Звучит загадочно? Ну, runlevel сообщает init-у, будете ли вы в многопользовательском (multiuser logins) режиме, или только в одно-пользовательском (single user), хотите ли вы сетевые сервисы и будете ли вы использовать X Window или agetty(8), для управления входом в систему (logins). Файлы, приведённые ниже определяют разные runlevels в Slackware Linux.
rc.0
Выключает систему (runlevel 0). По умолчанию, это символическая ссылка на rc.6.
rc.4
Многопользовательский запуск (runlevel 4), но в X11 с KDM, GDM или XDM в качестве менеджера входа в систему.
rc.6
Перезагружает систему (runlevel 6).
rc.K
Запуск в одно-пользовательском режиме (runlevel 1).
rc.M
Многопользовательский режим (runleveld 2 и 3), но со стандартным текстовым входом (login). Это runlevel, используемый в Slackware по умолчанию.
Installpkg
installpkg(8) обеспечивает установку новых для вашей системы пакетов. Синтаксис таков:
# [ROOT=<path>] installpkg [option] <package name>... |
installpkg имеет три опции. Только одна из них может использована при вызове программы.
Интерактивная помощь
В дополнение к документации, поставляемой в ОС Slackware Linux, есть несколько способов получения помощи в режиме он-лайн.
Ip
Ну и наконец, есть две утилиты для работы с zip файлами. Которые являются очень популярными в мире WIndows, итак в Linux есть программы для работы с ними. Программа для сжатия называется zip(1), а программа для распаковки называется unzip(1).
Сжимать довольно легко:
$ zip foo * |
Эта команда создаст файл foo.zip, который будет содержать все файлы в текущем каталоге. zip автоматически добавит .zip
расширение, так что вам не надо указывать его в командной строке. Вы так же можете пробежаться по текущему каталогу, пакуя все каталоги, которые там есть:
$ zip -r foo * |
Распаковывать файлы тоже не сложно.
$ unzip foo |
Это распакует все файлы из файла foo.zip, включая все каталоги, присутствующие в архиве.
zip утилиты имеют несколько расширенных опций для создания само-распаковывающихся (self-extracting) архивов, для пропуска некоторых из файлов, управления размером сжатого файла, вывода на экран отчётов и гораздо больше. Смотрите man страницы для zip и unzip, чтобы узнать как использовать эти опции.
Иртуальные терминалы
Итак, вы делаете что-то и вам надо сделать ещё что-то. По идее вы можете просто бросить то, что вы делали и перейти к выполнению другой задачи. Но ведь это же многопользовательская система вроде? И вы можете войти столько раз, сколько пожелаете? Так зачем же выполнять только одну задачу, если параллельно можно выполнять и другую?
Проблема в том, что мы не можем подключить несколько клавиатур, мышек и мониторов к одному и тому же компьютеру; скорее даже большинство из нас просто не захочет этого. Очевидно, что дополнительное оборудование не является решением проблемы. А вот программное обеспечение может помочь, и Linux позволяет это, предлагая ''виртуальные терминалы'', или "VTs".
Нажав Alt и функциональную кнопку, вы можете переключать виртуальные терминалы; каждая функциональная клавиша соответствует терминалу. Slackware имеет 6 виртуальных терминалов по умолчанию. Alt+F2 переключит вас на второй, Alt+F3 на третий, и т.д.
Остальные функциональные клавиши зарезервированы для X сессий. Каждая X сессия использует свой собственный VT, начиная с седьмого (Alt+F7) и выше. Когда вы находитесь в X, Alt+Function комбинация заменяется на Ctrl+Alt+Function; так что если вы в X и хотите переключиться на третий терминал (не завершая X сессию), Ctrl+Alt+F3 переключит вас туда. (Alt+F7 вернёт вас обратно, если вы используете первую из X сессий.)
Использование модулей ядра
Модули ядра, это другое название драйверов устройств, которые могут быть вставлены в запущенное ядро. Они позволяют вам расширить список аппаратных устройств, поддерживаемых ядром, без установки другого ядра, или пере-компиляции заново.
Модули могут быть загружены или выгружены в любое время, даже во время работы системы. Это позволяет системным администраторам очень легко обновлять драйвера специфических устройств. Новый модуль может быть откомпилирован, старый выгружен, а новый загружен, и всё это без пере-загрузки компьютера.
Модули хранятся в каталоге /lib/modules/<kernel version>
вашей системы. Они могут быть загружены во время загрузки компьютера из rc.modules
файла. В этом файле есть очень много комментариев и примеров для типичных устройств. Для просмотра загруженных модулей воспользуйтесь командой lsmod(1):
# lsmod | ||
Module | Size | Used by |
parport_pc | 7220 | 0 |
parport | 7844 | 0 [parport_pc] |
Как видно из примера, у меня загружен только модуль параллельного порта. Для выгрузки модуля используйте команду rmmod(1). Модули могут быть загружены командами modprobe(1) или insmod(1). modprobe обычно безопаснее, так как автоматически загрузит модули, необходимые для модуля, который вы пытаетесь загрузить.
Большинство пользователей никогда не загружают или выгружают модули вручную. Они пользуются загрузчиком ядра для менеджмента модулей. Всё что вам надо сделать, это раз-комментировать строчку /sbin/kerneld(8) в /etc/rc.d/rc.modules
и автозагрузчик запустится. Он позаботится о загрузке и выгрузке модулей по мере надобности. Автозагрузчик определяет, что нужно загрузить модуль по обращению к устройству, для которого в данный момент модуль не загружен.
Вы можете найти больше информации в man страницах для каждой из команд, а так же в rc.modules
файле.
В этом разделе описано множество
В этом разделе описано множество программ для манипулирования фалами и каталогами. Вы должны были научиться создавать, удалять, и перемещать файлы и каталоги. Вы так же должны были научиться, отображать содержимое каталогов и файлов и изменять их временные метки. Ну и наконец, вы должны понимать, почему rm -rf / это очень и очень плохая идея.
[Назад][Содержание][Вперед]
//
Вы должны знать некоторые основные команды диагностики сети. Используя их вы можете определить,что именно является источником проблемы при связи, удалённый компьютер, или сеть между ним и вашим компьютером. Так же вы должны были ознакомиться с несколькими программами чтения новостей, вэб броузерами, ftp клиентами и коммуникационными программами.
[Назад][Содержание][Вперед]
//
Этот раздел является чем то вроде
Теперь у вы должны быть некоторые основные знания по стандартному текстовому редактору Unix vi. vi это довольно сложная программа, с множеством команд и настроечных опций. Всё же, вы должны уметь открыть файл, перемещаться по тексту, редактировать текст и выходить. Это всё, что вам понадобится для выполнения каждодневных задач. По мере возникновения необходимости в более мощном редакторе, вы можете использовать документацию vi для изучения его возможностей.
[Назад][Содержание][Вперед]
//
Как мы отметили выше, возможно
В этом разделе вы научились настраивать X Window систему при помощи xf86config и XF86Setup. Вы так же должны были разобраться в том, что такое окружение рабочего стола, и что такое оконный менеджер, и как выбрать, какой из них запускать. В добавок вы должны знать, как экспортировать экран. Теперь у вас должна быть запущенна работающая графическая среда.
[Назад][Содержание][Вперед]
//
Каталог /etc/rcd
Файлы, выполняемые системой при её инициализации, хранятся в каталоге /etc/rc.d
. Slackware использует расположение сценариев инициализации в стиле BSD. Каждое задание или runlevel (уровень загрузки) имеет свой rc
файл. Таким образом, получается организованная структура, которой легко пользоваться.
Есть несколько категорий сценариев инициализации. Начальная загрузка системы, уровни загрузки, инициализация сети и System V совместимые. По традиции, мы отнесём всё остальное к категории ''других''.
Каталог /kernels на Slackware CD-ROM
Прекомпилированные Slackware ядра доступны в каталоге /kernels
на Slackware CD-ROM, а так же на FTP сайте в основном каталоге Slackware. С появлением новых версий дистрибутива, обновляются и ядра, так что документация в каталоге с ядрами- всегда наиболее полный источник информации по ним. Каталог /kernels
содержит под-каталог для каждого из ядер. Имена под-каталогов совпадают с именами ядер. В каждом под-каталоге вы найдёте следующие фалы:
Файл | Назначение |
System.map | Системный map файл для этого ядра |
bzImage (или zImage ) | Образ ядра |
config | Конфигурационный файл исходника |
для этого ядра |
Чтобы установить ядро, скопируйте System.map
и config
в каталог /boot
вашей системы, а образ ядра скопируйте в файл /vmlinuz
. Запустите /sbin/lilo(8), чтобы установить LILO для нового ядра, а затем пере загрузите систему. Это всё что вам необходимо проделать для установки одного из прекомпилированных ядер в вашу систему.
Ядра, заканчивающиеся на ''.i'' - это IDE ядра. Т.е. они не содержат SCSI поддержки в самом ядре. Ядра, заканчивающиеся с ''.s'' - это SCSI ядра. Они содержат поддержку IDE устройств точно так же, как и ''.i'' ядра, плюс поддержку SCSI.
Kdir
mkdir(1) создаёт новый каталог. Просто укажите имя каталога, который вы хотите создать после имени команды. Вот пример создания под-каталога hejaz в текущем каталоге:
$ mkdir hejaz |
Так же вы можете указать путь:
$ mkdir /usr/local/hejaz |
Опция -p укажет mkdir создавать ''вложенные'' каталоги. Так, если в выше приведённом примере каталог /usr/local не существует, то программа выдаст сообщение об ошибке. Указание параметра -p заставить программу создать /usr/local и hejaz каталоги:
$ mkdir -p /usr/local/hejaz |
Kernel panic: VFS : Unable to mount root fs
(Это означает, что вы указали неверное устройство для root= параметра в LINUX.BAT файле. Вам необходимо изменить файл опять и выбрать другое root= устройство. Если вы не знаете, какое выбрать, займитесь перебором, пока не найдёте работающее значение.
Компилирование ядра из исходников
Новые пользователи часто спрашивают: ''Следует ли мне компилировать ядро для моей системы?''. Ответ, определённо: может быть. Большинству пользователей подойдёт одно из прекомпилированных ядер, с подгружаемыми модулями для устройств, не поддерживаемых самим ядром. Вы захотите откомпилировать ядро в случае, если вы обновляете его версию на более новое, которое мы ещё не предоставили в Slackware, или если вы наложили патч на исходник вашего ядра.
Сборка своего собственного ядра не такой уж сложный процесс. Первым делом необходимо убедиться, что в вашей системе установлен исходный текст ядра. Убедитесь, что вы установили пакеты из раздела K во время установки. Вам так же понадобятся пакеты из раздела D, в частности компилятор C, GNU make и GNU binutils. В общем неплохо бы, чтобы весь раздел D был установлен, если вы собираетесь заниматься разработкой чего либо. Теперь мы готовы к сборке ядра:
$ su - | |
Password: | |
# cd /usr/src/linux |
Первым делом вернём исходный текст ядра к его первоначальному состоянию. Для этого выполним следующее:
# make mrproper |
Теперь вы можете настроить ядро под вашу систему. Современное ядро предлагает на ваш выбор три способа выполнения этой задачи. Первый метод - это оригинальная текстовая система вопрос-ответ. Вам будет заданно много вопросов, а после этого будет создан конфигурационный файл. Проблема с этим способом в том, что если вы ошиблись, то вы должны начать всё сначала. Метод, предпочитаемый большинством пользователей - метод, основанный на системе меню. Ну и наконец. последний - X-ориентированный инструмент настройки ядра. Выберите, какой вам больше нравится, и наберите соответствующую команду:
# make config (текстовая вопрос-ответ версия) |
# make menuconfig (menu, текстовая версия) |
# make xconfig (X-ориентированная версия, вначале убедитесь, |
что вы в X) |
Для новых пользователей, вероятно, menuconfig покажется наиболее простой в использовании. Вы можете найти экраны с помощью, которые объяснят предназначение каждой части ядра. После настройки ядра, выйдите из программы настройки. Она создаст необходимые конфигурационные файлы. Теперь мы можем подготовить дерево исходников ядра к сборке:
# make dep |
# make clean |
# make zImage (Вначале попробуйте так) |
# make bzImage (Если предыдущая команда не |
сработала, попробуйте эту) |
# make modules |
Теперь мы можем установить свеже-скомпилированное ядро и модули. Чтобы установить ядро в Slackware системе, необходимо воспользоваться следующими командами:
# mv /vmlinuz /vmlinuz.old |
# cat arch/i386/boot/zImage > /vmlinuz |
# mv /boot/System.map /boot/System.map.old |
# cp System.map /boot/System.map |
файл и добавить соответствующий раздел для вашего старого ядра, на тот случай, если новое ядро не работает. После этого выполните /sbin/lilo, чтобы установить новый загрузочный блок. Теперь вы можете пере-загрузиться с новым ядром.
Лектронная почта
Электронная почта это самый распространённый сервис в интернет. В 1998 году сообщалось, что было послано больше электронной почты, чем обычной. Это конечно, удобный и полезный, а так же необходимый сервис.
В Slackware, мы поставляем стандартный почтовый сервер и несколько почтовых клиентов. Все обсуждаемые здесь клиенты работают в текстовом режиме. Многие Windows пользователей могут возразить, но вы обнаружите, что клиенты, работающие в текстовом режиме довольно удобны в использовании, в особенности, для удалённой проверки почты.
Linux
Это определённо, самый простой сценарий двойной загрузки. Используя LILO, просто добавьте ещё пункт в /etc/lilo.conf файл. Вот и всё.
Любая выполняемая программа называется
Программы, запущенные из командной строки обычно выполняются на переднем плане (foreground). Это позволяет вам видеть весь вывод программы и взаимодействовать с ней. Но бывают такие случаи, когда вам не хочется, чтобы программа занимала ваш терминал. Это называется выполнением программы в фоновом режиме (foreground), и существует несколько способов перевода программ в фоновый режим.
Первый способ перевода программы в фоновый режим, это добавление символа & в конце строки, запускающей программу. Предположим, вы хотите воспользоваться mp3 проигрывателем amp для проигрывания файлов из каталога, заполненного mp3 файлами, но вам не хочется занимать для этого терминал, так как вам надо делать что-то ещё в то же самое время. Следующая команда запустит amp в фоновом режиме:
$ amp *.mp3 & |
Программа будет выполняться, как и должна, а вы вернётесь в приглашение командной строки.
Другой способ перевода программы в фоновый режим, позволяет проделать это уже во время выполнения программы. Вначале запустите программу. Нажмите control+z. Это приостановит процесс. Что-то вроде паузы. Программа моментально прекратит выполняться, но может в любой момент быть продолжена. Как только вы приостановили процесс, вы возвращаетесь к приглашению командной строки. Для перевода процесса в фоновый режим, наберите:
$ bg |
И таким образом, приостановленный процесс перейдёт в фоновый режим.
Mailx
mailx(1) это почтовый клиент, управляемый командной строчкой. Он очень примитивен и практически ничего не предложит вам в качестве интерфейса пользователя. Тем не менее программа очень полезна, когда вам надо быстро отправить что-то, либо если вы хотите написать сценарий отправки почты, или что-то в этом роде.
Обычный вариант запуска вот такой:
$mailx -s <тема> <кому> |
mailx читает тело письма из стандартного ввода. Так что вы можете
cat любой файл в эту команду, чтобы отправить его, или же вы можете просто напечатать текст и нажать ctrl+D, когда закончите набор.
Вот пример отправления по почте файла исходника программы другой персоне.
$cat randomfunc.c | mailx -s "Вот эта функция" \ | |
asdf@example.net |
man страница объясняет, более подробно возможности mailx, так что вы наверное загляните туда перед использованием программы.
Man (сокращение от ''manual''
Исходные тексты большинства программных пакетов, которые мы включили в дистрибутив поставлялись с какого-то рода документацией. README файлы, инструкции по использованию, файлы лицензий... документация любого рода, поставляемая с исходниками программ входящих в вашу систему и установленных на неё в последствии, находится в каталоге /usr/doc.
Если информации, предоставленной в man вам не достаточно, то ваша следующая остановка - каталог /usr/doc.
Метод Информация телефон вэб-сайт
Slackware Linux так же доступен бесплатно в сети интернет. Вы можете спросить по email о поддержке, но более высокий приоритет всегда отдаётся тем, кто приобрёл официальный набор.
Официальный сайт проекта Slackware Linux находится по адресу:
http://www.slackware.com/
Основной FTP расположен здесь:
ftp://ftp.slackware.com/pub/slackware/
Mount и umount
В Linux очень просто подключать устройства. Всё что вам надо сделать, это запустить mount команду, указывай ей несколько опций. Использование этой команды может быть значительно упрощено, если монтируемое устройство описано в /etc/fstab файле. Предположим, я хочу подключить CD-ROM и fstab выглядит так, как в примере предыдущего раздела. Я могу сделать это, выполнив команду:
# mount /cdrom |
Так как в fstab есть строчка для этого устройства, mount возьмёт все опции оттуда. Если бы для этого устройства не было описания в fstab, то пришлось бы задавать все опции вручную:
# mount -t iso9660 -o ro /dev/cdrom /cdrom |
Эта строка включает ту же самую информацию, что и строка в вышеприведённом fstab, но в другом формате. Давайте разберёмся. -t iso9660 указывает тип файловой системы на устройстве. В этом случае это iso9660 система, которая используется на большинстве CD-ROM. -o ro указывает, что устройство подключается только для чтения. /dev/cdrom это имя устройства, которое мы хотим подключить и /cdrom это каталог, куда мы хотим подключить устройство.
До того, как извлекать флоппи, CD-ROM, или другое извлекаемое устройство, которое в данный момент подмонтированно, вам надо размонтировать его. Для того, чтобы сделать это, нужно воспользоваться командой umount. Не спрашивайте, почему она называется не unmount, так как мы не сможем вам ответить. Вы можете использовать либо имя устройства, либо точку монтирования в качестве аргумента для команды. Например, если вы хотите размонтировать CD-ROM, подключённый в предыдущем примере, любая из нижеприведённых команд позволит вам сделать это:
# umount /dev/cdrom | |
# umount /cdrom |
Mv
mv(1) перемещает файлы из одного места в другое. Пользователи DOS найдут её похожей на move команду. При использовании команды надо указывать источник и назначение. Вот пример обычного использования mv:
# mv myfile /usr/local/share/hejaz |
mv имеет несколько опций, которые так же обсуждаются в man странице.
Мы с вами уже обсуждали структуру
Файловая система хранит информацию о правах собственности для каждого фала и каталога. Включая информацию о пользователе и группе, которым принадлежит файл.Самый простой способ просмотреть эту информацию - воспользоваться ls:
$ ls -l /usr/bin/wc |
-rwxr-xr-x 1 root bin 7368 Jul 30 1999 /usr/bin/wc |
Нас интересуют третий и четвёртый столбцы. Они содержат информацию о именах пользователя и группы, которым принадлежит файл. В приведённом примере файл принадлежит пользователю root и группе bin.
Владельца файла можно изменить при помощи chown(1) (что значит ''change owner'' - изменить владельца), а группу при помощи chgrp (''change group'' - изменить группу). Чтобы изменить владельца фала на ''daemon'', мы выполним команду:
# chown daemon /usr/bin/wc |
А чтобы изменить группу на ''root'':
# chgrp root /usr/bin/wc |
chown так же может быть использована для задания и пользователя и группы, которым принадлежит файл:
# chown daemon.root /usr/bin/wc |
Принадлежность фалов - это очень важная часть использования Linux системы, даже если вы единственный пользователь. Иногда вам придётся исправлять права владения файлами и узлами (nodes) устройств.
n
ln(1) используется для создания ссылок на файлы. Это могут быть как жёсткие - hard, так и гибкие или символические -soft, symbolic ссылки. Разница между двумя типами ссылок обсуждалась в разделе5.2.3. Если вы хотите создать символическую ссылку на каталог /var/media/mp3 и расположить ссылку в вашем домашнем каталоге, вам необходимо выполнить такую команду:
$ ln -s /var/media/mp3 ~/mp3 |
Опция -s указывает команде ln, что ссылка должна быть символическая. Затем задаётся цель ссылки, и в конце указывается как она будет называться. В приведённом случае будет создан файл mp3, указывающий на /var/media/mp3. Вы можете назвать ссылку как вам заблагорассудиться, просто изменив последний из параметров команды ln.
Создание жёстких ссылок производится аналогично. Только опускается опция -s. Для примера, создадим жёсткую ссылку на тот же каталог, что и в примере выше:
$ ln /var/media/mp3 ~/mp3 |
Начальная загрузка системы
Первая программа, запускаемая в Slackware после ядра Linux-это init(8). Эта программа читает /etc/inittab
(5) файл, чтобы узнать, как загружать систему. Запускает /etc/rc.d/rc.S
сценарий для подготовки перед переключением на выбранный runlevel. rc.S
файл активизирует виртуальную память, подключает файловые системы, очищает определённые log каталоги инициализирует Plug and Play устройства, загружает модули ядра, настраивает PCMCIA устройства, активизирует последовательные порты и запускает System V загрузочные сценарии (если таковые присутствуют). rc.S
выполняет много задач самостоятельно, но так же до завершения своей работы, он вызовет ниже перечисленные сценарии из каталога /etc/rc.d
:
rc.S
Это и есть инициализационный сценарий.
rc.modules
Загружает модули ядра. Такие, как поддержка сетевой карты, PPP и другие. Если сценарий находит rc.netdevice
, то он выполнит и его.
rc.pcmcia
Проверяет наличие и настраивает все PCMCIA устройства, присутствующие в вашей системе. Это наиболее полезно для пользователей laptop компьютеров, у которых, наверняка есть PCMCIA модем или сетевая карта.
rc.serial
Настраивает последовательные порты, запуская соответствующие setserial команды.
rc.sysvinit
Ищет System V инициализационные сценарии, соответствующие выбранному runlevel и выполняет их. Это более подробно обсуждается ниже.
Настройка загрузчика системы Linux
Linux Loader (Загрузчик Linux), или LILO, является наиболее популярным загрузчиком, используемым в системе Linux. Он достаточно гибок в настройках и может быть использован для загрузки других операционных систем.
Slackware Linux поставляется с меню управляемой программой для настройки LILO, называемой liloconfig. Первый раз эта программа запускается в процессе установки системы, но вы можете вызвать её и после установки, напечатав liloconfig в командной строке.
LILO читает свои параметры настройки из файла /etc/lilo.conf(5). Этот файл не используется при каждой загрузке системы, но используется при каждой установке LILO. LILO должен быть пере установлен в загрузочный сектор после изменения его настроек. liloconfig поможет вам построить конфигурационный файл. Если вы предпочитаете редактировать /etc/lilo.conf вручную, то пере установка LILO должна быть произведена путём вызова /sbin/lilo из командной строки.
При вызове liloconfig вы увидите такой экран:
Если вы устанавливаете LILO впервые, то вам лучше выбрать ''simple''. В другом случае, вы найдёте, что режим ''expert'' быстрее, если вы знакомы с Linux и LILO. Выбор ''simple'' начнёт настройку LILO.
Если поддержка framebuffer-а включена в ядро, liloconfig спросит вас, какое видео разрешение вы хотите использовать. Это же разрешение будет использовано для XFree86 frame buffer сервера. Если вы не хотите запускать консоль в специфическом видео разрешении, то выбор normal сохранит стандартный 80x25 текстовый режим.
Следующая часть настройки LILO - это выбор места, куда вы его установите. Это, вероятно, самый важный шаг. Список, приведённый ниже объясняет подробности выбора.
Root
Этот вариант установки расположит LILO в начале вашего корневого каталога. Это наиболее безопасный выбор в случае, если у вас на компьютере есть другая операционная система. В этом случае вы можете быть уверены, что любые другие загрузчики не будут стёрты. Недостаток в том, что LILO может быть загружен отсюда только в случае, если ваш Linux диск является первым в вашей системе.
Floppy
Этот вариант ещё более безопасен, чем предыдущий. Он создаст загрузочную дискетку, которую вы сможете использовать для загрузки вашей Linux системы. Загрузчик вообще не располагается на жёстком диске, и когда вы хотите пользоваться Slackware Linux, вы загружаетесь с этой дискеты.
MBR
Этот метод рекомендуется в том случае, если Slackware единственная система на вашем компьютере, или если вы решили воспользоваться LILO для загрузки так же и остальных систем на вашем компьютере.
ВНИМАНИЕ: Этот вариант перепишет любой другой загрузчик, находящийся в MBR
После выбора места для расположения загрузчика, liloconfig запишет конфигурационный файл и установит LILO. Вот и всё. Если вы выберите вариант установки ''expert'', вы получите особое меню. Пункты в этом меню позволят вам пройтись по файлу /etc/lilo.conf, добавить другие операционные системы в ваше загрузочное меню, и указать LILO передать особые параметры ядру во время загрузки. Меню ''expert'' выглядит следующим образом:
Какой бы не была конфигурация системы, установка загрузчика довольно проста. liloconfig заметно упрощает процесс установки. Тем не менее, возможны варианты, когда LILO просто не будет работать. Но LILO это не единственный способ загрузки Linux.
4.4.2 LOADLIN
Второй способ загрузки системы, предоставляемый в Slackware это LOADLIN. LOADLIN представляет собой DOS выполняемый файл, который может быть использован для загрузки Linux из работающей DOS системы. Для работы программы необходимо, чтобы ядро Linux находилось на DOS разделе, чтобы LOADLIN мог загрузить его и запустить систему.
При установке системы, LOADLIN устанавливается в домашний каталог root пользователя, как .ZIP файл. Для LOADLIN нет автоматической процедуры установки. Вам необходимо будет скопировать ядро Linux (/vmlinuz) и LOADLIN файл из домашнего каталога root-а на DOS раздел.
LOADLIN полезен, если вы хотите сделать загрузочное меню в DOS разделе. Меню может быть добавлено в AUTOEXEC.BAT файл, что позволит выбирать, какую из систем (DOS или Linux) загружать при включении компьютера. Если вы выберите Linux, меню вызовет LOADLIN, для запуска Slackware. Ниже приведён пример AUTOEXEC.BAT файла для Windows 95, с меню выбора системы:
@ECHO OFF |
SET PROMPT=$P$G |
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\ |
CLS |
ECHO Please Select Your Operating System: |
ECHO. |
ECHO [1] Slackware Linux |
ECHO [2] Windows 95 |
ECHO. |
CHOICE /C:12 "Selection? -> " |
IF ERRORLEVEL 2 GOTO WIN |
IF ERRORLEVEL 1 GOTO LINUX |
:WIN |
CLS |
ECHO Starting Windows 95... |
WIN |
GOTO END |
:LINUX |
ECHO Starting Slackware Linux... |
CD \LINUX |
LOADLIN C:\LINUX\VMLINUZ ROOT=<root partition device> RO |
GOTO END |
:END |
4.4.3 Двойная загрузка
Многие пользователи настраивают свои компьютеры для загрузки Slackware Linux и ещё какой-то другой операционной системы. Ниже описаны несколько типичных сценариев двойной загрузки.
Не получается открыть начальную консоль
Это обычно случается при указании неверного раздела диска для root= параметра в LINUX.BAT файле. Измените LINUX.BAT опять, выбрав другой раздел в качестве root=. Если вы не имеете понятия о том, что это значит, вы можете просто заняться перебором, пока не доберётесь до работающего.
Так же это может быть вызвано распаковкой .ZIP файлов в каталоге, отличном от корневого. Архив должен быть распакован в корневом каталоге диска, а не в каком-то из под-каталогов.
Netconfig это часть программы
В Slackware есть pppsetup- утилита для настройки dialup соединения к ISP (Internet Server Provider). Она находится в ppp.tgz пакете из раздела программ N. pppsetup использует такой же интерфейс, как и программа установки. Если вы не помните, как пользоваться этим интерфейсом, то вернитесь к разделу 3.1.2, для получения справки. pppsetup задаст вам много вопросов и установит несколько конфигурационных файлов в /etc/ppp. Как root запустите pppsetup; давайте пройдёмся по списку вопросов.
Phone number
Здесь вам следует указать номер вашего ISP, с указанием в качестве префикса, типа набора номера. Для большинства людей тональный набор будет правильным выбором18. Если номер вашего провайдера 555-1013 и вы используете тональный набор, то вам надо ввести atdt555101319. Если на вашей телефонной линии есть call waiting (ожидание звонка) и вы хотите отключить этот режим во время работы с провайдером, то введите что-то вроде atdt*70,5551013. Запятая необходима. Она вставляет 1,5 секундную паузу после *70, чтобы отключить режим ожидания звонка. Без запятой это не сработает.
Modem device
Здесь вам следует выбрать, куда подключён ваш модем. Если вы знаете на каком COM порте он был под Windows, то вы можете выбрать из списка эквивалент. Иначе вам придётся поэкспериментировать. Наиболее логично начать с ttyS0 и пройтись по списку.
Modem baud rate
Подберите baud rate, который наиболее близок вашему модему. Если вы не знаете baud rate, обратитесь к документации вашего модема.
Callback
Теперь вам понадобится вся информация, предоставленная вам вашим ISP. Очень немногие ISP используют callback, так что скорее всего, вы можете спокойно ответить ''No'' на этот вопрос. Callback, это когда вы вначале звоните ISP, а затем они перезванивают на ваш номер, и только тогда вы можете войти в сеть. Если вам надо использовать callback, то ответьте ''Yes'' на этот вопрос. Тогда вам будет предложено ввести номер вашего телефона, login и пароль. Возможно, вам не понадобится вводить ваши начальные логин и пароль. Ну и наконец, последний вопрос: какую из схем идентификации (authentication) использует ваш провайдер. Если это CHAP или PAP, то ответьте ''Yes''. Позже вам необходимо будет настроить это. Смотрите ниже, как это сделать. Если они не пользуются вышеперечисленными методами, то ответьте ''No'' и смотрите раздел ''Chat script'' ниже.
Modem init string
Если у вас не какой- то необычный модем, то вам скорее всего можно просто нажать ввод, чтобы выбрать строку инициализации модема по умолчанию (''AT&FH0''). Иначе, смотрите документацию вашего модема. И найдите там строку инициализации, рекомендованную для вашего модема.
Domain name
Теперь вам надо ввести доменное имя вашего провайдера. Это будет что-то вроде ''primer.net'', ''slackware.com'' или что-то похожее. (Ну ладно, почти наверняка это будет не slackware.com :)
DNS IP address
Ваш ISP должен предоставить вам IP адрес их сервера имён. Если он у вас есть, введите его тут. Иначе обратитесь к ISP, чтобы узнать его20.
Authentication method
Вам необходимо узнать у ISP, пользуются ли они CHAP, PAP, или ни одним из них при идентификации пользователя. Проще всего узнать это, позвонив вашему ISP. Тем не менее, если после набора номера вы увидите приглашение login и password после соединения, то наиболее вероятно, вам следует воспользоваться ''SCRIPT''. Иначе, обратитесь к ISP, чтобы выяснить, каким методом пользоваться.
PAP или CHAP
Если вы выбрали PAP или CHAP на экране выбора метода идентификации, то здесь вам необходимо будет ввести ваше имя пользователя (username). ISP должен присвоить вам username. Если это не так, то что-то определённо не правильно. Вам понадобится связаться с ними и получить username. Затем вам будет необходимо ввести пароль, предоставленный вам вашим ISP.Chat script
Если вы выбрали ''SCRIPT'', то вашему вниманию предоставится довольно таки долгое объяснение того, что же такое script. Прочтите его пожалуйста очень внимательно, так как там всё очень подробно описано. в общем, вам необходимо сообщить программе, какую информацию провайдер должен сообщить вашему компьютеру, и что компьютер должен ответить для входа в сеть. Вы попадёте в ''петлю'' вопросов и ответов, где вам надо будет ввести некоторый текст, который компьютер должен ожидать от ISP, и при получении такового, ответить на него то что вы сообщите далее. Для выхода из цикла, просто нажмите ввод на любой пустой строке.Done
В конце на экран будут выведены все данные о ppp конфигурации. Здесь вы не сможете изменить их содержание, но по крайней мере, вы можете проверить, всё ли указанно правильно. Нажмите ввод для того чтобы сохранить все настройки и выйти из программы. На этом экране вы так же найдёте много информации о том, как активизировать ваше dial-up соединение, и как разорвать его. Основная идея этого в следующем: как root, запустите ppp-go, для активизации соединения. Когда программа выдаст вам локальный и удалённый IP, вы подключены к интернет. Когда вы завершили всё, что хотели, выполните ppp-off, как root и эта программа отсоединит вас от сети.
Netmods
Драйвера сетевых устройств, поддерживаемых ядром, включены в пакет netmods (slakware/n3/netmods.tgz)17. Если вы ещё не установили этот пакет, то сейчас самое время установить его. (См. раздел5.9, для получения информации о том, как устанавливать отдельные пакеты программ.)
Модули ядра, которые должны быть загружены во время загрузки компьютера, загружаются из файла rc.modules, расположенного в каталоге /etc/rc.d. В стандартном файле rc.modules есть раздел ''Network device support''. Если вы откроете этот файл и заглянете в упомянутый раздел, вы заметите, что он вначале проверяет, существует ли исполняемый файл rc.netdevice в каталоге /etc/rc.d; rc.netdevice создаётся в том случае, если setup сумел определить ваши сетевые устройства при установке. Если это так, то вы скорее всего не читаете этот раздел (хм, парадокс, однако); ну а если не так, то продолжайте читать.
Ниже, после блока ''if'', находится список сетевых устройств и modprobe строчек, каждая из которых прокомментированна. Найдите ваше устройство и раскомментируйте соответствующую modprobe строчку, не забудьте сохранить изменения в файл. Если вы выполните, как root пользователь, rc.modules, то драйвер вашего устройства должен загрузиться (так же, как и все остальные откомментированные модули). Обратите внимание, что некоторые модули (такие, как драйвер ne2000) требуют указания параметров; убедитесь, что вы выбрали правильную строчку.
Обавка, удаление и обновление программ
В ZipSlack и BigSlack могут быть использованы те же самые пакеты программ, что и в нормальной установке Slackware. Таким образом. вы можете пользоваться стандартными инструментами для управления пакетами. Вы можете даже добавить пакеты прямо со Slackware CD-ROM.
Смотрите Ref Управление пакетами для дополнительной информации.
Официальный диск и набор в коробке
Официальный набор Slackware Linux CD поставляется от Slackware, Inc. Покупая официальный набор, вы получаете удобство установки с CD, поддержку по установке через электронную почту, 30-страничный буклет по установке и даже больше. Набор Slackware Linux включает в себя набор CD и официальное руководство пользователя. Покупка официального набора- лучший способ помочь проекту Slackware Linux.
Охранение файлов
Для сохранения файлов в vi может быть использовано несколько разных команд. Если вы хотите сохранить текущий буфер в файл randomness, вам надо набрать:
:w randomness |
После того, как вы однажды сохранили файл, для повторной записи в него, вы можете просто набрать :w. Все изменения сохранятся в файл. После сохранения файла, вы попадаете в командный режим. Если вы хотите сохранить изменения и выйти, из vi (что случается довольно часто), вам надо набрать :wq. Это укажет vi сохранить изменения и выйти.
Иногда необходимо сохранить файл, помеченный только для записи. Вы можете сделать это, указав восклицательный знак после команды записи, вот так:
:w! |
:wq! |
Все же может случится, что вы не сможете записать изменения, которые вы произвели в файл (например, если файл принадлежит другому пользователю). Если это случится, vi сообщит вам, что он не может записать файл. Если вы действительно хотите изменить файл, вам придётся вернуться и изменить его, как root.
Олучение помощи
Перед тем как обращаться за помощью, вам следует прочесть документацию, в C:\LINUX каталоге, вполне возможно ответ на ваш вопрос уже ждёт вас там.
Если вы прочли документацию и всё ещё не решили вашу проблему, один из приведённых ниже методов наверняка поможет вам.
Олучение ZipSlack/BigSlack
Получение ZipSlack или BigSlack это довольно простая процедура. Если вы приобрели официальный Slackware Linux CD set, то у вас уже есть ZipSlack и BigSlack. Просто найдите CD, содержащий выбранный вами вариант и вставьте его в ваш привод CD-ROM. Обычно это третий или четвёртый диск.
Если вы хотите скачать ZipSlack или BigSlack, то зайдите вначале на нашу ''Get Slack'' страничку, для получения последней информации по загрузке:
http://www.slackware.com/getslack/
ZipSlack и BigSlack являются частью каждого релиза Slackware. Найдите там тот из релизов, который вы хотите, и отправляйтесь к соответствующему каталогу на FTP сайте. Каталог, соответствующий последнему релизу, всегда находится по адресу:
ftp://ftp.slackware.com/pub/slackware/slackware/
Вы найдёте ZipSlack в /zipslack под-каталоге и BigSlack в /bigslack каталоге. ZipSlack поставляется, как один большой .ZIP файл или флоппи ориентированную ''нарезку''. Нарезка находится в /zipslack/split каталоге. BigSlack поставляется только в нарезанном виде.
Не останавливайтесь на скачивании только .ZIP файлов. Вам так же надо скачать документацию и образы загрузочных дисков, которые есть в это каталоге.
Онтирование NFS
NFS, как мы уже упоминали, это сокращение для Network Filesystem (Сетевая файловая система. На самом деле она не является частью реальной файловой системы, но может быть использована для подключения устройств через сеть.
Зачастую в больших Unix сетях возникает необходимость разделять многие программы, домашние каталоги, и почтовые очереди. Проблема предоставления идентичных копий файлов различным компьютерам разрешается при помощи NFS. Можно использовать NFS для разделения одного набора домашних каталогов между всеми рабочими станциями. В таком случае, рабочие станции монтируют этот разделяемый каталог и используют его, как если бы он был размещён локально.
Смотрите раздел 4.2.6 и man страницы для exports(5), nfsd(5) и mountd для дополнительной информации.
Оординаты перевода
Домашняя страничка перевода:
http://sle.how-to.ru
Хостинг любезно предоставлен Алексеем Чегляковым.
Если у вас есть какие-то пожелания или советы по поводу перевода, пишите по адресу:
dolphin77@mail.od.ua
[Содержание][Вперед]
//
Op
Есть так же и программа, которую вы можете использовать для вывода динамической информации о процессах, выполняемых в системе. Программа называется top(1):
$ top |
Эта команда выдаст полный экран информации о выполняемых процессах, а так же некоторую общую информацию о системе. Такую, как средняя загрузка, количество выполняемых процессов, состояние процессора, информацию о свободной памяти и для каждого из процессов - PID, пользователь, приоритет, использование CPU и памяти, время выполнения и имя программы.
Называется она top потому, что программы, наиболее требовательные к процессору будут отражены в верху списка. top является довольно удобным инструментом для определения того, какая из программ вышла из под контроля и должна быть убита,