FreeBSD Reference
Юникса я люблю издавна, на работу на них попадаю довольно часто и поэтому о том, что меня раздражает в виндузне я могу говорить бесконечно... Но, к сожалению, сегодня реально на уровень альтернативы Windows пока тянет только UNIX, где так или иначе разрешаются большинство из вышеперечисленных проблем. В первую очередь, это коммерческие UNIX-системы. Например, QNX вообще был до 1991 года запрещен к вывозу из США, как стратегический ресурс высшей категории надежности - его ставят на атомные станции, космические корабли и медицинские системы. Вот где момент истины - MS DOS и Windows никому в голову не приходило запрещать выводить из США!
FreeBSD является одной из разновидностей бесплатных UNIX-систем. Хотя и другой бесплатный UNIX - LINUX тоже неплохой продукт, но сегодня именно FreeBSD работает на 4000 крупнейших серверах мира и является сверх надежным продуктом - на многих крупных серверах электронной коммерции, несмотря на тысячи запросов в секунду, FreeBSD выдержало без перезагрузки уже более трех лет. И никаких еженедельных Hotfix'ов для исправления катастрофических ошибок во FreeBSD нет.
Несмотря на такое высокое качество этого продукта, он распространяется полностью бесплатно и работает не только на процессорах Intel и alpha, но и на многих других. По потребляемым ресурсам FreeBSD также отличается от Windows в лучшую сторону - есть даже FreeBSD на одной дискете - при этом в отличие от MS-DOS это полностью функциональная мультизадачная система. Кроме того, компакт-диски с полнофункциональной FreeBSD прекрасно загружаются вообще без жесткого диска.
Поражает огромное количество программного обеспечения, доступного для бесплатной загрузки под FreeBSD - 9662 пакетов программ (список по категориям, алфавитный список - 1,5 Mb). Кроме того, все программное обеспечение Linux (например, StarOffice) также может выполняться под FreeBSD. Кроме бесплатного программного обеспечения существует огромное количество коммерческого программного обеспечения.
Но, тем не менее, в нашей стране по прежнему более распространено менее надежное программное обеспечение от Microsoft. Видимо это вызвано агрессивным коммерческим характером Microsoft - обилием книг по технологиям Windows, обилием пиратских дисков со всякими глючными Beta-версиями Windows-продуктов, а также банальным невежеством и взяточничеством, из-за чего даже самые нелепые Windows-продукты попали в школьные программы.
К сожалению, документация по FreeBSD до сих пор не переведена на русский язык.
|
Что касается моего личного опыта работы под FreeBSD - то мне не часто попадается такая работа. Последний раз я работал под FreeBSD 4.4 в 2002 году. Из графических пакетов я работал в KDE:
Программировал я тогда на PERL. Это оказалось совсем не так страшно, как кажется - ближайший аналог VBscript. Надо только уметь разбирать строки с помошью регулярных выражений. Но эту науку я освоил еще в VB6 и VBScript...
Кстати, Perl легко установить и на Windows. Эта же компания, ActiveState кроме Perl поставляет для Windows и другие стандартные инструменты FreeBSD - Python, PHP, Tcl, а также прекрасный инструмент Visual XSLT.
Еще недавно я установил у себя дома FreeBSD 5.1 и теперь в свободное время осваиваю эту версию. Кроме того на одном из домашних компов у меня стоит RedHAt Linux 7.3, под масдаем у меня есть также COLINUX (это такая специальная виртуальная машина Linux - очень похоже на VMWARE) и, кроме того, есть еще с десяток различных дистрибутивов Linux'ов разного назначения на компактах.
А еще здесь я подготовия экскурсию "для чайников" как начать работать в мире FreeBSD:
Прежде всего поговорим о нескольких важных принципах FreeBSD, без понимания которых перейти от Windows на UNIX невозможно::
- В Windows все настройки записываются в реестре. Вопреки распространенному заблуждению эти настройки достаточно хорошо описаны. Но во FreeBSD все настройки всех систем находятся в файлах с первой точкой в названии. Например, в этом файле находятся все настройки, которые установлены мастером sysinstall. Это хорошо в части обслуживания и легкости настройки, но чрезвычайно невыгодно в части производительности системы и ее скорости работы - ведь реестр для того и придуман, чтобы ускорить доступ к настройкам. Именно поэтому Windows в полноэкранном режиме работает ощутимо быстрее.
- Вторая радикальная особенность FreeBSD - отсутствие типов файлов. Все файлы одинаковые - это просто последовательность байтов - нет никаких расширений в виде типов файлов и, соотвественно, нет заранее назначенных приложений для обработки этих файлов. Если же какой-то файл явно предназначен для какой-то проги (например, командного интерплетатора или интерплетатора PERL) то это явно указывается в первых байтах файла. А вновь созданный текстовый файл со скриптом нельзя будет запустить на выполнение, пока ему вручную не будет присвоено разрешение на выполнение. Кстати эта логика нарушается в LINUX, где существуют осмысленные расширения имен файлов.
- Третья особенность - вместо привычных для Windows символов < cr > < lf >, завершающих каждую строку, используется только символ < cr >. Поэтому тектовые файлы из UNIX-ов Notepad.exe будет просматривать некорректно - в одну строку, и только эксплорер будет просмартивать их правильно, заодно и нужной кодировке.
- В отличие от Windows все UNIX'а работают не в Юникоде, а в однобайтовом ANSI-коде. Т.е. чтобы не экране не было абракадабры надо правильно выставлять отображение нижней части кодовой таблицы.
- В UNIX'ах бардак, существующий с именами устройств Windows, полностью отсутствует. Есть логичная и строгая система наименования устройств (которые бывают только блочные и символьные). Физические устройства, однозначно отражаются системой на имена, перечисленные в каталоге /DEV. Затем каждое нужное тому или иному юзеру устройство надо вручную смонтировать в определенную точку файловой системы с определенным режимом (чтение/запись).
- Бардака с автоматическим монтированием устройств неизвестно кому, неизвестно с какими правами тоже не существует. Вроде ставишь на расшаренный пишуший CDROM чистую болванку для себя - ан нет, уже кто-то что-то на нее писанул. Или цепляешь второй диск - думаешь только для чтения - ан нет, уже какая-то поганая прога туда чего-то успела записать. Эти типичные для Windows ситуации исключены в UNIX'ах на уровне самой идеологии.
- Как назло понятие сервер противоположно понятию сервер в Windows. Например, X-сервер - это фактически просто драйвер графики, хоть и умеющий рисовать на удаленном экране. Понятие слайсов и партишинов (разделов) также противоположны терминам от Microsoft.
- Учтите, что надо вручную указывать сервисы (службы, демоны и т.д.), которые должны стартовать в автозапуске при старте FreeBSD - а также открывать для специально вручную открывать для них порты.
- Еще важно понимать, что когда вы приконнектились к удаленной машине, то запуск какой-то проги означает запуск ее только на сервере, на клиенте лишь происходит вывод на экран. Т.е. процессор клиента загружен только драйвером - возможно графическим Х-сервером, либо просто тектовым. Но основная прога грузит процессор удаленной машины, куда мы приконнектились. Это обычно трудно осознать Windows-профессионалам, где проги обычно работают только на клиентских компах, а с серверами обмениваются либо как с сервером базы данных, либо как с сервером, хранящим средний уровень приложения - COM-обьекты.
Но, чтобы не перехвалить UNIX'а, Windows в графике все-таки работают существенно быстрее. И многим Windows средствам типа седьмой студии нет равных под UNIX'ами. Зато бардака под Windows больше... И вирусов под UNIX'ами в тысячи раз меньше... И всякая мурня с комбинированием доменных политик...
- Как правильно подготовить дистрибутив FreeBSD.
- Инсталляция FreeBSD.
- X-сервер.
- Русификация (консоль, графика, принтер, CDROM).
- Удаленный вход.
- Запуск служб и открытие портов.
- Web-сервер.
- Установка и администрирование форума на PHPBB2.
- Samba.
- Как прикрутить графическую библиотеку www.boutell.com к PHP4.
- CygWin, Wim и др.
- как настроить CVSUP, JAIL и DNS.
- как настроить QMAIL.
<SITEMAP> <MVC> <ASP> <NET> <DATA> <KIOSK> <FLEX> <SQL> <NOTES> <LINUX> <MONO> <FREEWARE> <DOCS> <ENG> <CHAT ME> <ABOUT ME> < THANKS ME> |