Инструменты пользователя

Инструменты сайта


svn:install

Ставим SVN на FreeBSD

lonebuddha 2024/02/18 16:55

В этой статье описаны шаги установки SVN (Subversion) на FreeBSD.

Установка

pkg install subversion

Создание репозитория

cd <путь к репозиторию>
svnadmin create <имя репозитория>

Предварительная настройка

ee <путь к репозиторию>\<имя репозитория>\conf\svnserve.conf

Используя параметры anon-access - права анонимных пользователей и auth-access - права авторизованных пользователей настраиваем поведение репозитория

anon-access = none
auth-access = write

возможные значения none,read,write. Раскомментируйте строку (уберите решётку перед строкой):

password-db = passwd

Эта строка задает файл с пользователями SVN. Раскомментируйте строку (уберите решётку перед строкой):

authz-db = authz

Эта строка включает функции, отвечающие за разграничение прав пользователей.

Создание пользователей SVN

Откройте файл, который задан в файле svnserve.conf как файл со списком пользователей и их паролей в директиве password-db. По умолчанию этот файл называется passwd.

ee <путь к репозиторию>\<имя репозитория>\conf\passwd

Впишите в этот файл нужных Вам пользователей и их пароли (синтаксис логин = пароль).

Создание групп пользователей

Для удобства администрирования можно создать группы, но делать это не обязательно. Итак, если Вы хотите создать группы, откройте файл, который задан в файле svnserve.conf как файл со списком пользователей и их паролей в директиве authz-db. По умолчанию этот файл называется authz, найдите [groups] и после примеров впишите:

название_группы = пользователь1,пользователь2,...,пользовательN

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

Настройка прав доступа

В том же текстовом файле authz, что и на предыдущем шаге, ищем «### ACCESS CONTROL SECTION«. После этой секции идёт указание прав доступа для каталогов svn-сервера.

# Указываем каталог
[/]
# Задаем права для групп, отдельных пользователей. * - все остальные
@название_группы = rw
пользователь1,пользователь2 = r 
* =

Таким образом, rw означает полный доступ (чтение, создание, редактирование, удаление), r (только чтение) и пустая строка — нет доступа.

Создание пользователя для запуска демона

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

adduser
Username: svn
Full name: subversion
Uid (Leave empty for default):
Login group [svn]: svn
Login group is svn. Invite svn into other groups? []:
Login class [default]:
Shell (sh csh tcsh date bash rbash nologin) [sh]: nologin
Home directory [/home/svn]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]: no
Lock out the account after creation? [no]: no

Запуск сервера

Cконфигурируем скрипт запуска в /usr/local/etc/rc.d будет скрипт svnserve его править не нужно там и так указано что все запускаться будет от имени пользователя svn, которого мы выше создали. видно что там используются переменные, их нужно задать в /etc/rc.conf

ee /etc/rc.conf

добавим строки

svnserve_enable=«YES» # так он станет демоном
svnserve_data="путь к репозиторию" # определяем домашний каталог

теперь пора запустить сервер

service svnserve start

запустился ли svn-сервер смотрим так:

ps -ax | grep svn
/www/sites/dokuwiki.win-labs.ru/www/data/pages/svn/install.txt · Последнее изменение: 2024/03/05 15:18 — 127.0.0.1

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution 4.0 International
CC Attribution 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki