Выходные с чертёнком ------------------------------------------------------------------------ Сисадминам просьба не волноваться, это не про них. Описан процесс установки и настройки FreeBSD на сугубо домашнем компе, не первой свежести пеньке-133 причём с дохлым моником. Последнее обстоятельство ограничивает меня рассмотрением только текстового режима работы. Кроме того, смею предположить, что вы устанавливаете серверную ось на домашней машине прежде всего в образовательных целях. В этом случае знакомство с текстовым режимом работы будет оптимальным решением. Подготовка Итак мы собираемся произвести установку на домашний комп дополнительной ОС. Первые два вопроса, с которыми необходимо определиться (кроме Что делать? и Кто виноват?) это Откуда ставить? и Куда ставить? С первым более-менее ясно -- нет ничего удобнее CD. Я пользовался четырехдисковым набором от Linux Center для версии 4.7. Первый диск загрузочно-инсталляционный + коллекция пакетов. На втором -- живая система, которая может пригодиться в пожарной ситуации. Ну, например, вам срочно понадобилось завалить сервант, к которому возможен физический доступ. Впрочем, в этом случае будет проще просто спихнуть его со стола. Третий и четвертый диски содержат дополнительные коллекции пакетов. Для решения второго вопроса вам придётся помедитировать над своим железным другом самостоятельно. Если вы не очень знакомы с принципами размещения осей на винтах для архитектуры PC, почитайте доки с www.symon.da.ru - это лучшее из того, что мне удалось найти. Остановимся на ключевых моментах: 1) На каждом из физических дисков может быть создано только четыре основных раздела. 2) Один из четырёх разделов (обычно второй) может быть обозначен как расширенный (extended). Внутри него можно создавать дополнительные разделы. 3) BIOS PC, как правило, не видит дальше 8 Gb. Поэтому начало загрузочного раздела должно находится внутри этой области. 4) Наиболее безопасно устанавливать незнакомую систему на никому не нужный комп. Из моего опыта следует, что все доступные для PC оси можно поделить на три сорта. К третьему сорту относятся все разновидности DOS и Win9x -- эти системы грузятся только с первого раздела первого винта, т.е. с диска C:. Ко второму сорту относятся ортодоксальные Unix'ы (FreeBSD, NetBSD, QNX RTP). Они грузятся с любого раздела, но о расширенном разделе не хотят ничего знать. Системы первого сорта наиболее дружелюбны и работают откуда угодно. Выявлены следующие особи: WinNT(2K,XP), BeOS, Linux (опробовано на Mandrake). Впрочем, последние могут доставить неприятности при организации загрузки, поскольку большинство бутменеджеров предпочитает не связываться с загрузкой из расширенного раздела. Третьим судьбоносным вопросом является: Как грузить? Ведь настоящая хацкерская тачка должна быть многоосной. Можно воспользоваться загрузчиком одной из систем или выбрать независимый загрузчик. Я выбрал SyMon и не разочаровался. Итак, будем считать, что вы определились с означенными тремя вопросами и ...стоп. Надо ещё выделить время. То есть когда вы будете ставить систему в десятый раз, времени вам понадобится гораздо меньше, но поначалу надо действовать вдумчиво, с чувством, толком, расстановкой. Поэтому выделяйте не менее одного выходного. Я потратил оба. Итак CD закуплены, компутер томиться в ожидании, пыво остывает в холодильнике - можно начинать... Установка Берём CD#1 и загружаемся. После загрузки появляются текстовые менюшки, немного сумбурные и крысой не цепляются, но при некоторой сноровке пользоваться можно. Прямо с порога вам будет предложено переконфигурировать ядро, на провокации не поддаёмся, чего его ковырять без особой надобности. Далее попадаем в менюху проги /stand/sysinstall. Запомните это слово. Вы можете запускать эту прогу всю оставшуюся жизнь, подкручивая, полируя или ломая новым способом уже установленную систему. А сейчас выбираем стандартную инсталляцию. Далее надо выбрать диск, если их больше одного, после чего запустится fdisk. До этого момента я употреблял термин раздел в смысле как он употребляется в MSDOS и PC стандартах. Во FreeBSD принята несколько другая терминология (они ссылаются на тяжелое наследие Unix . Термин слайс (slice) употребляется в смысле раздела MSDOS, а термин раздел (partition) обозначает часть внутри слайса, на которой может быть создана файловая система (это в узком смысле). В более широком смысле термин раздел может обозначать и слайс и собственно раздел. Ниже я постараюсь употреблять эти слова в соответствии с принятым в FreeBSD порядком. [1] Повторюсь, FreeBSD относится к системам второго сорта, поэтому не пытайтесь ставить её в расширенный раздел или на один раздел с виндовс. Эта система юная, но гордая и требует себе отдельного первичного раздела. Если такой раздел уже выделен, рекомендуется его удалить и создать заново. Тип раздела по умолчанию определяется номером 165 и лучше его не менять. Всё, жмём Q и уходим. Теперь вам будет предложено установить бутменеджер и записать MBR. На это надо твёрдо отвечать, что ничего нам не надо и со своим MBR мы разберёмся сами. Далее запускается ещё одно лихо - Disklabel Editor. Эта штука напоминает fdisk и служит для нарезания слайсов на разделы. Тут я доверяюсь вкусу и чувству меры разработчиков и жму кнопку A, что значить "автоматически". Смотрим, шта палучилась. Слайс в 2 гектара был нарезан следующим образом: корень (/) = 128M, swap = 240M, /var = 256M, /tmp = 256M, /usr = 1111M. Если что-то не устраивает можно поправить ручками. Здесь же удобно добавить дополнительные точки монтирования для существующих посторонних слайсов, но только в пределах данного диска. С диском покончено, пора выбирать чего ставить. Кроме собственно системы доступно огромное количество пакетов и их можно выбирать индивидуально. Однако из экономии времени я пользуюсь "комплексными обедами", а именно выбираю девелоперскую дистрибуцию и дело с концом. Если вы не уверены, можно поставить минимальную дистрибуцию и доставлять порты/пакеты по мере возникновения необходимости. Кроме того я ставлю дерево портов. Постинсталяционные исследования диска командой df (disk free) показали, что корневой раздел заполнился на 34 метра, раздел /usr на 680 метров, а /var и /tmp практически не пострадали. Наконец предлагают выбрать откуда ставить (9 вариантов!), неужели не ясно? CD/DVD! Вам может показаться, что система уже почти поставлена и настроена - это не так. Ещё не поздно всё отменить, о чём и сообщает очередная менюшка. Но мы её игнорируем и жмём OK! Побежали буковки и циферки, процесс установки пошёл и это нормально. Обращает на себя внимание ровное гудение блиновода, система шарашит не задумываясь. В моём случае установка закончилась через 6 минут. Далее следуют новые проявления врождённого любопытства системы в виде вопросов. Можно отвечать на них сейчас или оставить на потом. Отмечу лишь пару моментов: второго пользователя пока не добавляем, а пароль для рута устанавливаем. Что было отмечено сразу после установки, так это высокая скорость загрузки. Фря грузится быстрее виндов в три раза и приближается к DOS, оставляя позади остальные системы. Это может оказаться полезным если вы торопитесь и вдруг понадобилось проверить почту. Впрочем, торопливость не лучший помощник в зтой жизни. Кстати, эта перезагрузка, может оказаться последней для вашего компа, не в смысле, что комп скоро загнётся, а в смысле что, для нормального функционирования системы перезагрузка больше не требуется. Настройка "Веришь ли ты в настройку после установки?" - пела Шер, видать она сидит под виндами. Под никсами ("у них") настройка системы обязательна. Перво-наперво надо определиться с редактором - без него, как без рук, хотя некоторые умудряются и без рук... Например, для добавления строки к файлу можно использовать следующую конструкцию: # echo someparameter=somevalue >> some_config.file Редактор Система к счастью уже содержит два редактора - vi и ee. Если вы не ищете лёгких путей - изучайте vi, я же выбрал ee. Во-первых проверим, что он действительно стоИт: # ee потом сделаем его редактором по умолчанию: # set EDITOR=ee (позднее надо будет не забыть добавить соответствующую строчку в .profile в домашней директории.(export EDITOR=ee Монтируем блины В процессе установки пакетов нам потребуется часто менять диски в приводе, поскольку дисков много а привод - один. Лично у меня тачка живёт под столом и нажимать кнопку привода мне неудобно. Поэтому я сразу втыкаю парочку фирменных скриптов: /usr/local/bin/cdm отвечает за установку блина (в /dev/skovoroda), а /usr/local/bin/cdu - за его вытаскивание. #!/bin/sh #cdm - CD mount cdcontrol -f /dev/acd0c close mount /cdrom #!/bin/sh #cdu - CD unmount umount /cdrom cdcontrol -f /dev/acd0c eject Далее делаем им chmod 770, и скрипты готовы к использованию. Первая неприятность состоит в том, что cdcontrol не будет выдвигать лоток если он пуст. Исследование исходников показало, что баг кроется в архитектуре ATAPI-CD драйвера. Всё организовано по аналогии с IDE винчестером -- если диска нет, значит девайс не сконфигурирован, его номер не возвращается и отдать команду мы ему не можем. В общем, можете пожаловаться разработчикам... Другая неприятность заключается в том, что система позволяет монтировать файловые системы только администратору aka руту. Мы вернемся к этому позже, а пока что у нас нет юзеров -- нет и проблемы. bash Далее будем ставить любимый шелл - bash. По умолчанию Фря ставит csh, что нас лично расстраивает. # /stand/sysinstal Ставим Disk#1 в привод (монтировать не надо, программа сделает), далее по пунктам меню: Configure-Pakages-CD/DVD-shells-bash...Нажимаем на кнопку - получаем результат. Переходим в домашний каталог и делаем резервную копию конфигурации: # cd ~ # cp .profile .profile_orig # ee .profile Здесь вставляем следующие строки: export EDITOR=ee export PS1="\u:\W!!"; #печатать в приглашении bash имя юзера и путь export PS2="\t!!"; #в дополнительном приглашении печатать время #для rootа я устанавливаю удобств по минимуму, чтоб не засиживаться #позднее для пользователя устанавливаю более удобное # export PS1="\u:\w>"; с указанием полного пути alias ls='ls -aFG' #по команде ls: (-a) показывать все файлы, # (-F) для директорий, ссылок и # исполняемых файлов использовать спец. обозначения # (-G) раскраска файлов Далее необходимо сменить шелл для любимого админа. Набираем: # /usr/local/bin/bash bash-2.05b# chpass -s /usr/local/bin/bash root Для перегрузки консоли без перезагрузки всей системы достаточно выполнить следующее: # shutdown now # return # exit Проверяем как работает bash: стрелки вверх/вниз - прокрутка истории команд, tab - автодополнение пути к файлам. Русификация Приступаем к русификации. Небольшое технологическое отступление. Архитектура IBM PC предусматривает следующий способ отображения информации в текстовом режиме. В специальную область видеопамяти загружается таблица с начертаниями символов. Вывод информации осуществляется указанием видеоадаптеру номеров соответствующих символов. Большинство символов имеют по краю черную вертикальную полоску шириной в один пиксель для предотвращения "слипания". Только небольшой диапазон адресов, изначально предназначенный для хранения символов псевдографики, не имеет этой особенности. Так вот, среди наиболее известных русских кодировок, только альтернативная кодировка ГОСТ (она же CP-866) сохраняет символы псевдографики на их родных местах, позволяя наблюдать на экране гладенькие рамочки. Таким образом, врач прописывает ставить шрифты в кодировке CP-866, но использовать "родную" для Unix кодировку KOI8-R и соответствующую перекодировочную таблицу для сопряжения этих двух. Что может быть проделано как через /stand/sysinstall, так и руками. Опишем последнее. Редактируем /etc/rc.conf keymap="ru.koi8-r.shift" #можно поставить просто ru.koi8-r, но тогда цифровые клавиши в #русской раскладке переворачиваются, что мне было непривычно scrnmap="koi8-r2cp866" font8x16="cp866b-8x16" font8x14="cp866-8x14" font8x8="cp866-8x8" Далее редактируем /etc/ttys console none unknown off secure # ttyv0 "/usr/libexec/getty Pc" cons25r on secure # Virtual terminals ttyv1 "/usr/libexec/getty Pc" cons25r on secure ttyv2 "/usr/libexec/getty Pc" cons25r on secure ttyv3 "/usr/libexec/getty Pc" cons25r on secure ttyv4 "/usr/libexec/getty Pc" cons25r on secure ttyv5 "/usr/libexec/getty Pc" cons25r on secure ttyv6 "/usr/libexec/getty Pc" cons25r on secure ttyv7 "/usr/libexec/getty Pc" cons25r on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure И снова редактируем .profile любимого шелла export CHARSET=KOI8-R export MM_CHARSET=KOI8-R export LANG=ru_RU.KOI8-R Ну вот мы и русифицированы (здесь надо перегрузить консоль как было показано выше). Русская клавиатура включается клавишей CapsLock и заявляет о себе свечением соответствующего светодиода, что в принципе удобно. При переключении между несколькими консолями (Alt+F1, F2..) состояние клавиатуры для каждой из них сохраняется и диод CapsLocka загорается и гаснет соответственно. Функции CapsLockа берёт на себя комбинация Shift+CapsLock и Ctrl+CapsLock. Удерживая Alt, также можно печатать в иной раскладке. Midnight Commander Bash bashем, но иногда хочется побродить по директориям в свободном, так сказать, полёте. Будем ставить Midnight Commander. Обратите внимание, что ставим мы всё из пакетов. Как было правильно подмечено кем то из классиков, пакеты (packages) подобны готовым блюдам, в то время как порты (ports) это полуфабрикаты. Установка софта из портов требует дополнительного труда по скачиванию исходного кода, компиляции и инсталляции, зато вы можете выковырять из пиццы лишний, по вашему мнению, лук. Итак вставляем диск #4 и набираем знакомое /stand/sysinstall, далее по знакомой дорожке: Configure-Pakages-CD/DVD-misc-mc. OK, mc поставлен. Кстати если ваш mc норовит стартовать в черно-белом настроении - добавьте в ~./profile строку: export COLORTERM=1 и он моментально посинеет. Добавляем юзеров Теперь, пожалуй пора и юзеров добавить. Для начала залезем в каталог /usr/share/skel/ и покопаемся в тамошних dot-файлах. Особое внимание следует уделить dot.profile. Это прототип для .profile, который будет копироваться в домашний каталог для каждого нового юзера. Для упрощения жизни можно скопировать сюда уже настроенный /root/.profile. Далее набираем root:skel!!adduser Эта полезная утила предполагает, что вы будете создавать много юзеров по одному шаблону. Поэтому сначала она будет задавать вопросы по поводу параметров по умолчанию, будьте внимательны. Когда дойдёт дело до создания вашего аккаунта, кроме логина/пароля необходимо задать группу wheel. Только пользователям этой группы разрешено выполнять по совместительству обязанности админа, т.е. команду su. Вы имеете возможность пригласить себя и в другие группы, я записываюсь в operator и network. Если понадобиться что-то поменять, можно отредактировать /etc/group. Монтирование дисков Вот и настал момент, когда вы можете логиниться под нормальным аккаунтом (далее в примерах я буду использовать свой - wintix). Однако здесь возникают проблемы разграничения прав пользования различными ресурсами. Методы решения таких проблем рассмотрим на примере монтирования файловых систем сменных накопителей. Первое, что приходит в голову - надо использовать команду su. Однако, если вы захотите, например, предоставить возможность монтирования CD своей подруге aka жене, вам придётся сообщить ей пароль суперпользователя и она получит с ним полный контроль над системой, а это может оказаться не то, чего бы вам хотелось. Другой путь[2] - использование утилиты sudo, позволяющей выполнять юзерам отдельные команды от имени рута. Этому пути посвящена замечательная статья Станислава Лапшанского [3]. Однако, известно, что SUIDные программы являются излюбленной мишенью хакеров, и эксперты по безопасности рекомендуют использовать этот механизм как можно реже. К счастью, есть ещё один механизм. Для начала необходимо разрешить монтирование юзерам в принципе, на уровне ядра. Для этого редактируем /etc/sysctl.conf, добавляя в него следующую строку: vfs.usermount=1 Далее, возможность монтирования устройства будет определяться правами доступа пользователя к спецфайлу, представляющему данное устройство в каталоге /dev. Следуя традиции, я изменяю группу-владельца CD на operator, а себя я в эту группу уже включил. root:~!!chgrp operator /dev/acd0c root:~!!ls -l /dev/acd0c crw-rw---- 4 root operator 117, 0 30 апр 01:59 /dev/acd0c Вот теперь юзер может набрать заветное wintix:~> mkdir cd wintix:~> mount -t cd9660 /dev/acd0c ~/cd и получить доступ к CD. Этим же способом можно получать доступ и к другим сменным и не очень носителям инфы. Замечено, что в качестве точки монтирования разрешается использовать только каталог, владельцем которого являетесь вы. Скрипты cdm и cdu должны быть соответственно модифицированы, а все operatorы должны иметь в домашнем каталоге каталог cd. Есть и четвёртый путь, предлагаемый официальным FAQ -- использование пакета mtools. Мне он показался недостаточно пуристским. USB Flash Drive Долго не мог понять как пользовать USB Flash Disk под FreeBSD. При втыкании устройства в порт на системную консоль выдаётся несколько строк с идентификацией устройства и его характеристиками: umass0: USB Solid state disk, rev 1.10/1.00, addr 2 da0 at umass-sim0 bus 0 target 0 lun 0 da0: Removable Direct Access SCSI-2 device da0: 650KB/s transfers da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)
Продолжение В /dev появляется новое устройство da0. Что делать дальше было не понятно, монтировать не получалось. Поиск выдал несколько вопросов в конференциях с описанием аналогичных проблем, но не выдал ответов. В результате я пришёл к чтению man(4) da . Цитата: /dev/rdau raw mode SCSI disk unit u, accessed as an unpartitioned device /dev/dausn block mode SCSI disk unit u, slice n, accessed as an unpartitioned device /dev/rdausn raw mode SCSI disk unit u, slice n, accessed as an unpartitioned device /dev/daup block mode SCSI disk unit u, first FreeBSD slice, partition p По размышлении догадался выполнить MAKEDEV da0s1, что вызвало появление множества устройств типа da*. Кстати da это Direct Access. Далее обычная процедура монтирования: 1) сменить устройству группу на operator 2) создать каталог, например ~/flash, и 3) смонтировать: mount -t msdos /dev/da0s1 ~/flash Начиная с пятой версии обещано, что файлы устройств будут создаваться по мере необходимости автоматически, пока же их приходится создавать вручную с помощью MAKEDEV. Официальный FAQ предлагает ещё и четвёртый способ решения этой проблемы -- использование пакета mtools. Но мне это показалось неоправданным усложнением. Dial-Up Какой домашний компутер без интернету. Интернет способен удовлетворить любые ваши фантазии, однако, прежде чем переходить к частностям, надо бы установить ppp соединение с провом. Надеюсь у вас есть модем и атрибуты провайдера для подключения. Для начала проверяем наличие последовательных портов: wintix:/dev> dmesg | fgrep sio sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A Видим, что в нашем распоряжении есть два порта поддерживающие UART16550A, т.е. FIFO буферизацию, и это хорошо. А вот так я проверяю работоспособность модема. Модем внешний, прицеплен на COM2. Работаем из-под rootа, в данном примере юзерский ввод выделен жирным (набрано жирными руками rootа). root:/etc!!cu -l /dev/cuaa1 Connected. atz OK ati 33600 OK atdp #здесь раздался гудок и я выключил мопед ..cu: Got hangup signal Disconnected. root:/etc!! OK. Мопед работает. Переходим к редактированию /etc/ppp/ppp.conf. Этот файл содержит секцию default:, в которой прописывается порт и параметры соединения. Ставим свой порт, выставляем время ожидания до разрыва соединения и способ набора номера (ATDT меняем на ATDP). default: set log Phase Chat LCP IPCP CCP tun command ident user-ppp VERSION (built COMPILATIONDATE) # Ensure that "device" references the correct serial port # for your modem. (cuaa0 = COM1, cuaa1 = COM2) set device /dev/cuaa1 set speed 115200 set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 5 \ \"\" AT OK-AT-OK ATE1Q0 OK \\dATDP\T TIMEOUT 40 CONNECT" set timeout 180 # 3 minute idle timer (the default) enable dns # request DNS info (for resolv.conf) Преходим к секции papchap:. Внутри неё может быть несколько подразделов для разных провайдеров, например: prov1: set phone 1234567 set authname MyLogin set authkey MyPassw0rd set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0 add default HISADDR # Add a (sticky) default route Две последние строки я сразу переношу в секцию default, причём строку "set ifaddr .." можно сразу закомментировать [4]. Редактирую поля для телефона, логина и пароля, и можно звонить. Если пров имеет несколько телефонных номеров, их можно указывать через двоеточие. Никаких первичных/вторичных DNS или доменов вводить не надо! За это отвечает строчка enable dns. Сразу после установления соединения адреса DNS-срверов появляются в /etc/resolv.conf сами-собой. ppp может быть запущен многими способами, я пускаю его в режиме демона: wintix:~>ppp -auto prov1 В этом режиме он создаёт псевдо-девайс tun0, который ожидает запроса на выход в сеть. При поступлении запроса происходит дозвон и соединение. Если в течение timeoutа запросов не будет - соединение разрывается. Если сразу после запуска ppp он начинает "беспричинно" прозваниваться, проверьте файл /etc/hosts. Он должен содержать строку "127.0.0.1 localhost". В любом случае машина должна уметь себя пинговать. Если вам понадобиться прихлопнуть этого демона, а это может понадобиться при смене провайдера, используйте команду: wintix:~>killall ppp Это убьёт все процессы по имени ppp, другой вариант: wintix:~>kill `cat /var/run/tun0.pid` Будьте внимательны, обе кавычки - левые. В том же /etc/ppp/ могут находиться скрипты ppp.linkup и ppp.linkdown, которые будут выполнены при установлении и разрыве соединения, соответственно. Примеры этих скриптов живут в /usr/share/examples/ppp/. Итак, дозвон свершился. Запускаем полуночного командира, пусть потрудится FTP клиентом. Время Существуют две основные концепции учета времени. При первом подходе в BIOS хранится универсальное (или мировое) время, при втором -- местное. FreeBSD позволяет использовать оба подхода, виндовс -- только второй. Поэтому, если у вас на машине сохраняется система от MS, использование второго способа неизбежно. К счастью, параметры ядра по умолчанию выставлены именно так и никаких действий, кроме задания при инсталляции вашей таймзоны, предпринимать не нужно. Установка даты и времени вручную выполняется с помощью команды date. Однако синхронизация с помощью серверов точного времени гораздо круче. Формат команды предельно прост: ntpdate . Списки серверов поддерживаются на www.eecis.udel.edu/~mills/ntp. Я выбрал почти наугад следующие сервера: tick.keso.fi, time.kfki.hu, ntp.psn.ru, ntp.lth.se. Проверка скорости соединения (с помощью ping -c 10) дала значения в диапазоне 180-250 мс, видимо на лучшее у моего провайдера рассчитывать не приходится. При этом разброс значения времени при обращении к разным серверам составил +/- 0.02 с. Меня такая точность вполне устроила. Тут возникает естественное желание синхронизировать наручные часы. Я воспользовался тем, что вторичное приглашение bash было установлено для отображения текущего времени. Набираем: wintix:~> while(1); 12:48:43> 12:48:48> и, каждый раз при нажатии ввода имеем текущее время. Если клавишу не отпускать, синхронизироваться можно достаточно точно. Порты Теперь у нас наконец появилась возможность ставить софт не из пакетов а из портов. Для этого необходимо установить дерево портов. Если вы не сделали этого при инсталляции - то /stand/sysinstall-Configure-Distribution-ports. Далее гуляем в /usr/ports и видим кучу директорий - это типа темы, например тема www. Заходим в тему - видим ещё кучу директорий, это типа приложения. От приложений там оставлены мейкфайлы и ещё кое-какая дребедень. Файлы небольшие, но их много. Команда du (disk usage) показала что деревце занимает 173 метра из 680, которые были залиты на раздел /usr. Lynx Был недавно в зоопарке, обнаружил данную надпись на клетке с рысью и никаких упоминаний о лицензии GNU. Посмотрел в словаре, и действительно lynx это рысь. Рысь поставим для разнообразия из портов. Итак, root:/etc!!cd /usr/ports/www/lynx-current root:/lynx-current!!make >> lynx2.8.5dev.8.tar.bz2 doesn't seem to exist in /usr/ports/distfiles/. >> Attempting to fetch from http://lynx.isc.org/current/. Receiving lynx2.8.5dev.8.tar.bz2 (2047916 bytes): 5% . . . root:/lynx-current!!make install То есть всё скачивается автоматически и далее происходит компиляция и сборка. Все зависимости естественно проверяются и удовлетворяются посредством той же сети и без вашего участия. По окончании процесса вы имеете установленную программу и все исходники, что может оказаться полезным, если понадобится перекомпиляция с другими опциями или какими-нибудь изменениями. WWW сёрфинг в текстовом режиме вещь специфическая, но и к этому можно привыкнуть. Зато быстро, поскольку вся графика вырезается в принципе. Для просмотра порносайтов не очень удобно, зато ничего не отвлекает. Ненастроенная рысь отображает русский текст латиницей, настраивается это нажатием буквы o(ptions), кодировка отображения koi8-r и не забыть записать настройки в файл. В домашней директории появится .lynxrc - пожалуй первый, из встреченных мной, конфиг на русском. Что там ещё из насущного? Почта. Это очень длинная история, может на следующих выходных...
1 статья старовата Смешные же размеры гигов 8 минимиум надо... Просто жмешь A и разбиваешь все автоматом. (правишь свап и вар как надо) 2 Невнятно описано про загрузчик. А ведь стандартная проблема потом- поставил фрю венда не грузится. У фри есть свой почему его и не юзать? (и венда грузиться будет) 3 Не сказано про то как определяются диски жесткие и сменные acd0(CD-ROM) ad2s1(2 второй винч, 1 раздел) 4 $sudo shutdown -r now (правильно) 5 криво про порты (сам так пробовал?) а ведь все просто #cd /usr/ports/www/lynx-current && make install clean (выкачали, поставили,почистили) 6 локализация неполная .. нужно класс рашн пользователю прописать.. 7 монтирования нет для фс с поддержкой русского языка 8 хе сейчас уже MAKEDEVа нету..... 9 он и так синеет давно уже.. а вот рускими символами не попечатаешь в нем сразу... 10.....(впиши сам) //Верю что именно так ты себе все и поставишь. :+)