/sys/doc/ Documentation archive

Установка Fossil

Используйте Venti для получения наибольшей производительности сервера Fossil (см. документ Установка Venti).

Если вы используете сервер Venti на локальной машине, вам нужно узнать свой IP адрес (cat /net/ndb) и установить значение переменной:

в окружении.

Основным хранилищем данных для Fossil является сервер Venti. Fossil сохраняет dirty блоки и эфемерные картины всех файлов на локальном дисковом разделе под названием буфер записи (write buffer).

Буфер записи не обязательно должен быть одинаковым по размеру с файловой системой, которую он хранит, но, если он большой, то проблем меньше + легкая инициализация. Лэптоп Расса Кокса (Russ Cox, rsc) использует гигабайтовый буфер записи, при чем исходный тексты используют все-навсего полгигабайта.

Отформатируйте буфер записи командой:

Затем создайте файл под названием flproto, содержащий строки:

Если вы хотите узнать, что означает каждая из команд, прочитайте страницу fossilcons(8). Выполните:

для запуска fossil, выполнения сценария flproto и подключения к консоли.

В случае, если какая-нибудь из команд не срабатывает, сценарий не будет продолжать работу. Подключение к /srv/fscons должно вывести сообщения об ошибках. Если вы нажмете Enter несколько раз, то получите:

(Первое приглашение выводится перед запуском сценария. Последняя команда в сценарии изменяет файловую систему по-умолчанию на «main»; последующие приглашения показывают именно его.)

Создайте новое окно и подмонтируйте fossil:

Теперь у вас есть консольное окно и окно, содержащее подмонтированный fossil. Некоторое время вы будете переключаться между ними. Примеры покажут приглашение «%» для команд оболочки и «main: » — для консольных команд fossil.

Флаги -AWP в команде open отключают аутентификацию, включают произвольные wstats и выключают проверку разрешений.

Файловая система fossil имеет три основных дерева каталогов: /active, /archive и /snapshot. Активная файловая система находится в каталоге /active. Когда вы подмонтировали каталог /srv/fossil, вы автоматически подключили его к /active. О деталях читайте fossil(4).

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

Возможно, вам захочется использовать тот же набор пользователей, что и в вашей текущей файловой системе. Формат файла был немного изменен, так что теперь первое поле — строка, а не число. (Строка описывает структуру диска fossil, подобно числу, хранящемуся в kfs и структуре диска fs.) Чтобы преобразовать файл, выполните:

Здесь используется /adm/users из вашей локальной kfs. Теперь дайте команду fossil выполнить перезагрузку файла пользователей:

Протестируйте результативность перезагрузки:

Команда chgrp должна быть успешной, если этого не произошло, то у вас проблема с таблицей пользователей.

Настало время проинициализировать файловую систему. Это можно сделать таким образом:

Если ваша kfs и буфер записи fossil находятся на одном диске, то вы можете заметить, что запуск первого, а затем второго — значительно быстрее, таким образом, они не оспаривают диск:

Теперь у вас есть файловая система. Файл пользователей, вероятно, только что был переписан, так что верните его назад:

Эта команда перепишет файлом /adm/users текущую таблицу пользователей сервера.

Создайте картину всех файлов:

После короткой паузы диск начнет жужжать, так как все блоки, которые вы скопировали, сейчас отправляются на Venti. В конечном счете эта операция завершится.

Теперь убейте fossil и перезапустите его:

В консольном окне вам опять необходимо подключится к /srv/fscons.

Проверьте все ли на месте:

Не плохо, не так ли?

Теперь мы готовы к настоящим действиям. Добавьте строку

в файл flproto и удалите флаги -AWP из open. Перезапустите fossil:

Если вы хотите сохранить сеть, выполните команды:

в flproto или консоли. Теперь другие могут подключаться.

Соединения (даже к локальным /srv файлам) аутентифицируются посредством factotum. Если вы загружаете автономный сервер и не используете ключи p9sk1, вам необходимо добавить ключ к вашему factotum для использования при аутентификации. Особенно, если

ничего не находит, в таком случае вы должны дать следующую команду:

для установки ключа. Это будет нужно для монтирования при работе без флагов -AWP.

Имя пользователя должно совпадать с вашим именем на локальной машине. На пароль нет ограничений. (Так как оба монтирования и fossil используют одинаковый factotum и одинаковые ключи, аутентификация должна быть успешной!)

Примите наши поздравления! Вы владеете fossil.

Для получения большей информации смотрите fossil(4) и fossilcons(8).

Загрузка автономной системы fossil

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

Есть возможность сборки ядра, которое загружалось бы из локальной системы fossil. Точкой отсчета является конфигурация pc ядра — pcfl. Скопируйте pcfl в файл pcваше-сист-имя, а затем:

Создайте файл /sys/lib/sysconfig/ваше-сист-имя и заполните его. Файлы в каталоге /sys/lib/sysconfig/fl являются хорошей точкой отсчета. Отредактируйте их, чтобы они подходили вашей установке. Если конкретно, то вам нужно:

Теперь вы готовы для сборки ядра и его загрузки. Для построения вам нужно запустить lnfs.

Если что-нибудь не так, то ядро не загрузится. И настает время для отладки…

Использование зеркала с fossil

Устройство fs(3) может использоваться для создания зеркала ваших разделов fossil и venti. К примеру, для установки зеркала /dev/fs/fossil, которое является RAID-массивом /dev/sdC0/fossil и /dev/sdD0/fossil, выполните:

После этого, используя /dev/fs/fossil, вы можете запускать fossil. Намного эффективнее установить зеркало перед форматированием раздела и инсталляцией на него fossil.

Устройство fs(3) не включено в дистрибутив plan9.iso.bz2 (по данным 6 июня 2003 г.) и вам требуется установить ночной снимок системы или же использовать replica/pull(1) (читайте Обновление системы).

Если у вас уже есть fossil и вы хотите добавить диск для его зеркалирования, то можете установить зеркало как это описано выше, запустите fossil и пока вы работаете, используйте команду dd(1) для копирования первого устройства на новое. Дальше используйте cmp(1) для соединения устройства с другим. Если что-то пошло не так, повторите процедуру.

Если вы используете автономную fossil систему, тогда вам необходимо изменить /sys/lib/sysconfig/имя-вашей-системы/boot для установки зеркала перед запуском fossil. Например, вот так:

где fossil proto файл (flproto) должен использовать устройство fs(3):

Copyright © 2003 Перевод Андрей С. Кухар. Последняя модификация 24.08.2003