diff --git a/ru_RU.KOI8-R/books/handbook/Makefile b/ru_RU.KOI8-R/books/handbook/Makefile
index 567fb797b2..0290688cbd 100644
--- a/ru_RU.KOI8-R/books/handbook/Makefile
+++ b/ru_RU.KOI8-R/books/handbook/Makefile
@@ -1,265 +1,271 @@
#
# The FreeBSD Russian Documentation Project
#
# $FreeBSD$
-# $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/Makefile,v 1.43 2006/02/19 21:52:34 marck Exp $
+# $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/Makefile,v 1.45 2006/03/07 16:28:34 marck Exp $
#
-# Original revision: 1.93
+# Original revision: 1.97
#
# Build the FreeBSD Handbook.
#
# ------------------------------------------------------------------------
#
# Handbook-specific variables
#
# WITH_PGPKEYS The print version of the handbook only prints PGP
# fingerprints by default. If you would like for the
# entire key to be displayed, then set this variable.
# This option has no affect on the HTML formats.
#
# Handbook-specific targets
#
# pgpkeyring This target will read the contents of
# pgpkeys/chapter.sgml and will extract all of
# the pgpkeys to standard out. This output can then
# be redirected into a file and distributed as a
# public keyring of FreeBSD developers that can
# easily be imported into PGP/GPG.
#
# ------------------------------------------------------------------------
.PATH: ${.CURDIR}/../../share/sgml/glossary
MAINTAINER=phantom@FreeBSD.org
DOC?= book
FORMATS?= html-split
#HAS_INDEX= true
INSTALL_COMPRESSED?= gz
INSTALL_ONLY_COMPRESSED?=
IMAGES_EN = advanced-networking/isdn-bus.eps
IMAGES_EN+= advanced-networking/isdn-twisted-pair.eps
IMAGES_EN+= advanced-networking/natd.eps
IMAGES_EN+= advanced-networking/net-routing.pic
IMAGES_EN+= advanced-networking/static-routes.pic
IMAGES_EN+= install/adduser1.scr
IMAGES_EN+= install/adduser2.scr
IMAGES_EN+= install/adduser3.scr
IMAGES_EN+= install/boot-mgr.scr
IMAGES_EN+= install/console-saver1.scr
IMAGES_EN+= install/console-saver2.scr
IMAGES_EN+= install/console-saver3.scr
IMAGES_EN+= install/console-saver4.scr
IMAGES_EN+= install/desktop.scr
IMAGES_EN+= install/disklabel-auto.scr
IMAGES_EN+= install/disklabel-ed1.scr
IMAGES_EN+= install/disklabel-ed2.scr
IMAGES_EN+= install/disklabel-fs.scr
IMAGES_EN+= install/disklabel-root1.scr
IMAGES_EN+= install/disklabel-root2.scr
IMAGES_EN+= install/disklabel-root3.scr
IMAGES_EN+= install/disk-layout.eps
IMAGES_EN+= install/dist-set.scr
IMAGES_EN+= install/dist-set2.scr
IMAGES_EN+= install/docmenu1.scr
IMAGES_EN+= install/ed0-conf.scr
IMAGES_EN+= install/ed0-conf2.scr
IMAGES_EN+= install/edit-inetd-conf.scr
IMAGES_EN+= install/fdisk-drive1.scr
IMAGES_EN+= install/fdisk-drive2.scr
IMAGES_EN+= install/fdisk-edit1.scr
IMAGES_EN+= install/fdisk-edit2.scr
IMAGES_EN+= install/ftp-anon1.scr
IMAGES_EN+= install/ftp-anon2.scr
IMAGES_EN+= install/hdwrconf.scr
IMAGES_EN+= install/keymap.scr
IMAGES_EN+= install/main1.scr
IMAGES_EN+= install/mainexit.scr
IMAGES_EN+= install/main-std.scr
IMAGES_EN+= install/main-options.scr
IMAGES_EN+= install/main-doc.scr
IMAGES_EN+= install/main-keymap.scr
IMAGES_EN+= install/media.scr
IMAGES_EN+= install/mouse1.scr
IMAGES_EN+= install/mouse2.scr
IMAGES_EN+= install/mouse3.scr
IMAGES_EN+= install/mouse4.scr
IMAGES_EN+= install/mouse5.scr
IMAGES_EN+= install/mouse6.scr
IMAGES_EN+= install/mta-main.scr
IMAGES_EN+= install/net-config-menu1.scr
IMAGES_EN+= install/net-config-menu2.scr
IMAGES_EN+= install/nfs-server-edit.scr
IMAGES_EN+= install/ntp-config.scr
IMAGES_EN+= install/options.scr
IMAGES_EN+= install/pkg-cat.scr
IMAGES_EN+= install/pkg-confirm.scr
IMAGES_EN+= install/pkg-install.scr
IMAGES_EN+= install/pkg-sel.scr
IMAGES_EN+= install/probstart.scr
IMAGES_EN+= install/routed.scr
IMAGES_EN+= install/security.scr
IMAGES_EN+= install/sysinstall-exit.scr
IMAGES_EN+= install/timezone1.scr
IMAGES_EN+= install/timezone2.scr
IMAGES_EN+= install/timezone3.scr
IMAGES_EN+= install/userconfig.scr
IMAGES_EN+= install/userconfig2.scr
IMAGES_EN+= install/xf86setup.scr
IMAGES_EN+= mail/mutt1.scr
IMAGES_EN+= mail/mutt2.scr
IMAGES_EN+= mail/mutt3.scr
IMAGES_EN+= mail/pine1.scr
IMAGES_EN+= mail/pine2.scr
IMAGES_EN+= mail/pine3.scr
IMAGES_EN+= mail/pine4.scr
IMAGES_EN+= mail/pine5.scr
IMAGES_EN+= geom/striping.pic
IMAGES_EN+= install/example-dir1.eps
IMAGES_EN+= install/example-dir2.eps
IMAGES_EN+= install/example-dir3.eps
IMAGES_EN+= install/example-dir4.eps
IMAGES_EN+= install/example-dir5.eps
IMAGES_EN+= security/ipsec-network.pic
IMAGES_EN+= security/ipsec-crypt-pkt.pic
IMAGES_EN+= security/ipsec-encap-pkt.pic
IMAGES_EN+= security/ipsec-out-pkt.pic
IMAGES_EN+= vinum/vinum-concat.pic
IMAGES_EN+= vinum/vinum-mirrored-vol.pic
IMAGES_EN+= vinum/vinum-raid10-vol.pic
IMAGES_EN+= vinum/vinum-raid5-org.pic
IMAGES_EN+= vinum/vinum-simple-vol.pic
IMAGES_EN+= vinum/vinum-striped-vol.pic
IMAGES_EN+= vinum/vinum-striped.pic
# Images from the cross-document image library
IMAGES_LIB= callouts/1.png
IMAGES_LIB+= callouts/2.png
IMAGES_LIB+= callouts/3.png
IMAGES_LIB+= callouts/4.png
IMAGES_LIB+= callouts/5.png
IMAGES_LIB+= callouts/6.png
IMAGES_LIB+= callouts/7.png
IMAGES_LIB+= callouts/8.png
IMAGES_LIB+= callouts/9.png
IMAGES_LIB+= callouts/10.png
#
# SRCS lists the individual SGML files that make up the document. Changes
# to any of these files will force a rebuild
#
# SGML content
+SRCS+= audit/chapter.sgml
SRCS+= book.sgml
SRCS+= colophon.sgml
SRCS+= freebsd-glossary.sgml
SRCS+= advanced-networking/chapter.sgml
SRCS+= basics/chapter.sgml
SRCS+= bibliography/chapter.sgml
SRCS+= boot/chapter.sgml
SRCS+= config/chapter.sgml
SRCS+= cutting-edge/chapter.sgml
SRCS+= desktop/chapter.sgml
SRCS+= disks/chapter.sgml
SRCS+= eresources/chapter.sgml
SRCS+= firewalls/chapter.sgml
SRCS+= geom/chapter.sgml
SRCS+= install/chapter.sgml
SRCS+= introduction/chapter.sgml
SRCS+= kernelconfig/chapter.sgml
SRCS+= l10n/chapter.sgml
SRCS+= linuxemu/chapter.sgml
SRCS+= mac/chapter.sgml
SRCS+= mail/chapter.sgml
SRCS+= mirrors/chapter.sgml
SRCS+= multimedia/chapter.sgml
SRCS+= network-servers/chapter.sgml
SRCS+= pgpkeys/chapter.sgml
SRCS+= ports/chapter.sgml
SRCS+= ppp-and-slip/chapter.sgml
SRCS+= preface/preface.sgml
SRCS+= printing/chapter.sgml
SRCS+= security/chapter.sgml
SRCS+= serialcomms/chapter.sgml
SRCS+= users/chapter.sgml
SRCS+= vinum/chapter.sgml
SRCS+= x11/chapter.sgml
# Entities
SRCS+= chapters.ent
SYMLINKS= ${DESTDIR} index.html handbook.html
# Turn on all the chapters.
CHAPTERS?= ${SRCS:M*chapter.sgml}
SGMLFLAGS+= ${CHAPTERS:S/\/chapter.sgml//:S/^/-i chap./}
SGMLFLAGS+= -i chap.freebsd-glossary
# XXX The Handbook build currently overflows some internal, hardcoded
# limits in pdftex. Until we split the Handbook up, build the PDF
# version using ps2pdf instead of pdftex.
PS2PDF?= ${PREFIX}/bin/ps2pdf
book.tex-pdf:
${TOUCH} book.tex-pdf
book.pdf: book.ps
${PS2PDF} book.ps book.pdf
pgpkeyring: pgpkeys/chapter.sgml
@${JADE} -V nochunks ${OTHERFLAGS} ${JADEOPTS} -d ${DSLPGP} -t sgml ${MASTERDOC}
#
# Handbook-specific variables
#
.if defined(WITH_PGPKEYS)
JADEFLAGS+= -V withpgpkeys
.endif
-.for p in ftp cvsup
-SRCS+= mirrors.sgml.${p}.inc
-CLEANFILES+= mirrors.sgml.${p}.inc
-CLEANFILES+= mirrors.sgml.${p}.inc.tmp
-.endfor
+url_relprEFIX?= ../../../..
+DOC_PREFIX?= ${.CURDIR}/../../..
+
+#
+# rules generating lists of mirror site from XML database.
+#
+XMLDOCS= mirrors-ftp:::mirrors.sgml.ftp.inc.tmp \
+ mirrors-cvsup:::mirrors.sgml.cvsup.inc.tmp \
+ eresources:::eresources.sgml.www.inc.tmp
+DEPENDSET.DEFAULT= transtable mirror
+XSLT.DEFAULT= ${XSL_MIRRORS}
+XML.DEFAULT= ${XML_MIRRORS}
+NO_TIDY.DEFAULT= yes
-SRCS+= eresources.sgml.www.inc
-CLEANFILES+= eresources.sgml.www.inc
-CLEANFILES+= eresources.sgml.www.inc.tmp
+PARAMS.mirrors-ftp+= --param 'type' "'ftp'" \
+ --param 'proto' "'ftp'" \
+ --param 'target' "'handbook/mirrors/chapter.sgml'"
+PARAMS.mirrors-cvsup+= --param 'type' "'cvsup'" \
+ --param 'proto' "'cvsup'" \
+ --param 'target' "'handbook/mirrors/chapter.sgml'"
+PARAMS.eresources+= --param 'type' "'www'" \
+ --param 'proto' "'http'" \
+ --param 'target' "'handbook/eresources/chapter.sgml'"
-URL_RELPREFIX?= ../../../..
-DOC_PREFIX?= ${.CURDIR}/../../..
+SRCS+= mirrors.sgml.ftp.inc \
+ mirrors.sgml.cvsup.inc \
+ eresources.sgml.www.inc
+
+CLEANFILES+= mirrors.sgml.ftp.inc mirrors.sgml.ftp.inc.tmp \
+ mirrors.sgml.cvsup.inc mirrors.sgml.cvsup.inc.tmp \
+ eresources.sgml.www.inc eresources.sgml.www.inc.tmp
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
.for p in ftp cvsup
-mirrors.sgml.${p}.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@.tmp \
- --param 'type' "'$p'" \
- --param 'proto' "'$p'" \
- --param 'target' "'handbook/mirrors/chapter.sgml'" \
- ${XSL_MIRRORS} ${XML_MIRRORS}
+mirrors.sgml.${p}.inc: mirrors.sgml.${p}.inc.tmp
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
- ${RM} -f $@.tmp
.endfor
-eresources.sgml.www.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@.tmp \
- --param 'type' "'www'" \
- --param 'proto' "'http'" \
- --param 'target' "'handbook/eresources/chapter.sgml'" \
- ${XSL_MIRRORS} ${XML_MIRRORS}
+eresources.sgml.www.inc: eresources.sgml.www.inc.tmp
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2>\1>,;s,,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
- ${RM} -f $@.tmp
diff --git a/ru_RU.KOI8-R/books/handbook/audit/Makefile b/ru_RU.KOI8-R/books/handbook/audit/Makefile
new file mode 100644
index 0000000000..1aa46f9a6f
--- /dev/null
+++ b/ru_RU.KOI8-R/books/handbook/audit/Makefile
@@ -0,0 +1,17 @@
+#
+# Build the Handbook with just the content from this chapter.
+#
+# $FreeBSD$
+# $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/audit/Makefile,v 1.2 2006/03/07 16:27:33 marck Exp $
+#
+# Original revision: 1.1
+
+CHAPTERS= audit/chapter.sgml
+
+VPATH= ..
+
+MASTERDOC= ${.CURDIR}/../${DOC}.${DOCBOOKSUFFIX}
+
+DOC_PREFIX?= ${.CURDIR}/../../../..
+
+.include "../Makefile"
diff --git a/ru_RU.KOI8-R/books/handbook/audit/chapter.sgml b/ru_RU.KOI8-R/books/handbook/audit/chapter.sgml
new file mode 100644
index 0000000000..e4ec6cdab3
--- /dev/null
+++ b/ru_RU.KOI8-R/books/handbook/audit/chapter.sgml
@@ -0,0 +1,624 @@
+
+
+
+
+
+
+
+ Tom
+ Rhodes
+ Автор
+
+
+
+
+ Денис
+ Баров
+ Перевод на русский язык:
+
+
+
+ Аудит событий безопасности
+
+ Краткий обзор
+ AUDIT
+
+ Аудит событий безопасности
+ MAC
+
+ &os; 7-CURRENT включает в себя поддержку Аудита Событий
+ Безопасности (Security Event Auditing), стандарт которого описан
+ в проекте &posix;.1e и в опубликованном корпорацией Sun описании
+ BSM API. Система аудита позволяет отслеживать
+ события, важные для безопасности системы. Анализ лога событий
+ может быть жизненно необходим в случае краха системы, для
+ обнаружения нежелательных вторжений и для ликвидации последствий
+ событий подобного рода. После тестирования во &os; 7-CURRENT
+ поддержка системы аудита будет добавлена во &os; 6-STABLE и
+ более ранние ветви &os;.
+
+
+ Поддержка аудита во &os; считается экспериментальной,
+ использование системы аудита должно производиться только после
+ тщательного ознакомления со всеми рисками использования
+ экспериментального программного обеспечения.
+
+
+ В этой главе описывается, в основном, процесс установки и
+ конфигурирования системы аудита. В том числе, приводится
+ разъяснение политик аудита, а так же примеры конфигурационных
+ файлов.
+
+ После прочтения этой главы вы будете знать:
+
+
+ Что такое система аудита и как она работает.
+
+
+
+ Как настроить систему аудита во &os; для мониторинга
+ пользователей и процессов.
+
+
+
+ Перед прочтением этой главы вы должны:
+
+
+
+ Понимать основы &unix; и &os;
+ ().
+
+
+
+ Уметь конфигурировать и компилировать ядро
+ ().
+
+
+
+ Понимать основные принципы безопасности в применении
+ к операционной системе &os; ().
+
+
+
+
+ Использование системы аудита может привести к генерированию
+ огромных журнальных файлов: их размер в некоторых конфигурациях
+ может достигать нескольких гигабайт в неделю. Администраторы
+ должны внимательно прочитать эту главу целиком, во избежание
+ непроизвольного отказа в обслуживании системы (DoS)
+ из-за неправильной конфигурации системы аудита.
+
+
+ Реализация системы аудита во &os; похожа на реализацию
+ библиотеки Базового Модуля Безопасности корпорации Sun
+ (&sun; Basic Security Module, BSM).
+ Поэтому, его конфигурация почти полностью совпадает с
+ конфигурацией аналогичных по назначению модулей в операционных
+ системах &solaris; и Mac OS X/Darwin.
+
+
+
+
+ Ключевые понятия - краткий словарь.
+
+ Перед чтением этой главы необходимо определить несколько
+ ключевых понятий. Это нужно для того, чтобы предотвратить
+ недоразумения, которые могут возникнуть из-за разницы в трактовке
+ некоторых терминов. В русской версии документа приводятся
+ близкий по смыслу перевод и в скобках указывается оригинальный
+ английский термин.
+
+
+
+ событие(event): Событие, которое
+ может быть занесено в журнал. Администратор может выбирать,
+ какие именно события будут журналироваться подсистемой
+ аудита. Список важных для безопасности системы
+ событий включает: создание файла, инициализацию сетевого
+ соединения, вход пользователя в систему. События
+ разделяются на приписываемые (attributable) -
+ те, которые могут быть отнесены к конкретному пользователю -
+ и не-приписываемые (non-attributable). Пример
+ не-приписываемого события - любое событие, произошедшее до
+ авторизации пользователя, такое, как неудачный вход пользователя
+ в систему.
+
+
+
+ Класс(class): События могут быть
+ отнесены к одному или более классам, обычно основываясь
+ на категории события: создание файла,
+ доступ к файлу,сеть. События
+ входа в систему и выхода из нее относятся к классу lo.
+ Использование классов позволяет администратору создавать
+ высокоуровневые правила аудита без указания конкретных
+ операций, отчет о которых должен добавляться в журнал.
+
+
+
+ Запись(record): Запись -
+ это единичная запись в журнале, описывающая то или иное
+ событие. Запись обычно содержит информацию о типе события,
+ информацию о субъекте события (пользователе), время события,
+ информацию об объектах события (например, файлах) и
+ информацию об успешности выполнения операции, породившей
+ событие.
+
+
+
+ Журнал(trail):
+ журнал аудита, или лог-файл -
+ содержит серию записей о системных событиях.
+ Как правило, журнал содержит записи в строгом
+ хронологическом порядке по времени завершения
+ события. Только авторизованные процессы (например,
+ auditd) имеют доступ к журналу.
+
+
+
+ Префикс(prefix): Под префиксом понимается
+ элемент, указывающий, вести ли аудит для успешного или
+ ошибочного события.
+
+
+
+
+
+ Установка системы аудита
+
+ Система аудита обычно устанавливается в
+ процессе установки системы installworld.
+ Администратор может проверить, установлена ли система аудита,
+ просмотрев содержимое каталога
+ /etc/security. В нём
+ должны находиться файлы, начинающиеся со слова
+ audit. Например, audit_event.
+
+ Кроме того, поддержка аудита должна присутствовать в ядре. Этого
+ можно добиться, добавив следующую строку в конфигурационный файл
+ вашего специального ядра:
+
+ options AUDIT
+
+ Процесс сборки и установки ядра подробно описан в главе
+ .
+
+ После этого, необходимо разрешить запуск даемона аудита,
+ добавив следующую строку в &man.rc.conf.5;:
+
+ auditd_enable="YES"
+
+ Для запуска даемона со специфическими параметрами нужно
+ указать эти параметры в опции
+ файла &man.rc.conf.5;.
+
+
+
+ Настройка системы аудита
+
+
+ Все конфигурационные файлы системы аудита находятся в каталоге
+ /etc/security. Перед запуском
+ даемона аудита там должны находиться следующие файлы:
+
+
+
+ audit_class - Содержит определения
+ классов аудита.
+
+
+
+ audit_control - Параметры системы
+ аудита: классы по умолчанию, минимальное дисковое
+ пространство, которое должно оставаться на разделе журнала
+ аудита, и другие.
+
+
+
+ audit_event - Определяет основные
+ события аудита. Это, в основном, системные вызовы.
+
+
+
+ audit_user - События аудита для
+ для отдельных пользователей. Пользователи, не упоминаемые
+ в этом файле, будут рассматриваться как субъекты конфигурации
+ по-умолчанию в файле audit_control.
+
+
+
+
+ audit_warn - Скрипт командного
+ интерпретатора Bourne Shell, который используется, чтобы
+ сгенерировать предупреждающие сообщения об исключительных
+ ситуациях, например, когда заканчивается свободное дисковое
+ пространство для записей журналов аудита.
+
+
+
+
+ Формат конфигурационного файла
+
+ Формат конфигурационного файла не очень логичен, но с ним, тем
+ не менее, достаточно просто работать. Однако, администраторам
+ следует быть очень внимательными при изменении значений по
+ умолчанию, поскольку это создает потенциальную опасность
+ неправильного сбора данных системой аудита.
+
+ В конфигурационном файле могут использоваться как полные,
+ так и сокращенные параметры. Соответствия будут приведены
+ ниже.
+
+ Следующий список содержит все поддерживаемые классы:
+
+
+
+ - all -
+ Установить все флаги.
+
+
+
+ - administrative
+ - Аудит административных действий, произошедших в
+ системе.
+
+
+
+ - application -
+ Аудит события, вызванного каким-либо приложением.
+
+
+
+ - file_close
+ - Аудит вызовов системной функции
+ close.
+
+
+
+ - exec -
+ Аудит запуска приложения.
+
+
+
+ - file_attr_acc
+ - Аудит доступа к атрибутам объектов и их изменению,
+ например через &man.stat.1;, &man.pathconf.2;, а
+ также подобных этим событий.
+
+
+
+ - file_creation
+ - Аудит событий, в результате которых создаются
+ файлы.
+
+
+
+ - file_deletion
+ - Аудит событий, в результате которых удаляются
+ файлы.
+
+
+
+ - file_attr_mod
+ - Аудит событий, в результате которых изменяются
+ атрибуты файлов, например, &man.chown.8;,
+ &man.chflags.1;, &man.flock.2;.
+
+
+
+ - file_read
+ - Аудит событий, в результате которых происходит
+ чтение данных, открываются файлы на чтение и т.п.
+
+
+
+ - file_write -
+ - Аудит событий, в результате которых происходит
+ запись данных, изменение файлов и так далее.
+
+
+
+ - ioctl -
+ Аудит вызовов системной функции &man.ioctl.2;.
+
+
+
+ - ipc -
+ Аудит различных видов взаимодействия процессов,
+ включая создание не-именованных каналов (pipe) и
+ взаимодействие процессов в стиле System V
+ IPC.
+
+
+
+ - login_logout -
+ Аудит событий &man.login.1; и &man.logout.1;.
+
+
+
+ - non_attrib -
+ Аудит не-приписываемых событий.
+
+
+
+ - no_class -
+ Пустой класс, используется для отключения
+ аудита.
+
+
+
+ - network -
+ Аудит событий, связанных с сетевыми подключениями,
+ например &man.connect.2; и &man.accept.2;.
+
+
+
+ - other -
+ Аудит событий, не вошедших в другие классы.
+
+
+
+ - process -
+ Аудит действий процессов, таких как &man.exec.3; и
+ &man.exit.3;.
+
+
+
+ Далее перечислены все поддерживаемые префиксы:
+
+
+
+ [пустой префикс] - Аудит проводится как для
+ успешного, так и для ошибочного события. Например, просто
+ указание класса без префикса приведёт к занесению события
+ в журнал при любом результате операции.
+
+
+
+ + - Аудит только успешных
+ событий.
+
+
+
+ - - Аудит только ошибочных
+ событий.
+
+
+
+
+ Использование класса с любым
+ префиксом может привести к генерации огромного количества
+ данных с очень большой частотой.
+
+
+ Дополнительные префиксы, которые могут использоваться для
+ изменения настроек по умолчанию:
+
+
+
+ ^- - Отключение аудита ошибочных
+ событий.
+
+
+
+ ^+ - Включение аудита успешных
+ событий.
+
+
+
+ ^ - Отключение аудита как успешных, так и
+ ошибочных событий.
+
+
+
+
+
+ Конфигурационные файлы
+
+ В большинстве случаев администратору придётся вносить
+ изменения только в два конфигурационных файла системы аудита:
+ audit_control и
+ audit_user. Первый из них содержит
+ общие настройки системы аудита и установки по умолчанию как
+ для приписываемых, так и для не-приписываемых событий. Второй
+ используется для настройки аудита пользовательских событий.
+
+
+ Файл audit_control
+
+ Файл audit_control содержит
+ настройки по умолчанию, которые, возможно, потребуется
+ изменить. Содержимое этого файла:
+
+ dir:/var/audit
+flags:lo
+minfree:20
+naflags:lo
+
+ Параметр указывает каталог, в
+ котором будет сохраняться журнал системы аудита. Как
+ правило, система аудита конфигурируется таким образом, что
+ журнал аудита хранится на отдельном разделе, чтобы
+ предотвратить сбои в работе операционной системы, если
+ свободное месте на разделе системы аудита будет
+ исчерпано.
+
+ Параметр используется для
+ установки глобальных опций. Значение этого параметра
+ настраивает аудит для всех событий
+ &man.login.1; и &man.logout.1;. Более подробный
+ пример:
+
+ dir:/var/audit
+flags:lo,ad,-all,^-fa,^-fc,^-cl
+minfree:20
+naflags:lo
+
+ Такое значение параметра
+ приведёт к аудиту всех событий &man.login.1; и
+ &man.logout.1;, всех административных событий, всех ошибочных
+ системных событий и, наконец, отключает аудит всех ошибочных
+ событий классов , и
+ . Несмотря на то, что параметр
+ указывает на необходимость аудита
+ всех системных событий, префикс отменяет
+ это поведение для всех последующих опций.
+
+ Заметьте, что значения считываются слева направо.
+ Поэтому находящиеся справа значения переопределяют значения,
+ находящиеся слева.
+
+ Параметр определяет минимальное
+ значение свободного дискового пространства на разделе, в
+ который сохраняются файлы журналов аудита. Например, если
+ значение параметра установлено в
+ /var/audit, а параметр
+ равен двадцати (20), то предупреждающее
+ сообщение будет выдано, когда раздел /var будет заполнен на
+ восемьдесят (80%) процентов.
+
+ Параметр определяет классы
+ аудита для не-приписываемых событий, то есть событий,
+ для которых не определён конкретный пользователь.
+
+
+
+
+ Файл audit_user
+
+ Файл audit_user позволяет
+ администратору определить классы событий, аудит которых будет
+ производиться для каждого пользователя системы.
+
+ По умолчанию файл audit_user
+ содержит:
+
+ root:lo:no
+audit:fc:no
+
+ Обратите внимание: по умолчанию производится аудит всех
+ login/logout событий и
+ отключается аудит всех других событий для пользователя
+ root. Эта конфигурация также включает
+ аудит всех событий, связанных с созданием файлов и отключает
+ аудит всех других событий для пользователя
+ audit. Хотя использование системы
+ аудита не требует наличия в системе специального
+ пользователя, в некоторых конфигурациях, особенно
+ использующих MAC (Mandatory Access
+ Control), это может быть необходимо.
+
+
+
+
+
+
+ Администрирование системы аудита
+
+
+ Журнал событий, записываемый ядром системы аудита не может
+ быть прочитан или отредактирован как простой текст. Данные
+ сохраняются и считываются методами, схожими с &man.ktrace.1; и
+ &man.kdump.1;, поэтому, журналы можно просмотреть только с
+ помощью команды praudit. Информация
+ из журналов может быть отфильтрована при помощи команды
+ auditreduce, которая выбирает записи из
+ журналов, основываясь на определённых параметрах, таких как
+ пользователь, время события или тип операции.
+
+ Например, praudit может вывести всё
+ содержимое определённого журнала в текстовом формате. Для этого
+ выполните команду:
+
+ &prompt.root; praudit /var/audit/AUDITFILE
+
+ Здесь AUDITFILE - имя файла журнала
+ по вашему выбору. Поскольку, файлы журналов могут содержать
+ гигантское количество данных, администратору может понадобиться
+ выбирать записи событий только одного пользователя. Это возможно
+ с помощью следующей команды, в которой
+ trhodes - имя пользователя:
+
+ &prompt.root; auditreduce -e trhodes /var/audit/AUDITFILE | praudit
+
+ Результатом будет выборка из файла
+ AUDITFILE всех событий, связанных с
+ пользователем trhodes.
+
+ Есть ряд других параметров для чтения журналов аудита, для
+ более детального изучения смотрите страницу справки команды
+ praudit.
+
+
+ Ротация лог-файлов системы аудита
+
+ Исходя из соображений безопасности, запись в журнал аудита
+ производится только ядром системы; все управление
+ журналом осуществляется даемоном auditd.
+ Администраторы не должны пытаться использовать
+ &man.newsyslog.conf.5; или другие инструменты для прямой
+ ротации логов системы аудита. Вместо этого, для остановки,
+ переконфигурации системы аудита и для ротации лог-файлов используйте
+ утилиту управления audit. Следующая команда
+ заставит даемон auditd создать новый
+ лог-файл и переключить систему аудита на его использование.
+ Старый лог-файл будет переименован:
+
+ &prompt.root; audit -n
+
+
+ Если даемон auditd не запущен, команда
+ завершится с ошибкой.
+
+
+ Добавление следующей строки в файл
+ /etc/crontab приведёт к автоматической
+ ротации лог-файлов каждые двенадцать часов при помощи &man.cron.8;:
+
+ * */12 * * * root /usr/sbin/audit -n
+
+ Изменения вступят в силу сразу же после сохранения файла
+ /etc/crontab.
+
+
+
+ Передача прав на просмотр журнала аудита
+
+ По умолчанию, только пользователь
+ root имеет право просматривать журналы
+ аудита. Тем не менее, эти права могут быть переданы, например,
+ пользователям, входящим в группу audit.
+ Для этого необходимо передать каталог системы
+ аудита и файлы журналов аудита группе
+ audit. После этого нужно дать группе права
+ на чтение каталога и находящихся в нём файлов.
+
+ Например, если раздел журналов аудита смонтирован в
+ /var/audit, нужно выполнить
+ команды:
+
+ &prompt.root; chown -R :audid /var/audit
+&prompt.root; chmod -R g+r /var/audit
+
+
+ Содержимое журнала аудита дает много информации о
+ взаимодействии пользователей, процессов и
+ функционировании системы в целом. Поэтому рекомендуется
+ передавать права на работу с журналами аудита с большой
+ осмотрительностью.
+
+
+
diff --git a/ru_RU.KOI8-R/books/handbook/book.sgml b/ru_RU.KOI8-R/books/handbook/book.sgml
index f084087dfc..2eb8701b48 100644
--- a/ru_RU.KOI8-R/books/handbook/book.sgml
+++ b/ru_RU.KOI8-R/books/handbook/book.sgml
@@ -1,356 +1,359 @@
%books.ent;
%chapters;
%txtfiles;
+
+
%pgpkeys;
]>
Руководство FreeBSDПроект Документации FreeBSDФевраль 1999199519961997199819992000200120022003200420052006The FreeBSD Documentation Project2000200120022003200420052006Проект Русской Документации FreeBSD
&bookinfo.legalnotice;
&tm-attrib.freebsd;
&tm-attrib.3com;
&tm-attrib.3ware;
&tm-attrib.arm;
&tm-attrib.adaptec;
&tm-attrib.adobe;
&tm-attrib.apple;
&tm-attrib.corel;
&tm-attrib.creative;
&tm-attrib.cvsup;
&tm-attrib.heidelberger;
&tm-attrib.ibm;
&tm-attrib.ieee;
&tm-attrib.intel;
&tm-attrib.intuit;
&tm-attrib.linux;
&tm-attrib.lsilogic;
&tm-attrib.m-systems;
&tm-attrib.macromedia;
&tm-attrib.microsoft;
&tm-attrib.netscape;
&tm-attrib.nexthop;
&tm-attrib.opengroup;
&tm-attrib.oracle;
&tm-attrib.powerquest;
&tm-attrib.realnetworks;
&tm-attrib.redhat;
&tm-attrib.sap;
&tm-attrib.sun;
&tm-attrib.symantec;
&tm-attrib.themathworks;
&tm-attrib.thomson;
&tm-attrib.usrobotics;
&tm-attrib.vmware;
&tm-attrib.waterloomaple;
&tm-attrib.wolframresearch;
&tm-attrib.xfree86;
&tm-attrib.xiph;
&tm-attrib.general;
Добро пожаловать в FreeBSD! Это Руководство охватывает процесс
установки и ежедневного использования FreeBSD
&rel2.current;-RELEASE и FreeBSD
&rel.current;-RELEASE.
Оно находится в процессе
разработки и являет собой результат работы множества
людей. Многие из разделов до сих пор не существуют, а некоторые из
существующих требуют обновления. Если вы заинтересованы в помощи
этому проекту, отправьте письмо в &a.ru.doc;. Обновленная версия этого
документа постоянно доступна с
Основного Web сервера Проекта Русской Документации FreeBSD и
Основного Web сервера
FreeBSD. Он также может быть загружен из
интернет в одном из наиболее распространенных форматов с FTP сервера Проекта
FreeBSD или с одного из многочисленных зеркал. Если вы предпочитаете иметь
напечатанный (английский) вариант Руководства, то можете приобрести
его на FreeBSD Mall.
Вы также можете воспользоваться Поиском в Руководстве
FreeBSD.
&chap.preface;
В началеЭта часть Руководства Пользователя FreeBSD предназначена для
пользователей и администраторов - новичков в FreeBSD. Эти главы:Введут вас в FreeBSD.Проведут вас по процессу установки FreeBSD.Обучат вас некоторым основам &unix;.Покажут вам как устанавливать программные пакеты не входящие
в стандартную поставку FreeBSD.Введут вас в X Window, оконную систему для &unix;, и опишут
как настроить графическое окружение и сделать вашу работу
более продуктивной.Мы попытались сократить множество ссылок в тексте до минимума
для того, чтоб вы могли прочитать этот раздел Руководства с начала
до конца с минимумом перелистываний страниц.Общие задачиТеперь, когда основы были пройдены, в данной части Руководства
FreeBSD будут обсуждаться некоторые часто используемые возможности
FreeBSD. В этих главах:Введение в популярные и полезные графические приложения:
браузеры, бизнес приложения, программы просмотра документов
и т.д.Представлены множество мультимедийных программ,
доступных в FreeBSD.Описан процесс создания собственного ядра FreeBSD
для включения дополнительных функций системы.Система печати разобрана в деталях, как для
непосредственно подключенных принтеров, так и для
принтеров, подключенных через сеть.Показано, как запускать приложения Linux в системе
FreeBSD.Перед прочтением некоторых из этих глав необходимо
ознакомиться с предварительной информацией,
что указано в кратком обзоре в начале каждой главы.Системное администрированиеОставшиеся главы Руководства охватывают все аспекты
администрирования FreeBSD системы. Каждая глава начинается с
описания того, что вы сможете изучить в результате прочтения
этой главы.Эти главы спланированы так, что вы можете прочитать их когда
вам нужно узнать какую-либо информацию. Вам не нужно читать их
в определенном порядке, и не нужно прочитать их все перед тем, как
начать пользоваться FreeBSD.
+
Сетевые коммуникацииFreeBSD это одна из наиболее широко используемых в
высокопроизводительных сетевых серверах операционных систем.
Главы этой части книги охватывают:Последовательные соединенияPPP и PPP через EthernetЭлектронную почтуЗапуск сетевых серверовБрандмауэрыДругую сетевую тематику повышенной сложностиЭти главы предназначены для получения дополнительной
информации. Нет необходимости читать их в определенной
последовательности, или читать их все перед тем, как
начать использовать FreeBSD в сети.Приложения
&chap.colophon;
diff --git a/ru_RU.KOI8-R/books/handbook/chapters.ent b/ru_RU.KOI8-R/books/handbook/chapters.ent
index 6851d3c50f..228e322dc2 100644
--- a/ru_RU.KOI8-R/books/handbook/chapters.ent
+++ b/ru_RU.KOI8-R/books/handbook/chapters.ent
@@ -1,64 +1,65 @@
+
diff --git a/ru_RU.KOI8-R/books/handbook/colophon.sgml b/ru_RU.KOI8-R/books/handbook/colophon.sgml
index 24f61e39c5..4937c3b47e 100644
--- a/ru_RU.KOI8-R/books/handbook/colophon.sgml
+++ b/ru_RU.KOI8-R/books/handbook/colophon.sgml
@@ -1,34 +1,34 @@
Эта книга представляет собой результат совместной работы сотен
людей в рамках Проекта Документирования FreeBSD.
Текст написан в SGML формате в соответствии с DocBook DTD и сформатирован
из SGML во множество различных представительских форматов с помощью
приложения Jade, открытой DSSSL системы.
DSSSL стили от Норма Волша (Norm Walsh) были использованы совместно
c допольнительными стилями разработанными в рамках проекта для
создания презентационных инструкций для Jade.
Создание печатной версии этого документа было бы невозможно без
языка &tex; Девида Кнута,
LaTeX Лисли Лэмпорта, и
макро пакета JadeTeX Себастьяна Ратца.
diff --git a/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml b/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
index ea45f575bd..3adfe33c39 100644
--- a/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/disks/chapter.sgml
@@ -1,4411 +1,4411 @@
АндрейЗахватовПеревод на русский язык: Устройства храненияКраткий обзорВ этой главе описывается использование дисков во FreeBSD. К ним
относятся диски в памяти, диски, подключенные по сети, обычные
устройства хранения SCSI/IDE и устройства, использующие
интерфейс USB.После чтения этой главы вы будете знать:Терминологию, используемую во FreeBSD для описания организации
данных на физическом диске (разделы и слайсы).Как добавить дополнительные винчестеры к вашей системе.Как настроить &os; для использования дисковых устройств
USB.Как настроить виртуальные файловые системы, такие, как диски в
оперативной памяти.Как использовать квоты для ограничения использования дискового
пространства.Как зашифровать диски, чтобы защитить их от взлома.Как создавать и записывать CD и DVD во FreeBSD.Различные варианты использования устройств хранения для
резервных копий.Как использовать программы резервного копирования, имеющиеся
для FreeBSD.Как выполнять резервное копирование на дискеты.Что такое мгновенные копии файловых систем и как
их эффективно использоватьПеред прочтением этой главы вам потребуется:Узнать как настраивать и устанавливать новое ядро FreeBSD
().Имена устройствДалее приводится список физических устройств хранения информации,
которые поддерживаются во FreeBSD, и имена устройств, которые им
соответствуют.
Соглашения по именованию физических дисковТип дискаИмя дискового устройстваВинчестеры IDEadПриводы IDE CDROMacdВинчестеры SCSI и дисковые устройства USBdaПриводы SCSI CDROMcdРазличные нестандартные приводы CDROMmcd для Mitsumi CD-ROM,
scd для Sony CD-ROM,
matcd для Matsushita/Panasonic CD-ROM
5 октября 2002 года драйвер &man.matcd.4; был удалён
из ветки FreeBSD 4.X и отсутствует во FreeBSD 5.0
и последующих релизах.ДискетыfdЛенточные приводы SCSIsaЛенточные приводы IDEastФлэш-дискиfla для флэш-устройств
&diskonchip;Диски RAIDaacd для &adaptec; AdvancedRAID,
mlxd и mlyd для &mylex;,
amrd для AMI &megaraid;,
idad для Compaq Smart RAID,
twed для &tm.3ware; RAID.
DavidO'BrienИзначальный текст предоставил Добавление дисковдискидобавлениеПредположим, что мы хотим установить новый диск SCSI на машину,
имеющую в данный момент только один диск. Сначала выключим компьютер и
установим диск в компьютер согласно инструкциям к компьютеру,
контроллеру и от производителя диска. Из-за большого разнообразия
этих процедур их рассмотрение выходит за рамки этого документа..Войдите в систему как пользователь root.
После того, как вы установили диск, просмотрите файл
/var/run/dmesg.boot, чтобы убедиться, что новый
диск был найден. Продолжая наш пример, только что добавленный диск
будет называться da1 и мы хотим смонтировать его
в каталог /1 (если вы добавляете диск IDE, то
устройство будет называться wd1 в системах,
предшествовавших 4.0, и ad1 в системах
4.X и 5.X).разделыслайсыfdiskFreeBSD работает на IBM-PC совместимых компьютерах, поэтому она
должна уметь работать с разделами PC BIOS. Однако они отличаются от
традиционных разделов BSD. Диск ПК может иметь до четырёх
записей разделов BIOS. Если диск на самом деле будет использоваться
исключительно под FreeBSD, вы можете использовать режим
dedicated. В противном случае FreeBSD будет
располагаться в одном из разделов PC BIOS. Во FreeBSD разделы PC BIOS
называются слайсами, чтобы не путать их с
традиционными разделами BSD. Вы также можете использовать слайсы и с
диском, предназначенным исключительно для FreeBSD, однако используемым
в компьютере, на котором имеется дополнительная операционная система.
Это является хорошим способом избежать путаницы в утилите
fdisk других операционных систем, не связанных с
FreeBSD.В случае слайсов диск будет добавлен как
/dev/da1s1e. Это интерпретируется следующим
образом: диск SCSI, устройство номер 1 (второй диск SCSI), слайс 1
(раздел PC BIOS 1), и раздел BSD e. В случае
использования в выделенном режиме диск будет добавлен просто как
/dev/da1e.Вследствие использования 32-разрядных целых чисел для адресации
секторов, &man.bsdlabel.8; (называемый &man.disklabel.8; в
&os; 4.X) ограничен 2^32-1 секторами на диск, или 2TB в
в большинстве случаев. Формат &man.fdisk.8; позволяет наличие
первого сектора со смещением не более 2^32-1 и длину не более
2^32-1, что ограничивает размер раздела до 2TB, а размер диска
до 4TB в большинстве случаев. Формат &man.sunlabel.8; ограничен
2^32-1 секторами на раздел и 8 разделами, что составляет 16TB.
Для дисков большего раздела могут быть использованы разделы
&man.gpt.8;.Использование утилиты &man.sysinstall.8;sysinstallдобавление дисковsuИспользование SysinstallВы можете использовать простые меню утилиты
sysinstall (/stand/sysinstall
во &os; версий, более старых, чем 5.2) для разбиения на разделы и
разметки нового диска. Войдите как пользователь
root или воспользуйтесь командой
su. Запустите команду
sysinstall и войдите в меню
Configure. Внутри FreeBSD
Configuration Menu, пролистайте и выберите пункт
Fdisk.Редактор разделов fdiskПри работе с утилитой fdisk ввод
A используется для выделения под
FreeBSD полностью всего диска. Когда будет задан вопрос о том,
хотите ли вы сохранить совместимость с другими возможными
операционными системами в будущем, ответьте
YES. Запишите изменения на диск при помощи
команды W. А теперь выйдите из редактора
FDISK, нажав q. В этот момент вам будет
задан вопрос о Master Boot Record (главной
загрузочной записи). Так как вы добавляете диск к уже работающей
системе, выберите None.Редактор метки дискаразделы BSDТеперь вам нужно выйти из sysinstall
и запустить эту утилиту снова. Следуйте указаниям выше, но на этот
раз выберите пункт Label. Вы перейдёте к
меню Disk Label Editor.
Здесь вы создадите традиционные разделы BSD. На диске может быть
до восьми разделов, имеющих метки a-h.
Некоторые из меток разделов
имеют особый смысл. Раздел a используется для
размещения корневого раздела (/). По этой
причине только ваш системный диск (например, тот, с которого
происходит загрузка), должен иметь раздел a.
Раздел b используется под раздел подкачки, и вы
можете иметь много дисков с разделами подкачки. Раздел
c используется для доступа ко всему диску в
режиме эксклюзивного использования или ко всему слайсу FreeBSD при
работе в режиме с использованием слайсов. Остальные разделы имеют
обычное предназначение.Редактор метки диска программы
sysinstall использует раздел
e для некорневого раздела и не для раздела
подкачки. Внутри редактора метки диска создайте отдельную файловую
систему, нажав C. Когда будет задан
вопрос о том, будет ли это раздел с файловой системой (FS) или это
будет раздел подкачки, выберите FS и наберите
точку монтирования (например, /mnt). При
добавлении диска после установки системы, программа
sysinstall не
будет автоматически создавать записи в файле
/etc/fstab, поэтому точка монтирования не так
уж и важна.Теперь вы готовы записать новую метку на диск и создать на нем
файловую систему. Сделайте это, набрав W.
Проигнорируйте сообщения об ошибках от
sysinstall о невозможности смонтировать
новый раздел. Полностью выйдите из редактора метки диска и из
программы sysinstall.ЗавершениеПоследний шаг заключается в редактировании файла
/etc/fstab и добавлении записи для вашего
нового диска.Использовании утилит командной строкиРабота со слайсамиСледующая настройка позволит вашему диску корректно работать с
другими операционными системами, которые могут быть установлены на
вашем компьютере, и не вызовет конфликта с утилитами
fdisk других операционных систем. Этот способ
рекомендуется использовать для установок новых дисков. Используйте
эксклюзивный режим, только если у вас есть
реальные причины делать это!&prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1
&prompt.root; fdisk -BI da1 # Инициализируем новый диск.
&prompt.root; disklabel -B -w -r da1s1 auto # Размечаем его.
&prompt.root; disklabel -e da1s1 # Редактируем только что созданную метку диска и добавляем разделы.
&prompt.root; mkdir -p /1
&prompt.root; newfs /dev/da1s1e # Повторяем этот шаг для всех созданных разделов.
&prompt.root; mount /dev/da1s1e /1 # Монтируем раздел(ы)
&prompt.root; vi /etc/fstab # Добавляем соответствующую запись/записи в файл /etc/fstab.Если у вас установлен диск IDE, подставьте
ad вместо da. На системах
версий ранее 4.X используйте wd.Эксклюзивный режимOS/2Если вы не будете использовать новый диск совместно с другой
операционной системой, то вы можете использовать режим
эксклюзивного использования. Отметьте, что этот
режим может ввести в заблуждение операционные системы от Microsoft;
однако информацию они не разрушат. А вот &os2; компании IBM будет
забирать себе любой раздел, который она найдет и не
сможет распознать.
&prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1
&prompt.root; disklabel -Brw da1 auto
&prompt.root; disklabel -e da1 # create the `e' partition
&prompt.root; newfs -d0 /dev/da1e
&prompt.root; mkdir -p /1
&prompt.root; vi /etc/fstab # add an entry for /dev/da1e
&prompt.root; mount /1Альтернативный метод заключается в следующем:&prompt.root; dd if=/dev/zero of=/dev/da1 count=2
&prompt.root; disklabel /dev/da1 | disklabel -BrR da1 /dev/stdin
&prompt.root; newfs /dev/da1e
&prompt.root; mkdir -p /1
&prompt.root; vi /etc/fstab # add an entry for /dev/da1e
&prompt.root; mount /1Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.RAIDПрограммный RAIDChristopherShumwayОригинальный текст предоставил JimBrownИзменения внёс RAIDпрограммныйRAIDCCDКонфигурация драйвера объединённого диска (CCD)При выборе решения для организации хранилища самыми важными
характеристиками являются скорость, надежность и стоимость. Редко
все эти характеристики наличествуют одновременно; обычно
быстрое и надёжное устройство хранения стоит дорого, а при
уменьшении стоимости в жертву приносятся скорость работы или
надёжность.При проектировании описываемой далее системы в качестве
самого важного фактора была выбрана её стоимость, затем
быстродействие и надёжность. Скорость передачи данных для этой
системы ограничивалась только пропускной способностью сети. И,
хотя надёжность очень важна, CCD-диск, описываемый ниже,
обслуживал работу с данными, полные копии которых уже хранились на
дисках CD-R, так они могли быть с лёгкостью обновлены.При выборе решения для массового хранения данных первым шагом
является определение ваших требований к нему. Если в ваших
требованиях главными являются скорость или надёжность, а не
стоимость, то ваш выбор будет отличаться от описываемой в этом
разделе системы.Установка оборудованияКроме системного IDE-диска, основу описываемого далее CCD-диска
общим объёмом примерно в 90 Гбайт составили три IDE-диска Western
Digital 30GB, 5400 RPM. В идеальном случае каждый диск IDE имеет
собственный контроллер и кабель, но для минимизации стоимости
дополнительные контроллеры IDE не использовались. Вместо этого
диски были настроены при помощи переключателей так, что на каждом
IDE-контроллере находилось по одному ведущему и одному ведомому
диску.До перезагрузки BIOS системы была настроена на автоматическое
распознавание подключенных дисков. Более важно то, что при
перезагрузке их распознала FreeBSD:ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33
ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33
ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33
ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33Если FreeBSD не распознала все диски, проверьте корректность
положения переключателей на них. На большинстве IDE-дисков
имеется также переключатель Cable Select. Он
не имеет отношения к выбору ведущего и
ведомого устройств. Для получения помощи по правильному
положению переключателей обратитесь к документации по
устройствам.Затем определите, как сделать их частью файловой системы.
Изучите справку по &man.vinum.8; () и
&man.ccd.4;. В нашем конкретном случае была выбрана технология
&man.ccd.4;.Настройка CCDДрайвер &man.ccd.4; позволяет вам взять несколько
идентичных дисков и объединить их в одну логическую файловую
систему. Для использования &man.ccd.4; нужно
ядро со встроенной поддержкой &man.ccd.4;.
Добавьте такую строку в файл конфигурации ядра, перестройте и
установите новое ядро:pseudo-device ccd 4В системах 5.X вместо этого вам нужно использовать такую
строку:device ccdВо FreeBSD 5.X нет нужды указывать количество устройств
&man.ccd.4; так как драйвер устройства &man.ccd.4; теперь
клонируется сам — новые экземпляры устройств будут
создаваться автоматически по необходимости.Во FreeBSD 3.0 и последующих версиях поддержка &man.ccd.4;
также может быть обеспечена загрузкой подгружаемого модуля
ядра.Для настройки &man.ccd.4; сначала вам
нужно воспользоваться утилитой &man.disklabel.8; для разметки
дисков:disklabel -r -w ad1 auto
disklabel -r -w ad2 auto
disklabel -r -w ad3 autoПри этом создаются метки для ad1c,
ad2c и ad3c,
которые занимают диск полностью.Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Следующим шагом является изменение типа метки диска. Для
редактирования дисков можно использовать утилиту
&man.disklabel.8;:disklabel -e ad1
disklabel -e ad2
disklabel -e ad3При этом в редакторе, задаваемом переменной окружения
EDITOR (обычно это &man.vi.1;),
открывается текущая метка каждого диска.Немодифицированная метка диска будет выглядеть примерно
следующим образом:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)Добавьте новый раздел e для использования
драйвером &man.ccd.4;. Как правило, он может быть скопирован с
раздела c, но поле
должно иметь значение
4.2BSD. Теперь метка диска должна выглядеть
примерно так:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)Построение файловой системыФайл устройства для ccd0c может ещё
не существовать, так что для его создания предварительно выполните
такие команды:cd /dev
sh MAKEDEV ccd0Во FreeBSD 5.0 &man.devfs.5; будет управлять файлами
устройств в каталоге /dev автоматически, так
что в использовании MAKEDEV необходимости
нет.Теперь, когда все диски размечены, вы должны построить
&man.ccd.4;. Для этого используйте утилиту
&man.ccdconfig.8; с параметрами, подобными следующим:ccdconfig ccd0 32 0 /dev/ad1e /dev/ad2e /dev/ad3eИспользование и значение каждого параметра описывается
ниже:Первым аргументом является конфигурируемое устройство,
в нашем случае /dev/ccd0c. Часть
/dev/ является необязательной.Чередование для файловой системы. Оно определяет размер
единицы блока данных в количестве дисковых блоков, каждый из
которых обычно имеет объём в 512 байт. Таким образом, при
чередовании в 32 это будет составлять 16384 байт.Опции для &man.ccdconfig.8;. Если вы хотите включить
зеркалирование диска, то можете задать это здесь. В нашей
конфигурации зеркалирование для &man.ccd.4; не предусмотрено,
поэтому здесь задан 0 (ноль).Последним параметром для &man.ccdconfig.8;
является список устройств для объединения в массив. Для
каждого устройства нужно задавать полное имя.После запуска &man.ccdconfig.8; устройство
&man.ccd.4; будет отконфигурировано. Может
будет построить файловую систему. Обратитесь к справке по
команде &man.newfs.8; для выяснения требуемых параметров, или
просто запустите: newfs /dev/ccd0cАвтоматическое выполнениеВообще говоря, вам потребуется монтировать
&man.ccd.4; при каждой перезагрузке. Для этого
сначала вы должны отконфигурировать это устройство. Запишите
вашу текущую конфигурацию в файл /etc/ccd.conf
при помощи такой команды:ccdconfig -g > /etc/ccd.confПри перезагрузке скрипт /etc/rc запускает
команду ccdconfig -C, если существует файл
/etc/ccd.conf. При этом
&man.ccd.4; автоматически конфигурируется так,
чтобы он мог быть смонтирован.Если при загрузке вы входите в однопользовательский режим, то
перед тем, как выполнять монтирование &man.ccd.4; по команде
&man.mount.8;, вам нужно для конфигурации массива
запустить следующую команду:ccdconfig -CДля автоматического монтирования &man.ccd.4;
поместите запись о &man.ccd.4; в файл
/etc/fstab, чтобы он мог быть
смонтирован во время загрузки системы:/dev/ccd0c /media ufs rw 2 2Менеджер томов VinumRAIDпрограммныйRAIDVinumМенеджер томов Vinum является драйвером блочного устройства,
который реализует виртуальные диски. Он отделяет дисковое
оборудование от интерфейса блочного устройства и работает с данными
таким образом, что в результате повышается гибкость,
производительность и надёжность по сравнению с традиционным
взглядом на дисковое хранилище как на кусок дискового пространства.
&man.vinum.8; реализует модели RAID-0, RAID-1 и RAID-5, как по
отдельности, так и в комбинациях.Обратитесь к для получения более
полной информации о &man.vinum.8;.Аппаратный RAIDRAIDОборудованиеFreeBSD поддерживает также целый ряд аппаратных контроллеров
RAID. Эти устройства самостоятельно управляют
RAID-подсистемой, без необходимости иметь
специфичное для FreeBSD программное обеспечения управления
массивом.При помощи встроенной в адаптер BIOS, он
сам управляет большинством дисковых операций. Далее следует краткое
описание установки при помощи контроллера Promise
IDE RAID.
После установки адаптера и запуска системы, выдаётся
запрос на ввод. Следуйте указаниям для входа в настройку адаптера.
Отсюда вы можете объединить все подключенные диски. После этого
во FreeBSD диск(и) будут выглядеть как один диск. Аналогично могут
быть настроены и другие уровни RAID.Перестроение массивов ATA RAID1FreeBSD позволяет вам выполнять горячую замену вышедшего из строя
диска. При этом требуется, чтобы вы заметили это до
перезагрузки.Вероятно, в файле /var/log/messages или в
выдаче команды &man.dmesg.8; вы увидите примерно следующее:ad6 on monster1 suffered a hard error.
ad6: READ command timeout tag=0 serv=0 - resetting
ad6: trying fallback to PIO mode
ata3: resetting devices .. done
ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11)\\
status=59 error=40
ar0: WARNING - mirror lostПри помощи &man.atacontrol.8; получите дополнительную
информацию:&prompt.root; atacontrol list
ATA channel 0:
Master: no device present
Slave: acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
ATA channel 3:
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADEDСначала вам нужно отключить канал контроллера ATA, содержащий
отказавший диск, чтобы его можно было без последствий
извлечь:&prompt.root; atacontrol detach ata3Замените диск.Повторно подключите канал дискового контроллера:&prompt.root; atacontrol attach ata3
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device presentДобавьте новый диск к массиву в качестве резервного:&prompt.root; atacontrol addspare ar0 ad6Перестройте массив:&prompt.root; atacontrol rebuild ar0Проверить состояние дел можно при помощи следующей команды:&prompt.root; dmesg | tail -10
[выдача удалена]
ad6: removed from configuration
ad6: deleted from ar0 disk1
ad6: inserted into ar0 disk1 as spare
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completedДождитесь завершения этой операции.MarcFonvieilleПредоставил USB устройства храненияUSBдискиМножество современных устройств хранения используют Universal
Serial Bus (USB): жесткие диски, брелоки USB, CD-R приводы,
и т.д. &os; предоставляет поддержку этих устройств.НастройкаДрайвер &man.umass.4; предоставляет поддержку устройств
хранения USB. Если вы используете GENERIC
ядро, изменять что-либо в настройках не потребуется. Если вы
используете настроенное ядро, убедитесь, что в файле настройки
присутствуют следующие строки:device scbus
device da
device pass
device uhci
device ohci
device usb
device umassДля доступа к устройствам хранения USB драйвер &man.umass.4;
использует подсистему SCSI, ваши устройства USB будут видны
системе как SCSI устройства. В зависимости от чипсета USB
на материнской плате, вам потребуется только один из параметров
device uhci или device ohci.
Однако, наличие обоих этих параметров не помешает. Не забудьте
скомпилировать и установить новое ядро после добавления каких-либо
строк.Если ваше USB устройство это пишущий привод CD-R или DVD,
необходимо добавить
в ядро SCSI CD-ROM драйвер, &man.cd.4;, следующей строкой:device cdПоскольку устройство записи видно как SCSI диск, драйвер
&man.atapicam.4; не должен использоваться в файле
настройки.Поддержка USB 2.0 контроллеров предоставляется в
&os; 5.X, и в ветви 4.X с &os; 4.10-RELEASE.
Добавьте:device ehciв файл настройки ядра для поддержки USB 2.0. Обратите внимание,
что драйверы &man.uhci.4; и &man.ohci.4; все еще нужны, если
необходима поддержка USB 1.X.В &os; 4.X, необходимо запустить USB даемона
(&man.usbd.8;), чтобы увидеть некоторые USB устройства.
Для этого добавьте usbd_enable="YES"
в файл /etc/rc.conf и перезагрузите
компьютер.Тестирование конфигурацииКонфигурация готова к тестированию, подключите устройство USB,
и в буфере системных сообщений (&man.dmesg.8;), диск должен
отобразиться примерно так:umass0: USB Solid state disk, rev 1.10/1.00, addr 2
GEOM: create disk da0 dp=0xc2d74850
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device
da0: 1.000MB/s transfers
da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)Конечно, производитель, имя устройства
(da0) и другие детали могут
отличаться в зависимости от конфигурации.Поскольку устройство USB видится как SCSI, команда
camcontrol может быть использована для
вывода списка устройств хранения USB, подключенных к системе:&prompt.root; camcontrol devlist
<Generic Traveling Disk 1.11> at scbus0 target 0 lun 0 (da0,pass0)Если на диске есть файловая система, у вас должна быть
возможность смонтировать ее.
поможет вам создать и отформатировать разделы на диске
USB если потребуется.Если вы отключите устройство (диск должен быть сначала
размонтирован), вы должны увидеть в буфере системных сообщений
что-то подобное:umass0: at uhub0 port 1 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
GEOM: destroy disk da0 dp=0xc2d74850
umass0: detachedДополнительная информацияПомимо разделов Добавление
дисков и Монтирование
и размонтирование файловых систем, также может быть полезно
чтение различных страниц справочника: &man.umass.4;,
&man.camcontrol.8;, и &man.usbdevs.8;.MikeMeyerТекст предоставил Запись и использование оптических носителей (CD)CDROMсозданиеВведениеКомпакт-диски (CD) имеют несколько особенностей, отличающих их от
обычных дисков. Во-первых, на них невозможно производить запись. Они
спроектированы с расчетом на то, что их можно читать последовательно без
задержек на перемещение головки между дорожками. К тому же их гораздо
проще переносить от системы к системе, чем носители близкого
объема.У CD имеются дорожки, но они представляют собой последовательность
данных, читаемую последовательно, и не являются физической
характеристикой диска. Для записи CD во FreeBSD вы готовите файлы
данных, которые будут формировать дорожки на компакт-диске, а затем
записываете дорожки на CD.ISO 9660файловые системыISO 9660Файловая система ISO 9660 была разработана с учетом этих отличий, К
сожалению, она унаследовала ограничения файловых систем, которые были
тогда. К счастью, она дает механизм расширений, которые позволяют
правильно записанным дискам обходить эти ограничения и при этом
продолжать работать с системами, которые не поддерживают эти
расширения.sysutils/cdrtoolsДля создания файла данных, содержащего файловую систему ISO 9660,
используется программа &man.mkisofs.8;, которая включена в порт
sysutils/cdrtools. Она имеет опции,
поддерживающие различные расширения, и описана ниже.устройство записи CDATAPIКакой инструмент использовать для записи CD, зависит от того,
является ли
ваше устройство для записи CD устройством ATAPI или каким-либо другим.
С устройствами для записи стандарта ATAPI используется программа
burncd, которая
является частью комплекта поставки системы. С устройствами SCSI и USB
нужно использовать cdrecord из порта
sysutils/cdrtools.burncd поддерживает не все устройства. Для
определения того, поддерживается ли устройство, посмотрите список
поддерживаемых приводов
CD-R/RW.устройство записи CDдрайвер ATAPI/CAMЕсли вы используете &os; 5.X, &os; 4.8-RELEASE или
более новые версии, то при работе с ATAPI-оборудованием через модуль ATAPI/CAM можно использовать
утилиту cdrecord и
другие инструменты для SCSI-приводов.Если для записи CD вам нужна программа с графическим
интерфейсом пользователя, взгляните на
X-CD-Roast или
K3b. Они доступны в виде пакетов
или из портов sysutils/xcdroast и sysutils/k3b.
Программам X-CD-Roast и
K3b для работы с оборудованием
ATAPI требуется модуль ATAPI/CAM.mkisofsПрограмма &man.mkisofs.8;, поставляемая с портом sysutils/cdrtools создаёт
файловую систему ISO 9660, которая является образом дерева каталогов в
пространстве имён файловой системы &unix;. В самом простом случае она
используется так:&prompt.root; mkisofs -o imagefile.iso/path/to/treeфайловые системыISO 9660Эта команда создаст файл imagefile.iso,
содержащий файловую систему ISO 9660, которая является копией дерева
каталогов /path/to/tree. Во время работы
она будет преобразовывать имена файлов в имена, которые удовлетворяют
ограничениям файловой системы ISO 9660, и исключит файлы, которые носят
имена, неподходящие для файловой системы ISO.файловые системыHFSфайловые системыJolietДля того, чтобы обойти эти ограничения, имеется несколько опций. В
частности, включает использование расширений
Rock Ridge, распространенных в &unix;-системах, с
будут применены расширения Joliet, используемые в системах от
Microsoft, а может использоваться для создания
файловых систем HFS, используемых в &macos;.Для CD, которые будут использоваться только с системами FreeBSD,
может использоваться опция , отменяющая все
ограничения на имена файлов. При использовании с опцией
генерируется образ файловой системы, идентичный начальному дереву
FreeBSD, хотя при этом стандарт ISO 9660 может нарушаться в нескольких
местах.CDROMсоздание загрузочногоПоследней часто используемой опцией является .
Она используется для указания загрузочного образа для использования при
создании загрузочного CD в стандарте El Torito. Этой
опции указывается аргумент, который является маршрутом к загрузочному
образу из корня дерева, записываемого на CD.
По умолчанию, &man.mkisofs.8; создает образ ISO в так называемом режиме
эмуляции флоппи-диска, и потому ожидает загрузочный
образ размера строго 1200, 1440 или 2880 KB. Некоторые
загрузчики, в том числе и тот, что используется на дистрибутивных
дисках &os;, не используют режим эмуляции; в этом случае должна
использоваться опция . Так что, если
/tmp/myboot содержит загрузочную систему FreeBSD с
загрузочным образом в /tmp/myboot/boot/cdboot, вы
можете создать образ файловой системы ISO 9660 в
/tmp/bootable.iso следующим образом:&prompt.root; mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/mybootСделав это, и имея в ядре отконфигурированное устройство
vn (для FreeBSD 4.X) или
md (при использовании FreeBSD 5.X), вы
можете смонтировать файловую систему, выполнив:&prompt.root; vnconfig -e vn0c /tmp/bootable.iso
&prompt.root; mount -t cd9660 /dev/vn0c /mntв случае использования FreeBSD 4.X, а для
FreeBSD 5.X:&prompt.root; mdconfig -a -t vnode -f /tmp/bootable.iso -u 0
&prompt.root; mount -t cd9660 /dev/md0 /mntВ этот момент вы можете проверить, что /mnt и
/tmp/myboot идентичны.Имеется много других опций, которые можно использовать с
программой &man.mkisofs.8; для
тонкой настройки её поведения. В частности: модификации в размещении
ISO 9660 и создание дисков в форматах Joliet и HFS. Обратитесь к
справочным страницам по &man.mkisofs.8; для получения более подробной
информации.burncdCDROMзаписьЕсли ваше устройство для записи CD соответствует стандарту ATAPI,
то для записи ISO-образа на компакт-диск вы можете воспользоваться
командой burncd. burncd входит
в базовый комплект операционной системы и установлена как
/usr/sbin/burncd. Использовать её очень просто,
так как параметров у ней немного:&prompt.root; burncd -f cddevice data imagefile.iso fixateПо этой команде файл imagefile.iso будет
скопирован на cddevice. По умолчанию
используется устройство /dev/acd0 (или
/dev/acd0c в &os; 4.X). Для получения
информации о параметрах, задающих скорость записи, выброс диска после
записи и запись звуковых данных, обратитесь к &man.burncd.8;.cdrecordЕсли ваше устройство для записи CD не соответствует стандарту
ATAPI, то для записи компакт-дисков вам нужно пользоваться программой
cdrecord. cdrecord не входит в
комплект поставки системы; вы должны установить её из порта
sysutils/cdrtools или из
соответствующего пакета. Изменения в системе могут приводить к тому,
что откомпилированные версии этой программы работать не будут, или
приводить к порче дисков. Поэтому вы должны при обновлении системы
либо обновить порт, либо, если вы следуете
-STABLE, обновить порт при появлении его новой версии.Хотя cdrecord имеет много опций, в основном
использовать её ещё проще, чем burncd. Запись образа
ISO 9660 делается такой командой:&prompt.root; cdrecord dev=deviceimagefile.isoТонким моментом при использовании cdrecord
является определение правильного устройства . Чтобы
задать параметр правильно, воспользуйтесь флагом
команды cdrecord, в
результате чего может получиться примерно такой результат:CDROMзапись&prompt.root; cdrecord -scanbus
Cdrecord 1.9 (i386-unknown-freebsd4.2) Copyright (C) 1995-2000 Jörg Schilling
Using libscg version 'schily-0.1'
scsibus0:
0,0,0 0) 'SEAGATE ' 'ST39236LW ' '0004' Disk
0,1,0 1) 'SEAGATE ' 'ST39173W ' '5958' Disk
0,2,0 2) *
0,3,0 3) 'iomega ' 'jaz 1GB ' 'J.86' Removable Disk
0,4,0 4) 'NEC ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
scsibus1:
1,0,0 100) *
1,1,0 101) *
1,2,0 102) *
1,3,0 103) *
1,4,0 104) *
1,5,0 105) 'YAMAHA ' 'CRW4260 ' '1.0q' Removable CD-ROM
1,6,0 106) 'ARTEC ' 'AM12S ' '1.06' Scanner
1,7,0 107) *Здесь приведены соответствующие значения параметров
для имеющихся устройств. Найдите здесь ваше
устройство для записи CD, а в качестве параметров для
задавайте три числа через запятые. В нашем случае
CRW-устройству соответствуют числа 1,5,0, так что правильным параметром
будет . Имеется более
простой способ задать эти значения; обратитесь к справочной информации
о &man.cdrecord.1; для выяснения подробностей. Там же находится
информация о записи звуковых дорожек, управлении скоростью и другим
вещам.Копирование аудио CDВы можете копировать музыкальные CD, извлекая данные аудио с CD
в набор файлов, а затем записывая эти файлы на чистый CD. Процесс
несколько различен в случаях использования устройств ATAPI и
SCSI.Устройства SCSIИспользуйте cdda2wav для извлечения
данных аудио.&prompt.user; cdda2wav -v255 -D2,0 -B -OwavВоспользуйтесь cdrecord для записи файлов
.wav.&prompt.user; cdrecord -v dev=2,0 -dao -useinfo *.wavЗначение, соответствующее 2,0,
должно быть установлено правильно, как это описано в .Устройства ATAPIДрайвер устройств ATAPI CD делает каждую дорожку доступной как
/dev/acddtnn,
где d является номером привода, а
nn соответствует номеру дорожки, который
записывается двумя десятичными цифрами с нулём в начале, если это
нужно. Таким образом, первая дорожка на первом диске будет носить
имя /dev/acd0t01, вторая будет именоваться
/dev/acd0t02, третья будет носить имя
/dev/acd0t03 и так далее.Удостоверьтесь, что соответствующий файл имеется в каталоге
/dev. При его отсутствии следует
принудительно перечитать оглавление диска:&prompt.root; dd if=/dev/acd0 of=/dev/null count=1В версиях &os; 4.X номера треков не предваряются нулем.
В случае отсутствия нужных файлов устройств, создайте их при
помощи команды MAKEDEV:&prompt.root; cd /dev
&prompt.root; sh MAKEDEV acd0t99Извлеките каждую дорожку при помощи команды &man.dd.1;. При
извлечении файлов вы должны также использовать специфическое
значение для размера блока.&prompt.root; dd if=/dev/acd0t01 of=track1.cdr bs=2352
&prompt.root; dd if=/dev/acd0t02 of=track2.cdr bs=2352
...
Запишите извлечённые файлы на диск при помощи утилиты
burncd. Вы должны указать, что это файлы с
аудио, и что burncd должна зафиксировать диск
по окончании работы.&prompt.root; burncd -f /dev/acd0 audio track1.cdr track2.cdr ... fixateКопирование компакт-дисков с даннымиВы можете скопировать CD с данными в файл образа, который
функционально эквивалентен файлу образа, созданному командой
&man.mkisofs.8;, и вы можете
использовать его для копирования любого CD с данными. В приводимом
здесь примере предполагается, что ваш привод CDROM называется
acd0. Подставьте название вашего привода
CDROM. В &os; 4.X к имени устройства должен быть добавлен
символ c
для указания на то, что берётся весь раздел, а в
случае CDROM, весь диск.&prompt.root; dd if=/dev/acd0 of=file.iso bs=2048Теперь, когда вы имеете образ, вы можете записать его на CD так,
как это описано выше.Использование компакт-диски с даннымиТеперь, после того, как вы создали стандартный CDROM с данными, вы,
наверное, захотите смонтировать его и считать с него данные. По
умолчанию &man.mount.8; предполагает, что файловая система имеет тип
ufs. Если вы попытаетесь выполнить что-то
вроде:&prompt.root; mount /dev/cd0 /mntвы получите сообщение Incorrect super block,
и диск не смонтируется. CDROM не является файловой системой
UFS, поэтому попытки смонтировать его таким образом
будут терпеть неудачу. Вам просто нужно указать команде &man.mount.8;,
что файловая система имеет тип ISO9660, и всё должно
заработать. Сделайте это, задав параметр
при вызове &man.mount.8;. К примеру, если вы хотите смонтировать
устройство CDROM, /dev/cd0, в каталог
/mnt, вы должны выполнить:&prompt.root; mount -t cd9660 /dev/cd0 /mntЗаметьте, что имя вашего устройства
(/dev/cd0 в этом примере) может быть другим,
в зависимости от интерфейса, используемого в CDROM. Кроме того,
параметр всего лишь задаёт выполнение
утилиты &man.mount.cd9660.8;. Пример выше может быть упрощён
до:&prompt.root; mount_cd9660 /dev/cd0c /mntТаким способом, вообще говоря, вы можете использовать компакт-диски
любого производителя. Диски с некоторыми расширениями ISO 9660 могут,
однако, работать со странностями. К примеру диски Joliet хранят все
имена файлов в виде последовательностей двухбайтовых символов Unicode.
Ядро FreeBSD (пока ещё) не может работать с Unicode, поэтому не
английские символы выводятся в виде знаков вопроса. (Если в работаете
с FreeBSD 4.3 или более поздней версией, то в драйвере CD9660 имеется
механизм для динамической загрузки соответствующей таблицы
преобразования Unicode. Модули для некоторых распространённых
кодировок могут быть получены из порта
sysutils/cd9660_unicode.)Время от времени вы можете получать сообщения Device not
configured при попытке смонтировать CDROM. Это обычно
означает, что привод CDROM полагает, что в нём нет диска, или что
привод не виден на шине. Приводу CDROM может понадобиться несколько
секунд, чтобы понять, что он был закрыт, так что будьте
терпеливы.Иногда SCSI CDROM может потеряться из-за того, что у него не было
достаточно времени, чтобы ответить на сброс шины. Если у вас имеется
SCSI CDROM, то, пожалуйста, добавьте следующий параметр в конфигурацию
вашего ядра и перестройте
его.options SCSI_DELAY=15000Это укажет вашей шине SCSI выдерживать 15-секундную паузу во время
загрузки, чтобы дать вашему приводу CDROM шанс ответить на сброс
шины.Запись необработанных данных на компакт-дискиВы можете предпочесть запись файла непосредственно на CD без
создания файловой системы ISO 9660. Некоторые поступают так при
создании резервных копий. Это выполняется гораздо быстрее. чем запись
стандартного компакт-диска:&prompt.root; burncd -f /dev/acd1 -s 12 data archive.tar.gz fixateДля извлечения данных, записанных так на компакт-диск, вы должны
считывать данные из файла непосредственного доступа к
устройству:&prompt.root; tar xzvf /dev/acd1Вы не можете монтировать этот диск как обычный CDROM. Такой
компакт-диск не может быть прочитан ни в какой другой операционной
системе, кроме FreeBSD. Если вы хотите монтировать CD или
обменяться данными с другой операционной системой, то вы должны
использовать &man.mkisofs.8; так,
как это было описано выше.MarcFonvieilleПредоставил устройство записи CDдрайвер ATAPI/CAMИспользование драйвера ATAPI/CAMЭтот драйвер позволяет работать с ATAPI-устройствами (приводы
CD-ROM, CD-RW, DVD и так далее) через подсистему SCSI, таким образом
расширяя использование таких приложений, как sysutils/cdrdao или &man.cdrecord.1;.Для использования этого драйвера вам необходимо добавить в файл
конфигурации ядра следующую строку:device atapicamКроме того, в файле конфигурации ядра должны быть следующие
строки:device ata
device scbus
device cd
device passкоторая уже должна там присутствовать.После этого перестройте и установите ваше новое ядро, выполните
перезагрузку машины. В процессе загрузки ваш пишущий привод должен
появиться примерно следующим образом:acd0: CD-RW <MATSHITA CD-RW/DVD-ROM UJDA740> at ata1-master PIO4
cd0 at ata1 bus 0 target 0 lun 0
cd0: <MATSHITA CDRW/DVD UJDA740 1.00> Removable CD-ROM SCSI-0 device
cd0: 16.000MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closedТеперь с ним можно работать через устройство
/dev/cd0, например, чтобы смонтировать
CD-ROM в каталог /mnt, просто наберите следующую
команду:&prompt.root; mount -t cd9660 /dev/cd0 /mntДля получения SCSI-адреса пишущего привода, вы можете, работая как
пользователь root, запустить такую
команду:&prompt.root; camcontrol devlist
<MATSHITA CDRW/DVD UJDA740 1.00> at scbus1 target 0 lun 0 (pass0,cd0)Таким образом, 1,0,0 будет SCSI-адресом для
использования с &man.cdrecord.1; и другими приложениями для работы со
SCSI.Для получения дополнительной информации об ATAPI/CAM и системе
SCSI, обратитесь к страницам справочной системы по &man.atapicam.4; и
&man.cam.4;.MarcFonvieilleПредоставил AndyPolyakovДополнения предоставил Создание и использование оптических носителей (DVD)DVDзаписьВведениеDVD это следующее после CD поколение оптических носителей.
DVD может вмещать больше данных чем любой CD и является
современным стандартом распространения видео.Для записываемых DVD существует пять физических форматов
записи:DVD-R: Был первым форматом записываемых DVD. Стандарт
DVD-R был создан DVD Forum.
Это формат для однократной записи.DVD-RW: Это перезаписываемая версия стандарта DVD-R.
Носители DVD-RW могут быть перезаписаны около 1000 раз.DVD-RAM: Это также перезаписываемый формат, поддерживаемый
DVD Forum. DVD-RAM может быть виден как съемный жесткий диск.
Однако, этот носитель не совместим с большинством приводов
DVD-ROM и проигрывателями DVD-Video; лишь несколько
пишущих DVD поддерживают формат DVD-RAM.DVD+RW: Это перезаписываемый формат, созданный
DVD+RW
Alliance. Носитель DVD+RW может быть перезаписан около
1000 раз.DVD+R: Этот формат — однократно записываемая версия
формата DVD+RW.Однослойный записываемый DVD может хранить до
4,700,000,000 байт, что равно 4.38 Гбайт, или
4485 Мбайт (1 килобайт это 1024 байт).Необходимо различать физический носитель и приложение.
Например, DVD-Video это определенная файловая раскладка, которая
может быть помещена на записываемый DVD любого физического
формата: DVD-R, DVD+R, DVD-RW и т.д. Перед выбором типа
носителя вы должны убедиться, что и устройство записи и
DVD-Video проигрыватель (отдельный или DVD-ROM привод
компьютера) совместимы с данным носителем.НастройкаДля записи DVD будет использоваться программа &man.growisofs.1;.
Эта команда входит в набор утилит
dvd+rw-tools (sysutils/dvd+rw-tools), который поддерживает
все типы носителей DVD.Эти утилиты используют подсистему SCSI для доступа к устройствам,
следовательно необходимо добавить в ядро поддержку ATAPI/CAM. Если пишущий
привод использует USB интерфейс, это добавление бесполезно и
необходимо прочесть более подробную информацию по настройке
устройств USB в Вам также потребуется включить DMA доступ для устройств ATAPI,
это можно сделать добавив в
/boot/loader.conf следующую строку:hw.ata.atapi_dma="1"Перед использованием
dvd+rw-tools вы должны свериться со
списком
совместимого оборудования dvd+rw-tools с информацией
по устройствам для записи DVD.Если вам нужен графический интерфейс пользователя,
взгляните на K3b (sysutils/k3b), который
предоставляет дружественный пользователю интерфейс к
&man.growisofs.1; и многим другим программам
записи.Запись DVD с даннымиКоманда &man.growisofs.1; является оболочкой для mkisofs, она вызовет
&man.mkisofs.8; для создания файловой системы и запишет
DVD. Это означает, что вам не потребуется создавать образ
с данными перед началом процесса записи.Для записи данных из каталога /path/to/data на DVD+R или DVD-R,
используйте следующую команду:&prompt.root; growisofs -dvd-compat -Z /dev/cd0 -J -R /path/to/dataПараметры передаются
&man.mkisofs.8; для создания файловой системы (в данном случае:
файловая система ISO 9660 с расширениями Joliet и Rock Ridge),
обратитесь к странице справочника &man.mkisofs.8; за более
подробной информацией.Параметр используется для первой сессии
записи в любом случае: для одной или нескольких сессий.
Устройство DVD, /dev/cd0, должно
быть изменено в соответствии с имеющимися настройками.
Параметр закроет диск и дозапись
станет невозможна. Это должно улучшить совместимость с
приводами DVD-ROM.Возможна также запись предварительного (pre-mastered) образа,
например, для записи
imagefile.iso запустим:&prompt.root; growisofs -dvd-compat -Z /dev/cd0=imagefile.isoСкорость записи должна быть определена и автоматически
установлена в соответствии с носителем и приводом. Если вы хотите
явно указать скорость записи, используйте параметр
. За дальнейшей информацией обратитесь к
странице справочника &man.growisofs.1;.DVDDVD-VideoЗапись DVD-VideoDVD-Video это особая файловая система, базирующаяся на ISO 9660
и спецификациях micro-UDF (M-UDF). DVD-Video также представляет
определенную иерархию структуры данных, поэтому для создания DVD
потребуется особая программа, такая как multimedia/dvdauthor.Если у вас уже есть образ файловой системы DVD-Video,
просто запишите его как любой другой образ, примеры находятся
в предыдущем разделе. Если вы создали DVD и результат находится
в каталоге /path/to/video,
для записи DVD-Video должна быть использована следующая
команда:&prompt.root; growisofs -Z /dev/cd0 -dvd-video /path/to/videoПараметр будет передан
&man.mkisofs.8; и укажет создать файловую систему DVD-Video.
Помимо этого, параметр подразумевает
параметр &man.growisofs.1; .DVDDVD+RWИспользование DVD+RWВ отличие от CD-RW, новый DVD+RW необходимо отформатировать перед
первым использованием. Программа &man.growisofs.1; позаботится об
этом сама при необходимости, и это
рекомендованный способ. Тем не менее,
для форматирования DVD+RW вы можете использовать команду
dvd+rw-format:&prompt.root; dvd+rw-format /dev/cd0Эту операцию необходимо выполнить лишь однажды, помните,
что только новые носители DVD+RW необходимо форматировать.
Затем запишите DVD+RW тем способом, который описан в предыдущем
разделе.Если вы хотите записать новые данные (полностью новую файловую
систему, а не дописать данные) на DVD+RW, его не нужно очищать,
просто запишите поверх предыдущей записи (создав новую начальную
сессию) примерно так :&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/newdataФормат DVD+RW делает возможным легко дописать данные к предыдущей
записи. Операция состоит в присоединении предыдущей сессии к
существующей, это не мультисессионная запись, &man.growisofs.1;
расширит (grow) файловую систему ISO 9660,
существующую на носителе.Например, для дозаписи данных к предыдущей сессии на
DVD+RW, используется следующая команда:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataПри последующих записях &man.mkisofs.8; необходимо передавать
те же параметры, что и при первой записи.Вы можете использовать параметр
для улучшения совместимости с приводами DVD-ROM. В случае
DVD+RW это не помешает добавлению данных.Если по какой-либо причине вам потребуется очистить носитель,
используйте следующую команду:&prompt.root; growisofs -Z /dev/cd0=/dev/zeroDVDDVD-RWИспользование DVD-RWСуществует два формата дисков DVD-RW: последовательно
дополняемый и с ограниченной перезаписью. По умолчанию
формат дисков DVD-RW последовательный.Новый DVD-RW может быть записан непосредственно без
необходимости форматирования, однако DVD-RW с данными
в последовательном формате необходимо очистить перед
созданием новой начальной сессии.Для очистки DVD-RW в последовательном формате, запустите:&prompt.root; dvd+rw-format -blank=full /dev/cd0Полная очистка () займет
около одного часа на скорости 1x. Быструю очистку можно
выполнить с параметром , если
DVD-RW будет записан в режиме Disk-At-Once (DAO).
Для записи DVD-RW в режиме DAO, используйте команду:&prompt.root; growisofs -use-the-force-luke=dao -Z /dev/cd0=imagefile.isoПараметр не
должен потребоваться, поскольку &man.growisofs.1; попытается
определить был ли носитель быстро очищен и включить
DAO запись.Фактически, лучше использовать режим с ограниченной
перезаписью с любым DVD-RW, этот формат более гибкий, чем
формат по умолчанию с последовательной записью.Для записи данных на последовательный DVD-RW, используйте
ту же команду, что и для других форматов DVD:&prompt.root; growisofs -Z /dev/cd0 -J -R /path/to/dataЕсли вы хотите добавить данные к предыдущей записи,
используйте параметр &man.growisofs.1; .
Однако при добавлении данных на DVD-RW в последовательном
режиме, на диске будет создана новая сессия и в результате
получится мультисессионный диск.В формате DVD-RW с ограниченной перезаписью не требуется
очищать носитель перед созданием новой начальной сессии,
вам всего лишь нужно переписать диск с параметром
, подобно DVD+RW. Возможно также увеличение
существующей файловой системы ISO 9660, записанной на диск
тем же способом, как для DVD+RW с параметром .
В результате получится односессионный DVD.Для перевода DVD-RW в формат с ограниченной перезаписью,
необходимо использовать следующую команду:&prompt.root; dvd+rw-format /dev/cd0Для перевода обратно в последовательный формат, выполните:&prompt.root; dvd+rw-format -blank=full /dev/cd0МультисессияЛишь несколько DVD-ROM и проигрывателей поддерживают
мультисессионные DVD, в основном они в лучшем случае прочтут только
первую сессию. DVD+R, DVD-R и DVD-RW в последовательном формате
могут работать с несколькими сессиями, и это не относится к
форматам DVD+RW и DVD-RW в формате ограниченной перезаписи.Использование следующей команды после первой (не закрытой) сессии
для DVD+R, DVD-R, или DVD-RW в последовательном формате, добавит
на диск новую сессию:&prompt.root; growisofs -M /dev/cd0 -J -R /path/to/nextdataИспользование этой командной строки с DVD+RW или DVD-RW в
режиме ограниченной перезаписи добавит данные, объединив новую сессию
с предыдущей. В результате получится односессионный диск.
Такой способ используется для добавления данных после первой
записи на эти носители.Некоторый объем носителя используется между сессиями для
завершения и начала сессии. Следовательно, для оптимизации
объема хранения сессии должны быть большими. Количество сессий
ограничено 154 для DVD+R, около 2000 для DVD-R и 127 для
DVD+R Double Layer.Дополнительная информацияДля получения дополнительной информации о DVD, можно запустить
команду dvd+rw-mediainfo
/dev/cd0, диск должен
находиться в приводе.Дополнительная информация о
dvd+rw-tools может быть найдена на
странице справочника &man.growisofs.1;, на Web-сайте
dvd+rw-tools и в архивах списка рассылки
cdwrite.Вывод dvd+rw-mediainfo при записи
или проблемный носитель необходимы для любого сообщения
о проблеме. Без этого вывода будет совершенно невозможно
помочь вам.JulioMerinoПервоначальный текст предоставил MartinKarlssonПереписал ДискетыХранение данных на дискетах иногда бывает полезным, например,
когда нет других съёмных носителей или когда необходимо перенести
небольшой объём данных на другой компьютер.В этом разделе будет описано, как использовать дискеты во FreeBSD.
В основном речь пойдёт о форматировании и использовании
дискет DOS размером 3.5 дюйма, однако общие принципы применимы и для
других форматов гибких дисков.Форматирование дискетУстройствоДоступ к гибким дискам, как, впрочем, и к остальным устройствам,
осуществляется через соответствующие файлы в
каталога /dev. Чтобы обратиться к дискете при
использовании релизов 4.X и ранее, необходимо работать с
/dev/fdN,
где N обозначает номер привода, обычно 0,
или /dev/fdNX, где
X обозначает букву.В 5.0 и более новых релизах просто используйте
/dev/fdN.Размер диска в 4.X и более ранних релизахИмеются также устройства /dev/fdN.size,
где size обозначает размер дискеты в
килобайтах. Эти файлы устройств используются во время
низкоуровневого форматирования для задания размера устройства.
В последующих примерах будет использоваться размер в 1440kB.Иногда записи в каталоге /dev необходимо
создавать повторно. Для этого выполните следующее:&prompt.root; cd /dev && ./MAKEDEV "fd*"Размер диска в 5.0 и последующих релизахВ 5.0 &man.devfs.5; управляет файлами устройств в каталоге
/dev в автоматическом режиме, так что
использование MAKEDEV необязательно.Требуемый размер диска передаётся утилите &man.fdformat.1; при
помощи параметра . Поддерживаемые
размеры перечислены в &man.fdcontrol.8;, но, по нашему мнению,
лучше всего работает 1440kB.ФорматированиеПеред тем, как дискетой можно будет воспользоваться, её
необходимо отформатировать на низком уровне. Обычно это выполняется
производителем, однако форматирование является хорошим способом
проверить целостность носителя. Большинство гибких дисков
предназначены для использования с размером 1440kB, однако возможно
задать меньший или больший размер.Для низкоуровневого форматирования дискет вам нужно использовать
&man.fdformat.1;. В качестве параметра этой утилите передаётся
имя устройства.Обратите внимание на появление сообщений об ошибках, так как
они могут помочь определить, хорошая это дискета или плохая.Форматирование в 4.X и более ранних релизахДля форматирования дискет используйте устройства
/dev/fdN.size.
Вставьте новую 3.5-дюймовую дискету в дисковод и введите
команду:&prompt.root; /usr/sbin/fdformat /dev/fd0.1440Форматирование в 5.0 и более новых релизахДля форматирования гибких дисков используйте устройства
/dev/fdN. Вставьте
новую 3.5-дюймовую дискету в дисковод и введите команду:&prompt.root; /usr/sbin/fdformat -f 1440 /dev/fd0Метка дискаПосле низкоуровневого форматирования диска вам нужно поместить на
него метку диска. Эта метка будет потом разрушена, но она будет нужна
системе для определения размера диска и его характеристик.Новая метка диска будет касаться диска в целом, и будет содержать
полную информацию о параметрах дискеты.
Значения геометрии для метки диска перечислены в файле
/etc/disktab.
Теперь вы можете запустить &man.disklabel.8; примерно так:&prompt.root; /sbin/disklabel -B -r -w /dev/fd0 fd1440Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Файловая системаТеперь ваша дискета готова к высокоуровневому форматированию.
При этом на неё будет помещаться новая файловая система, которая
позволит FreeBSD читать и записывать информацию на диск. После
создания новой файловой системы метка диска уничтожается, так что если
вы захотите переформатировать диск, вам придётся создавать метку диска
повторно.Файловой системой для дискеты может служить UFS или FAT.
Вообще говоря, FAT для дискет походит лучше.Для размещения на дискете новой файловой системы,
выполните:&prompt.root; /sbin/newfs_msdos /dev/fd0Теперь диск готов к работе.Использование дискетДля работы с гибким диском смонтируйте его при помощи утилит
&man.mount.msdos.8; (для 4.X и более ранних релизов) или
&man.mount.msdosfs.8; (в 5.0 и последующих релизах). Можно также
использовать пакет emulators/mtools
из коллекции портов.Создание и использование архивных копий на магнитной лентеносители на магнитной лентеК наиболее часто используемым носителям на магнитной ленте следует
отнести ленты шириной 4мм и 8мм, а также типа QIC, мини-картриджи и
DLT.4мм (DDS: Digital Data Storage)носители на магнитной лентемагнитные ленты DDS (4мм)носители на магнитной лентемагнитные ленты QICЛенты шириной 4мм заменяют QIC в качестве наиболее
предпочтительного носителя для создания резервных копий. Эта тенденция
значительно усилилась после покупки компанией Conner фирмы Archive,
ведущего производителя накопителей QIC и последующего прекращения
их выпуска. Накопители 4мм малы по размеру и мало шумят, но у них нет
репутации носителя, обладающего надежностью приводов 8мм. Картриджи
более дешевы и меньше по размеру (3 x 2 x 0.5 дюймов, 76 x 51 x 12 мм),
чем 8мм-картриджи. Накопители для лент шириной 4мм, как и 8мм, имеют
сравнительно малый срок службы головок, по причине использования в
обоих случаях технологии спирального сканирования (helical
scan).Пропускная способность у таких накопителей начинается с цифры
~150 kB/s, пиковая достигает ~500 kB/s. Ёмкость накопителей
начинается с 1.3 GB и может достигать 2.0 GB. Аппаратное
сжатие, имеющееся на
большинстве таких накопителей, даёт увеличение ёмкости примерно вдвое.
Блоки многоприводных ленточных библиотек могут иметь до 6 накопителей
в одном модуле с автоматической сменой ленты. Ёмкость библиотек может
достигать 240 Гбайт.Стандарт DDS-3 в настоящее время поддерживает ёмкости лент вплоть
до 12 Гбайт (или 24 Гбайт сжатой информации).В накопителях 4мм, как и в приводах 8мм, используется технология
спирального сканирования. Все плюсы и минусы этой технологии относятся
как к 4мм, так и 8мм приводам.Не следует использовать ленты после того, как они были подвергнуты
2000 проходов, или были использованы для создания 100 полных
копий.8мм (Exabyte)носители на магнитной лентемагнитные ленты Exabyte (8мм)Ленты шириной 8мм являются самым распространённым типом для
ленточных SCSI-накопителей; они же являются наиболее удачным выбором при
выборе типа носителей для обмена лентами. Наверное, каждый сервер
имеет привод Exabyte шириной 8мм и объёмом 2 Гбайт. Эти приводы
удобны, они работают надёжно и тихо. Картриджи дешевы и малы по
размеру (4.8 x 3.3 x 0.6 дюймов; 122 x 84 x 15 мм). Одним минусом
лент шириной
8мм является сравнительно малое время службы головок и лент из-за
высокой скорости движения ленты вдоль головок.Скорость передачи данных варьируется от ~250 kB/s
до ~500 kB/s. Объём хранимых данных начинается с 300 Мбайт и
может достигать 7 Гбайт.
Аппаратное сжатие, имеющееся практически на всех таких приводах,
увеличивает емкость примерно вдвое. Эти приводы существуют как в виде
отдельных модулей, так и в виде многоприводных ленточных библиотек с
6 приводами и 120 лентами в одном отсеке. Ленты сменяются
автоматически модулем. Емкости библиотек достигают величин,
превышающих 840 Гбайт.Модель Exabyte Mammoth поддерживает ёмкость ленты в
12 Гбайт (24 Гбайт со сжатием) и стоит примерно вдвое больше, чем
обычный ленточный накопитель.Данные на ленту записываются по технологии спирального
сканирования, головки позиционируются под углом к носителю (примерно в
6 градусов). Лента оборачивается на 270 градусов вокруг шпульки,
которая держит головки. Во время скольжения ленты вокруг шпульки
последняя вращается. В результате достигается высокая плотность записи
данных с очень близко лежащими дорожками, расположенными под наклоном
по всей ленте.QICносители на магнитной лентеQIC-150Ленты и накопители формата QIC-150, наверное, являются наиболее
распространенным типом носителей. Приводы лент формата QIC являются
самыми дешёвыми серьёзными накопителями для резервного
копирования.
Минусом является стоимость носителей. Ленты формата QIC по сравнению
с лентами шириной 8мм или 4мм являются дорогими, превосходя их по
стоимости хранения одного гигабайта в пять раз. Однако если вам
будут достаточно половины ленты, QIC может оказаться правильным
выбором. QIC является самым распространенным
типом привода. Каждый сайт имеет привод QIC какой-либо емкости. QIC
имеет большое количество плотностей на физически похожих (иногда
даже идентичных) лентах. Приводы QIC работают вовсе не тихо. Эти
накопители громко осуществляют поиск перед тем, как начать запись
данных и достаточно шумны в процессе чтения, записи или поиска. Ленты
QIC имеют размеры (6 x 4 x 0.7 дюймов; 152 x 102 x 17 мм).Скорость обмена данными лежит в границах от ~150 kB/s
до ~500 kB/s. Ёмкость накопителей варьируется от 40 Мбайт
до 15 Гбайт. Аппаратное сжатие
присутствует во многих современных накопителях QIC. Приводы QIC
устанавливаются менее часто; они вытесняются накопителями DAT.На ленту данные записываются в виде дорожек. Дорожки располагаются
в длину вдоль всей ленты. Количество дорожек, и, в свою очередь, их
ширина, меняется вместе с емкостью ленты. Большинство, если не все
современные накопители обеспечивают обратную совместимость по крайней
мере для чтения (однако зачастую и для режима записи). Формат QIC
имеет хорошую репутацию в области надежности хранения данных (механика
устроена проще и более надежна, чем в случае накопителей, построенных
по технологии спирального сканирования).Ленты не следует больше использовать после создания 5,000 резервных
копий.DLTносители на магнитной лентеDLTФормат DLT обладает самой высокой скоростью передачи данных среди
всех перечисленных здесь накопителей. Лента шириной 1/2" (12.5мм)
помещена в один картридж с катушкой (4 x 4 x 1 дюймов; 100 x 100 x
25 мм). Вдоль одной из сторон картриджа расположена сдвигающаяся
крышечка. Механизм накопителя открывает эту крышку, чтобы вытащить
конец ленты. На этом конце имеется овальное отверстие, которое
используется для захвата ленты. Принимающая катушка
размещена внутри
накопителя. Все другие типы картриджей, перечисленные здесь (за
исключением 9-дорожечных лент), имеют как подающий, так и принимающий
барабаны внутри самого картриджа.Скорость передачи данных равна примерно 1.5 MB/s, что в три
раза больше скорости передачи данных для накопителей 4мм, 8мм или QIC.
Ёмкость картриджей варьируется от 10 Гбайт до 20 Гбайт для одного
накопителя. Приводы могут компоноваться как многоленточные
роботизированные, так и многоленточные, многоприводные библиотеки
лент, вмещающие от 5 до 900 лент и от 1 до 20 приводов, что даёт
ёмкость хранилища от 50 Гбайт до 9 Тбайт.Формат DLT Type IV поддерживает емкость до 70 Гбайт со
сжатием.Данные на ленту записываются в виде дорожек, параллельных
направлению движения (точно также, как и для лент QIC). Одновременно
записываются две дорожки. Срок жизни головок чтения/записи
сравнительно велик; как только лента перестает двигаться, одновременно
прекращается трение между головками и лентой.AITносители на магнитной лентеAITAIT - это новый формат фирмы Sony, который позволяет хранить до
50 Гбайт (со сжатием) информации на одной ленте. Ленты содержат
микросхемы памяти, на которых размещается каталог содержимого ленты.
Этот каталог может быть быстро считан накопителем для определения
расположения файлов на ленте, вместо того, чтобы тратить несколько
минут на поиск, как это происходит с другими форматами. Такое
программное обеспечение, как
SAMS:Alexandria, может управлять сорока или
большим количеством
ленточных библиотек AIT, связываясь непосредственно с памятью лент для
вывода их содержимого, определения того, какие файлы были скопированы
на какую ленту, выбора нужной ленты, её загрузки и восстановления
данных с ленты.Библиотеки с такими функциями стоят в районе $20,000, выводя их из
ниши любительского рынка.Использование новой ленты первый разЕсли вы попытаетесь прочитать или записать новую, абсолютно чистую
ленту, в первый раз, то вам это не удастся. Выводимые на консоль
сообщения будут выглядеть примерно так:sa0(ncr1:4:0): NOT READY asc:4,1
sa0(ncr1:4:0): Logical unit is in process of becoming readyНа ленте отсутствует идентификационный блок (блок номер 0). Со
времен принятия стандарта QIC-525 все накопители формата QIC записывают
на ленту идентификационный блок (Identifier Block). Здесь имеется два
решения:По команде mt fsf 1 ленточный накопитель
записывает идентификационный блок на ленту.Воспользуйтесь кнопкой на передней панели для выброса
ленты.Вставьте ленту повторно и по команде dump
сбросьте данные на ленту.Программа dump выдаст DUMP: End
of tape detected, а на консоли будет выведено:
HARDWARE FAILURE info:280 asc:80,96.перемотайте ленту такой командой:
mt rewind.Последующие операции с лентой будут успешными.Создание резервных копий на дискетахМожно ли использовать дискеты для создания резервных копий моих
данных?дискеты с резервными копиямидискетыНа самом деле дискеты не подходят для создания резервных копий,
потому что:Носитель ненадёжен, особенно если речь идет о больших сроках
хранения.Создание резервных копий и восстановление данных происходит
очень медленно.Дискеты имеют весьма ограниченную емкость (дни, когда весь
винчестер копировался на десяток или около того дискет, давно
прошли).Несмотря на все это, если у вас нет другого способа сделать
резервную копию ваших данных, то дискеты все же лучше, чем
ничего.Если вы используете дискеты, то проверьте, что они должны быть
хорошего качества. Дискеты, которые валялись по всему офису в течении
нескольких лет, не подойдут. Идеально использовать новые от известного
производителя.Итак, как же сделать резервную копию данных на дискетах?Самым лучшим методом создания резервной копии на дискете является
использование утилиты &man.tar.1; с опцией
(многотомные архивы), которая позволяет размещать
архивы на нескольких дискетах.Для копирования всех файлов в текущем каталоге и подкаталогах
выполните следующее (работая как пользователь
root):&prompt.root; tar Mcvf /dev/fd0 *Когда первая дискета окажется полностью заполненной, программа
&man.tar.1; выдаст запрос на следующий том (так как работа
утилиты &man.tar.1; не зависит от носителя, она имеет дело с
томами; здесь это означает дискету).Prepare volume #2 for /dev/fd0 and hit return:Это сообщение будет повторяться (со все увеличивающимся номером
тома) до тех пор, пока все указанные файлы не будут
заархивированы.Можно ли резервные копии подвергнуть компрессии?targzipсжатиеК сожалению, &man.tar.1; при создании многотомных архивов
не позволяет использовать опцию . Вы конечно же,
можете скомпрессировать все файлы утилитой &man.gzip.1;,
программой &man.gzip.1; скопировать их на дискеты, а затем
распаковать файлы снова утилитой &man.gunzip.1;!Как восстановить данные из моих резервных копий?Для полного восстановления архива воспользуйтесь такой
командой:&prompt.root; tar Mxvf /dev/fd0Есть два подхода к восстановлению только нужных вам файлов. В
первом вы можете начать с первой дискеты и выдать такую команду:&prompt.root; tar Mxvf /dev/fd0 filenameПрограмма &man.tar.1; будет выдавать запрос на подачу
последующих дискет до тех пор, пока не найдет требуемый файл.Как альтернатива, если вы знаете, на какой дискете расположен файл,
то вы можете просто подать ее и дать ту же самую команду, что и выше.
Заметьте, что если первый файл на дискете является продолжением
предыдущего, то &man.tar.1; выдаст предупреждение о том, что
не может его восстановить, хотя вы этого и не просили делать!LowellGilbertПервоначально написаноСтратегии резервного копированияПри разработке плана резервного копирования первым делом надо
продумать методы защиты от следующих проблем:Отказ жесткого дискаСлучайное удаление файловПовреждение содержимого файловПолное уничтожение компьютера (например, при пожаре), при
котором погибнут также резервные копии, физически находящиеся
рядом.Вполне возможно, что для ваших нужд нет единой стратегии, наилучшим
образом покрывающей все описанные проблемы; более того, скорее всего,
ее и не может быть (разве что для персональных систем, где ценность
данных очень низка).Вот несколько наиболее распространенных технологий, применяемых
для резервного копирования:Архивация системы целиком с копированием на какой-либо надежный
внешний носитель и размещение его вдалеке от основной системы.
При этом вы защищены от всех перечисленных проблемы, однако этот
метод требует много времени и неудобен в процессе восстановления.
Вы можете хранить резервные копии рядом или даже смонтированными,
однако все равно столкнетесь с неудобствами при восстановлении,
в особенности для непривилегированных пользователей.Снэпшоты файловых систем. Помогают только от случайного
удаления файлов, но как раз в этом случае
очень полезны и эффективны.Полные копии файловых систем или дисков (например, периодический
запуск программы rsync для машины целиком).
Для защиты от отказа жестких дисков этот способ обычно несколько
уступает RAID; для восстановления случайно
удаленных файлов может быть сравним по удобству со снэпшотами
UFS, в зависимости от вашей ситуации.RAID. Минимизирует или исключает вовсе
простои при отказе жестких дисков. При этом средняя частота
таких отказов увеличивается (поскольку количество дисков больше),
но разбираться с ними становится много спокойнее.Проверка отпечатков файлов (fingerprints). Для этого весьма
полезна утилита &man.mtree.8;. Не являясь собственно технологией
резервного копирования, этот метод помогает выяснять, когда вам
пока обращаться к резервным копиям. В особенности это важно для
"оффлайновых" резервных копий.Довольно легко придумать и другие стратегии резервного копирования;
многие из них будут композициями уже упомянутых. Наличие специальных
требований, как правило, приводит к специализированным же технологиям
(например, резервное копирование базы данных, как правило, требует
использования методов, специфичных для соответствующей СУБД).
Главным остается знание опасностей потери данных, от которых вы хотите
себя оградить, и методов защиты от них.Основы технологии резервного копированияТремя основными программами резервного копирования являются
&man.dump.8;, &man.tar.1; и &man.cpio.1;.Dump и Restoreпрограммы резервного копированиярезервное копирование / восстановлениеdumprestoreДля &unix; традиционными программами резервного копирования
являются dump и restore. Они
работают с приводом как с набором дисковых блоков, которые расположены
ниже понятий файлов, связей и каталогов, создаваемых файловыми
системами. Программа dump выполняет резервное
копирование всей файловой системы, располагающейся на устройстве.
Невозможно выполнить резервное копирование части файловой системы или
дерева каталогов, которые располагаются более чем в одной файловой
системе. Утилита dump не записывает на ленту файлы
и каталоги, она записывает блоки данных, из которых строятся файлы и
каталоги.Если вы используете программу dump для работы
с корневым каталогом, при этом не будет выполняться резервное
копирование
/home, /usr и многих других
каталогов, так как они обычно являются точками монтирования других
файловых систем или символическими ссылками на эти файловые
системы.В программе dump имеются некоторые неудобства,
оставшиеся
от её ранних дней в составе Version 6 операционной системы AT&T
UNIX (примерно 1975). Параметры, используемые по умолчанию, подходят
для 9-дорожечных лент (6250 bpi), но не для современных носителей с
высокой плотностью записи информации (до 62,182 ftpi). Для
использования ёмкостей нынешних накопителей на магнитной ленте эти
параметры могут быть заданы в командной строке..rhostsПри помощи rdump и rrestore
возможно резервное
копирование данных по сети на накопитель, подключенный к другому
компьютеру. Обе программы используют в работе &man.rcmd.3; и
&man.ruserok.3; для доступа к накопителю на магнитной ленте на
удалённом компьютере. Поэтому пользователь, выполняющий резервное
копирование, должен быть указан в файле .rhosts на
удалённом компьютере. Аргументы для rdump и
rrestore должны подходить для использования на
другом компьютере. При выполнении копирования по команде
rdump на компьютере с FreeBSD на накопитель Exabyte,
подключенный к машине Sun по имени komodo, используйте
такую команду:&prompt.root; /sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1Будьте осторожны: есть проблемы с обеспечением безопасности при
аутентификации посредством .rhosts. Внимательно
рассмотрите вашу ситуацию.Программы dump и restore
можно использовать в более защищённом режиме посредством
ssh.Использование dump через
ssh&prompt.root; /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
targetuser@targetmachine.example.com dd of=/mybigfiles/dump-usr-l0.gzЛибо воспользуйтесь встроенной в dump
возможностью, задав переменную окружения RSH:Использование dump при работе через
ssh с заданием RSH&prompt.root; RSH=/usr/bin/ssh /sbin/dump -0uan -f targetuser@targetmachine.example.com:/dev/sa0 /usrtarпрограммы резервного копированияtarУтилита &man.tar.1; также восходит корнями к Version 6 системы
AT&T UNIX (около 1975). tar работает с
файловой системой, записывая на ленту файлы и
каталоги. Эта утилита
поддерживает не полный набор опций, имеющихся в &man.cpio.1;, однако
не требует необычного перенаправления в командной строке, которое
используется в утилите cpio.tarFreeBSD начиная с версии 5.3 содержит как GNU
tar, так и используемую по умолчанию
утилиту bsdtar. Версия GNU вызывается командой
gtar, и поддерживает удалённые устройства в том же
самом синтаксисе, что и rdump. Чтобы скопировать
данные на накопитель Exabyte, подключенный к машине Sun по имени
komodo, используйте такую команду:&prompt.root; /usr/bin/gtar cf komodo:/dev/nsa8 . 2>&1Тот же результат вы можете получить, используя
bsdtar, воспользовавшись перенаправлением вывода и командой
rsh для посылки данных на удалённый ленточный
накопитель.&prompt.root; tar cf - . | rsh hostname dd of=tape-device obs=20bЕсли вы беспокоитесь о безопасности создания резервных копий по
сети, то вместо rsh вам нужно использовать
ssh.cpioпрограммы резервного копированияcpio&man.cpio.1; является оригинальной программой &unix; для обмена
файлами на магнитных носителях. В утилите cpio
имеются опции (кроме всего прочего), позволяющие выполнять изменение
порядка следования байтов, поддерживающие различные форматы архивов и
выполняющие перенаправление данных другим программам. Последняя
возможность делает cpio прекрасным выбором для
целей установки. cpio не знает о том, как
работать с каталогами, список файлов должен даваться через
stdin.cpiocpio не поддерживает создание резервных
копий по сети. Вы можете воспользоваться перенаправлением вывода и
программой rsh для посылки данных на удалённый
накопитель.&prompt.root; for f in directory_list; dofind $f >> backup.listdone
&prompt.root; cpio -v -o --format=newc < backup.list | ssh user@host "cat > backup_device"Где directory_list это список директорий, c которых Вы хотите
создать резервные копии,
user@host это
комбинация пользователь/хост которая описывает того кто
занимается резервированием, и backup_device
это устройство куда копии должны быть записаны (например,
/dev/nsa0).paxпрограммы резервного копированияpaxpaxPOSIXIEEE&man.pax.1; является ответом IEEE/&posix; на утилиты
tar и cpio. В течение многих лет
различные версии программ tar и
cpio получались не совсем совместимыми. Так что
вместо того, чтобы попытаться полностью их стандартизировать, &posix;
создал новую утилиту для работы с архивами. pax
пытается читать и писать различные форматы cpio
и tar, и, кроме
того, свои собственные новые форматы. Набор команд этой утилиты больше
напоминает cpio, чем tar.Amandaпрограммы резервного копированияamandaamandaAmanda (Advanced Maryland Network Disk
Archiver) является целой клиент/серверной системой резервного
копирования, а не отдельной программой. Сервер
Amanda сможет осуществлять резервное
копирование на единственный накопитель любого количества компьютеров,
на которых имеется клиент Amanda и которые
могут связываться по сети с сервером Amanda.
Общей проблемой систем с большим количеством больших дисков является
то, что время, требуемое для непосредственной записи данных на ленту,
превышает лимит времени, выделенный на эту задачу.
Amanda решает эту проблему.
Amanda может использовать
промежуточный диск для резервного копирования нескольких
файловых систем одновременно. Amanda
создаёт наборы архивов: группа лент, используемых в
некоторый период времени для создания полных копий всех файловых
систем, перечисленных в конфигурационном файле системы
Amanda. Архивный
набор содержит также создаваемый каждую ночь инкрементальные
(или дифференциальные) резервные копии всех файловых систем.
Восстановление повреждённой файловой системы требует наличия самой
последней полной копии и инкрементальных резервных копий.Конфигурационный файл даёт прекрасный механизм для управления
процессом резервного копирования и объёмом трафика, генерируемого
системой Amanda.
Amanda сможет использовать любую из
перечисленных выше программ для записи данных на ленту.
Amanda имеется в виде как
порта, так и пакета, и по умолчанию она не установлена.Не делать ничегоНе делать ничего - это не программа для компьютера,
и в то же время это наиболее широко используемая стратегия резервного
копирования. Здесь нет никаких первоначальных затрат. Здесь нет
расписания, которому нужно следовать. Просто скажите нет. Если что-то
случится с вашими данными, улыбнитесь и забудьте о них!Если ваше время и данные практически ничего не стоят, то не
делать ничего является самой подходящей программой для вашего
компьютера. Но будьте осторожны, &posix; является весьма полезным
инструментом, и через полгода вы можете обнаружить, что у вас есть
набор файлов, представляющих для вас определенную ценность.Ничего не делать является правильным методом
резервного копирования для /usr/obj и других
деревьев каталогов, которые могут быть в точности перегенерированы
вашим компьютером. Примером являются файлы, представляющие страницы
этого Руководства в форматах HTML или &postscript;. Они генерируются
из входных файлов в формате SGML. Создавать резервные копии файлов в
форматах HTML и &postscript; не нужно. Исходные файлы в формате SGML
копируются регулярно.Какая программа резервного копирования самая лучшая?LISA&man.dump.8; Точка. Elizabeth D. Zwicky
протестировала все программы резервного копирования, обсуждаемые здесь.
Беспроигрышным вариантом для сохранения всех ваших данных и
особенностей файловых систем &unix; является dump.
Элизабет создала файловые системы, содержащие большое количество
необычных элементов (и некоторых не так уж необычных) и тестировала
каждую из программ, выполняя резервное копирование и последующее
восстановление этих файловых систем. В число необычных элементов
входили: файлы с дырами, файлы с дырами и блоком пустого места, файлы с
необычными символами в их именах, нечитаемые и незаписываемые файлы,
устройства, меняющие свой размер во время резервного копирования, файлы,
создаваемые и удаляемые во время копирования и тому подобное. Она
представила результаты на конференции LISA V в октябре 1991 года.
Посмотрите ссылку на сайте
torture-testing Backup and Archive Programs.Процедура восстановления при сбоеДо того, как случится катастрофаВам нужно выполнить всего лишь четыре шага для того, чтобы быть
готовым к любому сбою.disklabelВо-первых, распечатайте разметку диска для всех ваших дисков
(к примеру, disklabel da0 | lpr), таблицу файловых
систем (/etc/fstab) и все сообщения, выводимые
при загрузке, каждого по два экземпляра.аварийные дискетыВо-вторых, определите, все ли устройства присутствуют на
загрузочной и аварийной дискетах (boot.flp и
fixit.flp). Самым простым способом проверки
является перезагрузка вашей машины с загрузочной дискетой,
вставленной в дисковод и последующая проверка сообщений при загрузке.
Если все имеющиеся у вас устройства здесь будут перечислены и будут
работоспособны, перейдите к третьему шагу.В противном случае вам необходимо будет создать две особым
образом сформированные загрузочные дискеты, на которых помещено
ядро, могущее смонтировать все ваши диски и получить доступ к вашему
стримеру. На этих дискетах должны быть: fdisk,
disklabel, newfs,
mount и какая-либо
используемая вами программа резервного копирования. Эти программы
должны быть скомпонованы статически. Если вы используете
dump, то на дискете должна присутствовать и программа
restore.В-третьих, регулярно создавайте резервные копии на ленте. Любые
изменения, которые вы делали после последнего резервного копирования,
могут быть безвозвратно потеряны. На лентах включайте защиту от
записи.В-четвертых, проверяйте работу дискет (либо
boot.flp и fixit.flp, либо
двух дискет, которые вы сделали при выполнении второго шага) и лент
с резервными копиями. Ведите журнал выполняемых действий. Храните
эти записи вместе с загрузочной дискетой, распечатками и лентами.
Вы просто обезумеете при восстановлении данных, если окажется, что
записи могли бы избежать разрушения ваших резервных копий (Каким
образом? Вместо команды tar xvf /dev/sa0 вы
могли случайно набрать tar cvf /dev/sa0 и тем
самым перезаписать вашу резервную копию).Для дополнительной страховки, каждый раз создавайте загрузочные
дискеты и две резервные копии на ленте. Храните одну из копий в
каком-то удаленном месте и НЕ в том же здании, где находится ваш
офис. Достаточно большое количество компаний во Всемирном Торговом
Центре изучило это на своей шкуре. Это удаленное хранилище должно
быть физически отделено на большое расстояние от ваших компьютеров и
дисковых устройств.Скрипт для создания загрузочной дискетыПосле сбояГлавный вопрос: выжило ли ваше оборудование? Вы регулярно делали
резервные копии, так что нет нужды беспокоиться о программном
обеспечении.Если оборудование было повреждено, должны быть заменены
неисправные компоненты.Если с оборудованием все в порядке, проверьте ваши дискеты. При
использовании самостоятельно созданной загрузочной дискеты,
загрузитесь в однопользовательском режиме (набрав
-s в приглашении boot:).
Пропустите следующий абзац.Если вы используете дискеты boot.flp и
fixit.flp, читайте дальше. Вставьте дискету
boot.flp в первый дисковод и загрузите
компьютер. На экран будет выведено оригинальное меню установки.
Выберите пункт Fixit--Repair mode with CDROM or
floppy. После вывода приглашения вставьте
fixit.flp. restore и другие
нужные вам программы находятся в каталоге /mnt2/rescue (/mnt2/stand во &os; версий, предшествующих
5.2).Восстановите по отдельности каждую файловую систему.mountкорневой разделdisklabelnewfsПопробуйте выполнить команду mount (например,
mount /dev/da0a /mnt) по отношению к корневому
разделу вашего первого диска. Если метка диска была испорчена,
то воспользуйтесь командой disklabel для
переразбиения на
разделы и разметки диска так, чтобы получившаяся метка совпала с той,
которая вами была распечатана и сохранена. Для повторного создания
файловых систем используйте утилиту newfs. Повторно
смонтируйте корневой раздел дискеты в режиме чтения-записи
(mount -u -o rw /mnt). Воспользуйтесь вашей
программой резервного копирования и резервными копиями на лентах для
восстановления данных для этой файловой системы (например.
restore vrf /dev/sa0). Размонтируйте файловую
систему (например, umount /mnt). Повторите эту
процедуру для каждой файловой системы, которая была повреждена.Как только ваша система заработает, сделайте резервную копию на
новые ленты. Что бы ни вызвало сбой или потерю данных, это может
случиться снова. Ещё один час, потраченный в этот момент, может
спасти вас от неприятностей в будущем.* Я не был готов к катастрофе, и что теперь?
]]>
MarcFonvieilleРеорганизацию и улучшения выполнил Сетевые файловые системы, файловые системы в памяти и с отображением
в файлвиртуальные дискидискивиртуальныеКроме дисков, которые вы физически устанавливаете в ваш компьютер;
дискеты, компакт-диски, винчестеры и так далее, FreeBSD воспринимает и
другие типы дисков - виртуальные диски.NFSCodaдискипамятьСюда могут быть отнесены сетевые файловые системы, такие, как
Network File System и Coda, а также
файловые системы с организацией в памяти и создаваемые в файлах.В зависимости от версии FreeBSD, которую вы используете, для создания
и работы с файловыми системами, отображаемыми в оперативную память или
файлы, вам нужно будет пользоваться разными инструментами.Пользователи FreeBSD 4.X для создания требуемых устройств
должны использовать &man.MAKEDEV.8;. Во FreeBSD 5.0 и более
поздних версиях для создания файлов устройств используется
&man.devfs.5;, которая выполняет это прозрачно для
пользователей.Файловая система в файле во FreeBSD 4.Xдискихранимые в файле (4.X)Утилита &man.vnconfig.8; конфигурирует и позволяет использовать
дисковые устройства на основе псевдо-устройств vnode.
vnode представляет собой файл и отвечает за
работу с файлом. Это означает, что &man.vnconfig.8; использует файлы
для создания и работы с файловой системой. Одним из возможных
способов использования является монтирование образов дискет или
образов компакт-дисков, сброшенных в файлы.Для использования &man.vnconfig.8; в конфигурационном файле ядра
вам нужно включить поддержку &man.vn.4;:pseudo-device vnЧтобы смонтировать имеющийся образ файловой системы:Использование vnconfig для монтирования имеющегося образа
файловой системы во FreeBSD 4.X&prompt.root; vnconfig vn0diskimage
&prompt.root; mount /dev/vn0c /mntДля создания нового образа файловой системы с помощью
&man.vnconfig.8;:Создание нового диска в файле с помощью
vnconfig&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; vnconfig -s labels -c vn0newimage
&prompt.root; disklabel -r -w vn0 auto
&prompt.root; newfs vn0c
Warning: 2048 sector(s) in last cylinder unallocated
/dev/vn0c: 10240 sectors in 3 cylinders of 1 tracks, 4096 sectors
5.0MB in 1 cyl groups (16 c/g, 32.00MB/g, 1280 i/g)
super-block backups (for fsck -b #) at:
32
&prompt.root; mount /dev/vn0c /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/vn0c 4927 1 4532 0% /mntФайловые системы, отображаемые в файлы, во FreeBSD 5.Xдискиотображаемые в файлы (5.X)Во FreeBSD 5.X для конфигурации и подключения дисков
&man.md.4;, отображаемых в оперативную память, используется утилита
&man.mdconfig.8;. Для работы с &man.mdconfig.8; вам нужно подгрузить
модуль &man.md.4; или добавить поддержку этих устройств в файл
конфигурации ядра:device mdУтилита &man.mdconfig.8; поддерживает три типа виртуальных дисков,
отображаемых в память: диски в памяти, которая выделяется запросами
&man.malloc.9; и диски в памяти, использующие в качестве устройств
хранения файлы или раздел подкачки. Одним из возможных использований
таких дисков является монтирование файлов с образами дискет или
CD.Для монтирования образа существующей файловой системы:Использование mdconfig для монтирования файла
с образом существующей файловой системы во FreeBSD 5.X&prompt.root; mdconfig -a -t vnode -f diskimage -u 0
&prompt.root; mount /dev/md0/mntДля создания образа новой файловой системы при помощи
&man.mdconfig.8;:Создание нового диска, отображаемого в файл, при помощи
mdconfig&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdconfig -a -t vnode -f newimage -u 0
&prompt.root; disklabel -r -w md0 auto
&prompt.root; newfs md0c
/dev/md0c: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 256 inodes.
super-block backups (for fsck -b #) at:
32, 2624, 5216, 7808
&prompt.root; mount /dev/md0c /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0c 4846 2 4458 0% /mntЕсли в параметре вы не задали номер устройства,
то &man.mdconfig.8; для выбора неиспользуемого устройства будет
использовать функцию автоматическое выделения в &man.md.4;. Имя
выделенного устройства будет выдано на стандартное устройство выводы в
виде, например, md4. Для получения более
полной информации о &man.mdconfig.8;, пожалуйста, обратитесь к
соответствующей странице справочной системы.Начиная с &os; 5.1-RELEASE, на смену старой программе
&man.disklabel.8; пришла утилита &man.bsdlabel.8;. У
&man.bsdlabel.8; отсутствуют некоторые устаревшие опции и
параметры; в примере выше параметр не может
использоваться с &man.bsdlabel.8;. Для получения дополнительной
информации обратитесь к справочной странице п
о &man.bsdlabel.8;.Утилита &man.mdconfig.8; весьма полезна, однако для создания файла
с файловой системой требуется произвести много действий. Вместе с
FreeBSD 5.0 поставляется утилита под названием &man.mdmfs.8;,
которая создаёт диск &man.md.4; при помощи &man.mdconfig.8;, размещает
на нём файловую систему UFS при помощи &man.newfs.8; и монтирует её
командой &man.mount.8;. Например, если вы хотите создать и
смонтировать такой же образ файловой системе, как выше, просто наберите
такую команду:Настройка и монтирование диска, отображаемого в файл, при помощи
команды mdmfs&prompt.root; dd if=/dev/zero of=newimage bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdmfs -F newimage -s 5m md0/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0 4846 2 4458 0% /mntЕсли вы используете параметр без номера
устройства, то &man.mdmfs.8; будет использовать автоматическую
нумерацию &man.md.4; для автоматического выбора неиспользуемого
устройства. Более полную информацию о &man.mdmfs.8; можно найти на
страницах справочной системы.Файловая система в памяти во FreeBSD 4.Xдискифайловые системы в памяти (4.X)Драйвер &man.md.4; является простым и эффективным способом создания
файловых систем в памяти во FreeBSD 4.X. Для выделения памяти
используется &man.malloc.9;.Просто возьмите файловую систему, которую вы приготовили при
помощи, скажем, &man.vnconfig.8; и:Диск md в памяти во FreeBSD 4.X&prompt.root; dd if=newimage of=/dev/md0
5120+0 records in
5120+0 records out
&prompt.root; mount /dev/md0c/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0c 4927 1 4532 0% /mntДля получения более полной информации, пожалуйста, обратитесь к
страницам справочной системы по &man.md.4;.Файловые системы с отображением в память во
FreeBSD 5.Xдискифайловая система в памяти (5.X)При работе с файловыми системами, отображаемыми в файл или память,
используются одни и те же утилиты: &man.mdconfig.8; или &man.mdmfs.8;.
Место для хранения файловых систем в памяти выделяется через
&man.malloc.9;.Создание нового диска с отображением в память при помощи
mdconfig&prompt.root; mdconfig -a -t malloc -s 5m -u 1
&prompt.root; newfs -U md1
/dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 256 inodes.
with soft updates
super-block backups (for fsck -b #) at:
32, 2624, 5216, 7808
&prompt.root; mount /dev/md1/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md1 4846 2 4458 0% /mntСоздание нового диска с отображением в память при помощи
mdmfs&prompt.root; mdmfs -M -s 5m md2/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md2 4846 2 4458 0% /mntВместо того, чтобы использовать файловую систему, опирающуюся на
&man.malloc.9;, возможно использовать память раздела подкачки, для чего
нужно просто заменить на
в командной строке при вызове &man.mdconfig.8;. Утилита &man.mdmfs.8;
по умолчанию (без опции ) создаёт диск в разделе
подкачки. Для выяснения всех подробностей, пожалуйста, обратитесь к
страницам справочной системы по &man.mdconfig.8; и
&man.mdmfs.8;.Отключение диска, отображаемого в память, от системыдискиотключение диска, отображаемого в памятьЕсли файловые системы, отображаемые в память или файл, больше не
используются, вам нужно высвободить все ресурсы для системы. Первым
делом нужно размонтировать файловую систему, затем воспользоваться
&man.mdconfig.8; для отключения диска от системы и освободить
ресурсы.К примеру, чтобы отключить и освободить все ресурсы, используемые
/dev/md4:&prompt.root; mdconfig -d -u 4Для выдачи информации об отконфигурированных устройствах
&man.md.4; используется команда mdconfig -l.Во FreeBSD 4.X для отключения устройства используется команда
&man.vnconfig.8;. Например, для отключения и освобождения всех
ресурсов, используемых /dev/vn4:&prompt.root; vnconfig -u vn4TomRhodesТекст предоставил Мгновенные копии файловых системфайловые системымгновенные копииВо FreeBSD 5.0 вместе с технологией
Отложенных обновлений представлена новая возможность: генерация
мгновенных копий файловых систем.Мгновенные копии позволяют пользователю создавать образы заданных
файловых систем и работать с ними как с файлами.
Файлы мгновенных копий должны создаваться в той файловой
системе, над которой производится действие, и пользователь может
создавать не более 20 мгновенных копий для каждой файловой системы.
Активные копии записываются в суперблок, так что они остаются в силе
между операциями монтирования и размонтирования в процессе системных
перезагрузок. Если мгновенная копия больше не нужна, она может быть
удалена стандартной командой &man.rm.1;. Мгновенные копии могут
удаляться в любом порядке, однако всё использованное пространство не
может быть использовано, так как другая мгновенная копия может
претендовать на некоторые блоки из освобождённых.Неизменяемый флаг устанавливается на файл
при помощи &man.mksnap.ffs.8; после первоначального создания файла
мгновенной копии. Команда &man.unlink.1; делает исключение для
файлов мгновенных копий, позволяя их удалять.Мгновенные копии создаются при помощи утилиты &man.mount.8;. Чтобы
создать мгновенную копию /var в файле
/var/snapshot/snap, воспользуйтесь такой
командой:&prompt.root; mount -u -o snapshot /var/snapshot/snap /varВ качестве альтернативного средства создания мгновенных копий
вы можете использовать утилиту &man.mksnap.ffs.8;:&prompt.root; mksnap_ffs /var /var/snapshot/snapФайлы мгновенных копий файловых систем (к примеру,
/var) можно найти при помощи команды
&man.find.1;:&prompt.root; find /var -flags snapshotПосле создания мгновенной копии есть несколько способов её
использования:Некоторые администраторы будут использовать файл мгновенной
копии для целей создания резервной копии, так как мгновенная копия
может быть перенесена на CD или магнитную ленту.Утилита проверка целостности файловой системы, &man.fsck.8;,
может быть запущена над мгновенной копией. Полагая, что
файловая система была в порядке, когда она была смонтирована, вы
всегда должны получать нормальный (и неизменный) результат.
Это именно то, что выполняет фоновый процесс &man.fsck.8;.Запустить утилиту &man.dump.8; с мгновенной копией. Будет
создаваться дамп, соответствующий файловой системе на момент
создания мгновенной копии. Утилита &man.dump.8; при использовании
опции тоже может работать с мгновенными копиями,
создавать их дампы, а затем удалять за один проход.Смонтировать командой &man.mount.8; мгновенную копию как
замороженный образ файловой системы. Чтобы смонтировать командой
&man.mount.8; мгновенную копию
/var/snapshot/snap, запустите:&prompt.root; mdconfig -a -t vnode -f /var/snapshot/snap -u 4
&prompt.root; mount -r /dev/md4 /mntТеперь вы можете пройтись по иерархии вашей зафиксированной файловой
системы /var, смонтированной в каталог
/mnt. Первоначально всё будет в том же самом
состоянии, в каком это было во время создания мгновенной копии.
Единственным исключением будет то, что любые ранее сделанные мгновенные
копии будут видны как файлы нулевой длины. Когда использование
мгновенной копии закончено, она может быть удалена командой:&prompt.root; umount /mnt
&prompt.root; mdconfig -d -u 4Для получения более полной информации о
и мгновенных копиях файловых систем, включая технической описание, вы
можете посетить сайт Маршалла Кёрка МакКузика (Marshall Kirk McKusick) по
адресу .Квотирование файловых системучётдисковое пространстводисковые квотыКвоты - это опциональная возможность операционной системы, которая
позволяет ограничивать объем дискового пространства и/или количество
файлов для конкретного пользователя или членов определенной группы
в рамках одной файловой системы. Чаще всего эта возможность
используется в системах разделения времени, когда желательно ограничить
количество ресурсов, которые может использовать один пользователь или
группа пользователей. Это позволит не допустить ситуации, когда
один пользователь или группа пользователей заполняют всё доступное
дисковое пространство.Настройка вашей системы на использование дисковых квотПеред тем, как попытаться использовать дисковые квоты, необходимо
убедиться, что квоты включены в вашем ядре. Это делается добавлением
следующей строки в конфигурационный файл вашего ядра:
options QUOTA
В стандартном ядре GENERIC это по умолчанию
не включено, так что для использования дисковых квот вам нужно будет
настроить, откомпилировать и установить собственное ядро.
Пожалуйста, обратитесь к за
дополнительной информацией о настройке ядра.Затем вам потребуется включить квотирование дисков в файле
/etc/rc.conf. Это делается добавление такой
строчки:enable_quotas="YES"дисковые квотыпроверкаДля более полного контроля над запуском квотирования имеется
дополнительная переменная для настройки. Как правило, при загрузке
целостность квот каждой файловой системы проверяется программой
&man.quotacheck.8;. При работе программы &man.quotacheck.8;
проверяется точное соответствие данных
в базе данных квот данным в файловой системе. Это весьма долгий
процесс, что отражается на времени загрузки системы. Если вам
захочется пропустить этот шаг, то для этого предназначена специальная
переменная в файле /etc/rc.conf:check_quotas="NO"Наконец, вам потребуется отредактировать файл
/etc/fstab для включения дисковых квот на
уровне файловых систем. Это то место, где вы можете включить квоты
для пользователей, для групп или для обеих этих категорий для всех
ваших файловых систем.Для включения пользовательских квот для файловой системы,
добавьте параметр в поле параметров
файловой системы, на которой вы хотите включить квотирование, в файле
/etc/fstab. Например:/dev/da1s2g /home ufs rw,userquota 1 2Подобным же образом для включения квотирования на уровне групп,
воспользуйтесь параметром вместо
. Чтобы включить
квотирование как для пользователей, так и для групп, измените
строчку следующим образом:
/dev/da1s2g /home ufs rw,userquota,groupquota 1 2
По умолчанию файлы квот хранятся в корневом каталоге файловой
системы в файлах с именами quota.user и
quota.group соответственно для пользовательских
и групповых квот. Для получения подробной информации обратитесь к
команде &man.fstab.5;. Хотя справочная страница по &man.fstab.5;
утверждает, что вы можете указать другое местоположение файлов с
квотами, этого делать не рекомендуется, потому что различные утилиты
для работы с квотами не могут нормально работать в такой
ситуации.На этом этапе вы должны перезагрузить вашу систему с новым ядром.
Скрипт /etc/rc автоматически запустит
соответствующие команды для создания начальных файлов для всех квот,
которые вы создали в файле /etc/fstab, так что
нет нужды вручную создавать никаких файлов квот нулевой длины.При нормальной работе вам не потребуется вручную запускать
программы &man.quotacheck.8;, &man.quotaon.8; или &man.quotaoff.8;.
Однако вам нужно хотя бы прочесть
страницы справочника по этим командам, просто чтобы ознакомиться
с их функциями.Установка квотдисковые квотыограниченияКак только вы настроили вашу систему на использование квот,
проверьте, что они действительно были задействованы. Простым
способом сделать это является запуск такой команды:&prompt.root; quota -vВы должны увидеть однострочную информацию, отражающую
использование диска и текущие ограничения для каждой файловой
системы, на которой включено квотирование.Теперь вы действительно готовы задавать ограничения при помощи
команды &man.edquota.8;.У вас есть несколько вариантов того, как приводить в действие
ограничения по объему дискового пространства, который могут занимать
пользователь или группа, а также по количеству файлов, которые они
могут создать. Вы можете ограничивать размещение ресурсов на основе
объема дискового пространства (квотирование блоков), количества
файлов (квотирование inode) или их комбинации. Каждое из этих
ограничений, в свою очередь, делится на две категории: мягкие и
жёсткие ограничения.жёсткое ограничениеЖёсткое ограничение не может быть превышено. Как только
пользователь достиг своих ограничений, ресурсы соответствующей
файловой системы ему больше выделяться не будут. Например, если
пользователь имеет жесткое ограничение в 500 Кбайт на файловой
системе и в текущий момент использует 490 Кбайт, то
пользователь может получить дополнительно ещё 10 Кбайт. Попытка
занять ещё 11 Кбайт окончится неудачно.мягкое ограничениеС другой стороны, мягкие ограничения могут быть превышены в
течении некоторого периода времени. Этот период времени также
называют периодом отсрочки, который по умолчанию равен одной неделе.
Если пользователь превышает своё мягкое ограничение в течение периода
времени, превышающего отсрочку, то это мягкое ограничение становится
жестким и последующее выделение ресурсов будет запрещено. Когда
пользователь вернётся обратно к отметке, меньшей, чем мягкое
ограничение, то период отсрочки будет сброшен.Далее приводится пример того, что вы можете наблюдать при
запуске команды &man.edquota.8;. Когда вызывается команда
&man.edquota.8;, вы оказываетесь в редакторе, заданном
переменной переменной окружения EDITOR, или в
редакторе vi, если переменная
EDITOR не задана, и можете редактировать квоты.&prompt.root; edquota -u testQuotas for user test:
/usr: kbytes in use: 65, limits (soft = 50, hard = 75)
inodes in use: 7, limits (soft = 50, hard = 60)
/usr/var: kbytes in use: 0, limits (soft = 50, hard = 75)
inodes in use: 0, limits (soft = 50, hard = 60)Для каждой файловой системы, на которой включено квотирование,
вы должны увидеть две строки. В одной строке приведены ограничения
на блоки, а в другой на количество inode. Например, чтобы увеличить
ограничения на количество блоков для пользователя с мягкого
ограничения в 50 и жёсткого ограничения в 75, на мягкое ограничение
в 500 и жёсткое ограничение в 600, измените:/usr: kbytes in use: 65, limits (soft = 50, hard = 75)на:/usr: kbytes in use: 65, limits (soft = 500, hard = 600)Новые ограничения вступят в силу после выхода из
редактора.Иногда желательно установить ограничения квот на некоторый
диапазон UID (идентификаторов пользователей). Это можно сделать при
помощи параметра в команде
&man.edquota.8;. Во-первых, установите желаемое
ограничение для пользователя, а затем запустите команду
edquota -p protouser startuid-enduid. Например,
если пользователь test имеет желаемые
ограничения, то для дублирования этих ограничений на пользователей с
UID от 10000 до 19999 может быть использована такая
команда:&prompt.root; edquota -p test 10000-19999Дополнительную информацию можно получить из справочной страницы по
команде &man.edquota.8;.Проверка ограничений и использования дискадисковые квотыпроверкаДля проверки квот и использования дисков вы можете использовать
команды &man.quota.1; или &man.repquota.8;.
Команда &man.quota.1; может быть использована для проверки
квот отдельных пользователей, групп, а также использования дисков.
Пользователь может только проверить собственную квоту и квоту той
группы, к которой он принадлежит. Только администратор системы может
проверить квоты всех пользователей и групп. Команду
&man.repquota.8; можно использовать для получения
суммарной статистики всех квот и использования дисков для файловых
систем с включенными квотами.Далее приведен пример вывода команды quota -v
для пользователя, который имеет ограничения на двух файловых
системах.Disk quotas for user test (uid 1002):
Filesystem usage quota limit grace files quota limit grace
/usr 65* 50 75 5days 7 50 60
/usr/var 0 50 75 0 50 60период отсрочкиВ этом примере для файловой системы /usr
пользователь превысил свое мягкое ограничение в 50 Кбайт на 15
Кбайт и имеет 5 дней до истечения отсрочки. Отметьте знак
звездочки *, который указывает на превышение
пользователем своего ограничения.Как правило, файловые системы, на которых пользователь не
занимает дискового пространства, не показываются в выводе команды
&man.quota.1;, даже если ему выделена квота на
этой файловой системе. При использовании параметра
эти файловые системы выводятся, как, например,
файловая система /usr/var в примере выше.Квоты в NFSNFSКвоты определяются подсистемой квот на сервере NFS. Даемон
&man.rpc.rquotad.8; предоставляет информацию о квотах для программы
&man.quota.1; на клиентах NFS, позволяя пользователям на этих машинах
смотреть свою статистику о квотах.Включите rpc.rquotad в файле
/etc/inetd.conf следующим образом:
rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
Теперь перезапустите inetd:&prompt.root; kill -HUP `cat /var/run/inetd.pid`LuckyGreenТекст предоставил shamrock@cypherpunks.toШифрование дисковых разделовдискишифрованиеFreeBSD предоставляет прекрасную возможность по защите от
несанкционированного доступа к данным. Права на доступ к файлам и
технология принудительного контроля доступа MAC (Mandatory Access Control)
(смотрите see ) помогают предотвратить
несанкционированный доступ посторонних лиц к данным, при условии работы
операционной системы и компьютера. Однако права доступа, контролируемые
операционной системой, не имеют значения, если нападающий получает
физический доступ к компьютеру и может просто перенести жёсткий диск на
другую машину для копирования и дальнейшего анализа важных данных.Вне зависимости от того, как атакующий завладел жёстким диском или
выключенным компьютером, технологии gbde (GEOM
Based Disk Encryption - шифрование диска на уровне GEOM) и
криптографическая подсистема geli &os; могут защитить
данные файловой системы компьютера даже против очень заинтересованной
атакующей стороны с достаточными ресурсами. В отличие от громоздких
систем шифрования, которые шифруют отдельные файлы,
gbde и geli шифруют в прозрачном режиме файловую
систему в целом, при этом данные в открытом виде на диск никогда не
записываются.Шифрование диска при помощи gbdeПолучите права пользователя rootНастройка gbde требует права доступа
администратора системы.&prompt.user; su -
Password:Проверьте номер версии операционной системыДля работы &man.gbde.4; требуется FreeBSD 5.0 и выше.&prompt.root; uname -r
5.0-RELEASEВключите поддержку &man.gbde.4; в конфигурационный
файл ядраДобавьте
следующую строку в файл конфигурации вашего ядра:options GEOM_BDEПерестройте ядро
FreeBSD. Этот процесс описан в .Перезагрузитесь, запустив новое ядро.Подготовка зашифрованного жёсткого дискаВ следующем примере предполагается, что в вашу систему вы
добавляете новый винчестер, на котором будет располагаться единственный
раздел с зашифрованными данными. Этот раздел будет монтироваться в
каталог /private. gbde
может также использоваться для шифрования /home и
/var/mail, но это требует более сложной
последовательности действий, что выходит за рамки этого вводного
материала.Подключите новый жёсткий дискУстановите новый диск в систему, как это описано в . В рамках этого примера раздел,
соответствующий новому жёсткому диску, будет называться
/dev/ad4s1c. Устройства
/dev/ad0s1*
представляют существующие стандартные разделы FreeBSD нашей
тестовой системы.&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4Создайте каталог для размещения файлов блокировок GBDE&prompt.root; mkdir /etc/gbdeФайл блокировки gbde содержит
информацию, которая нужна gbde для
доступа к зашифрованному разделу. Не имея доступа к файлу
блокировки, gbde не сможет расшифровать
данные, хранимые в зашифрованном разделе, без значительного ручного
вмешательства, что программно не поддерживается. Каждый
зашифрованный раздел использует отдельный файл блокировки.Инициализируйте раздел gbdeПеред началом работы с разделом gbde
его необходимо проинициализировать. Эта инициализация производится
только один раз:&prompt.root; gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c&man.gbde.8; запустит редактор, что позволит вам задать
в шаблоне различные конфигурационные параметры. При работе с
файловыми системами UFS1 и UFS2 задайте значение sector_size равным
2048:$FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
#
# Sector size is the smallest unit of data which can be read or written.
# Making it too small decreases performance and decreases available space.
# Making it too large may prevent filesystems from working. 512 is the
# minimum and always safe. For UFS, use the fragment size
#
sector_size = 2048
[...]&man.gbde.8; дважды запросит ввод пароля, который будет
использоваться для защиты данных. Пароль в обоих случаях должен
вводиться одинаковый. Возможности gbde
по защите ваших данных полностью зависят от качества выбранной
вами ключевой фразы.
Советы по выбору легко запоминающихся ключевых фраз можно
найти на сайте Diceware
Passphrase.По команде gbde init создаётся файл
блокировок для вашего раздела gbde,
который в нашем случае будет иметь имя
/etc/gbde/ad4s1c.Резервные копии файлов блокировок
gbdeдолжны
храниться вместе с содержимым шифруемых разделов. Хотя удаление
только блокировочного файла не сможет противостоять дешифрации
атакующим раздела gbde, без этого
файла даже легитимный пользователь не сможет получить доступ к
данным без определённых и значительных усилий, что не
поддерживается &man.gbde.8; и его разработчиком.Подключите зашифрованный раздел к системе&prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1cБудет выдан запрос на ввод ключевой фразы, которую вы выбирали
во время инициализации зашифрованного раздела. Новое защищённое
устройство будет видно в каталоге /dev под
названием /dev/device_name.bde:&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bdeСоздайте файловую систему на зашифрованном устройствеКак только защищённое устройство будет подключено к системе,
вы сможете создать на нём файловую систему. Для этого используется
утилита &man.newfs.8;. Так как инициализация новой файловой
системы UFS2 происходит быстрее, чем инициализация файловой системы
старого формата UFS1, то рекомендуется использовать &man.newfs.8; с
параметром .Во &os; 5.1-RELEASE и последующих релизах параметр
используется по умолчанию.&prompt.root; newfs -U -O2 /dev/ad4s1c.bdeЗапуск команды &man.newfs.8; должен выполняться над
подключенном разделе gbde, который
идентифицируется по расширению
*.bde в имени
устройства.Смонтируйте зашифрованный разделСоздайте точку монтирования для зашифрованной файловой
системы.&prompt.root; mkdir /privateСмонтируйте защищённую файловую систему.&prompt.root; mount /dev/ad4s1c.bde /privateПроверьте доступность зашифрованной файловой системыЗащищённая файловая система теперь должна быть доступна утилите
&man.df.1; и доступной для использования.&prompt.user; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 1037M 72M 883M 8%
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 8.1G 55K 7.5G 0% /home
/dev/ad0s1e 1037M 1.1M 953M 0% /tmp
/dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr
/dev/ad4s1c.bde 150G 4.1K 138G 0% /privateМонтирование имеющихся зашифрованных файловых системПосле каждой загрузки для каждой защищённой файловой системы перед
их использованием должны выполняться повторное подключение к системе,
проверка на наличие ошибок и монтирование. Требуемые для этого команды
должны выполняться пользователем root.Подключение gbde-раздела к системе&prompt.root; gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1cБудет выдан запрос на ввод ключевой фразы, выбранной на этапе
инициализации зашифрованного раздела gbde.Проверка файловой системы на наличие ошибокТак как защищаемая файловая система не может пока быть указана
в файле /etc/fstab для автоматического
монтирования, то она должны проверяться на наличие ошибок
посредством ручного запуска &man.fsck.8; до её монтирования.&prompt.root; fsck -p -t ffs /dev/ad4s1c.bdeМонтирование зашифрованной файловой системы&prompt.root; mount /dev/ad4s1c.bde /privateТеперь защищённая файловая система доступна для работы.Автоматическое монтирование зашифрованных разделовДля автоматического подключения, проверки и монтирования
зашифрованного раздела можно создать скрипт, но по соображениям
безопасности в этом скрипте пароля для &man.gbde.8; быть не должно.
Поэтому рекомендуется запускать такие скрипты вручную, а пароль
задавать с консоли или сеанса &man.ssh.1;.Начиная с версии &os; 5.2-RELEASE, базовая система содержит
скрипт rc.d для автоматического монтирования шифрованных разделов.
Его аргументы могут быть указаны в файле &man.rc.conf.5;:gbde_autoattach_all="YES"
gbde_devices="ad4s1c"При этом ключевая фраза для gbde
должна быть введена на этапе загрузки. После введения ключевой
фразы зашифрованный раздел будет смонтирован автоматически.
Такой подход может быть очень удобным для использования
gbde на ноутбуках.Криптографическая защита, применяемая в gbde&man.gbde.8; шифрует содержимое секторов при помощи 128-битного
AES в режиме CBC. Каждый сектор диска шифруется различным ключом
AES. Более полная информацию о системе шифрования
gbde, включая алгоритм генерации ключей
для секторов из ключевой фразы, вводимой пользователем, можно найти
на страницах справочной системы о &man.gbde.4;.Вопросы совместимости&man.sysinstall.8; несовместим с устройствами, зашифрованными
gbde. Все устройства
*.bde перед
запуском &man.sysinstall.8; должны быть отключены от системы, или
эта утилита аварийно завершит работу на этапе обнаружения устройств.
Для отключения защищённого устройства, используемого в нашем примере,
воспользуйтесь такой командой:&prompt.root; gbde detach /dev/ad4s1cТакже заметьте, что, так как &man.vinum.4; работает не через
подсистему &man.geom.4;, то вы не можете использовать тома
vinum с
gbde.DanielGerzoПредоставлено Шифрование дисков при помощи geliНачиная с версии 6.0 &os; поддерживается новый класс GEOM —
geli. В настоящий момент он поддерживается
&a.pjd;. Класс Geli отличается от
gbde; он предоставляет другой комплекс
возможностей и использует иную схему криптования.Наиболее значимыми особенностями &man.geli.8; являются:Использование инфраструктуры &man.crypto.9;: при наличии
аппаратной криптографической поддержки, geli
автоматически использует ее.Поддержка разнообразных криптоалгоритмов (в настоящее время
AES, Blowfish и 3DES).Поддержка шифрованного корневого раздела. Для загрузки
в такой ситуации потребуется ввести ключевую фразу.Поддержка двух независимых ключей шифрования (например,
основного ключа и ключа
компании).Высокая скорость работы geli за счет
простого криптования сектор-сектор.Поддержка архивирования основных ключей. При необходимости
текущие ключи могут быть уничтожены, а в дальнейшем доступ к
данным восстановлен при помощи архивированных ключей.Поддержка криптования файловых систем случайным одноразовым
ключом — например, для разделов подкачки или временных
файловых систем.Другие возможности класса geli описаны в его
странице справочника: &man.geli.8;.Несколько следующих страниц будут посвящены описанию процесса
конфигурации geli в ядре &os; и создания
нового криптографического провайдера geli.
В завершение, мы продемонстрируем, как создать шифрованный раздел
подкачки при помощи geli.Для того чтобы использовать geli, вам
потребуется &os; версии 6.0-RELEASE или более поздней. Поскольку
необходимо внести изменения в конфигурацию ядра, потребуются также
привилегии суперпользователя.Изменение конфигурацию ядра: включение
geliДобавьте в конфигурационный файл ядра следующие строки:options GEOM_ELI
device cryptoПерестройте ядро, как описано в разделе .Помимо этого, поддержка geli может быть
активирована модулем ядра на этапе загрузки. Для этого добавьте
в файл /boot/loader.conf строку:geom_eli_load="YES"Теперь ядро должно поддерживать &man.geli.8;.Генерация главного ключаПредлагаемый пример описывает процесс генерации ключевого
файла, который послужит частью главного ключа для шифрованного
провайдера, монтируемого в каталог /private. При помощи содержимого
ключевого файла создается набор случайных данных, которым
зашифровывается главный ключ. Кроме того, он будет защищен
кодовой фразой. Размер сектора провайдера будет составлять
4kB. Наконец, мы обсудим, как присоединиться к провайдеру
geli, создать на базе его файловую систему,
как ее смонтировать и работать с ней, и, в заключение, как
корректно завершить работу.Больший чем обычно размер сектора (как в нашем примере, 4 кБ)
рекомендуется для увеличения производительности.Главный ключ будет защищен кодовой фразой; данные для
ключевого файла берутся из /dev/random.
Размер сектора создаваемого нами шифрованного провайдера
/dev/da2.eli — 4кБ.&prompt.root; dd if=/dev/random of=/root/da2.key bs=64 count=1
&prompt.root; geli init -s 4096 -K /root/da2.key /dev/da2
Enter new passphrase:
Reenter new passphrase:Использование одновременно кодовой фразы и ключевого файла
не обязательно: любой из этих методов защиты главного ключа может
применяться независимо.Если в качестве имени ключевого файла указан -,
используется стандартный ввод. Это позволяет использовать более
одного ключевого файла:&prompt.root; cat keyfile1 keyfile2 keyfile3 | geli init -K - /dev/da2Свяжите сгенерированный ключ с провайдером&prompt.root; geli attach -k /root/da2.key /dev/da2
Enter passphrase:Созданный при этом файл дискового устройства будет называться
/dev/da2.eli.&prompt.root; ls /dev/da2*
/dev/da2 /dev/da2.eliСоздайте новую файловую систему&prompt.root; dd if=/dev/random of=/dev/da2.eli bs=1m
&prompt.root; newfs /dev/da2.eli
&prompt.root; mount /dev/da2.eli /privateЗашифрованная файловая система будет видна в выводе утилиты
&man.df.1; и готова к использованию:&prompt.root; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 248M 89M 139M 38% /
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 7.7G 2.3G 4.9G 32% /usr
/dev/ad0s1d 989M 1.5M 909M 0% /tmp
/dev/ad0s1e 3.9G 1.3G 2.3G 35% /var
/dev/da2.eli 150G 4.1K 138G 0% /privateРазмонтирование и деактивация провайдераПосле завершения работы с шифрованным разделом, когда
содержимое каталога /private
больше не нужно, будет разумным отключить раздел от
системы.&prompt.root; umount /private
&prompt.root; geli detach da2.eliДополнительную информацию о &man.geli.8; можно найти на
соответствующей странице справочника.Шифрование раздела подкачкиДанный пример описывает создание шифрованного при помощи
geli раздела подкачки.&prompt.root; dd if=/dev/random of=/dev/ad0s1b bs=1m
&prompt.root; geli onetime -d -a 3des ad0s1b
&prompt.root; swapon /dev/ad0s1b.eliИспользование стартового скрипта rc.dgeliДля удобства использования подсистемы geli
в комплект базовой системы &os; входит стартовый скрипт, работой
которого можно управлять из &man.rc.conf.5;:geli_devices="da2"
geli_da2_flags="-p -k /root/da2.key"При этом дисковый раздел /dev/da2 будет
сконфигурирован как провайдер geli, связан с
ключевым файлом /root/da2.key, а кодовая
фраза не будет использоваться (отметим, что это возможно только
в том случае, если при инициализации geli был
указан ключ -P). Шифрованный провайдер geli
будет отсоединен перед выключением системы.Дополнительную информацию о конфигурации скриптов rc.d можно
найти в соответствующей
главе Руководства.
diff --git a/ru_RU.KOI8-R/books/handbook/l10n/chapter.sgml b/ru_RU.KOI8-R/books/handbook/l10n/chapter.sgml
index 2f55ff8473..e79cf5e394 100644
--- a/ru_RU.KOI8-R/books/handbook/l10n/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/l10n/chapter.sgml
@@ -1,998 +1,970 @@
AndreyChernovПредоставил Michael C.WuПереписал АлександрПересункоПеревод на русский язык: ДенисПеплинЛокализация - I18N/L10N использование и настройкаКраткий обзорFreeBSD - это очень распределенный проект, пользователи
и контрибьюторы которого находятся в самых разных частях света.
В этой главе рассказывается о возможностях интернационализации
и локализации FreeBSD, которые позволяют не-англоговорящим
пользователям делать свою работу. Существует много подходов в
i18n реализации - как на системном уровне, так и на уровне
приложений, так что, где это возможно, мы будем давать читателю
ссылки на более углубленные источники документации.После прочтения этой главы, вы будете знать:Как разные языки и региональные настройки кодируются
в современных операционных системах.Как установить региональные настройки для вашей
оболочки.Как настроить вашу консоль для отличных от
английского языков.Как эффективно использовать X Window System с разными
языками.Где найти дополнительную документацию по созданию
i18n-совместимых приложений.Перед чтением этой главы вам следует::Знать как установить дополнительные приложения сторонних
разработчиков ().ОсновыЧто такое I18N/L10N?интернационализациялокализациялокализацияРазработчики сократили интернационализацию в термин I18N, по числу
символов между первым и последним символом интернационализации. В
названии L10N используется тот же принцип от локализации.
Совместно используемые I18N/L10N методы, протоколы и приложения
позволяют пользователям использовать языки по своему выбору.I18N приложения написаны с применением набора I18N посредством
библиотек. Это позволяет разработчикам писать простые файлы и переводить
отображаемые меню и надписи на разные языки. Мы настоятельно рекомендуем
программистам следовать этому соглашению.Почему я должен использовать I18N/L10N?I18N/L10N используется всегда, когда вы хотите просмотреть, ввести
или обработать данные на отличных от английского языках.Какие языки поддерживаются в проекте I18N?I18N и L10N не являются специфичными для FreeBSD. На текущий момент
у вас есть выбор между самыми распространенными языками мира, включая, но
не ограничиваясь: китайский, немецкий, японский, корейский, французский,
русский, вьетнамский и др.Использование локализацииПри всем своем величии, I18N не специфична для FreeBSD и
является, по сути, соглашением. Следование этому соглашению
помогает FreeBSD, и мы это приветствуем.localeНастройки локализации базируются на трех основных терминах:
код языка, код страны и кодировка. Имена локализаций строятся из этих
частей следующим образом:кодязыка_кодстраны.кодировкаЯзык и код страныlanguage codescountry codesЧтобы настроить FreeBSD (или любую другую &unix;-систему,
поддерживающую I18N) на использование специфического языка, пользователю
нужно выяснить коды этого языка и страны (коды страны сообщают
приложению какой именно диалект языка этой страны нужно использовать). К
тому же, веб-браузеры, SMTP/POP серверы, веб-серверы и т.п. делают свой
выбор в зависимости от этого. Далее показаны примеры кодов
языка/страны:Код языка/страныОписаниеen_USАнглийский - Соединенные Штатыru_RUРусский для Россииzh_TWТрадиционный китайский для ТайваняКодировкикодировкиASCIIНекоторые языки используют не соответствующие ASCII кодировки,
которые используют для кодирования 8 бит, расширенное или
многобайтовое представление символов (подробности см. в &man.multibyte.3;).
Старые приложения не распознают такие кодировки и ошибочно принимают их
за управляющие символы. Новые приложения обычно распознают 8-битные
символы. В зависимости от реализации, пользователю может
потребоваться компиляция приложения с поддержкой расширенного или
многобайтного представления символов, или же просто правильная его
настройка. Чтобы иметь возможность вводить и обрабатывать символы с
расширенным или многобайтным представлением, Коллекция портов FreeBSD
предоставляет поддержку разных языков для различных приложений. Смотрите
документацию по I18N в соответствующем порту FreeBSD.В частности, пользователю необходимо читать прилагаемую к приложению
документацию чтобы решить, как правильно его настроить или
указать правильные параметры configure/Makefile/компилятору.Следует помнить следующие вещи:Наборы символов, использующие один байт для кодирования символа
(см. &man.multibyte.3;), например,
- ISO-8859-1, ISO-8859-15, KOI8-R, CP437.
+ ISO8859-1, ISO8859-15, KOI8-R, CP437.
Расширенные или многобайтные кодировки, например, EUC, Big5.Вы можете посмотреть актуальный список наборов символов на сайте
IANA Registry.
- Вместо этого, FreeBSD версий 4.5 и выше используют X11-совместимые
+ Вместо этого, &os; используют X11-совместимые
кодировки для локализации.Приложения, использующие I18NВ системе Портов и Пакетов FreeBSD в название приложений,
поддерживающих I18N, включена аббревиатура I18N для
легкой их идентификации. И, тем не менее, не все приложения поддерживают
требуемый язык.Настройка локализацииОбычно достаточно экспортировать значение имени локализации в
переменной LANG Вашей оболочки. Это можно сделать в
пользовательском ~/.login_conf файле или в
инициализационном файле пользовательской оболочки
(~/.profile, ~/.bashrc,
~/.cshrc). Нет надобности устанавливать отдельные
параметры локализации такие как LC_CTYPE,
LC_CTIME. За дополнительной информацией, пожалуйста,
обращайтесь к документации FreeBSD по нужному вам языку.Вам следует установить следующие переменные окружения в ваших
конфигурационных файлах:POSIXLANG для семейства функций &posix;
&man.setlocale.3;MIMEMM_CHARSETнабор символов MIME для
приложенийЭти настройки включают конфигурацию оболочки пользователя,
конфигурацию конкретных приложений и конфигурацию X11.Методы настройки локализацииlocalelogin classСуществует два метода настройки локализации и оба описаны ниже.
Первый (рекомендуемый) заключается в задании переменных в классе логина, другой метод заключается в
задании переменных окружения в
инициализационном
файле системной оболочки.Метод Login ClassesЭтот метод позволяет установить переменные окружения,
необходимые для установки локализации и набора символов MIME,
однократно для любых оболочек, вместо того, чтобы добавлять
установку этих переменных в инициализационный файл каждой оболочки.
Настройка на уровне пользователя может
быть сделана самим пользователем, а
Настройка на уровне администратора требует привилегий
суперпользователя.Настройка на уровне пользователяВот минимальный пример файла .login_conf
в домашнем каталоге пользователя, в котором задаются обе переменные
для кодировки Latin-1:me:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:Traditional ChineseBIG-5 encodingЭто пример .login_conf, который задает
переменные для Традиционного Китайского языка в кодировке BIG-5.
Обратите внимание, что задается намного больше переменных, потому
что некоторое программы некорректно воспринимают переменные
окружения локализации для Китая, Японии и Кореи.#Пользователи, которые не хотят использовать
денежные единицы
#и форматы времени Тайваня, могут вручную изменить каждую переменную
me:\
:lang=zh_TW.Big5:\
:lc_all=zh_TW.Big:\
:lc_collate=zh_TW.Big5:\
:lc_ctype=zh_TW.Big5:\
:lc_messages=zh_TW.Big5:\
:lc_monetary=zh_TW.Big5:\
:lc_numeric=zh_TW.Big5:\
:lc_time=zh_TW.Big5:\
:charset=big5:\
:xmodifiers="@im=xcin": #Setting the XIM Input ServerЗа подробностями обращайтесь к разделу
Настройка на
уровне администратора и &man.login.conf.5;.Настройка на уровне администратораПроверьте, что класс логина пользователя в
/etc/login.conf задает нужный язык.
Убедитесь, что эти настройки присутствуют в
/etc/login.conf:language_name:accounts_title:\
:charset=MIME_charset:\
:lang=locale_name:\
:tc=default:Используя наш предыдущий пример с Latin-1, это должно
выглядеть так:german:German Users Accounts:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:\
:tc=default:Изменение класса логина с помощью
&man.vipw.8;vipwИспользуйте vipw для добавления новых
пользователей и отредактируйте запись о пользователе, чтобы она была
похожа на эту:user:password:1111:11:language:0:0:User Name:/home/user:/bin/shИзменение класса логина с помощью
&man.adduser.8;adduserlogin classИспользуйте adduser для добавления новых
пользователей и сделайте следующее:Установите defaultclass =
язык в
/etc/adduser.conf. Помните, что в этом
случае вы должны задать default класс для
всех пользователей других языков.Другой способ заключается в задании класса логина каждый
раз, когда &man.adduser.8; попросит об этом:
Enter login class: default []: Еще один способ - использовать следующее для каждого
пользователя другого языка, которого вы хотите
добавить:&prompt.root; adduser -class языкИзменение класса логина с помощью
&man.pw.8;pwЕсли для добавления новых пользователей вы используете
утилиту &man.pw.8;, запускайте ее с такими параметрами:&prompt.root; pw useradd
имя_пользователя -L языкМетод инициализационных файлов оболочкиЭтот метод не рекомендуется, потому что он требует разных
настроек для каждой оболочки. Вместо этого используйте
Метод класса логина.MIMElocaleЧтобы добавить локализацию и набор символов MIME, просто
установите две переменные окружения, приведенные ниже, в
инициализационные файлы оболочек /etc/profile
и/или /etc/csh.login. Для примера мы используем
немецкий язык:В /etc/profile:LANG=de_DE.ISO8859-1; export LANGMM_CHARSET=ISO-8859-1; export MM_CHARSETИли в /etc/csh.login:setenv LANG de_DE.ISO8859-1setenv MM_CHARSET ISO-8859-1Как вариант, вы можете добавить установки, приведенные выше в
/usr/share/skel/dot.profile (соответствует
установкам в /etc/profile выше), или
/usr/share/skel/dot.login (соответствует
установкам в /etc/csh.login выше).Для X11:В $HOME/.xinitrc:LANG=de_DE.ISO8859-1; export LANGИли:setenv LANG de_DE.ISO8859-1В зависимости от вашей оболочки (см. выше).Настройка консолиДля всех однобайтовых кодовых таблиц, укажите подходящие
консольные шрифты в /etc/rc.conf для
требуемого языка:font8x16=имя_шрифта
font8x14=имя_шрифта
font8x8=имя_шрифтаThe имя_шрифта берется из каталога
/usr/share/syscons/fonts,
без указания расширения .fnt.sysinstallkeymapscreenmapУбедитесь также в установке правильных значений keymap и screenmap
для вашей однобайтовой кодовой таблицы через
sysinstall (/stand/sysinstall
в &os; версий более ранних, чем 5.2).
В sysinstall выберите
Configure, затем
Console. Или добавьте следующие строки в
/etc/rc.conf:scrnmap=screenmap_name
keymap=keymap_name
keychange="fkey_number sequence"screenmap_name берется из
каталога /usr/share/syscons/scrnmaps, без
суффикса .scm.
Screenmap с соответствующим шрифтом обычно используется в качестве
обходного пути для расширения 8 бит до 9 бит в псевдографическую
область VGA адаптера, например для удаления букв из этой области
если используется 8-битный шрифт.Если даемон мыши moused включен
добавлением в /etc/rc.conf следующей
строки:moused_enable="YES"прочтите информацию о курсоре мыши в следующем параграфе.mousedПо умолчанию драйвер &man.syscons.4; выделяет для курсора мыши
в таблице символов диапазон 0xd0-0xd3. Если в вашем языке
используется этот диапазон, переместите этот диапазон. В
FreeBSD версий до 5.0, добавьте следующую строку в файл
конфигурации ядра:options SC_MOUSE_CHAR=0x03Для FreeBSD версий 4.4 и выше включите следующую строку в
/etc/rc.conf:mousechar_start=3keymap_name берется из каталога
/usr/share/syscons/keymaps, без расширения
.kbd. Если вы не знаете какую таблицу
использовать, запустите &man.kbdmap.1; для тестирования таблицы
без перезагрузки.keychange обычно требуется для сопоставления
функциональных клавиш выбранному типу терминала, поскольку
последовательности функциональных клавиш не могут быть определены
в раскладке клавиатуры.Убедитесь также, что для всех записей ttyv*
в /etc/ttys установлен подходящий тип терминала.
Имеющиеся типы соответствуют следующим кодировкам:Кодовая таблицаТип терминала
- ISO-8859-1 or ISO-8859-15
+ ISO8859-1 or ISO8859-15cons25l1
- ISO-8859-2
+ ISO8859-2cons25l2
- ISO-8859-7
+ ISO8859-7cons25l7KOI8-Rcons25rKOI8-Ucons25uCP437 (VGA default)cons25US-ASCIIcons25wДля расширенных кодировок, а также для многобайтовых кодировок,
используйте порт FreeBSD из каталога
/usr/ports/language.
Некоторые порты выводят информацию на консоль, хотя для системы
выглядят как последовательные псевдотерминалы, следовательно вы
должны зарезервировать достаточное количество псевдотерминалов
и для X11 и для последовательных псевдоконсолей. Вот неполный
список приложений для использования этих кодировок в консоли:ЯзыкПриложениеТрадиционный китайский (BIG-5)chinese/big5conЯпонскийjapanese/kon2-16dot или
japanese/mule-freewnnКорейскийkorean/hanНастройка X11Хотя X11 не является частью проекта FreeBSD, мы включили сюда
некоторую информацию для пользователей FreeBSD. За детальной
информацией обращайтесь к Веб
сайту &xorg; или к сайту того сервера X11, который вы
используете.В ~/.Xresources, вы можете внести
дополнительные I18N настройки приложений (настройки шрифтов,
меню и т.п.).Отображение шрифтовX11 True Type font serverУстановите сервер &xorg;
(x11-servers/xorg-server)
или &xfree86;
(x11-servers/XFree86-4-Server),
затем &truetype; шрифты для используемого языка.
После установки корректного
значения locale меню, сообщения и т.д. должны появиться на
соответствующем языке.Ввод не-англоязычных символовX11 Input Method (XIM)Протокол X11 Input Method (XIM) это новый стандарт для всех
клиентов X11. Все приложения X11 должны быть написаны как XIM
клиенты, получающие ввод с серверов XIM Input. Существует
несколько XIM серверов, доступных для различных языков.Настройка принтераНекоторые однобайтовые кодовые таблицы обычно поддерживаются
принтерами на аппаратном уровне. Расширенные, или
мультибайтовые кодовые таблицы требуют дополнительной настройки.
Мы рекомендуем использование apsfilter.
Кроме того, вы можете преобразовать документ в формат &postscript; или
PDF с помощью поддерживающих соответствующий язык программ.Ядро и файловые системыФайловая система FreeBSD (fast filesystem, FFS) поддерживает
8-битные символы, ее можно использовать с любой односимвольной
кодовой таблицей (см. &man.multibyte.3;), но кодовые таблицы не
хранятся в файловой системе; т.е. ей ничего не известно о порядке
расположения символов в кодовой таблице. Официально FFS пока
не поддерживает расширенные или много символьные кодовые таблицы.
Однако, для некоторых расширенных или многобайтовых кодировок есть
неофициальные патчи, включающие их поддержку в FFS. Это всего
лишь временные не переносимые решения или исправления кода и
мы решили не включать их в дерево исходных текстов. Обращайтесь
к сайтам по соответствующим языкам за дальнейшей информацией
и патчами.DOSUnicodeФайловая система &ms-dos; в FreeBSD может быть настроена для
поддержки перекодировки между &ms-dos;, кодовыми таблицами Unicode
и выбранной кодовой таблицей FreeBSD. Обращайтесь к
&man.mount.msdos.8; за подробностями.Компиляция I18N программМногие порты FreeBSD были созданы с поддержкой I18N. Некоторые
из них помечены символами -I18N в имени порта. Эти и многие другие
программы имеют встроенную поддержку I18N и не нуждаются в
специальной настройке.MySQLОднако, некоторые приложения, такие как
MySQL, требуют указания кодировки в
Makefile. Это обычно делается правкой
Makefile или передачей параметров
configure при сборке из исходных
текстов.Локализация FreeBSD для поддержки определенных языковAndreyChernovПервоначально предоставил Русский язык (кодировка KOI8-R)localizationRussianЗа дополнительной информацией о кодировке KOI8-R, обращайтесь к
странице KOI8-R References
(Russian Net Character Set).Настройка локализацииПоместите в ~/.login_conf следующие
строки:me:My Account:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:Обратитесь к вышеизложенному материалу этой главы за
соответствующей
информацией.Настройка консолиДля FreeBSD версий до 5.0 добавьте к файлу настройки
ядра следующую строку:options SC_MOUSE_CHAR=0x03Для FreeBSD версий 4.4 и выше вставьте следующую строку
в /etc/rc.conf:mousechar_start=3Используйте в /etc/rc.conf
такие настройки:keymap="ru.koi8-r"
scrnmap="koi8-r2cp866"
font8x16="cp866b-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8"Для каждого устройства ttyv* в файле
/etc/ttys, используйте
cons25r в качестве типа терминала.Обратитесь к вышеизложенному материалу этой главы за примерами
настройки консоли.Настройка принтерапринтерыБольшинство принтеров для России поставляются с аппаратной кодовой
страницей CP866, требуется специальный выходной фильтр для
перекодировки из KOI8-R в CP866. Такой фильтр устанавливается по
умолчанию в /usr/libexec/lpr/ru/koi2alt.
Запись для принтера в /etc/printcap должна
выглядеть приблизительно так:lp|Russian local line printer:\
:sh:of=/usr/libexec/lpr/ru/koi2alt:\
:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:Обратитесь к &man.printcap.5; за подробным описанием.&ms-dos; FS и русские имена файловСледующий пример записи в &man.fstab.5; включает поддержку
русских имен файлов при монтировании файловых систем &ms-dos;:/dev/ad0s2 /dos/c msdos rw,-Wkoi2dos,-Lru_RU.KOI8-R 0 0Параметр выбирает имя используемой
локализации, а параметр задает таблицу
перекодировки. При использовании параметра
убедитесь, что раздел /usr смонтирован перед
разделом &ms-dos;, поскольку таблицы перекодировки расположены
в каталоге
/usr/libdata/msdosfs. За более подробной
информацией обращайтесь к странице справочника
&man.mount.msdos.8;.Настройка X11Выполните сначала не-X
настройку локализации.
-
-
- Локализация KOI8-R
- может не работать со старыми релизами
- &xfree86; (ниже 3.3).
- На настоящий момент в FreeBSD в качестве системы X Window по
- умолчанию используется &xorg;.
- Поэтому если только вы не используете старые версии FreeBSD,
- это не должно стать проблемой.
- Если вы используете &xorg;,
установите пакет x11-fonts/xorg-fonts-cyrillic.Проверьте раздел "Files" в файле
/etc/X11/xorg.conf. Следующие строки
должны быть добавлены перед всеми
записями FontPath:FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/misc"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/75dpi"
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/100dpi"Если вы используете видеорежим с высоким разрешением,
поменяйте местами строки для 75 dpi и 100 dpi.Для настройки ввода на русском языке, добавьте
нижеприведенные строки в раздел
"Keyboard" файла
- XF86Config.
-
- Для &xfree86; 3.X:
-
- XkbLayout "ru"
-XkbOptions "grp:caps_toggle"
-
- Для &xorg; (или
- &xfree86; 4.X):
+ corg.conf:
Option "XkbLayout" "us,ru"
Option "XkbOptions" "grp:toggle"Убедитесь, что XkbDisable отключен
(закомментирован) в этом разделе.Для случая grp:caps_toggle переключателем
RUS/LAT служит CapsLock.
Прежняя функция CapsLock все еще доступна в комбинации
ShiftCapsLock
(только в режиме LAT).
При установке grp:toggle переключателем
RUS/LAT будет правая клавиша Alt. Режим
grp:caps_toggle по неустановленным причинам
не работает в &xorg;.Если на вашей клавиатуре есть клавиши &windows;,
и некоторые не-алфавитные клавиши работают неправильно в режиме
RUS, добавьте следующую строку в файл
- XF86Config.
-
- Для &xfree86; 3.X:
-
- XkbVariant "winkeys"
-
- Для &xorg; (или
- &xfree86; 4.X):
+ xorg.conf:
Option "XkbVariant" ",winkeys"
- Ввод на русском языке может может не работать со старыми
- версиями &xfree86;, прочтите
- предупреждение выше с
- более подробной информацией. Ввод на русском языке может
- также не работать с нелокализованными приложениями.
+ Ввод на русском языке может может не работать
+ с нелокализованными приложениями.Минимально локализованные приложения должны вызывать функцию
XtSetLanguageProc (NULL, NULL, NULL); в начале
программы.Обратитесь к KOI8-R for X Window за
дальнейшими инструкциями по локализации приложений X11.Локализация на традиционном китайском для Тайванялокализациятрадиционный китайскийУ проекта FreeBSD-Taiwan есть Chinese HOWTO для
FreeBSD по адресу
,
в котором используются многие порты на китайском.
На данный момент редактором FreeBSD Chinese HOWTO
является Shen Chuan-Hsing
statue@freebsd.sinica.edu.tw.
Chuan-Hsing Shen statue@freebsd.sinica.edu.tw
создал
Chinese FreeBSD Collection (CFC), используя FreeBSD-Taiwan
zh-L10N-tut. Пакеты и скрипты доступны по адресу
.Локализация на немецкий язык (для всех ISO 8859-1
языков)локализациянемецкийSlaven Rezic eserte@cs.tu-berlin.de написал
учебник по использованию umlauts в FreeBSD. Учебник написан
на немецком и доступен по адресу
.Локализация на японский и корейский языкилокализацияяпонскийлокализациякорейскийЗа информацией по японской локализации, обратитесь к
,
а за информацией о корейской локализацией к
.Не-англоязычная документация FreeBSDОтдельные контрибьюторы FreeBSD перевели части документации
FreeBSD на другие языки. Эти переводы доступны на основном сайте или из каталога
/usr/share/doc.
diff --git a/ru_RU.KOI8-R/books/handbook/linuxemu/chapter.sgml b/ru_RU.KOI8-R/books/handbook/linuxemu/chapter.sgml
index 31f50cfff1..fd795c8db2 100644
--- a/ru_RU.KOI8-R/books/handbook/linuxemu/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/linuxemu/chapter.sgml
@@ -1,3470 +1,3470 @@
JimMockРеструктурировал и частично обновил Brian N.HandyПервоначально предоставил RichMurpheyАлексейДокучаевПеревод на русский язык: ВалерийКравчукПеревод на русский язык и редактирование: Двоичная совместимость с LinuxКраткий обзорLinux - бинарная совместимостьдвоичная совместимостьLinuxFreeBSD предоставляет двоичную совместимость с несколькими другими
&unix;–подобными операционными системами, включая Linux.
Возможно, вы спрашиваете себя, зачем FreeBSD нужно уметь работать
с приложениями, написанными для Linux? Ответ на этот вопрос достаточно
прост: многие компании и разработчики производят программное
обеспечение только для Linux, так как эта операционная система очень
быстро завоевала огромную популярность в компьютерном мире.
Пользователям же FreeBSD приходится обращаться к этим компаниям и
разработчикам с просьбами выпустить версии своих программ специально
для FreeBSD. Проблема в том, что большинство производителей
программного обеспечения не осознают, насколько бы увеличился их рынок
сбыта, выпускай они также FreeBSD–версии, и продолжают разрабатывать
только под Linux. Что же делать пользователям FreeBSD? В этой
ситуации на помощь приходит двоичная совместимость FreeBSD с
Linux.Вкратце, эта совместимость позволяет пользователям FreeBSD
работать с 90% приложений для Linux без каких-либо модификаций
последних. Среди этих приложений:
&staroffice;, Linux–версия
&netscape;,
&adobe; &acrobat;,
RealPlayer,
VMware,
&oracle;, WordPerfect,
Doom, Quake,
и многие другие. Есть сведения, что в некоторых ситуациях эти
Linux–программы показывали более высокую производительность при
работе под FreeBSD, чем под Linux.Конечно, существуют некоторые особенности Linux, которые не
поддерживаются в полной мере под FreeBSD. Например, не будут
работать приложения Linux, использующие специфичные
вызовы &i386;, такие как переключение в виртуальный режим 8086.При чтении этой главы вы узнаете:Как включить двоичную совместимость с Linux в
вашей системе.Как установить дополнительные совместно используемые
(shared) библиотеки Linux.Как установить приложения Linux в систему FreeBSD.Детали реализации совместимости с Linux в ОС FreeBSD.Перед прочтением этой главы вам потребуется:Узнать как устанавливать дополнительное
программное обеспечение сторонних разработчиков
().УстановкаKLD (загружаемый объект ядра)Двоичная совместимость с Linux не включена по умолчанию.
Простейший способ включения этой функциональности заключается
в загрузке KLD–объекта linux (Kernel
LoaDable object). Вы можете загрузить этот модуль,
набрав следующее, как пользователь root:&prompt.root; kldload linuxЕсли вы хотите, чтобы совместимость с Linux была включена
постоянно, необходимо добавить в /etc/rc.conf
следующую строку:linux_enable="YES"Для проверки того, загружен ли модуль, может быть использована
команда &man.kldstat.8;:&prompt.user; kldstat
Id Refs Address Size Name
1 2 0xc0100000 16bdb8 kernel
7 1 0xc24db000 d000 linux.koпараметры ядраLINUXЕсли по какой-либо причине вы не хотите или не можете загрузить
KLD, вы можете статически включить поддержку Linux в ядро,
добавив опцию options COMPAT_LINUX в файл
конфигурации ядра. Затем соберите и установите новое ядро,
следуя описанию в .Установка необходимых библиотек LinuxLinuxустановка библиотек LinuxУстановить все требуемые библиотеки можно двумя путями: либо
используя порт linux_base,
либо установив их вручную.Установка с помощью порта linux_baseколлекция портовЭтот метод является самым простым, и мы рекомендуем
воспользоваться именно им. Процесс аналогичен установке любого
другого порта из Коллекции Портов.
Просто выполните следующие команды:&prompt.root; cd /usr/ports/emulators/linux_base
&prompt.root; make install distcleanТеперь вы можете работать с приложениями для Linux. Некоторые
программы, возможно, будут сообщать о несоответствии подверсий
некоторых системных библиотек. Однако обычно это не
вызывает каких-либо неудобств.Возможно наличие нескольких версий порта emulators/linux_base, соответствующих
различным версиям разных дистрибутивов Linux. Вы должны
установить порт, наиболее близко соответствующий требованиям
приложений Linux, которые будут установлены.Установка библиотек вручнуюЕсли у вас не установлена коллекция портов, можно
установить требуемые библиотеки вручную. Вам понадобятся
совместно используемые библиотеки для Linux, которые нужны программам, и
runtime–компоновщик. Вам также потребуется создать теневой
корневой каталог, /compat/linux, где
будут расположены Linux–библиотеки. Если Linux–программе нужно
загрузить какую–либо совместно используемую библиотеку, FreeBSD сперва будет
пытаться найти ее в этом дереве. Так, если программа загружает,
например, /lib/libc.so, FreeBSD попытается
открыть /compat/linux/lib/libc.so, и если
такого файла не существует, будет пытаться открыть
/lib/libc.so. Разделяемые библиотеки должны
находиться в теневом дереве, а не в каталогах, выдаваемых
загрузчиком Linux ld.so.Обычно вам придется добавлять совместно используемые библиотеки, от
которых зависят Linux–программы, только при нескольких первых
установках приложений Linux на вашу систему FreeBSD. По мере
работы, у вас в системе накопится достаточный набор совместно используемых
библиотек Linux для запуска новых Linux-программ без
дополнительных действий.Как установить дополнительные совместно используемые библиотекисовместно используемые библиотекиЧто, если при установленном linux_base
порте ваше приложение все равно сообщает об отсутствии необходимой
библиотеки? Как узнать, какая именно нужна библиотека и где ее
взять? В принципе, есть два способа. Вам необходимо иметь
привилегии пользователя root для их
осуществления.Если у вас есть доступ к машине, на которой установлен Linux,
узнайте, какие библиотеки использует Linux–приложение, и просто
скопируйте из на свою машину. Рассмотрим следующий пример:Допустим, вы скачали по FTP Linux–версию
Doom и установили ее на Linux–машине.
Вы можете узнать, какие совместно используемые библиотеки нужны
Doom, с помощью команды
ldd linuxdoom:&prompt.user; ldd linuxdoom
libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0
libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0
libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29символические ссылкиВам потребуются все файлы, перечисленные в последнем
столбце. Скопируйте их в дерево /compat/linux
на вашей системе, а также создайте символические ссылки на эти
файлы с именами из первого столбца, соответственно. В итоге,
у вас в системе FreeBSD должны быть следующие файлы:/compat/linux/usr/X11/lib/libXt.so.3.1.0
/compat/linux/usr/X11/lib/libXt.so.3 -> libXt.so.3.1.0
/compat/linux/usr/X11/lib/libX11.so.3.1.0
/compat/linux/usr/X11/lib/libX11.so.3 -> libX11.so.3.1.0
/compat/linux/lib/libc.so.4.6.29
/compat/linux/lib/libc.so.4 -> libc.so.4.6.29
Учтите, что если у вас уже есть совместно используемая библиотека
Linux с соответствующим первому столбцу результатов
ldd основным номером версии, вам не
обязательно копировать файл, указанный в последнем столбце,
в вашу систему. Уже существующий файл должен подойти.
Рекомендуется, однако, все равно скопировать совместно используемую
библиотеку, если ее версия новее. Предыдущую версию
библиотеки можно удалить, если вы создали символическую ссылку
на новую. Итак, если у вас в системе есть следующие
библиотеки:/compat/linux/lib/libc.so.4.6.27
/compat/linux/lib/libc.so.4 -> libc.so.4.6.27и какое-либо приложение требует библиотеку более поздней
версии, судя по результатам команды
ldd:libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29Если версии немного отличаются в последней цифре,
копировать /lib/libc.so.4.6.29
необязательно, так как программа, скорее всего, будет
нормально работать и с немного устаревшей версией.
Тем не менее, вы можете заменить
libc.so:/compat/linux/lib/libc.so.4.6.29
/compat/linux/lib/libc.so.4 -> libc.so.4.6.29
Символические ссылки важны только
для Linux–программ. Runtime–компоновщик FreeBSD
самостоятельно подберет правильные номера версий библиотек,
и вам не нужно об этом беспокоиться.
Установка двоичных файлов Linux ELFLinuxдвоичные файлы ELFДля ELF-файлов иногда требуется сделать так называемый
branding (маркировать его). Если попытаться
запустить не маркированный ELF-файл, вы получите следующее сообщение
об ошибке:&prompt.user; ./моя-linux-elf-программа
ELF binary type not known
AbortЧтобы помочь ядру FreeBSD отличить ELF-файл FreeBSD от
двоичного файла Linux, используется утилита &man.brandelf.1;:&prompt.user; brandelf -t Linux моя-linux-elf-программаGNU toolchainВ настоящее время набор инструментальных средств GNU
(GNU toolchain) помещает необходимую маркировочную информацию
в двоичные ELF-файлы автоматически, поэтому необходимость
в этом действии возникает всё реже.Конфигурирование распознавания имен хостовЕсли DNS не работает или вы получаете это сообщение:resolv+: "bind" is an invalid keyword resolv+:
"hosts" is an invalid keywordто вам нужно создать (изменить) файл
/compat/linux/etc/host.conf, содержащий:order hosts, bind
multi onТаким образом, вы указываете, то сначала производится поиск в
файле /etc/hosts, а только затем запрашивается
DNS. Когда файл /compat/linux/etc/host.conf
отсутствует, Linux–приложения находят файл
/etc/host.conf для FreeBSD и сообщают о
несовместимом синтаксисе. Если вы не настраивали сервер имен
с помощью файла /etc/resolv.conf, уберите
bind из файла
/compat/linux/etc/host.conf.BorisHollasОбновил для Mathematica 5.X Установка &mathematica;приложенияMathematicaНиже описано, как установить Linux–версию пакета
&mathematica; 5.X
на систему FreeBSD.Linux версия &mathematica;
или &mathematica; for Students
можно заказать непосредственно в компании Wolfram по адресу
.Использование установщика &mathematica;Сначала вы должны указать &os;, что Linux бинарники от
&mathematica; используют Linux
ABI. Самый простой путь сделать это—установить марку
ELF Linux по умолчанию для всех немаркированных двоичных
файлов с помощью команды:&prompt.root; sysctl kern.fallback_elf_brand=3&os; будет считать, что все немаркированные двоичные
ELF-файлы используют Linux ABI, и вы сможете
запустить MathInstaller прямо с CDROM.Теперь, скопируйте файл MathInstaller на
ваш жёсткий диск:&prompt.root; mount /cdrom
&prompt.root; cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/и в этом файле замените /bin/sh в
в первой строке на /compat/linux/bin/sh.
Этим мы убедимся, что установщик будет выполняться Linux
версией &man.sh.1;. Дальше, замените все вхождения
Linux) на FreeBSD) с
помощью текстового редактора или с помощью скрипта,
представленного ниже, в следующей главе. Это укажет
установщику &mathematica;,
вызывающему uname -s для определения
операционной системы, относиться к &os;, как к Linux
подобной операционной системе. Теперь, запуск
MathInstaller установит
&mathematica;.Modifying the &mathematica; ExecutablesСкрипты командной оболочки, которые
&mathematica; создала во
время установки, должны быть изменены перед тем, как
вы сможете использовать их. Если вы выбрали
/usr/local/bin в
качестве директории для помещения исполняемых файлов
&mathematica;, то вы обнаружите
в этом каталоге ссылки на файлы math,
mathematica, Mathematica, и
MathKernel. В каждом из них замените
Linux) на FreeBSD) с
помощью текстового редактора или с помощью следующего скрипта
командной оболочки:#!/bin/sh
cd /usr/local/bin
for i in math mathematica Mathematica MathKernel
do sed 's/Linux)/FreeBSD)/g' $i > $i.tmp
sed 's/\/bin\/sh/\/compat\/linux\/bin\/sh/g' $i.tmp > $i
rm $i.tmp
chmod a+x $i
doneПолучение пароля к пакету &mathematica;EthernetMAC-адресКогда вы запустите &mathematica;
в первый раз, у вас будет запрошен пароль. Если вы еще не получили
пароль от Wolfram, запустите программу mathinfo
в директории установки для получения вашего machine ID.
Этот machine ID основан исключительно на MAC адресе вашей первичной
Ethernet карты, так что, вы не сможете использовать вашу копию
&mathematica; на разных машинах.При регистрации по электронной почте, по телефону или по факсу
вы сообщаете machine ID, а в ответ
получаете пароль, состоящий из нескольких групп чисел.Использование интерфейса &mathematica; по сети&mathematica; использует специальные
шрифты для отображения некоторых символов, которые отсутствуют в
стандартных шрифтах (символы интегралов, сумм, греческий алфавит и
другие). Протокол X требует, чтобы эти шрифты были установлены
локально. Это означает, что вы должны
скопировать эти шрифты с компакт-диска или хоста, на котором
установлена &mathematica;, на вашу
машину. Обычно эти шрифты находятся в каталоге
/cdrom/Unix/Files/SystemFiles/Fonts
компакт-диска или в каталоге
/usr/local/mathematica/SystemFiles/Fonts на
диске. Собственно файлы со шрифтами находятся в подкаталогах
Type1 и X. О том, как их
использовать, читайте ниже.Можно просто скопировать их в один из существующих каталогов
шрифтов в каталоге /usr/X11R6/lib/X11/fonts.
В этом случае придётся отредактировать файл
fonts.dir, добавив в него названия шрифтов и
изменив число шрифтов в первой строке. Можно также запустить
программу &man.mkfontdir.1;, находясь в том каталоге,
куда вы скопировали шрифты.Есть альтернативный способ: скопировать каталоги в
/usr/X11R6/lib/X11/fonts:&prompt.root; cd /usr/X11R6/lib/X11/fonts
&prompt.root; mkdir X
&prompt.root; mkdir MathType1
&prompt.root; cd /cdrom/Unix/Files/SystemFiles/Fonts
&prompt.root; cp X/* /usr/X11R6/lib/X11/fonts/X
&prompt.root; cp Type1/* /usr/X11R6/lib/X11/fonts/MathType1
&prompt.root; cd /usr/X11R6/lib/X11/fonts/X
&prompt.root; mkfontdir
&prompt.root; cd ../MathType1
&prompt.root; mkfontdirТеперь добавьте каталоги с новыми шрифтами в путь к
шрифтам:&prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/X
&prompt.root; xset fp+ /usr/X11R6/lib/X11/fonts/MathType1
&prompt.root; xset fp rehashЕсли вы используете сервер &xorg;,
то можно просто прописать эти
каталоги в файле xorg.conf.Для сервера &xfree86;,
файл конфигурации XF86Config.шрифтыЕсли на вашем компьютере нет каталога
/usr/X11R6/lib/X11/fonts/Type1, замените
MathType1 на Type1 в
предыдущем примере.AaronKaplanПредоставил RobertGetschmannБлагодарности: Установка &maple;приложенияMaple&maple; — коммерческая
математическая программа, аналогичная
&mathematica;. Это программное обеспечение
надо купить у , а потом
зарегистрироваться там для получения файла лицензии. Для установки
этого программного обеспечения в ОС FreeBSD используется следующая
последовательность простых шагов.Выполните скрипт командного интерпретатора
INSTALL из дистрибутива. Выберите
опцию RedHat, когда будет предложено программой
установки. Обычно установка выполняется в каталог /usr/local/maple.Если вы этого ещё не сделали, купите лицензию на
&maple; в компании Maple Waterloo
Software ()
и скопируйте ее в файл
/usr/local/maple/license/license.dat.Установите диспетчер лицензий
FLEXlm, выполнив скрипт установки
INSTALL_LIC, входящий в состав
&maple;. Укажите основное имя хоста
вашей машины для сервера лицензий.Исправьте файл
/usr/local/maple/bin/maple.system.type
с помощью следующего патча: ----- snip ------------------
*** maple.system.type.orig Sun Jul 8 16:35:33 2001
--- maple.system.type Sun Jul 8 16:35:51 2001
***************
*** 72,77 ****
--- 72,78 ----
# the IBM RS/6000 AIX case
MAPLE_BIN="bin.IBM_RISC_UNIX"
;;
+ "FreeBSD"|\
"Linux")
# the Linux/x86 case
# We have two Linux implementations, one for Red Hat and
----- snip end of patch -----Учтите, что после "FreeBSD"|\ не должно
быть никаких пробелов.Этот патч заставляет &maple;
распознавать FreeBSD как тип Linux-системы.
Скрипт командного интерпретатора bin/maple
вызывает скрипт bin/maple.system.type,
который, в свою очередь, вызывает uname -a для
получения имени операционной системы. В зависимости от имени ОС
он определяет, какие двоичные модули использовать.Запустите сервер лицензий.Следующий скрипт, установленный в файл
/usr/local/etc/rc.d/lmgrd.sh, обеспечивает
удобный способ запуска lmgrd: ----- snip ------------
#! /bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/local/maple/bin:/usr/local/maple/FLEXlm/UNIX/LINUX
export PATH
LICENSE_FILE=/usr/local/maple/license/license.dat
LOG=/var/log/lmgrd.log
case "$1" in
start)
lmgrd -c ${LICENSE_FILE} 2>> ${LOG} 1>&2
echo -n " lmgrd"
;;
stop)
lmgrd -c ${LICENSE_FILE} -x lmdown 2>> ${LOG} 1>&2
;;
*)
echo "Usage: `basename $0` {start|stop}" 1>&2
exit 64
;;
esac
exit 0
----- snip ------------Выполните тестовый запуск
&maple;:&prompt.user; cd /usr/local/maple/bin
&prompt.user; ./xmapleПрограмма должна запуститься и работать. Не забудьте написать
в Maplesoft и сообщить, что хотели бы видеть версию специально
для FreeBSD!Типичные проблемыРаботать с диспетчером лицензий
FLEXlm может быть непросто.
Дополнительную документацию по нему можно найти на сайте .lmgrd очень требователен к
файлу лицензии и выдает дамп памяти при выявлении любых проблем.
Правильный файл лицензии должен иметь следующий вид:# =======================================================
# License File for UNIX Installations ("Pointer File")
# =======================================================
SERVER chillig ANY
#USE_SERVER
VENDOR maplelmg
FEATURE Maple maplelmg 2000.0831 permanent 1 XXXXXXXXXXXX \
PLATFORMS=i86_r ISSUER="Waterloo Maple Inc." \
ISSUED=11-may-2000 NOTICE=" Technische Universitat Wien" \
SN=XXXXXXXXXСерийный номер и ключ забиты символами 'X'.
chillig – имя хоста.Редактирование файла лицензий возможно, если только не
трогать строку FEATURE (которая защищена
лицензионным ключом).Установка &matlab;приложенияMATLABЭтот документ описывает процесс установки Linux-версии
&matlab; версии 6.5 на систему
&os;. Эта программа работает вполне нормально, за исключением
&java.virtual.machine; (см.
).Linux-версию &matlab; можно приобрести
непосредственно в компании The MathWorks на сайте . Не забудьте получить
файл лицензии или инструкции по его созданию. По ходу дела дайте
знать производителю, что хотели бы увидеть версию их ПО специально
для &os;.Процесс установки &matlab;Для установки &matlab; выполните
следующие шаги:Вставьте инсталляционный CD и смонтируйте его.
Станьте пользователем root, как рекомендует
скрипт установки. Для запуска скрипта установки наберите:&prompt.root; /compat/linux/bin/sh /cdrom/installЗапускается графический инсталлятор. Если вы получаете
сообщения о невозможности открыть дисплей, наберите
setenv HOME ~USER,
где USER – пользователь, от
имени которого выполнена команда &man.su.1;.
При запросе корневого каталога
&matlab;, наберите:
/compat/linux/usr/local/matlab.Чтобы упростить набор остальных команд в ходе установки,
выполните в командном интерпретаторе следующую команду:
set MATLAB=/compat/linux/usr/local/matlabОтредактируйте файл лицензии в соответствии с инструкциями
в полученной лицензии &matlab;.Этот файл можно подготовить заранее с помощью любого
текстового редактора и скопировать его в
$MATLAB/license.dat до того, как
инсталлятор попросит его отредактировать.Завершите процесс установки.В этот момент ваша установка &matlab;
завершена. Следующие шаги позволяют связать
эту программу с вашей системой &os;.Запуск диспетчера лицензийСоздайте символические ссылки для скриптов диспетчера
лицензий:&prompt.root; ln -s $MATLAB/etc/lmboot /usr/local/etc/lmboot_TMW
&prompt.root; ln -s $MATLAB/etc/lmdown /usr/local/etc/lmdown_TMWСоздайте файл запуска
/usr/local/etc/rc.d/flexlm.sh.
Представленный ниже пример – измененная версия входящего
в дистрибутив файла $MATLAB/etc/rc.lm.glnx86.
Изменены местонахождения файлов и диспетчер лицензий запускается
под эмулятором Linux.#!/bin/sh
case "$1" in
start)
if [ -f /usr/local/etc/lmboot_TMW ]; then
/compat/linux/bin/sh /usr/local/etc/lmboot_TMW -u username && echo 'MATLAB_lmgrd'
fi
;;
stop)
if [ -f /usr/local/etc/lmdown_TMW ]; then
/compat/linux/bin/sh /usr/local/etc/lmdown_TMW > /dev/null 2>&1
fi
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
;;
esac
exit 0Этот файл надо сделать выполняемым:&prompt.root; chmod +x /usr/local/etc/rc.d/flexlm.shВы также должны заменить username
именем пользователя в вашей системе (но не
root).Запустите диспетчер лицензий с помощью команды:&prompt.root; /usr/local/etc/rc.d/flexlm.sh startСвязь с &java; Runtime EnvironmentИзмените ссылку &java; Runtime
Environment (JRE) так, чтобы он ссылалась на версию, работающую
в &os;:&prompt.root; cd $MATLAB/sys/java/jre/glnx86/
&prompt.root; unlink jre; ln -s ./jre1.1.8 ./jreСоздание скрипта запуска &matlab;Поместите следующий скрипт запуска в файл
/usr/local/bin/matlab:
#!/bin/sh
/compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"Затем выполните команду
chmod +x /usr/local/bin/matlab.В зависимости от версии
emulators/linux_base, при
выполнении этого скрипта могут быть выданы сообщения об ошибках.
Чтобы избежать этого, отредактируйте файл
/compat/linux/usr/local/matlab/bin/matlab
и измените строку вида:if [ `expr "$lscmd" : '.*->.*'` -ne 0 ]; then(в версии 13.0.1 это строка 410) на следующую строку:if test -L $newbase; thenСоздание скрипта остановки &matlab;Следующие действия необходимы для решения проблемы с
некорректным завершением работы &matlab;.Создайте файл
$MATLAB/toolbox/local/finish.m и поместите
в него одну строку:! $MATLAB/bin/finish.sh$MATLAB — литерал.В том же каталоге находятся файлы
finishsav.m и
finishdlg.m, которые позволяют
сохранять рабочее пространство перед выходом. Если вы
используете любой из них, вставьте представленную выше
строку сразу после команды save.Создайте файл
$MATLAB/bin/finish.sh, который будет
содержать следующий скрипт:#!/usr/compat/linux/bin/sh
(sleep 5; killall -1 matlab_helper) &
exit 0Сделайте этот файл выполняемым:&prompt.root; chmod +x $MATLAB/bin/finish.shИспользование &matlab;В этот момент все готово для выполнения команды
matlab и начала использования этой программы.MarcelMoolenaarПредоставил Установка &oracle;приложенияOracleВведениеНиже описан процесс установки &oracle;
8.0.5 и &oracle; 8.0.5.1 Enterprise
Edition для Linux на систему FreeBSD.Установка Linux–средыУдостоверьтесь, что порты
emulators/linux_base и
devel/linux_devtools установлены
на вашей системе. Если у вас возникнут трудности с этими портами,
воспользуйтесь пакетами или более ранними их версиями из
Коллекции Портов.Если вы хотите использовать интеллектуальный агент (intelligent
agent), придется также установить пакет TCL от Red Hat:
tcl-8.0.3-20.i386.rpm. Универсальная команда
для установки пакетов с помощью официального порта
RPM
(archivers/rpm):&prompt.root; rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm пакетУстановка этого пакета должна
пройти без каких-либо ошибок.Создание среды &oracle;Прежде чем вы сможете установить
&oracle;, необходимо настроить
соответствующую среду. В этом документе описано, что
специально нужно сделать, чтобы запустить
&oracle; для Linux под FreeBSD –
это не пересказ официального руководства по установке
&oracle;.Настройка ядранастройка ядраКак описано в руководстве по установке
&oracle;, необходимо
установить максимальный размер совместно используемой (shared) памяти. Не используйте
SHMMAX под FreeBSD. SHMMAX
просто вычисляется, исходя из SHMMAXPGS и
PGSIZE. Следовательно, нужно задавать
SHMMAXPGS. За информацией о прочих опциях
обратитесь к официальному руководству. Пример настроек:options SHMMAXPGS=10000
options SHMMNI=100
options SHMSEG=10
options SEMMNS=200
options SEMMNI=70
options SEMMSL=61Установите эти опции в зависимости от того, как и для чего
вы будете использовать &oracle;.Не забудьте добавить следующие строки в файл конфигурации
ядра:options SYSVSHM # совместно используемая память SysV
options SYSVSEM # семафоры SysV
options SYSVMSG # межпроцессное взаимодействие SysVУчетная запись &oracle;Создайте специальную учетную запись
oracle, как и любую другую учетную запись.
Единственное отличие в том, что для oracle
необходимо указать командный интерпретатор Linux.
Добавьте /compat/linux/bin/bash в
/etc/shells и установите для
oracle командный интерпретатор
/compat/linux/bin/bash.Переменные средыКроме стандартных переменных среды
&oracle;, таких как
ORACLE_HOME и ORACLE_SID, вам нужно
будет установить следующие переменные среды:ПеременнаяЗначениеLD_LIBRARY_PATH$ORACLE_HOME/libCLASSPATH$ORACLE_HOME/jdbc/lib/classes111.zipPATH/compat/linux/bin
/compat/linux/sbin
/compat/linux/usr/bin
/compat/linux/usr/sbin
/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
$ORACLE_HOME/binЖелательно устанавливать все переменные среды в файле
.profile. Вот реальный пример:ORACLE_BASE=/oracle; export ORACLE_BASE
ORACLE_HOME=/oracle; export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH
ORACLE_SID=ORCL; export ORACLE_SID
ORACLE_TERM=386x; export ORACLE_TERM
CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip
export CLASSPATH
PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin
PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
export PATHУстановка &oracle;Из-за небольшой несовместимости с Linux–эмулятором, вам нужно
будет создать подкаталог .oracle в каталоге
/var/tmp прежде, чем можно будет начать
установку. Сделайте ее владельцем пользователя
oracle.
Если вы все сделали правильно, то установка
&oracle; должна пройти без проблем. Если
какие-либо трудности все же возникли, проверьте еще раз все
конфигурационные файлы и/или целостность дистрибутива
&oracle;. После окончания установки
&oracle; примените патчи,
описанные в следующих двух подразделах.Одна из часто возникающих проблем — неправильно
установленный адаптер TCP-протокола. В результате, невозможно
запустить процессы прослушивания TCP. Вот решение проблемы:&prompt.root; cd $ORACLE_HOME/network/lib
&prompt.root; make -f ins_network.mk ntcontab.o
&prompt.root; cd $ORACLE_HOME/lib
&prompt.root; ar r libnetwork.a ntcontab.o
&prompt.root; cd $ORACLE_HOME/network/lib
&prompt.root; make -f ins_network.mk installНе забудьте повторно запустить root.sh!Изменение root.shПри установке &oracle;
необходимо выполнить некоторые действия от имени
пользователя root. Они записаны в
скрипте командного интерпретатора root.sh,
который находится в каталоге orainst.
Перед запуском, примените к нему следующий патч (исправляет
местонахождение утилиты chown), либо запускайте его в командном
интерпретаторе Linux.*** orainst/root.sh.orig Tue Oct 6 21:57:33 1998
--- orainst/root.sh Mon Dec 28 15:58:53 1998
***************
*** 31,37 ****
# This is the default value for CHOWN
# It will redefined later in this script for those ports
# which have it conditionally defined in ss_install.h
! CHOWN=/bin/chown
#
# Define variables to be used in this script
--- 31,37 ----
# This is the default value for CHOWN
# It will redefined later in this script for those ports
# which have it conditionally defined in ss_install.h
! CHOWN=/usr/sbin/chown
#
# Define variables to be used in this scriptЕсли вы устанавливаете &oracle;
не с компакт–диска, можно изменить исходный файл
root.sh. Он называется
rthd.sh и находится в каталоге
orainst.Изменение genclntshСкрипт genclntsh используется для того,
чтобы создать единую совместно используемую клиентскую библиотеку,
которая используется для создания демонстраций. Примените
следующий патч, чтобы закомментировать определение переменной
PATH:*** bin/genclntsh.orig Wed Sep 30 07:37:19 1998
--- bin/genclntsh Tue Dec 22 15:36:49 1998
***************
*** 32,38 ****
#
# Explicit path to ensure that we're using the correct commands
#PATH=/usr/bin:/usr/ccs/bin export PATH
! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
#
# each product MUST provide a $PRODUCT/admin/shrept.lst
--- 32,38 ----
#
# Explicit path to ensure that we're using the correct commands
#PATH=/usr/bin:/usr/ccs/bin export PATH
! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
#
# each product MUST provide a $PRODUCT/admin/shrept.lstЗапуск &oracle;Теперь, если вы все сделали правильно, то можете использовать
&oracle; так же, как и в системе
Linux.HolgerKippПредоставил ValentinoVaschettoИсходную версию преобразовал в SGML Установка &sap.r3;приложенияSAP R/3Инсталляции систем &sap; на базе FreeBSD
не будут поддерживаться службой поддержки &sap; — они
предоставляют поддержку только на сертифицированных платформах.ПредисловиеЭтот документ описывает возможный способ установки системы
&sap.r3; с
СУБД &oracle; Database на машине с ОС
FreeBSD, включая установку FreeBSD и
&oracle;. Будут описаны две
разные конфигурации:&sap.r3; 4.6B (IDES) с
&oracle; 8.0.5 на FreeBSD 4.3-STABLE&sap.r3; 4.6C с
&oracle; 8.1.7 на FreeBSD 4.5-STABLEХотя в этом документе мы пытаемся подробно описать все важные
шаги, он не заменяет руководства по установке
&oracle; и
&sap.r3;.По специфическим вопросам &sap; и
&oracle; обратитесь к документации,
поставляемой в составе &sap.r3;
Linux edition, а также к другим источникам информации об
&oracle; и
&sap; OSS.Программное обеспечениеДля установки &sap; были использованы
следующие диски CD-ROM:&sap.r3; 4.6B, &oracle; 8.0.5ИмяНомерОписаниеKERNEL51009113SAP Kernel Oracle /
Installation / AIX, Linux, SolarisRDBMS51007558Oracle / RDBMS 8.0.5.X /
LinuxEXPORT151010208IDES / DB-Export /
Диск 1 из 6EXPORT251010209IDES / DB-Export /
Диск 2 из 6EXPORT351010210IDES / DB-Export /
Диск 3 из 6EXPORT451010211IDES / DB-Export /
Диск 4 из 6EXPORT551010212IDES / DB-Export /
Диск 5 из 6EXPORT651010213IDES / DB-Export /
Диск 6 из 6Кроме того, мы использовали CD &oracle; 8
Server (Опытная версия 8.0.5 для Linux,
ядро версии 2.0.33), который не обязательно понадобится, и
FreeBSD 4.3-STABLE (она вышла всего через несколько дней после 4.3
RELEASE).&sap.r3; 4.6C SR2, &oracle; 8.1.7ИмяНомерОписаниеKERNEL51014004SAP Kernel Oracle /
SAP Kernel Version 4.6D / DEC, LinuxRDBMS51012930Oracle 8.1.7/ RDBMS /
LinuxEXPORT151013953Release 4.6C SR2 / Export
/ Диск 1 из 4EXPORT151013953Release 4.6C SR2 / Export
/ Диск 2 из 4EXPORT151013953Release 4.6C SR2 / Export
/ Диск 3 bp 4EXPORT151013953Release 4.6C SR2 / Export
/ Диск 4 из 4LANG151013954Release 4.6C SR2 /
Language / DE, EN, FR / Диск 1 из 3В зависимости от языков, которые необходимо установить,
могут потребоваться дополнительные CD. Здесь мы использовали
только немецкий и английский языки, поэтому потребовался только
первый языковой CD. Обратите внимание, что номера всех
EXPORT CD идентичны. Все три языковых CD тоже имеют один номер
(это отличается от нумерации CD в версии 4.6B IDES). На момент
написания этого раздела (20.03.2002) установленное ПО работало
на FreeBSD 4.5-STABLE.Примечания по &sap;Прочитайте следующие документы перед установкой
&sap.r3; — они пригодятся в ходе
установки:&sap.r3; 4.6B, &oracle; 8.0.5НомерНазвание0171356SAP Software on Linux: Essential
Comments0201147INST: 4.6C R/3 Inst. on UNIX -
Oracle0373203Update / Migration Oracle 8.0.5 -->
8.0.6/8.1.6 LINUX0072984Release of Digital UNIX 4.0B for
Oracle0130581R3SETUP step DIPGNTAB terminates0144978Your system has not been installed
correctly0162266Questions and tips for R3SETUP on Windows
NT / W2K&sap.r3; 4.6C, &oracle; 8.1.7НомерНазвание0015023Initializing table TCPDB (RSXP0004)
(EBCDIC)0045619R/3 with several languages or
typefaces0171356SAP Software on Linux: Essential
Comments0195603RedHat 6.1 Enterprise version:
Known problems0212876The new archiving tool SAPCAR0300900Linux: Released DELL Hardware0377187RedHat 6.2: important remarks0387074INST: R/3 4.6C SR2 Installation on
UNIX0387077INST: R/3 4.6C SR2 Inst. on UNIX -
Oracle0387078SAP Software on UNIX: OS Dependencies
4.6C SR2Требования к аппаратному обеспечениюСледующего оборудования достаточно для установки
&sap.r3; System. Для производственного
использования необходима более точная оценка параметров:Компонент4.6B4.6CПроцессор2 x 800MHz &pentium; III2 x 800MHz &pentium; IIIПамять1GB ECC2GB ECCОбъем дисков50-60GB (IDES)50-60GB (IDES)Для производственного использования рекомендуются процессоры
&xeon; с большим кешем, высокоскоростной доступ к дискам (SCSI,
аппаратный RAID-контроллер), USV и ECC-RAM. Большой объем дискового
пространства связан с заранее сконфигурированной системой IDES,
которая создает 27 Гбайт файлов базы данных по ходу установки.
Этого пространства также достаточно для исходных производственных
систем и прикладных данных.&sap.r3; 4.6B, &oracle; 8.0.5Было использовано следующее стандартное оборудование:
двухпроцессорная материнская плата с двумя процессорами
&pentium; III 800 MHz, SCSI-контроллером &adaptec; 29160
Ultra160 (для работы с 40/80 Гбайт стримером DLT и приводом
CDROM), &mylex; &acceleraid; (2 канала, firmware 6.00-1-00 с
32 Мбайт RAM). К RAID-контроллеру &mylex; подключены два диска
по 17 Гбайт (зеркалированы) и четыре диска по 36 Гбайт
(RAID уровня 5).&sap.r3; 4.6C, &oracle; 8.1.7Для этой установки был использован &dell; &poweredge; 2500:
двухпроцессорная плата с двумя процессорами &pentium; III
1000 MHz (256 Кбайт кэш), 2 Гбайта PC133 ECC SDRAM,
PERC/3 DC PCI RAID-контроллер со 128 Мбайтами и приводом
EIDE DVD-ROM. К RAID-контроллеру подключены два диска по
18 Гбайт (зеркалированы) и четыре диска по 36 Гбайт
(RAID уровня 5).Установка FreeBSDСначала надо установить FreeBSD. Есть несколько способов сделать
это (FreeBSD 4.3 была установлена по FTP,
FreeBSD 4.5 — непосредственно с RELEASE CD); подробнее
см. .Компоновка дисковДля простоты диски при установке
&sap.r3; 46B и &sap.r3; 46C
SR2 использовались одинаково. Изменились только
имена устройств, поскольку установка выполнялась на разное
оборудование (/dev/da и
/dev/amr, соответственно, так что при
использовании AMI &megaraid; будут задействованы устройства
/dev/amr0s1a вместо /dev/da0s1a):Файловая системаРазмер (в блока по 1 Кбайту)Размер (Гбайт)Смонтирована в/dev/da0s1a1.016.3031//dev/da0s1b6swap/dev/da0s1e2.032.6232/var/dev/da0s1f8.205.3398/usr/dev/da1s1e45.734.36145/compat/linux/oracle/dev/da1s1f2.032.6232/compat/linux/sapmnt/dev/da1s1g2.032.6232/compat/linux/usr/sapКонфигурируем и инициализируем заранее два логических диска
с помощью ПО RAID &mylex; или PERC/3. Программы конфигурирования
можно запустить в ходе загрузки BIOS.Обратите внимание, что использованная компоновка дисков
немного отличается от рекомендованной &sap;, поскольку &sap;
рекомендует монтировать подкаталоги
&oracle; (и некоторые другие)
отдельно — мы решили просто создать подкаталоги.make world и новое ядроЗагрузите последние исходные коды ветки -STABLE. Пересоздайте
систему и ваше специализированное ядро после необходимых изменений
в файле конфигурации ядра. В него надо включить
параметры ядра, требуемые
для &sap.r3; и
&oracle;.Установка среды LinuxУстановка базовой системы LinuxСначала необходимо установить порт
linux_base
(от имени пользователя root):&prompt.root; cd /usr/ports/emulators/linux_base
&prompt.root; make install distcleanУстановка среды разработки LinuxСреда разработки Linux необходима, если вы хотите установить
&oracle; в ОС FreeBSD, как описано в
:&prompt.root; cd /usr/ports/devel/linux_devtools
&prompt.root; make install distcleanСреда разработки Linux была установлена только для
&sap.r3; 46B IDES. Она не нужна, если
сервер &oracle; не перекомпоновывается
в системе FreeBSD. Именно так и происходит, если вы используете
tar-архив (tarball) &oracle; с
Linux-системы.Установка необходимых пакетов RPMRPMДля запуска программы R3SETUP необходима
поддержка модулей PAM. В ходе первой установки
&sap; на ОС FreeBSD 4.3-STABLE мы
попытались установить PAM со всеми необходимыми пакетами и,
в конце концов, принудительно установили пакет PAM, что и
сработало. Для &sap.r3; 4.6C SR2 мы
сразу принудительно установили PAM RPM, что тоже сработало,
так что похоже, что пакеты, от которых декларирована зависимость,
не нужны:&prompt.root; rpm -i --ignoreos --nodeps --root /compat/linux --dbpath /var/lib/rpm \
pam-0.68-7.i386.rpmЧтобы &oracle; 8.0.5 мог запустить
интеллектуального агента, нам также пришлось установить пакет
RedHat Tcl tcl-8.0.5-30.i386.rpm (иначе
перекомпоновка в ходе установки &oracle;
не выполнится). Есть и другие проблемы с перекомпоновкой
&oracle;, но это проблема
&oracle; на Linux, не связанная с
особенностями FreeBSD.Дополнительные советыМожет также иметь смысл добавить linprocfs
в /etc/fstab; подробнее об этом см. на
странице справочника &man.linprocfs.5;. Еще можно установить
параметр kern.fallback_elf_brand=3 в файле
/etc/sysctl.conf.Создание среды &sap.r3;Создание необходимых файловых систем и точек монтированияДля простой установки достаточно создать следующие файловые
системы:точка монтированияразмер в Гбайтах/compat/linux/oracle45 GB/compat/linux/sapmnt2 GB/compat/linux/usr/sap2 GBТакже необходимо создать несколько ссылок. В противном случае,
инсталлятор &sap; будет выдавать
сообщения об ошибках, поскольку он проверяет созданные ссылки:&prompt.root; ln -s /compat/linux/oracle /oracle
&prompt.root; ln -s /compat/linux/sapmnt /sapmnt
&prompt.root; ln -s /compat/linux/usr/sap /usr/sapВозможные сообщения об ошибках в ходе установки (в данном
случае, для установки System PRD и
&sap.r3; 4.6C SR2):INFO 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:200
Checking existence of symbolic link /usr/sap/PRD/SYS/exe/dbg to
/sapmnt/PRD/exe. Creating if it does not exist...
WARNING 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:400
Link /usr/sap/PRD/SYS/exe/dbg exists but it points to file
/compat/linux/sapmnt/PRD/exe instead of /sapmnt/PRD/exe. The
program cannot go on as long as this link exists at this
location. Move the link to another location.
ERROR 2002-03-19 16:45:36 R3LINKS_IND_IND Ins_SetupLinks:0
can not setup link '/usr/sap/PRD/SYS/exe/dbg' with content
'/sapmnt/PRD/exe'Создание пользователей и каталоговДля системы &sap.r3; необходимы два
пользователя и три группы. Имена пользователей зависят от
идентификатора системы &sap; (SID),
который состоит из трех букв. Некоторые из этих идентификаторов
зарезервированы &sap; (например,
SAP и NIX. Полный
список см. в документации &sap;).
Для установки IDES мы использовали IDS,
а для установки 4.6C SR2 — PRD, поскольку
эта система предназначалась для промышленного использования.
Поэтому нам понадобились следующие группы (идентификаторы групп
могут отличаться, мы просто указали наши значения, использованные
при установке):идентификатор группыимя группыописание100dbaАдминистратор базы данных101sapsysСистема &sap;102operОператор базы данныхДля стандартной установки
&oracle; используется только группа
dba. В качестве группы
oper используется та же группа
dba (подробнее об этом см. в
документации &oracle; и
&sap;).Нам также нужны следующие пользователи:идентификатор пользователяимя пользователяобщий вид именигруппадополнительные группыописание1000idsadm/prdadmsidadmsapsysoperАдминистратор &sap;1002oraids/oraprdorasiddbaoperАдминистратор &oracle;Добавление пользователей с помощью &man.adduser.8;
требует следующих параметров для Администратора &sap;
(обратите внимание на командный интерпретатор и начальный
каталог):Name: sidadm
Password: ******
Fullname: SAP Administrator SID
Uid: 1000
Gid: 101 (sapsys)
Class:
Groups: sapsys dba
HOME: /home/sidadm
Shell: bash (/compat/linux/bin/bash)а для Администратора &oracle;:Name: orasid
Password: ******
Fullname: Oracle Administrator SID
Uid: 1002
Gid: 100 (dba)
Class:
Groups: dba
HOME: /oracle/sid
Shell: bash (/compat/linux/bin/bash)Для него также надо указать группу
oper, если вы используете обе группы,
dba и oper.Создание каталоговЭти каталоги обычно создаются в отдельных файловых системах.
Впрочем, все зависит от ваших требований. Мы решили создавать их
как обычные каталоги, поскольку в любом случае они находятся на
одном массиве RAID 5:Сначала мы установим владельцев и права для ряда каталогов (от
имени пользователя root):&prompt.root; chmod 775 /oracle
&prompt.root; chmod 777 /sapmnt
&prompt.root; chown root:dba /oracle
&prompt.root; chown sidadm:sapsys /compat/linux/usr/sap
&prompt.root; chmod 775 /compat/linux/usr/sapЗатем, мы создадим каталоги от имени пользователя
orasid. Все они
будут размещены в каталоге
/oracle/SID:&prompt.root; su - orasid
&prompt.root; cd /oracle/SID
&prompt.root; mkdir mirrlogA mirrlogB origlogA origlogB
&prompt.root; mkdir sapdata1 sapdata2 sapdata3 sapdata4 sapdata5 sapdata6
&prompt.root; mkdir saparch sapreorg
&prompt.root; exitДля установки &oracle; 8.1.7
потребуется несколько дополнительных каталогов:&prompt.root; su - orasid
&prompt.root; cd /oracle
&prompt.root; mkdir 805_32
&prompt.root; mkdir client stage
&prompt.root; mkdir client/80x_32
&prompt.root; mkdir stage/817_32
&prompt.root; cd /oracle/SID
&prompt.root; mkdir 817_32Каталог client/80x_32 должен иметь
точно такое имя. Не заменяйте x числом или
другим символом.На третьем шаге мы создаем каталоги от имени пользователя
sidadm:&prompt.root; su - sidadm
&prompt.root; cd /usr/sap
&prompt.root; mkdir SID
&prompt.root; mkdir trans
&prompt.root; exitЗаписи в файле /etc/servicesДля системы &sap.r3; необходим ряд
записей в файле /etc/services, которые не
будут правильно созданы при установке под FreeBSD. Пожалуйста,
добавьте следующие записи (потребуются, по крайней мере, записи,
соответствующие номеру экземпляра — в данном случае,
00. Не повредит добавить все записи, от
00 до 99, для
dp, gw, sp
и ms). Если вы собираетесь использовать
SAProuter или вам необходим доступ к
&sap; OSS, потребуется также запись для
99, поскольку порт 3299 обычно используется
для процесса SAProuter в целевой
системе:
sapdp00 3200/tcp # SAP Dispatcher. 3200 + Instance-Number
sapgw00 3300/tcp # SAP Gateway. 3300 + Instance-Number
sapsp00 3400/tcp # 3400 + Instance-Number
sapms00 3500/tcp # 3500 + Instance-Number
sapmsSID 3600/tcp # SAP Message Server. 3600 + Instance-Number
sapgw00s 4800/tcp # SAP Secure Gateway 4800 + Instance-NumberНеобходимые локалилокальСистеме &sap; нужны, по крайней
мере, две локали, не входящие в стандартную установку RedHat.
&sap; предлагает необходимые пакеты RPM для загрузки со своего
FTP-сервера (который доступен только для клиентов с доступом к
OSS). См. список необходимых пакетов RPM в заметке
0171356.Можно также просто создать соответствующие ссылки
(например, с de_DE и
en_US), но мы не рекомендуем это для
производственной системы (хотя это и сработало для системы
IDES безо всяких проблем). Необходимы следующие локали:
- de_DE.ISO8859-1
-en_US.ISO8859-1
+ de_DE.ISO-8859-1
+en_US.ISO-8859-1Создайте ссылки следующим образом:&prompt.root; cd /compat/linux/usr/share/locale
-&prompt.root; ln -s de_DE de_DE.ISO8859-1
-&prompt.root; ln -s en_US en_US.ISO8859-1
+&prompt.root; ln -s de_DE de_DE.ISO-8859-1
+&prompt.root; ln -s en_US en_US.ISO-8859-1Если их не будет, в ходе установки возникнет ряд проблем.
Если их просто проигнорировать (установив STATUS
для соответствующих шагов равным OK в файле
CENTRDB.R3S), нельзя будет зарегистрироваться
в системе &sap; без дополнительных
усилий.Настройка ядранастройка ядраСистемам &sap.r3; надо много
ресурсов. Поэтому мы добавили следующие параметры в файл
конфигурации ядра:# Для пожирателей памяти (SAP и Oracle):
options MAXDSIZ="(1024*1024*1024)"
options DFLDSIZ="(1024*1024*1024)"
# Необходимые опции System V.
options SYSVSHM #совместно используемая память в стиле SYSV
options SHMMAXPGS=262144 #макс. количество страниц совместно используемой
#options SHMMAXPGS=393216 #use this for the 46C inst.parameters
options SHMMNI=256 #макс. количество идентификаторов совместно используемой
options SHMSEG=100 #макс. количество сегментов разд. памяти на процесс
options SYSVMSG #очереди сообщений в стиле SYSV
options MSGSEG=32767 #макс. количество сегментов сообщений в системе
options MSGSSZ=32 #размер сегмента сообщений. ДОЛЖЕН быть степенью 2
options MSGMNB=65535 #макс. символов на очередь сообщений
options MSGTQL=2046 #макс. количество сообщений в системе
options SYSVSEM #семафоры в стиле SYSV
options SEMMNU=256 #количество структур UNDO семафоров
options SEMMNS=1024 #количество семафоров в системе
options SEMMNI=520 #количество идентификаторов семафоров
options SEMUME=100 #количество ключей UNDOМинимальные значения указаны в документации, поставляемой
вместе с &sap;. Поскольку описания для Linux нет, дополнительную
информацию см. в разделе HP-UX (32-bit). Поскольку в системе, на
которую устанавливалась версия 4.6C SR2, оперативной памяти больше, сегменты совместно используемой можно сделать больше как для
&sap;, так и для
&oracle;, поэтому задайте большее
количество страниц совместно используемой памяти.При стандартной установке FreeBSD 4.5 на &i386;,
задайте значения MAXDSIZ и DFLDSIZ не более 1 Гбайта. В противном
случае могут выдаваться странные ошибки вроде
ORA-27102: out of memory и
Linux Error: 12: Cannot allocate
memory.Установка &sap.r3;Подготовка дисков CDROM &sap;В ходе установки придется монтировать и демонтировать
много дисков CDROM. При наличии достаточного количества приводов
CDROM, можно смонтировать их все. Мы же решили скопировать
содержимое дисков CDROM в соответствующие каталоги:/oracle/SID/sapreorg/имя_cdгде имя_cd — одно из следующих
KERNEL,
RDBMS, EXPORT1,
EXPORT2, EXPORT3,
EXPORT4, EXPORT5 и
EXPORT6 для установки 4.6B/IDES, и
KERNEL, RDBMS,
DISK1, DISK2,
DISK3, DISK4 и
LANG для установки 4.6C SR2. Все имена
файлов на смонтированных дисках должны быть в верхнем регистре,
в противном случае, используйте при монтировании опцию
. Поэтому используйте следующие команды:&prompt.root; mount_cd9660 -g /dev/cd0a /mnt
&prompt.root; cp -R /mnt/* /oracle/SID/sapreorg/имя_cd
&prompt.root; umount /mntЗапуск скрипта установкиСначала надо подготовить каталог install:&prompt.root; cd /oracle/SID/sapreorg
&prompt.root; mkdir install
&prompt.root; cd installЗатем запускается скрипт установки, который скопирует почти
все необходимые файлы в каталог
install:&prompt.root; /oracle/SID/sapreorg/KERNEL/UNIX/INSTTOOL.SHДистрибутив IDES (4.6B) включает полностью настроенную
демонстрационную систему &sap.r3;, поэтому он включает шесть
дисков EXPORT CD, а не три. В этот момент шаблон установки
CENTRDB.R3S предназначен для установки
стандартного центрального экземпляра
(&r3; и базы данных), а не для
установки центрального экземпляра IDES, поэтому необходимо
скопировать соответствующий файл CENTRDB.R3S
из каталога EXPORT1, иначе
команда R3SETUP запросит только три диска
EXPORT CDs.Более новый релиз &sap; 4.6C SR2
включает четыре диска EXPORT CD. Шаги установки определяет файл
параметров CENTRAL.R3S. В отличие от
прежних релизов, больше нет отдельных шаблонов установки для
центрального экземпляра с базой данных или без нее.
&sap; использует отдельный шаблон для
установки базы данных. Для перезапуска установки в дальнейшем,
однако, достаточно перезапустить исходный файл.В ходе установки и после нее &sap;
требует, чтобы команда hostname возвращала
только имя компьютера, не уточнённое именем домена. Поэтому либо
задайте имя хоста в соответствии с этим требованием, либо
настройте псевдоним с помощью команды
alias hostname='hostname -s' для пользователей
orasid и
sidadm (и для
пользователя root, про крайней мере,
в ходе шагов по установке, выполняемых от имени
root). Можно также изменить
файлы .profile и .login
для обоих пользователей, которые создаются в ходе установки
&sap;.Запуск R3SETUP 4.6BПроверьте, что переменная среды LD_LIBRARY_PATH
установлена правильно:&prompt.root; export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/libВыполните команду R3SETUP от имени
пользователя root из каталога установки:&prompt.root; cd /oracle/IDS/sapreorg/install
&prompt.root; ./R3SETUP -f CENTRDB.R3SСкрипт затем задает ряд вопросов (стандартные ответы даны
в скобках, а затем представлены реальные ответы):ВопросСтандартное значениеОтветEnter SAP System ID[C11]IDSEnterEnter SAP Instance Number[00]EnterEnter SAPMOUNT Directory[/sapmnt]EnterEnter name of SAP central host[troubadix.domain.de]EnterEnter name of SAP db host[troubadix]EnterSelect character set[1] (WE8DEC)EnterEnter Oracle server version (1) Oracle 8.0.5, (2) Oracle 8.0.6, (3) Oracle 8.1.5, (4) Oracle 8.1.61EnterExtract Oracle Client archive[1] (Yes, extract)EnterEnter path to KERNEL CD[/sapcd]/oracle/IDS/sapreorg/KERNELEnter path to RDBMS CD[/sapcd]/oracle/IDS/sapreorg/RDBMSEnter path to EXPORT1 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT1Directory to copy EXPORT1 CD[/oracle/IDS/sapreorg/CD4_DIR]EnterEnter path to EXPORT2 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT2Directory to copy EXPORT2 CD[/oracle/IDS/sapreorg/CD5_DIR]EnterEnter path to EXPORT3 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT3Directory to copy EXPORT3 CD[/oracle/IDS/sapreorg/CD6_DIR]EnterEnter path to EXPORT4 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT4Directory to copy EXPORT4 CD[/oracle/IDS/sapreorg/CD7_DIR]EnterEnter path to EXPORT5 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT5Directory to copy EXPORT5 CD[/oracle/IDS/sapreorg/CD8_DIR]EnterEnter path to EXPORT6 CD[/sapcd]/oracle/IDS/sapreorg/EXPORT6Directory to copy EXPORT6 CD[/oracle/IDS/sapreorg/CD9_DIR]EnterEnter amount of RAM for SAP + DB850Enter (in Megabytes)Service Entry Message Server[3600]EnterEnter Group-ID of sapsys[101]EnterEnter Group-ID of oper[102]EnterEnter Group-ID of dba[100]EnterEnter User-ID of sidadm[1000]EnterEnter User-ID of orasid[1002]EnterNumber of parallel procs[2]EnterЕсли вы не скопировали диски в разные каталоги,
инсталлятор &sap; не сможет найти
необходимые CD (идентифицируемые файлом
LABEL.ASC на диске) и попросит затем
вставить и смонтировать CD, и подтвердить или ввести точку
его монтирования.Файл CENTRDB.R3S может содержать
ошибки. В нашем случае, он снова запросил EXPORT4 CD, но
указал корректный ключ (6_LOCATION, затем 7_LOCATION и т.д.),
так что, можно просто продолжать вводить корректные
значения.За исключением нескольких упомянутых ниже проблем, все
должно идти нормально до момента, когда придется устанавливать
программное обеспечение для работы с базой данных &oracle;.Запуск R3SETUP 4.6C SR2Проверьте, что переменная среды LD_LIBRARY_PATH
установлена правильно. Это значение отличается от использованного
при установке версии 4.6B с
&oracle; 8.0.5:&prompt.root; export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/libВыполните команду R3SETUP от имени
пользователя root из каталога установки:&prompt.root; cd /oracle/PRD/sapreorg/install
&prompt.root; ./R3SETUP -f CENTRAL.R3SСкрипт затем задаст ряд вопросов (стандартные значения
даны в скобках, а затем идут реальные ответы):ВопросСтандартное значениеОтветEnter SAP System ID[C11]PRDEnterEnter SAP Instance Number[00]EnterEnter SAPMOUNT Directory[/sapmnt]EnterEnter name of SAP central host[majestix]EnterEnter Database System ID[PRD]PRDEnterEnter name of SAP db host[majestix]EnterSelect character set[1] (WE8DEC)EnterEnter Oracle server version (2) Oracle 8.1.72EnterExtract Oracle Client archive[1] (Yes, extract)EnterEnter path to KERNEL CD[/sapcd]/oracle/PRD/sapreorg/KERNELEnter amount of RAM for SAP + DB20441800Enter (in Megabytes)Service Entry Message Server[3600]EnterEnter Group-ID of sapsys[100]EnterEnter Group-ID of oper[101]EnterEnter Group-ID of dba[102]EnterEnter User-ID of oraprd[1002]EnterEnter User-ID of prdadm[1000]EnterLDAP support3Enter (no support)Installation step completed[1] (continue)EnterChoose installation service[1] (DB inst,file)EnterПока создание пользователей дает сообщение об ошибке при
установке на стадиях OSUSERDBSID_IND_ORA (создание пользователя
orasid) и
OSUSERSIDADM_IND_ORA (создание пользователя
sidadm).За исключением некоторых упомянутых далее проблем, все
должно идти нормально до момента, когда придется устанавливать
программное обеспечение для работы с базой данных &oracle;.Установка &oracle; 8.0.5Описания возможных проблем с Linux и Сервером
&oracle; см. в соответствующих файлах
&sap; Notes и &oracle; Readme. Большинство,
если не все проблемы, связаны с несовместимыми библиотеками.Подробнее об установке &oracle;
см. в разделе Установка
&oracle;.Установка &oracle; 8.0.5 с помощью orainstЕсли надо использовать &oracle;
8.0.5, для успешной перекомпоновки понадобится
несколько дополнительных библиотек, поскольку
&oracle; 8.0.5 был скомпонован со
старой версией glibc (RedHat 6.0), но уже RedHat 6.1 использует
новую библиотеку glibc. Так что, для успешной перекомпоновки
нужно установить следующие дополнительные пакеты:compat-libs-5.2-2.i386.rpmcompat-glibc-5.2-2.0.7.2.i386.rpmcompat-egcs-5.2-1.0.3a.1.i386.rpmcompat-egcs-c++-5.2-1.0.3a.1.i386.rpmcompat-binutils-5.2-2.9.1.0.23.1.i386.rpmДополнительную информацию см. в файлах &sap; Notes или &oracle;
Readme. Если установить эти пакеты не
представляется возможным (на момент установки у нас не было
времени, чтобы это проверить), можно использовать исходные двоичные
модули или перекомпонованные двоичные модули с исходной системы
RedHat.Для компиляции интеллектуального агента должен быть
установлен пакет RedHat Tcl. Если вы не можете найти пакет
tcl-8.0.3-20.i386.rpm, подойдет и более
новый, вроде tcl-8.0.5-30.i386.rpm для
RedHat 6.1.За исключением перекомпоновки, установка выполняется
просто:&prompt.root; su - oraids
&prompt.root; export TERM=xterm
&prompt.root; export ORACLE_TERM=xterm
&prompt.root; export ORACLE_HOME=/oracle/IDS
&prompt.root; cd $ORACLE_HOME/orainst_sap
&prompt.root; ./orainstНажимайте на всех экранах клавишу Enter,
пока программное обеспечение не будет установлено, убрав только
пометку выбора с &oracle; On-Line Text Viewer,
поскольку этого компонента для Linux сейчас нет.
&oracle; затем захочет
перекомпоновать модули с помощью
i386-glibc20-linux-gcc
вместо имеющихся gcc, egcs
или i386-redhat-linux-gcc.Из-за нехватки времени мы решили использовать двоичные
модули из версии &oracle; 8.0.5
PreProduction после того, как первая попытка
заставить работать версию с RDBMS CD провалилась, — попытки
найти и загрузить требуемые пакеты RPM нам показались настоящим
кошмаром.Установка &oracle; 8.0.5 Pre-production Release для
Linux (ядро 2.0.33)Эту установку выполнить очень легко. Монтируем CD, запускаем
инсталлятор. Затем он запрашивает местонахождение начального
каталога &oracle; и копирует туда двоичные модули. Мы, однако,
не удаляли остатки прежних попыток установить RDBMS.В конечном итоге, базу данных &oracle;
удалось запустить без проблем.Установка tar-архива &oracle; 8.1.7 для LinuxСоздайте tar-архив oracle81732.tgz
каталога установки на Linux-системе и разархивируйте его в
каталог /oracle/SID/817_32/.Продолжение установки &sap.r3;Сначала проверьте настройку среды для пользователей
idsamd (sidadm) и
oraids (orasid). У
них обоих должны теперь быть файлы .profile,
.login и .cshrc,
использующие hostname. Если имя хоста в системе
полностью уточнено, надо заменить hostname
командой hostname -s во всех трех файлах.Загрузка базы данныхПотом команду R3SETUP можно либо
перезапустить, либо продолжить (в зависимости от того, была
ли завершена ее работа). R3SETUP затем
создает табличные пространства и загружает данные (для 46B
IDES — с дисков от EXPORT1 до EXPORT6, для 46C —
с дисков от DISK1 до DISK4) в базу данных с помощью утилиты
R3load.После завершения загрузки базы данных (это может занять
несколько часов), будет запрошено несколько паролей. Для тестовых
установок можно использовать хорошо известные стандартные
пароли (но если защита важна — используйте другие!):ВопросОтветEnter Password for sapr3sapEnterConfirum Password for sapr3sapEnterEnter Password for syschange_on_installEnterConfirm Password for syschange_on_installEnterEnter Password for systemmanagerEnterConfirm Password for systemmanagerEnterМы столкнулись с несколькими проблемами с
dipgntab при установке 4.6B.Процесс прослушиванияЗапустите процесс прослушивания
(&oracle; Listener) от имени
пользователя orasid
следующим образом:&prompt.user; umask 0; lsnrctl startВ противном случае, вы можете получить сообщение об
ошибке ORA-12546, поскольку у сокетов
будут неправильные права доступа. См. &sap; Note 072984.Обновление таблиц MNLSЕсли вы планируете использовать в системе
&sap; языки, для которых не
подходит кодировка Latin-1, придется изменить таблицы
Multi National Language Support. Эта процедура описана в
&sap; OSS Notes 15023 и 45619. Если же нет, можете пропустить
этот вопрос в ходе установки &sap;.Если вам не нужна поддержка MNLS, все равно необходимо
проверить таблицу TCPDB и инициализировать ее, если это еще не
было сделано. Дополнительную информацию см. в &sap; Note 0015023
и 0045619.Шаги после установкиЗапрос лицензионного ключа &sap.r3;Вы должны запросить ваш лицензионный ключ
&sap.r3;. Это необходимо, поскольку
временная лицензия, использованная в ходе установки, действительна
только четыре недели. Сначала получите ключ оборудования.
Зарегистрируйтесь как пользователь idsadm
и вызовите команду saplicense:&prompt.root; /sapmnt/IDS/exe/saplicense -getПри вызове команды saplicense без
параметров будет выдан список опций. После получения
лицензионного ключа, его можно установить с помощью
команды:&prompt.root; /sapmnt/IDS/exe/saplicense -installЗатем вас попросят ввести следующие значения:SAP SYSTEM ID = SID, 3 символа
CUSTOMER KEY = ключ оборудования, 11 символов
INSTALLATION NO = установка, 10 цифр
EXPIRATION DATE = yyyymmdd, обычно - "99991231"
LICENSE KEY = лицензионный ключ, 24 символаСоздание пользователейСоздайте пользователя в клиенте 000 (некоторые задачи
обязательно надо выполнять из клиента 000, от имени пользователя,
отличающегося от sap* и
ddic). В качестве имени пользователя мы
обычно выбираем wartung (или
service, по английски). Требуются профили
sap_new и sap_all. Для
дополнительной защиты надо изменить пароли стандартных
пользователей на всех клиентах (в том числе, пользователей
sap* и ddic).Конфигурирование системы передачи, профиля, режимов работы и т.п.В клиенте 000, от имени пользователя, отличающегося от
ddic и sap*,
выполните, как минимум, следующее:ЗадачаТранзакцияСконфигурируйте систему передачи, например, как Stand-Alone Transport Domain EntitySTMSСоздайте/Отредактируйте профиль для системыRZ10Сконфигурируйте режимы работы и экземплярыRZ04Эти и другие шаги, которые надо выполнить после установки,
подробно описаны в руководствах по установке
&sap;.Редактирование initsid.sap (initIDS.sap)Файл /oracle/IDS/dbs/initIDS.sap
содержит профиль резервного копирования
&sap;. Здесь надо задать размер
используемой ленты, тип сжатия и т.д. Чтобы можно было
использовать sapdba /
brbackup, мы изменили следующие значения:compress = hardware
archive_function = copy_delete_save
cpio_flags = "-ov --format=newc --block-size=128 --quiet"
cpio_in_flags = "-iuv --block-size=128 --quiet"
tape_size = 38000M
tape_address = /dev/nsa0
tape_address_rew = /dev/sa0Объяснения:compress: мы использовали ленту HP DLT1,
которая поддерживает аппаратное сжатие.archive_function: этот параметр задает
стандартное поведение для сохранения архивных журналов &oracle;:
новые журнальные файлы сохраняются на ленту, уже сохраненные
файлы журнала сохраняются еще раз, а затем удаляются. Это
предотвращает многочисленные проблемы, если потребуется
восстановить базу данных, а одна из архивных лент окажется
сбойной.cpio_flags: по умолчанию используется
, что устанавливает размер блока 5120 байт.
Для лент DLT компания HP рекомендует размер блока не меньше
32 Кбайт, поэтому мы использовали значение
для задания размера блока
64 Кбайта. Опция необходима,
поскольку у нас есть индексные дескрипторы (inodes) с номерами
больше 65535. Последняя опция, необходима
потому, что иначе команда brbackup выдает
сообщение об ошибке, как только команда cpio
выдаст количество сохраненных блоков.cpio_in_flags: флаги, необходимые для
загрузки данных с ленты. Формат распознается автоматически.tape_size: обычно этот параметр задает
реальную ёмкость ленты. Из соображений надежности (мы используем
аппаратное сжатие), задано значение несколько меньше
фактического.tape_address: устройство без перемотки
для использования в команде cpio.tape_address_rew: устройство с
перемоткой для использования в команде
cpio.Проблемы конфигурирования после установкиСледующие параметры &sap; надо
настроить после установки (примеры для IDES 46B,
1 Гбайт памяти):ИмяЗначениеztta/roll_extension250000000abap/heap_area_dia300000000abap/heap_area_nondia400000000em/initial_size_MB256em/blocksize_kB1024ipc/shm_psize_4070000000&sap; Note 0013026:ИмяЗначениеztta/dynpro_area2500000&sap; Note 0157246:ИмяЗначениеrdisp/ROLL_MAXFS16000rdisp/PG_MAXFS30000При указанных выше параметрах в системе с 1 Гбайт
памяти можно обнаружить примерно следующее использование
памяти:Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K FreeПроблемы в ходе установкиПерезапуск R3SETUP после устранения проблемыR3SETUP останавливается при выявлении
ошибки. Если вы просмотрели соответствующие журнальные файлы и
исправили ошибку, придется запускать R3SETUP
снова, обычно выбирая REPEAT как опцию для последнего шага,
на котором команда R3SETUP выдала сообщение
об ошибке.Для перезапуска команды R3SETUP просто
запустите её с соответствующим файлом
R3S:&prompt.root; ./R3SETUP -f CENTRDB.R3Sдля 4.6B или с файлом&prompt.root; ./R3SETUP -f CENTRAL.R3Sдля 4.6C, независимо от того, произошла ли ошибка
при работе с файлом CENTRAL.R3S или
DATABASE.R3S.На некоторых стадиях команда R3SETUP
предполагает, что запущены и работают процессы как сервера
базы данных, так и &sap; (поскольку
эти шаги уже выполнены). Если возникнут ошибки и, например,
запустить сервер базы данных не получится, придется вручную
запускать сервер базы данных и &sap;
после исправления ошибок и до повторного запуска
R3SETUP.Не забудьте также снова запустить процесс прослушивания
&oracle; (как пользователь
orasid с помощью
команды umask 0; lsnrctl start), если он тоже
был остановлен (например, из-за необходимой перезагрузки
системы).OSUSERSIDADM_IND_ORA в ходе R3SETUPЕсли R3SETUP выдает сообщения об
ошибках на этом этапе, отредактируйте используемый при этом
файл шаблона R3SETUP
(CENTRDB.R3S (4.6B), либо
CENTRAL.R3S или
DATABASE.R3S (4.6C)).
Найдите раздел [OSUSERSIDADM_IND_ORA] или
поищите единственную запись STATUS=ERROR и
отредактируйте следующие значения:HOME=/home/sidadm (было пусто)
STATUS=OK (был статус ERROR)
Затем надо снова перезапустить
R3SETUP.OSUSERDBSID_IND_ORA в ходе R3SETUPВозможно, команда R3SETUP также выдаст
сообщения об ошибке на этой стадии. Ошибка здесь аналогична
возникающей на стадии OSUSERSIDADM_IND_ORA. Просто отредактируйте
используемый файл шаблона R3SETUP
(CENTRDB.R3S (4.6B), либо
CENTRAL.R3S или
DATABASE.R3S (4.6C)).
Найдите раздел [OSUSERDBSID_IND_ORA] или поищите
единственную запись STATUS=ERROR и
отредактируйте следующее значение в этом разделе:STATUS=OKЗатем перезапустите R3SETUP.oraview.vrf FILE NOT FOUND в ходе установки &oracle;Вы не сняли выбор с &oracle; On-Line Text
Viewer перед началом установки. Он помечен для
установки, хотя этот продукт и не доступен сейчас для Linux.
Снимите пометку с этого продукта в меню установки
&oracle; и перезапустите
установку.TEXTENV_INVALID в ходе R3SETUP, RFC или запуска SAPguiЕсли возникает эта ошибка, не найдена нужная локаль.
&sap; Note 0171356 перечисляет необходимые пакеты RPM, которые
надо установить (например, saplocales-1.0-3,
saposcheck-1.0-1 для RedHat 6.1). Если
игнорировать все ошибки и менять STATUS
соответствующих шагов с ERROR на
OK (в файле CENTRDB.R3S)
каждый раз, когда R3SETUP сообщает об
ошибке и просто перезапуск ать R3SETUP, система
&sap; не будет правильно
сконфигурирована, и вы затем не сможете подключиться к системе
с помощью SAPgui, хотя запустить
систему и получится. Попытка подключения с помощью старой
Linux-версии SAPgui приведет к выдаче
следующих сообщений:Sat May 5 14:23:14 2001
*** ERROR => no valid userarea given [trgmsgo. 0401]
Sat May 5 14:23:22 2001
*** ERROR => ERROR NR 24 occured [trgmsgi. 0410]
*** ERROR => Error when generating text environment. [trgmsgi. 0435]
*** ERROR => function failed [trgmsgi. 0447]
*** ERROR => no socket operation allowed [trxio.c 3363]
SpeicherzugriffsfehlerЭто связано с тем, что система
&sap.r3; не может корректно назначить
локаль и сама не была надлежащим образом сконфигурирована
(не хватает записей в некоторых таблицах базы данных). Чтобы
можно было подключиться к &sap;,
добавьте следующие записи в файл DEFAULT.PFL
(см. Note 0043288):abap/set_etct_env_at_new_mode = 0
install/collate/active = 0
rscp/TCP0B = TCP0BПерезапустите систему &sap;. Теперь
вы можете подключиться к системе, хотя специфические для страны
языковые установки могут работать не так, как предполагалось.
После исправления настроек страны (и добавления соответствующих
локалей) эти записи можно удалить из файла
DEFAULT.PFL и перезапустить систему &sap;.ORA-00001Эта ошибка возникает только с
&oracle; 8.1.7 на FreeBSD 4.5.
Причина в том, что сервер &oracle;
не может правильно проинициализироваться и аварийно завершает
работу, оставляя не освобожденными в системе семафоры и
совместно используемую память. При следующей попытке запустить сервер
базы данных выдается ошибка ORA-00001.Найдите оставшиеся семафоры и сегменты памяти с помощью
команды ipcs -a и удалите с помощью
ipcrm.ORA-00445 (фоновый процесс PMON не запущен)Эта ошибка произошла с &oracle; 8.1.7.
Она выдается, если сервер был запущен с помощью обычного
скрипта startsap (например,
startsap_majestix_00) от имени пользователя
prdadm.Возможный способ обхода – запускать сервер базы данных
от имени пользователя oraprd с помощью
svrmgrl:&prompt.user; svrmgrl
SVRMGR> connect internal;
SVRMGR> startup;
SVRMGR> exitORA-12546 (запускайте процесс прослушивания с правильными правами)Запускайте процесс прослушивания
&oracle; от имени пользователя
oraids следующими командами:&prompt.root; umask 0; lsnrctl startВ противном случае, вы можете получить сообщение об ошибке
ORA-12546, поскольку сокеты не будут иметь
нужных прав доступа. См. &sap; Note 0072984.ORA-27102 (не хватает памяти)Эта ошибка произошла при попытке использовать значения
MAXDSIZ и DFLDSIZ больше
1 Гбайта (1024x1024x1024). Кроме того, мы получили
Linux Error 12: Cannot allocate memory.[DIPGNTAB_IND_IND] в ходе R3SETUPВ общем случае, см. &sap; Note 0130581
(прекращается работа R3SETUP на шаге
DIPGNTAB). В ходе установки
IDES-версии по каким-то причинам процесс установки использовал
вместо правильного имени системы &sap;,
IDS, пустую строку, "". Это
приводит к небольшим проблемам при доступе к каталогам, поскольку пути
генерируются динамически на базе SID
(в данном случае, IDS). Поэтому вместо обращения к:/usr/sap/IDS/SYS/...
/usr/sap/IDS/DVMGS00используются следующие пути:/usr/sap//SYS/...
/usr/sap/D00Чтобы продолжить установку мы создали ссылку и дополнительный
каталог:&prompt.root; pwd
/compat/linux/usr/sap
&prompt.root; ls -l
total 4
drwxr-xr-x 3 idsadm sapsys 512 May 5 11:20 D00
drwxr-x--x 5 idsadm sapsys 512 May 5 11:35 IDS
lrwxr-xr-x 1 root sapsys 7 May 5 11:35 SYS -> IDS/SYS
drwxrwxr-x 2 idsadm sapsys 512 May 5 13:00 tmp
drwxrwxr-x 11 idsadm sapsys 512 May 4 14:20 transМы также нашли документы &sap; Notes (0029227 и 0008401),
описывающие это поведение. Мы не столкнулись с подобными
проблемами при установке
&sap; 4.6C.[RFCRSWBOINI_IND_IND] в ходе R3SETUPВ ходе установки &sap; 4.6C,
эта ошибка возникла в результате другой ошибки, произошедшей
ранее по ходу установки. В данном случае придется просмотреть
соответствующие журнальные файлы и устранить исходную
проблему.Если после просмотра журнальных файлов выявлена только эта
ошибка (проверьте &sap; Notes), можно поменять
STATUS соответствующего шага с ERROR на OK (в файле
CENTRDB.R3S) и перезапустить
R3SETUP. После установки надо
выполнить отчет RSWBOINS из транзакции SE38.
Дополнительную информацию о стадиях RFCRSWBOINI
и RFCRADDBDIF см. в &sap; Note 0162266.[RFCRADDBDIF_IND_IND] в ходе R3SETUPЗдесь применяются те же ограничения: проверьте путем просмотра
журнальных файлов, что эта ошибка не вызвана какими-то предыдущими
проблемами.Если подтверждается, что применим документ &sap; Note 0162266,
просто поменяйте STATUS соответствующего
шага с ERROR на OK (в
файле CENTRDB.R3S) и перезапустите R3SETUP. После установки надо выполнить
отчет RADDBDIF из транзакции SE38.sigaction sig31: File size limit exceededЭто сообщение об ошибке выдается в ходе запуска процессов
&sap;disp+work.
Если &sap; запускается скриптом
startsap, запускаются отдельные подпроцессы,
выполняющие грязную работу по запуску всех остальных процессов
&sap;. В результате, сам скрипт
не получит уведомления, если что-то пойдет не так.Чтобы проверить, нормально ли запустились процессы
&sap;, посмотрите на состояние
процессов с помощью команды ps ax |
grep SID, которая выдаст
список всех процессов &oracle; и
&sap;. Если похоже, что некоторых
процессов не хватает или вы не можете подключиться к системе
&sap;, просмотрите соответствующие
журнальные файлы, которые можно найти в каталоге
/usr/sap/SID/DVEBMGSnr/work/.
Надо просматривать файлы dev_ms и
dev_disp.Сигнал 31 выдается, если объем памяти, совместно используемой
&oracle; и
&sap;, превосходит заданный в файле
конфигурации ядра, и от него можно избавиться, указав большее
значение:# большее значение для производственных систем 46C:
options SHMMAXPGS=393216
# меньшее значение, достаточное для 46B:
#options SHMMAXPGS=262144Сбой при запуске saposcolЕсть ряд проблем с программой saposcol
(версии 4.6D). Система &sap; использует
saposcol для сбора данных о производительности
системы. Эта программа не нужна для использования системы
&sap;, так что проблему можно отнести
к несерьезным. Более старые версии (4.6B) работают, но собирают
не все данные (многие вызовы просто возвращают 0, например,
для использования процессора).Дополнительные сведенияЕсли вы интересуетесь, как обеспечивается двоичная совместимость
с Linux, этот раздел для вас. Большинство материала взято из
электронного письма, адресованного Terry Lambert
tlambert@primenet.com в &a.chat; (ID письма:
<199906020108.SAA07001@usr09.primenet.com>).Как все это устроено?загрузчик выполняемых классовFreeBSD поддерживает абстракцию, называемую загрузчик
выполняемых классов. Фактически, он является первой
стадией системного вызова &man.execve.2;.На самом деле, FreeBSD имеет список загрузчиков вместо
одного, завершающийся загрузчиком #! для
запуска любых командных интерпретаторов и скриптов.Исторически сложилось, что единственный загрузчик в &unix;
системах проверял магическое число (чаще всего первые
4 или 8 байт файла), чтобы определить, известен ли формат
двоичного файла системе, и если да, то вызвал соответствующий
загрузчик.Если файл не опознавался системой как двоичный, системный
вызов &man.execve.2; возвращал ошибку, и текущий командный
интерпретатор начинал выполнять файл как скрипт.По умолчанию скрипт выполнялся текущим командным
интерпретатором.Позднее, &man.sh.1; был модифицирован, так, чтобы проверять
первые два символа в файле, и если они оказывались
:\n, то файл выполнялся как сценарий для
&man.csh.1; (утверждается, что SCO были первыми, кто сделал
эту модификацию).FreeBSD сейчас ведет себя по-другому: пробегает по списку
загрузчиков,включающему специальный загрузчик #!,
который вызывает нужный интерпретатор, указанный после этих символов
до следующего пробела, или /bin/sh, если
не нашел подходящего.ELFДля поддержки Linux ABI FreeBSD ищет магическое число,
соответствующее двоичному файлу ELF (на этой стадии не различаются
FreeBSD, &solaris;, Linux или любая другая ОС поддерживающая формат
ELF).SolarisДалее, ELF-загрузчик определяет марку (brand)
двоичного файла ELF (специальный комментарий в ELF-файле,
отсутствующий в двоичных файлах ELF SVR4/&solaris;).Соответственно, Linux программы должны быть
маркированы для Linux (например, с
помощью утилиты &man.brandelf.1;):&prompt.root; brandelf -t Linux fileКогда это сделано, загрузчик ELF выявит марку
Linux в файле.ELFbrandingКогда ELF-загрузчик находит маркуLinux, он заменяет соответствующий указатель в
структуре proc. Все системные вызовы
индексируются через этот указатель (в традиционной &unix; системе это
массив структур sysent[], содержащий системные
вызовы). Кроме того, процесс помечается для специальной обработки
вектора обработчиков сигналов, а также ряда других (небольших)
исправлений, которые осуществляются специальным модулем ядра для
поддержки Linux.Вектор системных вызовов Linux содержит, среди прочего, список
записей sysent[], адреса которых находятся в
модуле ядра.При выполнении системного вызова из двоичного файла Linux,
код обработчика разыменовывает указатель на функцию системного вызова
из структуры proc, и получает точки входа
системных вызовов Linux, а не FreeBSD.Плюс ко всему, в Linux–режиме динамически изменяется
корень файловой системы при поиске файлов; фактически
так же, как и параметр union при монтировании
файловых систем (не путать с unionfs!).
Сперва, файл ищется в каталоге
/compat/linux/исходное_полное_имя
и только затем, в случае неудачи, в
/исходное_полное_имя.
Это гарантирует, что программы, которым требуются другие программы,
смогут работать (например, весь набор инструментальных средств Linux
сможет работать в среде поддержки Linux ABI). Это также дает
возможность Linux программам выполнять FreeBSD команды, если не
найдется соответствующих Linux команд. Например, можно скопировать
FreeBSD &man.uname.1; в дерево каталогов
/compat/linux, и Linux-программы не смогут
разобраться, что они работают не в Linux.Фактически, имеется ядро Linux в ядре FreeBSD; различные
базовые функции, реализующие все услуги ядра, идентичны как
в записях таблицы системных вызовов FreeBSD, так и в записях
таблицы системных вызовов Linux: операции с файловой системой,
виртуальная память, средства доставки сигналов,
System V IPC … Единственное отличие в том, что
FreeBSD-программы получают интерфейсные функции
FreeBSD, а Linux-программы получают интерфейсные
функции Linux (в большинстве более старых ОС есть только их
собственные интерфейсные функции: функции берутся из статического
глобального массива структур sysent[], а не
из массива, полученного разыменованием динамически
проинициализированного указателя в структуре
proc процесса, выполняющего вызов).Какая же реализация ABI для FreeBSD родная? Это
не имеет значения. Единственное различие (на данный момент, в
будущем все может и, вероятно, изменится), пожалуй, в том, что
функции системных вызовов FreeBSD зашиты в ядро, а для Linux они
могут быть либо статически скомпонованы в ядро, либо получаться
через модуль ядра.Да, но можно ли назвать это эмуляцией? Нет. Это реализация ABI,
а не эмуляция. Как таковой, эмулятор (или симулятор)
отсутствует.В таком случае, почему же иногда говорят об
эмуляции Linux? Чтобы насолить
FreeBSD! Фактически, причина в том, что на момент первой реализации
не существовало слова, которое бы точнее описывало этот процесс.
Нельзя было сказать, что FreeBSD запускает приложения Linux (без
перекомпиляции или загрузки соответствующего модуля ядра это
невозможно). Но надо было как-то описать, что
загружается — отсюда и эмулятор Linux.
diff --git a/ru_RU.KOI8-R/books/handbook/mirrors/chapter.sgml b/ru_RU.KOI8-R/books/handbook/mirrors/chapter.sgml
index 49adef3cd7..e9ac9fb38f 100644
--- a/ru_RU.KOI8-R/books/handbook/mirrors/chapter.sgml
+++ b/ru_RU.KOI8-R/books/handbook/mirrors/chapter.sgml
@@ -1,3169 +1,3169 @@
ДенисПеплинПеревод на русский язык: Получение FreeBSDИздатели CDROM и DVDКоробочная версияFreeBSD доступна в коробочной версии (FreeBSD CD диски,
дополнительное программное обеспечение, печатная документация) от
нескольких поставщиков:CompUSA
WWW: Frys Electronics
WWW: Наборы CD и DVDНаборы FreeBSD CD и DVD доступны у множества онлайн
поставщиков:BSD Mall (подразделение Daemon News)PO Box 161Nauvoo, IL62354USA
Телефон: +1 866 273-6255
Факс: +1 217 453-9956
Email: sales@bsdmall.com
WWW: BSD-Systems
Email: info@bsd-systems.co.uk
WWW: fastdiscs.com6 Eltham CloseLeeds, LS6 2TYUnited Kingdom
Телефон: +44 870 1995 171
Email: sales@fastdiscs.com
WWW: FreeBSD Mall, Inc.3623 Sanford StreetConcord, CA94520-1405США
Телефон: +1 925 674-0783
Факс: +1 925 674-0821
Email: info@freebsdmall.com
WWW: Ingram Micro1600 E. St. Andrew PlaceSanta Ana, CA92705-4926США
Телефон: 1 (800) 456-8000
WWW: Hinner EDVSt. Augustinus-Str. 10D-81825MünchenГермания
Телефон: (089) 428 419
WWW: Ikarios22-24 rue Voltaire92000NanterreФранция
WWW: JMC SoftwareИрландия
Телефон: 353 1 6291282
WWW: Linux CD MallPrivate Bag MBE N348Auckland 1030Новая Зеландия
Телефон: +64 21 866529
WWW: The Linux EmporiumHilliard House, Lester WayWallingfordOX10 9TAВеликобритания
Телефон: +44 1491 837010
Факс: +44 1491 837016
WWW: Linux+ DVD MagazineLewartowskiego 6Warsaw00-190Польша
Телефон: +48 22 860 18 18
Email: editors@lpmagazine.org
WWW: Linux System Labs Australia21 Ray DriveBalwyn NorthVIC - 3104Австралия
Телефон: +61 3 9857 5918
Факс: +61 3 9857 8974
WWW: LinuxCenter.Ruул. Галерная, 55Санкт-Петербург190000Россия
Телефон: +7-812-3125208
Email: info@linuxcenter.ru
WWW: РаспространителиЕсли вы продавец и хотите заниматься FreeBSD CDROM,
пожалуйста свяжитесь с распространителем:Cylogistics809B Cuesta Dr., #2149Mountain View, CA94040США
Телефон: +1 650 694-4949
Факс: +1 650 694-4953
Email: sales@cylogistics.com
WWW: Kudzu, LLC7375 Washington Ave. S.Edina, MN55439США
Телефон: +1 952 947-0822
Факс: +1 952 947-0876
Email: sales@kudzuenterprises.comLinuxCenter.Ruул. Галерная, 55Санкт-Петербург190000Россия
Телефон: +7-812-3125208
Email: info@linuxcenter.ru
WWW: Navarre Corp7400 49th Ave SouthNew Hope, MN55428США
Телефон: +1 763 535-8333
Факс: +1 763 535-0341
WWW: FTP сайтыОфициальным источником FreeBSD являются анонимные FTP
зеркала по всему миру. Сайт
имеет
хорошее подключение и поддерживает большое количество одновременных
соединений, но для вас возможно потребуется найти
ближайшее зеркало (особенно если вы решили настроить
у себя какой-то из видов зеркал).База данных зеркал
FreeBSD предпочтительнее по сравнению со списком зеркал в
Руководстве, поскольку информация в базе собирается из DNS, а не
из статического списка узлов.Кроме того, FreeBSD доступна через анонимный FTP со следующих
зеркал. Если вы выбрали получение FreeBSD через анонимный FTP,
пожалуйста выберите ближайший к вам сайт. Зеркала из списка
Основных зеркал обычно содержат полный архив
FreeBSD (все доступные на данный момент версии для каждой архитектуры),
скорость загрузки возможно будет больше с зеркала, расположенного в
вашей стране или регионе. Сайты каждой страны содержат последнюю версию для наиболее
популярных архитектур, но на них может не быть полного архива FreeBSD.
Все сайты предоставляют доступ через анонимный FTP, а некоторые
предоставляют доступ и другими методами. Для каждого сайта
приведен список методов доступа в скобках после имени хоста.
&chap.mirrors.ftp.inc;
Анонимный CVSВведениеCVSанонимныйАнонимный CVS (известный также как,
anoncvs) это возможность, предоставляемая
утилитами CVS, поставляемыми с FreeBSD для синхронизации с удаленным
CVS репозиторием. Помимо прочего, он позволяет пользователям
FreeBSD без специальных привилегий (с правами только на чтение)
выполнять CVS операции на одном из официальных anoncvs серверов
проекта FreeBSD. Для использования этой возможности, просто
установите переменную CVSROOT на соответствующий
сервер anoncvs, введите общеизвестный пароль anoncvs
в ответ на приглашение команды cvs login, а
затем используйте &man.cvs.1; для доступа к репозиторию как к
обычному локальному CVS.Команда cvs login сохраняет пароли,
использованные для авторизации на сервере CVS в файле с
именем .cvspass в каталоге
HOME. Если этот файл не существует, вы можете
получить сообщение об ошибке при первом запуске cvs
login. Просто создайте пустой файл
.cvspass и попробуйте еще раз.Хотя можно сказать, что сервисы CVSup и anoncvs
выполняют в сущности похожие функции, есть несколько отличий,
которые могут повлиять на выбор метода синхронизации.
По своей сути, CVSup гораздо
более эффективно использует сетевые ресурсы, и из двух этих
программ он более интеллектуален, но за его эффективность
приходится платить. Во-первых, для того, чтобы появилась
возможность хоть что-то получить этим методом,
CVSup потребуется установить и
настроить специальную программу, а во-вторых, этот
CVSup позволяет синхронизацию только
довольно больших частей исходных текстов, называемых
коллекциями.Anoncvs напротив может использоваться
для получения как одного файла, так и всей программы
(например ls или grep),
с помощью ссылки на имя модуля CVS. Конечно,
anoncvs хорошо подходит только при
операциях на чтение CVS репозитория, поэтому если вы намереваетесь
производить локальную разработку в одном из репозиториев
проекта FreeBSD, вам подойдет только
CVSup.Использование анонимного CVSНастройка &man.cvs.1; для использования анонимного CVS
репозитория означает установку переменной окружения
CVSROOT на один из anoncvs
серверов проекта FreeBSD. На момент написания этого документа
доступны следующие сервера:Австрия:
:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs
(Используйте cvs login и введите любой
пароль в ответ на приглашение.)Франция:
:pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs
(pserver (пароль anoncvs), ssh (нет пароля))
Германия:
:pserver:anoncvs@anoncvs.de.FreeBSD.org:/home/ncvs
(Используйте cvs login и введите пароль
anoncvs в ответ на приглашение.)Германия:
:pserver:anoncvs@anoncvs2.de.FreeBSD.org:/home/ncvs
(rsh, pserver, ssh, ssh/2022)
Япония:
:pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
(Используйте cvs login и введите пароль
anoncvs в ответ на приглашение.)США:
freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs
(только ssh - без пароля)SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pubСША:
anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (только ssh - без
пароля)
- SSH HostKey: 1024 4b:83:b6:c5:70:75:6c:5b:18:8e:3a:7a:88:a0:43:bb root@ender.liquidneon.com
-SSH2 HostKey: 1024 80:a7:87:fa:61:d9:25:5c:33:d5:48:51:aa:8f:b6:12 ssh_host_dsa_key.pub
+ SSH HostKey: 1024 8b:c4:6f:9a:7e:65:8a:eb:50:50:29:7c:a1:47:03:bc root@ender.liquidneon.com
+SSH2 HostKey: 2048 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8 ssh_host_dsa_key.pubПоскольку CVS позволяет выполнить check out
практически любой версии исходных текстов FreeBSD, которые
когда-либо существовали (или, в некоторых случаях, будут
существовать), вам необходимо познакомиться с флагом
&man.cvs.1; для ревизий () и с параметрами,
которые могут быть использованы с этим флагом в репозитории
проекта FreeBSD.Есть два вида тегов, теги ревизий и теги ветвей.
Теги ревизий отвечают за определенную ревизию. Их значение
остается прежним изо дня в день. Теги ветвей сопоставляются
последней ревизии определенной ветви разработки, в любой
момент времени. Поскольку теги ветвей не сопоставлены какой-то
определенной ревизии, завтра они могут означать совсем не то,
что сегодня. содержит теги ревизий, которые
могут заинтересовать пользователей. Опять же, ни один из них
не подходит для коллекции портов, поскольку в коллекции портов
нет разнообразия ревизий.Если вы указываете тег ветви, то обычно получаете последнюю
версию файлов этой ветви разработки. Если вы хотите получить
предыдущую версию, это можно сделать путем указания даты флагом
. Обратитесь к странице справочника
&man.cvs.1; за более подробной информацией.ПримерыХотя перед тем, как что-то делать, рекомендуется полностью
прочесть страницу справочника &man.cvs.1;, вот несколько кратких
примеров использования Anonymous CVS:Извлечение кода из -CURRENT (&man.ls.1;):&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs loginAt the prompt, enter the passwordanoncvs.
&prompt.user; cvs co lsИспользование SSH для извлечения дерева
src/:&prompt.user; cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.Извлечение &man.ls.1; из ветви для 6-STABLE:&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs loginAt the prompt, enter the passwordanoncvs.
&prompt.user; cvs co -rRELENG_6 lsСоздание списка изменений &man.ls.1; (в виде unified diff)&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs loginAt the prompt, enter the passwordanoncvs.
&prompt.user; cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE lsПоиск доступных имен модулей:&prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs
&prompt.user; cvs loginAt the prompt, enter the passwordanoncvs.
&prompt.user; cvs co modules
&prompt.user; more modules/modulesДругие ресурсыВ изучении CVS могут помочь следующие дополнительные
ресурсы:Учебник
по CVS от Cal Poly.CVS Home,
сообщество разработки и поддержки CVS.CVSweb
это веб интерфейс к CVS проекта FreeBSD.Использование CTMCTMCTM это метод синхронизации удаленного
дерева исходных текстов с центральным. Он был разработан для
использования с деревом исходных текстов FreeBSD, хотя может
быть полезен и для других целей. На данный момент существует очень
немного (если она вообще существует) документации по процессу создания
дельта-файлов (deltas, разница между имеющимися и актуальными
исходными текстами), поэтому обратитесь в список рассылки
&a.ctm-users.name; за
дополнительной информацией, если захотите использовать
CTM для других целей.Зачем мне может понадобиться
CTM?CTM создаст для вас локальную копию
исходных текстов FreeBSD. Существует множество разновидностей
дерева исходных текстов. Захотите ли вы поддерживать все дерево
CVS или только одну из ветвей, CTM
может предоставить вам все необходимое. Если вы разработчик
FreeBSD, но ваше соединение по TCP/IP некачественное или
отсутствует, или же вы просто хотите, чтобы изменения автоматически
отправлялись вам, CTM предназначен
для вас. Вам потребуется получать до трех изменений в день для
наиболее активных ветвей. Они будут отправляться вам по электронной
почте. Размеры обновлений всегда поддерживаются настолько малыми,
насколько это возможно. Они обычно меньше 5K, хотя случается
(раз из десяти) достигают 10-50K и время от времени даже
100K или больше.Вам также потребуется узнать о различных особенностях работы
непосредственно с исходными текстами в разработке, вместо
готовых релизов. Это в частности относится к выбору исходных
текстов ветви -CURRENT. Рекомендуется прочесть материал
На переднем крае разработок.Что потребуется для использования
CTM?Вам потребуются две вещи: программа
CTM и исходные тексты, которые требуется
обновить (до актуального состояния).Программа CTM была частью
FreeBSD все время с момента выпуска релиза 2.0, она находится
в каталоге /usr/src/usr.sbin/ctm, если
у вас есть копия исходных текстов.Дельта-файлыCTM могут приходить двумя путями,
через FTP или email. Если у вас есть доступ к интернет по FTP,
доступ к CTM может быть получен через
следующие FTP сайты:или с сайтов из списка зеркал.Зайдите по FTP в соответствующий каталог и прочтите файл
README.Если вы предпочитаете получать дельта-файлы по почте:Подпишитесь на один из списков распространения
CTM.
&a.ctm-cvs-cur.name; поддерживает все дерево CVS.
&a.ctm-src-cur.name; поддерживает главную ветвь разработки.
&a.ctm-src-4.name; поддерживает ветвь 4.X, и т.д. Если вы
не знаете, как подписаться на список, нажмите на ссылку выше или
на ссылку &a.mailman.lists.link;, а затем на ссылку соответствующего
списка. Страница списка должна содержать все необходимые инструкции
по подписке.Когда вы начнете получать обновления
CTM по почте, используйте программу
ctm_rmail для распаковки и применения обновлений.
Вы можете использовать программу ctm_rmail
непосредственно из /etc/aliases, если
хотите полностью автоматизировать процесс. Прочтите страницу
справочника ctm_rmail с более подробной
информацией.Вне зависимости от способа получения дельта-файлов
CTM, вам потребуется подписка на
список рассылки &a.ctm-announce.name;. В будущем этот список
станет единственным местом, где будут анонсироваться операции,
относящиеся к системе CTM.
Нажмите на ссылку выше и следуйте инструкциям для подписки
на эту рассылку.Использование CTM в первый
разПеред тем, как вы сможете начать использование дельта-файлов
CTM, потребуется определить
исходную точку для последующего их применения.Сначала потребуется определить, что уже имеется.
Каждый может начать с пустого (empty) каталога.
Вы должны использовать дельта-файл Empty
для создания поддерживаемого CTM дерева.
Планируется распространение стартовых дельта-файлов
на CD, но на данный момент это не делается.Поскольку дерево исходных текстов может быть объемом в десятки
мегабайт, предпочтительно начать с каких-то уже имеющихся текстов.
Если у вас есть -RELEASE CD, распакуйте исходные тексты с него.
Это снизит объем передаваемых данных.Вы можете распознать стартовый дельта-файл
по символу X, добавляемому к номеру
(например, src-cur.3210XEmpty.gz).
Обозначение перед X соответствует имеющимся
исходным текстам. Empty это пустой каталог.
Как правило файл с Empty создается через каждые
100 дельта-файлов. Между прочем, эти файлы большие! От 70 до
;) мегабайт упакованных gzip данных это
обычный размер для XEmpty.Как только вы получили основной дельта-файл, потребуются также
все дельта-файлы с последующими номерами.Повседневное использование
CTMДля применения дельта-файлов, просто выполните:&prompt.root; cd /where/ever/you/want/the/stuff
&prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.*CTM работает с дельта-файлами,
упакованными с помощью gzip, поэтому вам не
требуется их распаковывать.Хотя весь процесс довольно безопасен,
CTM не будет изменять дерево исходных
текстов. Для проверки дельта-файла вы также можете использовать
флаг , CTM
только проверит целостность дельта-файла а также его применимость
к существующим исходным текстам.Это все. Каждый раз после получения дельта-файла, запускайте
CTM для поддержания исходных текстов
в актуальном состоянии.Не удаляйте дельта-файлы, если их сложно загрузить еще раз.
Вы возможно захотите сохранить их на всякий случай. Если вы можете
сохранить их только на дискете, используйте для создания копии
fdwrite.Сохранение локальных измененийКак разработчик вы возможно захотите поэкспериментировать и
изменить файлы в дереве исходных текстов.
CTM имеет ограниченную поддержку
локальных изменений: перед проверкой наличия файла
foo, сначала проверяется
foo.ctm. Если он присутствует,
CTM будет работать с ним вместо
foo.Такое поведение обеспечивает простой путь поддержки локальных
изменений: просто скопируйте файлы, которые вы хотите изменить,
в файлы с соответствующими именами и суффиксом
.ctm. Вы можете свободно изменять код,
а CTM будет поддерживать файлы
.ctm в актуальном состоянии.Другие интересные возможности
CTMОпределение файлов, которые будут затронуты
обновлениемВы можете определить список изменений, которые
CTM внесет в исходные тексты,
используя параметр CTM
.Это полезно, если вы хотите поддерживать лог изменений,
выполнить предварительную или последующую обработку изменяемых
файлов, или если вы просто немного параноидальны.Создание резервных копий перед обновлениемИногда вам может понадобиться сделать резервные копии всех
файлов, которые будут изменены
CTM.С параметром
CTM выполнит резервное копирование
всех изменяемых дельта-файлом CTM
файлов в backup-file.Ограничение обновлений для определенных файловИногда необходимо ограничить набор файлов, обновляемых
CTM, или даже задать обновление
нескольких определенных файлов.Вы можете управлять списком файлов, с которыми будет работать
CTM, путем указания фильтрующих
регулярных выражений с параметрами и
.Например, для извлечения свежей копии
lib/libc/Makefile из коллекции сохраненных
дельта-файлов CTM, выполните
команду:&prompt.root; cd /where/ever/you/want/to/extract/it/
&prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.*Для каждого указанного CTM
дельта-файла, параметры и
применяются в порядке их задания в командной строке. Файл
обрабатывается CTM только если он
помечается как подходящий после обработки всех параметров
и .Дальнейшие планы для CTMМасса планов:Использовать какой-то из видов аутентификации в системе
CTM, позволяющий обнаружение
поддельных дат CTM.Доработать параметры CTM,
поскольку они могут ввести в заблуждение.РазноеСуществует набор дельта-файлов и для коллекции
ports, но интерес к нему пока не так
высок.Зеркала CTMCTM/FreeBSD доступен через анонимный
FTP с нижеприведенных зеркал. Если вы выбрали получение
CTM через анонимный FTP, используйте
ближайший к вам сервер.В случае возникновения проблем обратитесь в список рассылки
&a.ctm-users.name;.California, Bay Area, официальный источникSouth Africa, резервный сервер для старых дельта-файловTaiwan/R.O.C.Если вы не нашли ближайшего к вам зеркала, или зеркало неполно,
попробуйте воспользоваться поиском, например
alltheweb.Использование CVSupВведениеCVSup это пакет программного
обеспечения для распространения и обновления исходных текстов с
основного репозитория CVS на удаленном сервере. Исходные тексты
FreeBSD поддерживаются в репозитории CVS на центральной машине
разработки в Калифорнии. С помощью CVSup
пользователи FreeBSD легко могут поддерживать собственные исходные
тексты в актуальном состоянии.CVSup использует так называемую
опрашивающую (pull) модель обновления.
Работая по этой модели, каждый клиент запрашивает обновления с
сервера, если и когда они нужны. Сервер пассивно ожидает запросы
на обновление от своих клиентов. Таким образом, все обновления
инициируются клиентами. Сервер никогда не высылает не запрошенные
обновления. Пользователь для получения обновлений должен либо запустить
CVSup клиента вручную, либо добавить
задание в cron для настройки периодических
обновлений в автоматическом режиме.Термин CVSup, написанный с заглавными
буквами, означает весь пакет программного обеспечения. Его основные
компоненты это клиент cvsup, запускаемый на
каждом пользовательском компьютере, и сервер
cvsupd, работающий на каждом зеркале
FreeBSD.При чтении документации FreeBSD и списков рассылки вы могли
встретить указания на sup.
Sup был предшественником
CVSup, и выполнял похожие функции.
CVSup в основном используется тем же
способом, что и sup, и, фактически, использует файлы настройки,
обратно совместимые с файлами sup.
Sup более не используется проектом
FreeBSD, поскольку CVSup и быстрее и
более гибок.УстановкаПростейший способ установки CVSup
это использование прекомпилированного пакета net/cvsup из коллекции
пакетов FreeBSD. Если вы предпочтете собрать
CVSup из исходных текстов, можете
использовать вместо этого порт net/cvsup. Но имейте ввиду:
порт net/cvsup зависит от системы
Modula-3, которой потребуется существенный объем времени и
пространства на диске для загрузки и установки.Если вы собираетесь использовать
CVSup на компьютере, где нет
установленного &xfree86;
или &xorg;,
например на сервере, используйте порт, не включающий
CVSup GUI,
net/cvsup-without-gui.Настройка CVSupРабота CVSup контролируется
файлом настройки, называемым supfile.
В каталоге /usr/share/examples/cvsup/
находится несколько примеров supfile.Информация в supfile отвечает на
следующие вопросы CVSup:Какие файлы вы
хотите получить?Какие их версии
вам нужны?Откуда вы хотите
их получить?Где вы хотите
разместить их на своем компьютере?Где вы хотите
разместить файлы статуса?В следующих разделах мы составим типичный
supfile последовательным ответом на каждый из этих
вопросов. Сначала опишем общую структуру
supfile.supfile это текстовый файл. Комментарии,
начинающиеся с #, продолжаются до конца строки.
Пустые строки и строки, содержащие только комментарии,
игнорируются.Каждая из оставшихся строк описывает набор файлов, получаемых
пользователем. Строка начинается с имени коллекции,
логического объединения файлов, определяемых сервером. Имя коллекции
говорит серверу о том, какие файлы вам нужны. После имени коллекции
следуют одно или больше полей, разделенных пробелом. Эти поля
отвечают на вопросы, заданные выше. Есть два типа полей: флаги и
значения. Поле флага состоит из одного ключевого слова, например
delete или compress.
Поле значения также начинается с ключевого слова, но за ним без
пробела следует = и второе слово. Например,
release=cvs это поле значения.supfile обычно задает получение
более одной коллекции. Одним из способов построения
supfile является указание всех соответствующих
полей для каждой коллекции явно. Однако, это приводит к появлению
слишком длинных строк в supfile и это неудобно,
поскольку большинство полей одинаковы для всех коллекций
supfile. CVSup
предоставляет механизм задания значений по умолчанию для устранения
этих проблем. Строки, начинающиеся со специального имени
псевдо-коллекции *default, могут быть использованы
для установки флагов и значений, которые послужат значениями по
умолчанию для всех последующих коллекций supfile.
Значение по умолчанию может быть перезаписано для каждой
отдельной коллекции путем указания другого значения в ее собственных
параметрах. Значения по умолчанию также могут быть изменены
или расширены в любом месте supfile
дополнительными строками *default.Получив эту информацию, мы начнем строить
supfile для получения и обновления главного
дерева исходных текстов FreeBSD-CURRENT.Какие файлы вы хотите
получить?Файлы, доступные через CVSup,
организованы в именованные группы, называемые
коллекциями. Доступные коллекции описаны
в следующем разделе.
В этом примере мы получим все дерево исходных текстов системы
FreeBSD. Существует одиночная большая коллекция
src-all, которая позволит нам сделать это.
В качестве первого шага по созданию supfile,
добавим список коллекций, по одной на строку (в нашем случае,
только одну строку):src-allКакие их версии
вам нужны?С CVSup вы в принципе можете
получить любую версию исходных текстов, которая когда-либо
существовала. Это возможно, поскольку
cvsupd сервер работает непосредственно
с репозиторием CVS, который содержит все версии. Вы указываете
ту, которая вам нужна, с помощью полей tag=
и .Будьте очень осторожны при задании любых полей
tag=. Некоторые теги существуют только
в определенных коллекциях файлов. Если вы укажете
некорректный тег или ошибетесь в его написании,
CVSup удалит файлы, которые вы
возможно не хотели удалять. В частности, используйте
толькоtag=.
для коллекций ports-*.Поля tag= означают символьные имена
в репозитории. Существует два вида тегов, теги ревизий и теги
ветвей. Теги ревизий означают определенную ревизию. Они
не меняются со временем. Теги ветвей, с другой стороны,
означают последнюю ревизию заданной линии разработки в любой
момент времени. Поскольку тег ветви не относится к определенной
ревизии, он может означать завтра что-то иное чем сегодня. содержит теги ветвей, которые
могут быть интересны пользователям. Тег, указанный в
файле настройки CVSup, должен
предваряться строкой tag=
(RELENG_4 превратится в
tag=RELENG_4). Помните, что для коллекции
портов подходит только tag=..Будьте очень осторожны при наборе имен тегов.
CVSup не может отличить правильные
и неправильные теги. Если вы неправильно наберете тег,
CVSup поведет себя так, как если бы
вы указали тег, не содержащий файлов. В этом случае он удалит
существующие исходные тексты.При указании тега ветви вы получите последние версии файлов
этой ветви разработки. Если вы хотите получить какую-то из
предыдущих версий, сделайте это указав дату в поле значения
. Страница справочника &man.cvsup.1;
описывает как сделать это.В нашем примере мы хотим получить FreeBSD-CURRENT. Мы
добавим эту строку в начало
supfile:*default tag=.Существует важный специальный случай, когда не задаются
ни поле tag=, ни поле date=.
В этом случае вы получите последние версии RCS файлов
непосредственно из CVS репозитория сервера вместо получения
определенной версии. Разработчики обычно предпочитают этот
способ. Поддерживая копию репозитория в своей системе, они
получают возможность просмотра истории ревизий и проверки
последних версий файлов. Однако это достигается ценой
большего занимаемого дискового пространства.Откуда вы хотите
их получить?Мы используем поле host= для сообщения
cvsup откуда забирать обновления. Подойдет
любое из CVSup зеркал,
хотя вы должны попробовать выбрать ближайшее к вам зеркало.
В этом примере мы используем не существующий сервер,
cvsup99.FreeBSD.org:*default host=cvsup99.FreeBSD.orgВам потребуется подставить адрес одного из существующих хостов
перед запуском CVSup. При каждом
запуске cvsup, вы можете перезаписать
настройку хоста из командной строки, используя параметр .Где вы хотите
разместить их на своем компьютере?Поле prefix= указывает
cvsup где размещать получаемые файлы.
В этом примере, мы поместим файлы непосредственно в главное
дерево исходных текстов, /usr/src.
Каталог src уже подразумевается в
коллекциях, которые мы собираемся получить, поэтому
корректное указание таково:*default prefix=/usrГде вы хотите
разместить файлы статуса cvsup?Клиент CVSup поддерживает
определенные файлы статуса в так называемом
base каталоге. Эти файлы помогают
CVSup работать более эффективно
путем поддержки истории уже полученных обновлений. Мы будем
использовать стандартный каталог base,
/var/db:*default base=/var/dbЕсли base каталог не существует, теперь подходящий момент
для его создания. Клиент cvsup не
запустится, если base каталог не существует.Различные настройки supfile:Существует еще одна строка, которая обычно должна
присутствовать в supfile:*default release=cvs delete use-rel-suffix compressrelease=cvs означает, что сервер должен
получать информацию из главного репозитория FreeBSD CVS.
Это обычно всегда так, но существуют несколько иных вариантов,
изложение которых выходит за пределы этой главы.delete дает
CVSup возможность удалять файлы.
Вы должны всегда указывать этот параметр, чтобы
CVSup мог поддерживать дерево
исходных текстов полностью актуальным.
CVSup удалит только те файлы, за
которые отвечает. Все другие файлы останутся
нетронутыми.use-rel-suffix это ... мистика. Если
вы действительно хотите узнать о нем, обратитесь к странице
справочника &man.cvsup.1;. Иначе просто укажите это поле и не
беспокойтесь о нем больше.compress включает использование
gzip сжатия при передаче данных. Если ваше сетевое подключение
работает со скоростью T1 или быстрее, вам возможно не
потребуется использование сжатия. Иначе оно обычно
помогает.Все это вместе:Вот полный supfile для нашего
примера:*default tag=.
*default host=cvsup99.FreeBSD.org
*default prefix=/usr
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-allФайл refuseКак упомянуто выше, CVSup использует
метод опроса. В основном это означает, что
вы подключаетесь к CVSup серверу, и он
говорит Вот то, что вы можете загрузить с меня...,
и клиент отвечает OK, я возьму это, это и это.
С настройкой по умолчанию CVSup клиент
заберет каждый файл, связанный с коллекцией и тегом, выбранным
в файле настройки. Однако, это не всегда то, что вам нужно,
особенно если вы синхронизируете деревья doc,
ports, или www —
большинство людей не могут читать на пяти или четырех языках,
и следовательно им не требуются локализованные файлы. Если вы
обновляете коллекцию портов, это можно обойти путем индивидуального
указания каждой коллекции (например,
ports-astrology,
ports-biology и т.д. вместо
коллекции ports-all). Однако, поскольку для
деревьев doc и www нет
специфичных для языка коллекций, используйте одну из
замечательных возможностей CVSup:
файл refuse.Файл refuse говорит
CVSup, что он не должен забирать каждый
файл из коллекции; другими словами, он говорит клиенту
отказаться (refuse) от получения с сервера
определенных файлов. Файл refuse можно найти
(или, если у вас его еще нет, должен быть помещен) в
base/sup/.
base определен в файле
supfile; наше стандартное расположение
base это
/var/db, что означает, что по
умолчанию файл refuse это
/var/db/sup/refuse.Формат файла refuse очень прост; он содержит
имена файлов или каталогов, которые вы не хотите загружать.
Например, если вы не можете разговаривать ни на каком языке кроме
английского и русского, и вы не будете читать документацию на этих
языках, поместите следующие строки в файл
refuse:doc/bn_*
doc/da_*
doc/de_*
doc/el_*
doc/es_*
doc/fr_*
doc/it_*
doc/ja_*
doc/nl_*
doc/no_*
doc/pl_*
doc/pt_*
doc/sr_*
doc/tr_*
doc/zh_*и так далее для других языков (полный список находится на
странице FreeBSD
CVS репозитория).С этой очень полезной возможностью пользователи с
низкоскоростным подключением или с поминутной платой за подключение
смогут сохранить время, поскольку им более не потребуется загружать
файлы, которые они никогда не будут использовать. За более
подробной информацией о файлах refuse и
замечательных возможностях CVSup,
обратитесь к его справочной странице.Запуск CVSupТеперь вы готовы к тестированию обновления. Командная строка для
этого очень проста:&prompt.root; cvsup supfileгде supfile
это конечно имя supfile, который только что
был создан. При запуске под X11, cvsup
отобразит GUI интерфейс с несколькими полезными кнопками. Нажмите
кнопку go и смотрите за его работой.Поскольку в этом примере обновляется существующее дерево
/usr/src вам потребуется, запуск программы
из под root, чтобы у cvsup
были права, необходимые для обновления файлов. Если файл настройки
только что создан, и эта программа раньше никогда не использовалась,
это может действовать вам на нервы. Есть простой способ для
пробного запуска без затрагивания ваших драгоценных файлов.
Просто создайте где-нибудь пустой каталог и поместите его в качестве
дополнительного аргумента командной строки:&prompt.root; mkdir /var/tmp/dest
&prompt.root; cvsup supfile /var/tmp/destУказанный каталог будет использоваться в качестве места назначения
всех обновлений. CVSup
будет работать с файлами из /usr/src,
но не станет изменять или удалять их. Вместо этого все обновления
файлов будут помещены в /var/tmp/dest/usr/src.
При запуске таким способом CVSup оставит
также неприкосновенным каталог base. Новые версии этих файлов будут
записаны в указанный каталог. Если у вас есть права на чтение
каталога /usr/src, вам даже не потребуется
работать под root для выполнения пробного
обновления.Если вы не работаете с X11 или просто не любите GUI, добавьте
набор параметров командной строки при запуске
cvsup:&prompt.root; cvsup -g -L 2 supfileПараметр указывает
CVSup не использовать GUI. Он действует
автоматически, если вы не работаете под X11, но иначе вам потребуется
его указать.Параметр указывает
CVSup выводить информацию о каждом
производимом обновлении. Есть три уровня протоколирования,
от до . Уровень
по умолчанию 0, что означает полное отсутствие сообщений,
за исключением сообщений об ошибках.Доступно множество других параметров. Для получения их краткого
списка, наберите cvsup -H. За более подробным
описанием обратитесь к странице справочника.После проверки работоспособности обновлений вы можете организовать
регулярные запуски CVSup с помощью
&man.cron.8;. Очевидно, вы не должны позволять
CVSup использовать GUI при запуске из
&man.cron.8;.Коллекции файлов CVSupКоллекции файлов, доступные через
CVSup, организованы иерархически.
Существует несколько больших коллекций, и они разделены на несколько
меньших под-коллекций. Получение большой коллекции эквивалентно
получению каждой из ее подколлекции. Иерархические отношения
между коллекциями отражаются путем использования отступов в списке
ниже.Наиболее используемые коллекции это
src-all, и
ports-all. Другие коллекции используются
небольшими группами людей для специальных целей и
некоторые сайты зеркал могут не содержать их все.cvs-all release=cvsГлавный FreeBSD CVS репозиторий, включающий
криптографический код.distrib release=cvsФайлы, относящиеся к распространению и зеркалированию
FreeBSD.doc-all release=cvsИсходные тексты Руководства FreeBSD и другой
документации. Они не включают файлы веб-сайта
FreeBSD.ports-all release=cvsКоллекция портов FreeBSD.Если вы не хотите обновлять всю коллекцию
ports-all (все дерево портов),
а только одну из подколлекций, перечисленных ниже,
убедитесь, что вы каждый раз
обновляете подколлекцию ports-base!
При любых изменениях в инфраструктуре сборки портов
подколлекции ports-base, они могут
быть использованы настоящими портами
довольно скоро. Таким образом, если вы обновляете
только настоящие порты и они используют
некоторые новые возможности, есть большой шанс того,
что их сборка прервется с непонятным сообщением об
ошибке. Самое первое, что вы
должны сделать, это убедиться, что подколлекция
ports-base обновлена.Если вы намерены построить собственный вариант
файла ports/INDEX, вы
должны обновить коллекцию
ports-all (полное дерево портов).
Построение файла ports/INDEX с
частью дерева не поддерживается, хотя и возможно.
См. также
FAQ.ports-accessibility
release=cvsПО для поддержки пользователей с нарушениями
зрения, слуха и т.п.ports-arabic
release=cvsПоддержка арабского языка.ports-archivers
release=cvsАрхиваторы.ports-astro
release=cvsПорты для астрономии.ports-audio
release=cvsПоддержка звука.ports-base
release=cvsИнфраструктура сборки портов -
различные файлы, расположенные в подкаталогах
Mk/ и
Tools/ каталога
/usr/ports.Пожалуйста, прочтите важное
предупреждение выше: вы должны
всегда обновлять эту
подколлекцию, при каждом обновлении любой
части коллекции портов FreeBSD!ports-benchmarks
release=cvsИзмерение производительности.ports-biology
release=cvsПрограммы для биологии.ports-cad
release=cvsИнструменты САПР.ports-chinese
release=cvsПоддержка китайского языка.ports-comms
release=cvsКоммуникационные программы.ports-converters
release=cvsПреобразование кодировок.ports-databases
release=cvsБазы данных.ports-deskutils
release=cvsВещи, использовавшиеся на рабочем столе
до изобретения компьютеров.ports-devel
release=cvsУтилиты разработки.ports-dns
release=cvsПрограммы, имеющие отношение к DNS.ports-editors
release=cvsРедакторы.ports-emulators
release=cvsЭмуляторы других операционных систем.ports-finance
release=cvsФинансовые, расчетные и связанные с ними
приложения.ports-ftp
release=cvsКлиентские и серверные утилиты FTP.ports-games
release=cvsИгры.ports-german
release=cvsПоддержка немецкого языка.ports-graphics
release=cvsГрафические утилиты.ports-hebrew
release=cvsПоддержка иврита.ports-hungarian
release=cvsПоддержка венгерского языка.ports-irc
release=cvsIRC утилиты.ports-japanese
release=cvsПоддержка японского языка.ports-java
release=cvs&java; утилиты.ports-korean
release=cvsПоддержка корейского языка.ports-lang
release=cvsЯзыки программирования.ports-mail
release=cvsПочтовое программное обеспечение.ports-math
release=cvsМатематические программы.ports-mbone
release=cvsПриложения MBone.ports-misc
release=cvsРазличные утилиты.ports-multimedia
release=cvsМультимедийное программное обеспечение.ports-net
release=cvsСетевое программное обеспечение.ports-net-im
release=cvsПрограммы обмена быстрыми сообщениями.ports-net-mgmt
release=cvsПО для сетевого управления.ports-net-p2p
release=cvsСети клиентского обмена (peer-to-peer).ports-news
release=cvsПрограммное обеспечение новостей USENET.ports-palm
release=cvsПрограммная поддержка для
Palm.ports-polish
release=cvsПоддержка польского языка.ports-portuguese
release=cvsПоддержка португальского языка.ports-print
release=cvsПрограммы печати.ports-russian
release=cvsПоддержка русского языка.ports-science
release=cvsНаучное программное обеспечение.ports-security
release=cvsУтилиты безопасности.ports-shells
release=cvsОболочки командной строки.ports-sysutils
release=cvsСистемные утилиты.ports-textproc
release=cvsУтилиты обработки текста (не включают
настольные утилиты публикации).ports-ukrainian
release=cvsПоддержка украинского языка.ports-vietnamese
release=cvsПоддержка вьетнамского языка.ports-www
release=cvsПрограммы, относящиеся к World Wide
Web.ports-x11
release=cvsПорты с поддержкой X window
system.ports-x11-clocks
release=cvsЧасы X11.ports-x11-fm
release=cvsФайловые менеджеры X11.ports-x11-fonts
release=cvsШрифты и шрифтовые утилиты X11.ports-x11-toolkits
release=cvsПакеты разработки приложений для X11.ports-x11-servers
release=cvsСерверы X11.ports-x11-themes
release=cvsТемы X11.ports-x11-wm
release=cvsОконные менеджеры X11.src-all release=cvsОсновные исходные тексты FreeBSD, включая
криптографический код.src-base
release=cvsРазличные файлы непосредственно из
/usr/src.src-bin
release=cvsУтилиты, которые могут
потребоваться в однопользовательском режиме
(/usr/src/bin).src-contrib
release=cvsУтилиты и библиотеки, заимствованные проектом
FreeBSD, используются почти без модификаций
(/usr/src/contrib).src-crypto release=cvsКриптографические утилиты и библиотеки,
заимствованные проектом FreeBSD, используются
почти без модификаций
(/usr/src/crypto).src-eBones release=cvsKerberos и DES
(/usr/src/eBones). Не
используются в текущих релизах FreeBSD.src-etc
release=cvsФайлы настройки системы
(/usr/src/etc).src-games
release=cvsИгры
(/usr/src/games).src-gnu
release=cvsУтилиты, попадающие под GNU Public
License (/usr/src/gnu).src-include
release=cvsФайлы заголовков
(/usr/src/include).src-kerberos5
release=cvsПакет безопасности Kerberos5
(/usr/src/kerberos5).src-kerberosIV
release=cvsПакет безопасности KerberosIV
(/usr/src/kerberosIV).src-lib
release=cvsБиблиотеки
(/usr/src/lib).src-libexec
release=cvsСистемные программы, обычно выполняемые
другими программами
(/usr/src/libexec).src-release
release=cvsФайлы, необходимые для производства релизов
FreeBSD
(/usr/src/release).src-sbin release=cvsСистемные утилиты для однопользовательского
режима
(/usr/src/sbin).src-secure
release=cvsКриптографические библиотеки и команды
(/usr/src/secure).src-share
release=cvsФайлы, которые могут быть использованы
несколькими системами
(/usr/src/share).src-sys
release=cvsЯдро
(/usr/src/sys).src-sys-crypto
release=cvsКриптографический код ядра
(/usr/src/sys/crypto).src-tools
release=cvsРазличные инструменты для поддержки FreeBSD
(/usr/src/tools).src-usrbin
release=cvsПользовательские утилиты
(/usr/src/usr.bin).src-usrsbin
release=cvsСистемные утилиты
(/usr/src/usr.sbin).www release=cvsИсходные тексты www сайта FreeBSD.distrib release=selfСобственные файлы настройки сервера
CVSup. Используются зеркалами
CVSup.gnats release=currentБаза данных отслеживания ошибок GNATS.mail-archive release=currentАрхив списков рассылки FreeBSD.www release=currentФайлы предобработки WWW сайта FreeBSD (не исходные
файлы). Используются зеркалами WWW.Дальнейшая информацияCVSup FAQ и другая информация о
CVSup находится на
Домашней
странице CVSup.Большая часть связанных с FreeBSD обсуждений
CVSup проводилась в списке рассылки
&a.hackers.name;. Новые
версии программного обеспечения анонсируются здесь и в
списке рассылки &a.announce.name;.Вопросы и сообщения об ошибках адресуйте автору программы
cvsup-bugs@polstra.com.Зеркала CVSupCVSup серверы для FreeBSD работают на
следующих сайтах:
&chap.mirrors.cvsup.inc;
Использование PortsnapВведениеPortsnap — система для
защищенного распространения дерева портов &os;. Примерно раз
в час генерируется снэпшот дерева портов,
который затем архивируется и подписывается электронной подписью.
Полученные файлы затем распространяются при помощи HTTP.Подобно CVSup,
portsnap использует
активную (pull) модель обновлений:
упакованное и подписанное дерево помещается на веб-сервер, откуда
его должны забирать клиенты. Пользователь должен либо запустить
&man.portsnap.8; вручную, чтобы получить
обновления, либо настроить периодическое задание при помощи
&man.cron.8;.По техническим причинам Portsnap
не обновляет основное (живое) дерево портов в
каталоге /usr/ports/, а работает со сжатой
копией дерева в каталоге /var/db/portsnap/.
Впоследствии эта копия используется для обновления основного
дерева.Если Portsnap был установлен из
Коллекции портов &os;, каталогом для снэпшотов будет
/usr/local/portsnap/, а не
/var/db/portsnap/.Установка&os; начиная с версии 6.0 содержит
Portsnap в базовой поставке системы.
Для более ранних релизов &os; эта утилита может быть установлена
из порта sysutils/portsnap.Конфигурация PortsnapКонфигурация Portsnap описывается
файлом /etc/portsnap.conf. Для большинства
пользователей вполне подойдет конфигурация по умолчанию;
за подробностями обращайтесь к странице справочника
&man.portsnap.conf.5;.При установке Portsnap из
Коллекции портов используется файл конфигурации
/usr/local/etc/portsnap.conf.
При установке порта этот файл не создается; вам нужно создать
его самостоятельно командой&prompt.root; cd /usr/local/etc && cp portsnap.conf.sample portsnap.confПервый запуск PortsnapПри первом запуске утилите &man.portsnap.8;
потребуется загрузить упакованный снэпшот полного дерева портов
в каталог /var/db/portsnap/
(/usr/local/portsnap/, если
Portsnap был установлен из Коллекции
портов). На начало 2006 года размер снэпшота составляет около
41 МБ.&prompt.root; portsnap fetchПосле загрузки снэпшота из него может быть развернуто основное
дерево портов. Это необходимо, даже есть каталог
/usr/ports/заполнен каким-либо другим
способом, например при помощи CVSup,
поскольку позволяет установить точку отсчета, от которой
portsnap будет определять необходимый
объем изменений.&prompt.root; portsnap extractВ конфигурации установки по умолчанию каталог
/usr/ports не создан.
Создайте его самостоятельно перед первым запуском
утилиты portsnap.Обновление дерева портовПосле того как первоначальный снэпшот дерева портов будет
развернут в каталог /usr/ports/, обновление
дерева портов будет состоять из двух шагов:
загрузки (fetch) обновлений к упакованному
снэпшоту и последующего обновления (update)
основного дерева. Оба шага могут быть выполнены одним запуском
portsnap:&prompt.root; portsnap fetch updateНекоторые из старых версий portsnap
не поддерживают такой синтаксис; в этом случае, используйте две
последовательные команды:&prompt.root; portsnap fetch
&prompt.root; portsnap updateЗапуск portsnap из cronДля того, чтобы избежать проблем с безумными
толпами клиентов, одновременно приходящими на сервера
Portsnap, команда portsnap
fetch не запустится как задание &man.cron.8;.
Для работы из cron предназначена специальная
команда portsnap cron, которая перед
загрузкой обновлений ожидает случайное время до 3600 секунд.Кроме того, настоятельно не рекомендуется запускать из
cron команду portsnap
update, поскольку при пересечении с процессом сборки
или установки какого-либо порта неизбежно возникнет конфликт.
С другой стороны, безопасно обновить индексный файл, запустив
portsnap -I update (разумеется, команду
portsnap update без ключа
для обновления оставшейся части дерева портов придется запустить
вручную).Для ежедневного обновления упакованного снэпшота и индексного
файла при помощи portsnap и последующего
отчета почтой об устаревших установленных пакетах добавьте
в ваш файл /etc/crontab строку0 3 * * * root portsnap -I cron update && pkg_version -vIL=Если системные часы не установлены в локальное время,
пожалуйста, замените 3 на случайное
число между 0 и 23, чтобы не создавать пиковых нагрузок на
серверы portsnap.Старые версии утилиты portsnap
не поддерживали несколько команд при одном запуске (например,
cron update). Если команда, указанная выше,
не сработает, попробуйте заменить
portsnap -I cron update на
portsnap cron && portsnap -I update.Теги CVSПри получении или обновлении исходных текстов с использованием
cvs или
CVSup должен быть указан тег ревизии
Тег относится либо к определенной линии разработки &os;
либо к определенному моменту времени. Первый тип называется
тегом ветви, второй тип называется тегом
релиза.Теги ветвейВсе они, за исключением HEAD (который всегда
работает), относятся только к дереву src/.
Деревья ports/, doc/ и
www/ не имеют тегов ветвей.HEADСимволическое имя для основной ветви разработки,
FreeBSD-CURRENT. Используется по умолчанию, если тег не
указан.В CVSup, этот тег представлен
символом . (не знак пунктуации, а
символ .).В CVS тег по умолчанию используется, если тег не указан
вообще. Обычно не очень хорошей идеей является обновление
до CURRENT на машине со STABLE, только если вы не стремитесь
именно к этому.RELENG_6Ветвь разработки FreeBSD-6.X, известная также как
FreeBSD 6-STABLE.RELENG_6_0Ветвь релиза для FreeBSD-6.0, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_5Ветвь разработки FreeBSD-5.X, известная также как
FreeBSD 5-STABLE.RELENG_5_4Ветвь релиза для FreeBSD-5.4, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_5_3Ветвь релиза для FreeBSD-5.3, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_5_2Ветвь релиза для FreeBSD-5.2 и FreeBSD-5.2.1, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_5_1Ветвь релиза для FreeBSD-5.1, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_5_0Ветвь релиза для FreeBSD-5.0, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4Ветвь разработки FreeBSD-4.X, известная также как
FreeBSD 4-STABLE.RELENG_4_11Ветвь релиза для FreeBSD-4.11, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_10Ветвь релиза для FreeBSD-4.10, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_9Ветвь релиза для FreeBSD-4.9, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_8Ветвь релиза для FreeBSD-4.8, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_7Ветвь релиза для FreeBSD-4.7, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_6Ветвь релиза для FreeBSD-4.6 и FreeBSD-4.6.2, используемая
только для исправлений безопасности и других критических
исправлений.RELENG_4_5Ветвь релиза для FreeBSD-4.5, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_4Ветвь релиза для FreeBSD-4.4, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_4_3Ветвь релиза для FreeBSD-4.3, используемая только
для исправлений безопасности и других критических
исправлений.RELENG_3Ветвь разработки для FreeBSD-3.X, известная также как
3.X-STABLE.RELENG_2_2Ветвь разработки для FreeBSD-2.2.X, известная также как
2.2-STABLE. Эта ветвь по большей части устарела.Теги релизовЭти теги относятся к определенным моментам времени, когда
были выпущены конкретные версии &os;. Процесс выпуска релизов
более детально документирован в информации о выпусках релизов
и статье о
процессе подготовки релизов. Дерево
src использует имена тегов,
начинающиеся с RELENG_. Деревья
ports и
doc используют теги, имена
которых начинаются с RELEASE.
Наконец, в дереве www
нет специальных имен для релизов.RELENG_6_0_0_RELEASEFreeBSD 6.0RELENG_5_4_0_RELEASEFreeBSD 5.4RELENG_4_11_0_RELEASEFreeBSD 4.11RELENG_5_3_0_RELEASEFreeBSD 5.3RELENG_4_10_0_RELEASEFreeBSD 4.10RELENG_5_2_1_RELEASEFreeBSD 5.2.1RELENG_5_2_0_RELEASEFreeBSD 5.2RELENG_4_9_0_RELEASEFreeBSD 4.9RELENG_5_1_0_RELEASEFreeBSD 5.1RELENG_4_8_0_RELEASEFreeBSD 4.8RELENG_5_0_0_RELEASEFreeBSD 5.0RELENG_4_7_0_RELEASEFreeBSD 4.7RELENG_4_6_2_RELEASEFreeBSD 4.6.2RELENG_4_6_1_RELEASEFreeBSD 4.6.1RELENG_4_6_0_RELEASEFreeBSD 4.6RELENG_4_5_0_RELEASEFreeBSD 4.5RELENG_4_4_0_RELEASEFreeBSD 4.4RELENG_4_3_0_RELEASEFreeBSD 4.3RELENG_4_2_0_RELEASEFreeBSD 4.2RELENG_4_1_1_RELEASEFreeBSD 4.1.1RELENG_4_1_0_RELEASEFreeBSD 4.1RELENG_4_0_0_RELEASEFreeBSD 4.0RELENG_3_5_0_RELEASEFreeBSD-3.5RELENG_3_4_0_RELEASEFreeBSD-3.4RELENG_3_3_0_RELEASEFreeBSD-3.3RELENG_3_2_0_RELEASEFreeBSD-3.2RELENG_3_1_0_RELEASEFreeBSD-3.1RELENG_3_0_0_RELEASEFreeBSD-3.0RELENG_2_2_8_RELEASEFreeBSD-2.2.8RELENG_2_2_7_RELEASEFreeBSD-2.2.7RELENG_2_2_6_RELEASEFreeBSD-2.2.6RELENG_2_2_5_RELEASEFreeBSD-2.2.5RELENG_2_2_2_RELEASEFreeBSD-2.2.2RELENG_2_2_1_RELEASEFreeBSD-2.2.1RELENG_2_2_0_RELEASEFreeBSD-2.2.0AFS сайтыAFS серверы для FreeBSD работают на следующих сайтах:ШвецияЧасть файлов:
/afs/stacken.kth.se/ftp/pub/FreeBSD/stacken.kth.se # Stacken Computer Club, KTH, Sweden
130.237.234.43 #hot.stacken.kth.se
130.237.237.230 #fishburger.stacken.kth.se
130.237.234.3 #milko.stacken.kth.seОтветственный ftp@stacken.kth.sersync сайтыСледующие сайты организуют доступ к FreeBSD через протокол rsync
Утилита rsync работает в основном тем же
путем, что и команда &man.rcp.1;, но поддерживает больше параметров
и использует протокол удаленного обновления rsync, который передает
только разницу между двумя наборами файлов, что значительно повышает
скорость синхронизации по сети. Это особенно полезно, если вы
поддерживаете зеркало сервера FreeBSD FTP, или репозитория CVS.
Пакет rsync доступен для многих
операционных систем, в FreeBSD используйте порт net/rsync или пакет.Чешская республикаrsync://ftp.cz.FreeBSD.org/Доступные коллекции:ftp: Частичное зеркало FreeBSD FTP
сервера.FreeBSD: Полное зеркало FreeBSD FTP
сервера.Германияrsync://grappa.unix-ag.uni-kl.de/Доступные соединения:freebsd-cvs: Полный FreeBSD CVS
репозиторий.Этот компьютер помимо прочих также зеркалирует CVS репозитории
проектов NetBSD и OpenBSD.Нидерландыrsync://ftp.nl.FreeBSD.org/Доступные коллекции:vol/4/freebsd-core: Полное зеркало
FreeBSD FTP сервера.Великобританияrsync://rsync.mirror.ac.uk/Доступные коллекции:ftp.FreeBSD.org: Полное зеркало
FreeBSD FTP сервера.Соединенные Штаты Америкиrsync://ftp-master.FreeBSD.org/Этот сервер может использоваться только основными зеркалами
FreeBSD.Доступные коллекции:FreeBSD: Основной архив FreeBSD
FTP сервера.acl: Основной ACL список
FreeBSD.rsync://ftp13.FreeBSD.org/Доступные коллекции:FreeBSD: Полное зеркало FreeBSD FTP
сервера.
diff --git a/ru_RU.KOI8-R/books/handbook/preface/preface.sgml b/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
index e607d9986b..50c81b2a37 100644
--- a/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
+++ b/ru_RU.KOI8-R/books/handbook/preface/preface.sgml
@@ -1,676 +1,684 @@
ПредисловиеЦелевая
аудиторияЛюди, которые используют FreeBSD с недавнего времени, найдут, что
первая часть этой книги проводит читателя через процесс установки FreeBSD и кратко
освещает идеи и традиции, на которых базируется &unix;. Работа с этой частью
требует несколько большего, чем просто желание исследовать –
необходима возможность принимать к сведению новые идеи.Вторая, много большая часть Руководства, является всеобъемлющим
справочником о всех темах, которые могут интересовать администраторов
FreeBSD. Некоторые из глав этой части могут рекомендовать вам
предварительное чтение других документов, о чём упоминается в
кратком обзоре в начале каждой главы.Список рекомендуемой дополнительной литературы вы можете найти в
.Изменения по
сравнению со второй редакциейТретья редакция является кульминацией более чем двух лет работы
отдельных членов проекта документации FreeBSD. Вот основные
изменения в новой редакции:, Настройка и оптимизация,
была расширена новой информацией о ACPI управлении питанием
и ресурсами, системной утилите cron и дополнительных
параметрах оптимизации ядра., Безопасность, была расширена
новой информацией о виртуальных частных сетях (VPN),
списках контроля доступа файловой системы (ACL), и сообщениях
безопасности., Принудительный контроль доступа (MAC),
новая глава этой редакции. Она описывает, что такое
MAC и как этот механизм может быть использован для защиты
системы FreeBSD., Устройства хранения, была расширена
новой информацией о устройствах хранения USB, образах файловой
системы, квотах файловой системы, файловых системах в файлах
и в сети, зашифрованных дисковых разделах., Менеджер дискового пространства
Vinum, новая глава этой редакции.
В ней описано как использовать Vinum, менеджер логических
томов, который предоставляет независимые от устройств логические
диски и программные уровни RAID-0, RAID-1 и RAID-5.К , PPP и SLIP, был добавлен
раздел о решении проблем., Электронная почта, была
расширена новой информацией об использовании альтернативных
транспортных агентов, SMTP аутентификации, UUCP, fetchmail,
procmail, и другими разделами повышенной сложности., Сетевые серверы,
появилась в этой редакции. Эта главы включает
информацию о установке Apache HTTP Server, FTPd,
и настройке Samba сервера для клиентов Microsoft Windows.
Некоторые разделы были перемещены сюда из , Сложные вопросы работы в
сети., Сложные вопросы
работы в сети, была расширена новой информацией об использовании
устройств Bluetooth в FreeBSD, настройке беспроводных сетей,
и сетях Asynchronous Transfer Mode (ATM).Был добавлен глоссарий, объединяющий информацию о
технических терминах, используемых в книге.Множество эстетических улучшений были внесены в
таблицы и иллюстрации этой книги.Изменения во второй
редакцииВторая редакция является кульминацией более чем двухлетней
работы членов Проекта документации FreeBSD. Нижеследующий список
перечисляет все значительные изменения, внесенные в эту
редакцию:Был добавлен полный указатель тем.Все ASCII-иллюстрации были заменены на графические.Был добавлен стандартный краткий обзор к каждому разделу для
того, чтобы читатель мог получить представление о содержании
раздела и о том, что необходимо знать для его изучения.Содержимое было логически реорганизовано на три части: В
Начале, Системное администрирование и
Приложения. (Установка
FreeBSD) была полностью переписана, добавлено большое
количество снимков экрана, чтобы облегчить понимание текста
для новых пользователей. (Основы &unix;) была
расширена и содержит дополнительную информацию о процессах, даемонах и
сигналах. (Установка
приложений: порты и пакеты) была расширена и содержит
дополнительную информации об управлении бинарными пакетами. (X Window System) была
полностью переписана и обращает больше внимания на современные
технологии для рабочего стола, такие, как
KDE и GNOME на
&xfree86; 4.X. (Процесс загрузки
FreeBSD) была расширена. (Устройства хранения)
была составлена из того, что раньше было двумя различными главами:
Диски и Резервное копирование. Мы
считаем, что данные темы будут проще и более полно описаны как одна
глава. Был добавлен раздел о программном и аппаратном RAID. (Последовательные
коммуникации) была полностью реорганизована и
обновлена для FreeBSD 4.X/5.X. (PPP и SLIP)
была существенно обновлена.Было добавлено множество новых разделов в (Сложные вопросы работы в
сети). (Электронная почта)
была расширена, теперь она включает больше информации о настройке
sendmail. (Работа с приложениями,
написанными для &linux;) была дополнена включением
информации об установке &oracle; и
&sap.r3;.Следующие новые темы были рассмотрены в этой, второй,
редакции:Настройка и оптимизация ().Мультимедиа ()Структура этой
книгиЭта книга разбита на пять частей. В первой части, В
начале, рассматривается установка и основные навыки
использования FreeBSD. Предполагается, что читатель освоит эти разделы
последовательно, возможно пропуская разделы, в которых обсуждаются уже
знакомые для него темы. Вторая часть, Общие
задачи, рассказывает о некоторых наиболее часто
используемых возможностях FreeBSD. Этот раздел и все последующие
могут быть прочитаны не по порядку. Каждая
глава начинается с краткого обзора, который описывает, о чём говорится в
ней и что читатель должен будет знать для прочтения этой главы. Это
сделано для того, чтобы случайно встретивший этот материал читатель мог найти разделы, которые
его интересуют. В третьей части, Системное
администрирование, рассмотрены вопросы администрирования.
В четвертой части, Сетевые коммуникации,
охвачены темы, связанные с серверами и сетью. Пятая часть содержит
приложения и справочную информацию., ВведениеЗнакомит пользователя с FreeBSD. Рассказывает об истории проекта
FreeBSD, его задачах и модели разработки., УстановкаПроводит пользователя через весь процесс установки.
Обсуждаются также некоторые
более сложные вопросы установки, такие как установка по
последовательной консоли., Основы &unix;Рассказывает об основных командах и функциональности операционной
системы FreeBSD. Если вы знакомы с &linux; или другой &unix;-подобной
операционной системой, возможно, вы пропустите эту
главу., Установка приложений: порты и пакетыРассказывает о процессе установки программного обеспечения
сторонних производителей с использованием Коллекции Портов
FreeBSD и стандартных бинарных пакетов., X Window SystemОписывает X Window System вообще и использование
X11 под управлением FreeBSD в
частности. Также описывает популярные окружения рабочего стола,
такие как KDE и
GNOME., Приложения для настольного
компьютераПеречисляет некоторые популярные приложения для рабочей станции,
такие как веб-браузеры и офисные пакеты и описывает процесс их
установки на FreeBSD., МультимедиаПоказывает, как настроить поддержку воспроизведения звука и
видео на вашей системе. Также описывает некоторые примеры приложений
для воспроизведения звука и видео., Настройка ядра
FreeBSDОбъясняет, почему вам может понадобиться перенастроить ядро и
детально описывает процесс настройки, сборки и установки нового
ядра., ПечатьРассказывает об управлении принтерами в FreeBSD, включая
информацию об титульных страницах, учёте использования принтеров и
первоначальной настройке., Двоичная совместимость
с &linux;Описывает возможности &linux;-совместимости в FreeBSD. Также
предоставляет детальные инструкции по установке многих популярных
приложений для &linux;, таких как: &oracle;,
&sap.r3; и
&mathematica;., Настройка и оптимизацияОписывает всевозможные параметры настройки FreeBSD, которые может
использовать системный администратор для оптимальной настройки
системы. Также описывает различные конфигурационные файлы,
используемые в FreeBSD и расположение этих файлов на диске., Процесс загрузки &os;Рассказывает о процессе загрузки FreeBSD и объясняет, как
управлять этим процессом при помощи различных
настроек., Пользователи и основы управления
учётными записямиРассказывает о создании и управлении пользовательскими учётными
записями. Также обсуждает установку ограничений ресурсов для
пользователей и другие задачи управления пользователями., БезопасностьОписывает множество различных утилит, которые помогут вам
поддерживать FreeBSD в безопасном, надёжном состоянии, включая
Kerberos, IPsec и OpenSSH., Принудительный контроль доступа (MAC)Описывает что такое принудительный контроль доступа
(Mandatory Access Control, MAC) и как этот механизм может
быть использован для защиты системы FreeBSD., Устройства храненияОписывает как управлять накопителями информации и файловыми
системами в FreeBSD, включая физические диски, массивы RAID,
оптические и ленточные носители, диски в оперативной памяти и сетевые
файловые системы.
+
+ , GEOM
+
+ Рассказывает о подсистеме GEOM в FreeBSD и описывает различные
+ поддерживаемые уровни RAID.
+
+
+
, Менеджер дискового
пространства VinumРассказывает как использовать Vinum, менеджер логических
разделов, при помощи которого можно создавать и использовать
независимые от устройств хранения логические диски и программно
реализовывать RAID-0, RAID-1 и RAID-5., Локализация — I18N/L10N
использование и настройкаОписывает использование FreeBSD с языками, отличными от
английского. Рассказывает о локализации на уровне системы и
отдельных приложений., На переднем крае разработокОбъясняет различия между FreeBSD-STABLE, FreeBSD-CURRENT и
FreeBSD-RELEASE. Рассказывает, кому из пользователей будет полезно
отслеживать версию системы в разработке и вкратце описывает этот
процесс., Последовательные соединенияОбъясняет, как подключать терминалы и модемы к вашей
системе FreeBSD, как в
серверном, так и в клиентском режиме., PPP и SLIPОписывает использование PPP, SLIP или PPP через Ethernet для
соединения с удалёнными системами при помощи FreeBSD., Электронная почтаОписывает использование различных компонентов почтового сервера и
более углублённо рассматривает простые вопросы конфигурации для
наиболее популярного программного обеспечения почтовых
серверов: sendmail., Сетевые серверыПредоставляет детальные инструкции и примеры файлов настройки
для использования компьютера с FreeBSD в качестве файлового
сервера (NFS), сервера доменных имен (DNS), сервера сетевой
информационной системы (⋼), или сервера точного
времени (ntpd)., БрандмауэрыОписывает принципы, на которых основаны программные
брандмауэры, и содержит детали конфигурирования различных
брандмауэров, доступных в FreeBSD., Сложные вопросы работы в сетиРассматривает множество вопросов работы с сетью, включая
совместный доступ компьютеров вашей локальной сети к интернет,
расширенные вопросы маршрутизации, беспроводные соединения,
bluetooth, ATM, IPv6 и многое другое., Получение FreeBSD Перечисляет различные источники, из которых можно получить
FreeBSD на CDROM или DVD, равно как и различные сайты в интернет, с
которых можно скачать и установить FreeBSD., Библиография Эта книга касается многих различных тем, которые могут
сподвигнуть вас на более детальное изучение. Библиография
перечисляет множество отличных книг, упоминаемых в
тексте., Ресурсы в интернетОписывает множество форумов, доступных для пользователей FreeBSD,
где можно задать вопросы и поучаствовать в технических
обсуждениях FreeBSD., Ключи PGPСодержит ключи PGP некоторых разработчиков FreeBSD.Договоренности, используемые в
этой книгеДля того чтобы обеспечить целостность и простоту чтения текста в
данной книге, мы применяем некоторые договорённости.Типографические
договорённостиНаклонный шрифтНаклонный шрифт используется для имен
файлов, адресов в интернет (URL), выделенного текста и первого
применения технических терминов.Моноширинный шрифтМоноширинных шрифт используется для сообщений
об ошибках, команд, имен пользователей, названий групп, названий
устройств, переменных и фрагментов кода.Полужирный шрифтПолужирный шрифт используется для
обозначения приложений, команд и параметров.Пользовательский вводКлавиши представляются в виде полужирного текста для
того, чтобы выделяться среди остального текста. Комбинации клавиш, которые
должны вводиться одновременно, разделяются символом `+',
например:CtrlAltDelЭто будет означать, что пользователь должен нажать клавиши
Ctrl, Alt и Del
одновременно.Комбинации клавиш, которые должны вводиться последовательно,
разделяются запятыми, например:CtrlX,
CtrlSЭто будет означать, что пользователь должен нажать
Ctrl и X одновременно, после чего
одновременно нажать Ctrl и S.ПримерыПримеры, которые начинаются с E:\>
обозначают команды &ms-dos;. Если не указано обратного, эти команды могут
вводиться из окна Сеанс &ms-dos; в современных системах
µsoft.windows;.E:\>tools\fdimage floppies\kern.flp A:Примеры, которые начинаются с &prompt.root; обозначают команды, которые
должны быть запущены с правами суперпользователя в FreeBSD. Вы можете
войти в систему как пользователь root для того, чтобы
ввести эти команды или войти в систему обычным пользователем и использовать
&man.su.1; для того, чтобы получить привилегии суперпользователя.&prompt.root; dd if=kern.flp of=/dev/fd0Примеры, начинающиеся с &prompt.user;, указывают, что команда должна
быть исполнена с правами обычного пользователя. Если не указано
обратного, используется синтаксис C-shell для установки переменных
окружения и других команд.&prompt.user; topБлагодарностиКнига, которую вы держите в руках являет собой результат труда многих
сотен людей по всему миру. Не имеет значения, присылали ли они исправления
опечаток или предоставляли целые главы, их труд был полезен.Несколько компаний поддерживали разработку этого документа, оплачивая
авторам их труд, оплачивая публикацию и т.д. В частности, BSDi (в
последствии приобретённая компанией Wind River Systems) оплачивала труд
по улучшению этой книги участникам Проекта Документации FreeBSD, что в
итоге сделало возможным выпуск первой печатной версии в марте 2000 года
(ISBN 1-57176-241-8). Впоследствии компания Wind River Systems оплатила
работу нескольких авторов по улучшению генерации книги в удобном для печати
виде и добавлению нескольких глав. Кульминация этой работы являла собой
публикацию второй печатной версии в ноябре 2001 года (ISBN
1-57176-303-1). В 2003-2004 годах FreeBSD Mall, Inc заплатила
нескольким контрибьюторам за улучшение Handbook при подготовке к третьей
редакции.