Chapter 16 Разное

16.1. Почему FreeBSD использует гораздо больше места в разделе подкачки, чем Linux?
16.2. Почему утилита top(1) показывает очень маленький объём свободной памяти, даже когда запущено всего лишь несколько приложений?
16.3. Почему командой chmod невозможно изменить права на символические ссылки?
16.4. Можно ли запускать программы для DOS во FreeBSD?
16.5. Что мне нужно сделать, чтобы перевести документацию FreeBSD на родной язык?
16.6. Почему возвращается моя электронная почта. отправленная на любой из адресов FreeBSD.org?
16.7. Где можно получить бесплатный доступ к FreeBSD?
16.8. Что такое sup и как это можно использовать?
16.9. Как зовут этого маленького симпатичного красного парня?
16.10. Могу ли я использовать изображение даемона BSD?
16.11. Не найдется ли у вас изображений даемона BSD, которые можно использовать?
16.12. Что такое MFC?
16.13. Что означает сокращение BSD?
16.14. Что означает сокращение POLA?
16.15. Что такое repo-copy?
16.16. Почему я должен беспокоиться о цвете фар велосипеда?

16.1. Почему FreeBSD использует гораздо больше места в разделе подкачки, чем Linux?

Это только кажется, что для FreeBSD требуется больше места на разделе подкачки, чем для Linux. На самом деле это не так. Главное отличие FreeBSD от Linux в этом плане заключается в том, что FreeBSD активно перемещает неиспользуемые страницы памяти, к которым не было обращений, в раздел подкачки, чтобы увеличить объём доступной физической памяти для активного использования. Linux же перемещает страницы памяти в раздел подкачки только в крайнем случае. Получаемое во FreeBSD увеличение нагрузки на раздел подкачки компенсируется более эффективным использованием оперативной памяти.

Заметьте, что, хотя FreeBSD предпочитает использовать раздел подкачки, она не может сбросить все неактивные страницы в своп при полностью неактивной системе. Так что вряд ли может возникнуть ситуация, когда, проснувшись рано утром, вы обнаружите, что вся ваша система находится в разделе подкачки, хотя она простаивала всю ночь.

16.2. Почему утилита top(1) показывает очень маленький объём свободной памяти, даже когда запущено всего лишь несколько приложений?

Просто дело в том, что под свободной памятью подразумевается никак не используемая память. Вся память, которая вашей программе явно не выделялась, используется ядром FreeBSD для дискового кэша. Значения, показываемые утилитой top(1), помеченные как Inact, Cache и Buf - это всё кэшированные данные разных степеней устаревания. То, что данные находятся в кэше, означает, что система не будет обращаться к медленному диску снова за теми данными, обращение к которым было недавно, повышая таким образом общую производительность. В общем случае маленькие значения в пункте Free, показываемые утилитой top(1) для свободной памяти - это хорошо, если, конечно они не очень маленькие.

16.3. Почему командой chmod невозможно изменить права на символические ссылки?

Символические ссылки не имеют атрибутов доступа, а по умолчанию утилита chmod(1) не следует символической ссылке для изменения прав доступа к файлу, на который указывает ссылка. Поэтому, если у вас есть файл, скажем, с именем foo и символическая ссылка bar на этот файл, то эта команда всегда будет выполняться успешно.

% chmod g-w bar

Однако права на файл foo не изменятся.

Чтобы это работало, используйте опции -H или -L вместе с опцией -R. Обратитесь к страницам Справочника по команде chmod(1) и по symlink(7).

Warning: Опция -R выполняет команду chmod(1) РЕКУРСИВНО. Будьте осторожны, задавая каталоги или символические ссылки на каталоги в параметрах chmod(1). Если вы хотите изменить права на каталог, на который указывает символическая ссылка, используйте chmod(1) без опций и следуйте символической ссылке с помощью лидирующего слэша (/). Например, если foo является символической ссылкой на каталог bar, а вы хотите изменить права на foo (на самом деле bar), вы должны выполнить команду типа следующей:

% chmod 555 foo/

Если задан лидирующий слэш, то chmod(1) будет следовать символической ссылке, foo, меняя права на каталог bar.

16.4. Можно ли запускать программы для DOS во FreeBSD?

Да, для запуска некоторых команд DOS можно использовать включённую в поставку программу эмуляции DOS doscmd.

Если doscmd вас не удовлетворит, то дополнительная утилита emulators/pcemu эмулирует 8088 и набор сервисов BIOS, достаточный для запуска многих приложений текстового режима DOS. Ей требуется X Window System.

16.5. Что мне нужно сделать, чтобы перевести документацию FreeBSD на родной язык?

Ознакомьтесь с FAQ по Переводам из FreeBSD Documentation Project Primer.

16.6. Почему возвращается моя электронная почта. отправленная на любой из адресов FreeBSD.org?

В почтовой системе FreeBSD.org в Postfix применяются некоторые более строгие проверки входящей почты, и отвергаются сообщения, которые сформированы неправильно либо потенциально являются спамом. Ваша почта может не приниматься по одной из следующих причин:

  • Электронная почта была послана с домена или блока IP-адресов, которые известны нам как спамеры.

    Почтовые серверы FreeBSD отвергают электронную почту от известных источников спама. Если вы пользуетесь услугами компании или домена, рассылающего или пересылающего спам, пожалуйста, переключитесь на другого поставщика услуг, который этого не делает.

  • Тело сообщения электронной почты содержит только HTML.

    Почта должна посылать только как обычный текст. Пожалуйста, настройте ваш почтовый агент на отправку только текста.

  • Почтовая программа FreeBSD.org не может преобразовать адрес IP подключающегося хоста в символическое имя.

    Работа обратного DNS является стандартным требованием для принятия почты от хоста. Настройте обратный DNS для IP-адреса вашего почтового сервера. Многие способы домашнего подключения (DSL, кабель, коммутируемое соединение и тому подобное) не предоставляют такой возможности. В таком случае пересылайте свою электронную почту через почтовый сервер вашего поставщика услуг.

  • Имя хоста, указанное на этапе EHLO/HELO процесса обмена сообщениями SMTP не может быть преобразовано в IP-адрес.

    На этом этапе диалога SMTP, перед принятием почты, необходим полное и преобразуемое имя хоста. Если у вас нет имени хоста, который зарегистрирован в DNS, то для пересылки своей почты вы должны использовать почтовый сервер вашего поставщика услуг.

  • Ваше сообщение имеет идентификатор, оканчивающийся строчкой ``localhost''.

    Некоторые почтовые программы генерируют неправильные идентификаторы сообщений, которые не могут быть приняты. Вам нужно заставить почтовую программу пользователя генерировать правильный идентификатор сообщения либо настроить ваш агент передачи почты на замену этих идентификаторов.

16.7. Где можно получить бесплатный доступ к FreeBSD?

Хотя FreeBSD не предоставляет бесплатный доступ ни к одному из своих серверов, другие компании предоставляют Unix-системы с открытым доступом. Стоимость этой услуги различна, также как и ограниченный набор услуг.

Arbornet, Inc, также известный как M-Net, предоставляет свободный доступ к Unix-системам с 1983 года. Начиная на платформе Altos с работающей System III, сайт перешёл на BSD/OS в 1991. В июне 2000 сайт сменил систему снова, теперь на FreeBSD. M-Net может быть доступна через протоколы telnet и SSH и предоставляет доступ к полному набору программного обеспечения FreeBSD. Однако доступ к сети ограничен для членов и спонсоров, которые поддерживают систему, которая работает как неприбыльная организация. M-Net предоставляет также услуги электронной доски объявлений (BBS) и интерактивного чата.

Grex представляет собой сайт, очень похожий на M-Net, включая то же самое программное обеспечение для электронной доски объявлений (BBS) и интерактивного чата. Однако платформой является Sun 4M под управлением SunOS

16.8. Что такое sup и как это можно использовать?

Сокращение SUP означает Software Update Protocol, который был разработан в CMU для синхронизации исходных текстов. Мы используем его для синхронизации исходных текстов на удалённых сайтах с основным сервером разработчиков.

Протокол SUP использует пропускную способность канала неэффективно, и был отвергнут. В настоящее время рекомендуемым методом для синхронизации исходных текстов является протокол CVSup.

16.9. Как зовут этого маленького симпатичного красного парня?

У него нет определённого имени, он называется просто ``даемон BSD''. Если вам непременно нужно имя, называйте его ``beastie''. Заметьте, что ``beastie'' произносится как ``BSD''.

Больше о даемоне BSD вы можете узнать из его домашней страницы.

16.10. Могу ли я использовать изображение даемона BSD?

Вполне. Права на даемона BSD имеет Marshall Kirk McKusick. Для выяснения подробностей относительно правил его использования вы можете обратиться к странице автора Statement on the Use of the BSD Daemon Figure.

В общем, вы можете свободно использовать изображение в высокохудожественном стиле и в личных целях, если даются соответствующие отсылки. Если вы хотите использовать его в коммерческих целях, вы должны обратиться к Керку МакКузику. Дополнительная информация находится на домашней странице Даемона BSD.

16.11. Не найдется ли у вас изображений даемона BSD, которые можно использовать?

В каталоге /usr/share/examples/BSD_daemon/ есть рисунки в форматах eps и Xfig.

16.12. Что такое MFC?

MFC - это сокращение от ``Merged From -CURRENT''. Оно используется в протоколах изменений CVS для отметки того, что изменение было перенесено в ветвь STABLE из CURRENT.

16.13. Что означает сокращение BSD?

Это сокращение значит что-то на секретном языке, который могут знать только посвящённые. Это нельзя перевести один к одному, однако достаточно сказать, что перевод с BSD - это что-то между ``Команда Formula-1'', ``Пингвины - это вкусные плюшки'' и ``Мы прикольнее, чем Linux''. :-)

Если серьёзно, то BSD является сокращением от ``Berkeley Software Distribution'', названия, которое было выбрано Berkeley CSRG (Computer Systems Research Group) для их дистрибутива Unix.

16.14. Что означает сокращение POLA?

Принцип Наименьшего Удивления (Principle of Least Astonishment). Он означает, что при дальнейшем развитии FreeBSD изменения, видимые пользователю, максимально не должны быть для него сюрпризом. К примеру, произвольная перестановка переменных начальной загрузки в /etc/defaults/rc.conf нарушает POLA. Разработчики следуют POLA, когда планируют внести изменения в системе, которые будут видны пользователю.

16.15. Что такое repo-copy?

repo-copy (что является краткой формой от ``repository copy'') обозначает прямое копирование файлов внутри хранилища CVS.

Без repo-copy, если есть необходимость скопировать или переместить файл в другое место репозитория, то коммиттер должен выполнять команды cvs add для помещения файла на новое место, а затем cvs rm, чтобы удалить старый файл, если старая копия должна быть удалена.

Минусом этого метода является то, что история (то есть записи в журналах CVS) работы с файлом не копируются в новое место. Так как Проект FreeBSD осознаёт важность сохранения истории, вместо описанного процесса зачастую используется копирование в репозитории. Это действие заключается в том, что один из хозяев репозитория копирует файлы непосредственно внутри репозитория, не пользуясь командами cvs(1).

16.16. Почему я должен беспокоиться о цвете фар велосипеда?

На самом деле краткий, очень краткий ответ на этот вопрос заключается в том, что вы этого делать не должны. Если давать более подробный ответ, то ваше умение делать фары не должно означать, что вы должны препятствовать другим делать их просто потому, что вам не нравится цвет, в который они собираются их окрашивать. Эта метафора означает, что вам не нужно обсуждать каждую мелочь просто потому, что вы знаете о ней достаточно много. Некоторые люди отмечают, что объём шума, генерируемый при появлении некоторого изменения, находится в обратной зависимости от сложности самого изменения.

Более пространный и полный ответ заключается в том, что после очень долгого обсуждения того, должна ли утилита sleep(1) обрабатывать дробное число, заданное в качестве второго аргумента, Poul-Henning Kamp опубликовал большое сообщение, озаглавленное `` Велосипедная фара (любого цвета) на зелёной траве...''. Соответствующие части этого сообщения цитируются ниже.

 

``Что там насчёт этой велосипедной фары?'' Кто-то из вас меня спрашивал.

Это долгая история, или же это старая история, но на самом деле она коротка. В начале 1960-х годов Паркинсон (C. Northcote Parkinson) написал книгу ``Закон Паркинсона'', которая содержит много интересных взглядов на процесс управления.

[немного выдержек из краткого содержания книги]

В конкретном примере с велосипедной фарой другим важным объектом является атомная электростанция. Я полагаю, что это иллюстрирует древность книги.

Паркинсон показал, что вы можете прийти на совещание руководителей и получить добро на строительство многомиллионной или даже многомиллиардной атомной электростанции, но если вы хотите получить финансирование производства велосипедных фар, то погрязнете в бесконечных обсуждениях.

Паркинсон объясняет это тем, что атомная станция настолько большой, дорогой и сложный объект, что люди не могут его осознать и вместо того, чтобы попробовать это сделать, они полагаются на то, что кто-то уже проверил все мелочи до того, как всё зашло так далеко. В своей книге Ричард П. Фейнманн (Richard P. Feynmann) даёт несколько интересных и очень поучительных примеров, связанных с Лос Аламос.

Велосипедная фара - это противоположный случай. Любой может сделать фару за один уикэнд, и у него ещё останется время посмотреть футбол по телевизору. Так что не важно, насколько хорошо вы готовились к обсуждению, насколько убедительны будут ваши аргументы, кто-нибудь воспользуется шансом показать, что он не зря ест свой хлеб, что он обращает внимание, что он здесь.

В Дании это называется ``оставить отпечаток своего пальца''. Это касается личной гордости и престижа, это похоже на возможность указать куда-то и сказать: `` Вон там! Это сделал я.'' Это сильно выражено в политиках, но присутствует во многих людях, которые получают возможность сделать это. Просто вспомните об отпечатках ног во влажном цементе.

 
--Poul-Henning Kamp on freebsd-hackers, October 2, 1999  

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите <frdp@FreeBSD.org.ua>.