Строим сеть на Calculate Directory Server

журнал "Системный администратор" август 2009


СЕРГЕЙ ЯРЕМЧУК, инженер автоматизации. Автор более 800 статей и 4 книг. В «Системном администраторе» публикуется с первого номера.
Интересы: сетевые технологии, защита информации, свободные ОС

Принято считать, что управлять большим количеством Linux-систем очень сложно, разработчики Calculate Linux доказали, что это не так

Here all my tuxian friends are scared when it comes to gentoo or anything related to it. they say,
"hands will be on fire, if you touch it" so much customizable. now everyone is talking
of Calculate Linux. its a real blessing, i must say.

Все мои друзья пугаются, когда речь идет о Gentoo. Они говорят: «Руки будут гореть, если прикоснуться к нему», –
столько настроек. Сейчас они говорят о Calculate Linux. Я должен сказать, это реальное благословление.

Из сообщения в IRC проекта Calculate Linux

Зачем еще одно «поделие»?

Учитывая, что подобный вопрос неизменно появляется в качестве комментариев после анонса любого нового дистрибутива, следует уделить несколько строк проекту Calculate Linux.

Linux-системы ассоциируются с несколькими понятиями – бесплатность, доступность, стабильность, безопасность, управляемость, доступ к коду и возможность его изменения. Но именно бесплатность ставят на первое место, когда рассматривается вопрос о внедрении. Делая ставку на то, что системы на базе этой ОС можно свободно скачать и использовать без отчислений и постепенно довести ИТ-инфраструктуру до необходимого уровня. Учитывая затяжное внедрение и необходимость в наличии подготовленных кадров, основной упор при переходе на Linux переносится с цены приобретения на стоимость сопровождения. Именно такой аргумент приводят сторонники Microsoft, указывая, что совокупное владение Linux, несмотря на нулевую стоимость, все-таки выше именно за счет обучения и оплаты системного администратора, службы поддержки и обслуживания. Вероятно, в условиях кризиса в этом даже больше выгоды, так как финансирование внедрения Linux не будет требовать больших первоначальных вложений, а развитие ИТ-инфраструктуры может идти и финансироваться постепенно, по мере необходимости. Но как раз без должного финансирования переход на свободные ОС может длиться лишь усилиями энтузиастов и длиться не один месяц.

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

Причем здесь Calculate Linux? Ответ дан в кратком описании на сайте «Calculate Linux – это открытый проект по внедрению Linux повсеместно. Проект представляет свободный и легкий доступ ко всем возможностям Gentoo». Прошу заметить, первым в списке задач стоит именно внедрение, дистрибутив лишь инструмент, обеспечивающий простоту внедрения. Собственно, и проект возник в результате перевода систем ЗАО «Калкулэйт Пак» на Linux, что примечательно – ЗАО не имеет никакого прямого отношения к ИТ. Идейным вдохновителем и руководителем является Александр Трацевский, основная группа разработчиков включает еще двух человек.

Постепенно накапливался опыт, выбирались оптимальные процедуры обновления систем и программ, входящих в состав дистрибутива, оконный менеджер и его формление, появились утилиты собственной разработки. Использование единой учетной записи позволяет не только удобно управлять доступом к ресурсам в пределах организации, но и пользователь теперь не привязан к рабочему месту. После регистрации получает с сервера свое рабочее окружение со всеми файлами и настройками. Все это работает «из коробки», настраивается очень просто и не требует от администратора глубоких знаний Linux-систем (хотя они в любом случае приветствуются). Конечно, все это делалось под нужды определенной структуры, так как это удобно самим разработчикам, вводилось постепенно, не за один день. Но как показывает тестирование, довести до ума сеть на Calculate Linux можно на порядок быстрее, чем на Gentoo, который и является основой Calculate. При этом совместимость с Gentoo сохранена на 100%, все дополнительные пакеты собираются из ebuild-файлов Calculate Overlay. Релизы системы выходят стабильно раз в месяц (как правило, в первых числах), система нумерации подобна Ubuntu (год.месяц). Актуальной на момент написания статьи является версия 9.7, но уже полным ходом идет работа над 9.8, в которой нам обещают еще одну новинку – Calculate Linux Scratch (CLS), который позволит быстро собрать свой вариант дистрибутива.

Вполне естественно, что настало время поделиться своим опытом с другими и, возможно, привлечь к проекту разработчиков. Постепенно был открыт сайт, форум и IRC-канал #calculate на irc.freenode.net. Учитывая более простую систему установки и обновления, ежемесячный цикл выхода релизов, не требующих самостоятельно пересобирать систему и тестировать приложения на совместимость, многие пользователи выбрали Calculate вместо Gentoo в качестве настольной системы.

В настоящее время проект предлагает три варианта системы. Серверная версия – Calculate Directory Server (CDS), основой которого является LDAP-сервер, используемый для авторизации пользователей, централизованного хранения профилей, прав доступа, настроек сеансов пользователей и настроек приложений в едином сетевом хранилище. Поддерживается репликация почтовых и Samba-серверов, централизованное обновление серверов и рабочих станций, резервирование и восстановление данных.

Его альтернативой можно считать Mandriva Directory Server [3] стоимостью 5550 руб или Red Hat Directory Server (RHDS) [4]. Основной компонент для RHDS – 389 (ранее Fedora Directory Server Project) [5] доступен свободно, правда, с установкой в дистрибутиве, отличном от Red Hat, придется немного повозиться. Но главное – по возможностям оба этих решения уступают бесплатному CDS.

И две настольные – Calculate Linux Desktop (CLD) с рабочей средой KDE 4.x и Calculate Linux Desktop XFCE (CLDX) с рабочим столом XFce. Последняя имеет меньшие системные требования и ориентирована на применение на маломощных машинах. CLDX – это первая проба, основной настольной системой считается именно CLD, который максимально адаптирован для совместной работы с CDS. При подключении к домену с сервера забираются профили пользователей, автоматически подключаются сетевые папки, каталог FTP, соответствующий ярлык появляется на рабочем столе. Кроме этого пользователь автоматически получает доступ к почтовому, Jabber и прокси-серверу (если он ему разрешен). И главное, все это просто настраивается.

Следует отметить документацию проекта, написанную без излишних технических подробностей «под себя», но с массой практических примеров для всех вариантов использования системы. Жаль только, что она иногда запаздывает, и из всего многообразия пошаговое руководство для новичка, позволяющее настроить полноценную сеть, сложить трудно, потребуется все-таки некоторый опыт в администрировании систем. Хотя заметно оживление, возможно, в будущем проблема документации будет решена. Собственно, и сама статья является попыткой свести все к одному логическому знаменателю. Система работает на Intel-совместимых процессорах, не ниже Pentium Pro (i686, x86_64), поддерживает установку на PATA-, SATA- и SCSI-контроллеры, имеет поддержку сетевого беспроводного оборудования Wi-Fi. Интересно, что совсем молодой Calculate Linux по рейтингу Distrowatch.com занимает первое среди дистрибутивов, сделанных в России (общее 72 место).

Теперь рассмотрим, как настроить связку CDS и CLD/CLDX.

Установка Calculate Linux

Перед загрузкой рекомендую на всякий случай ознакомиться с документом «Структура FTP-зеркала», это снимет ряд вопросов, что и где скачивать. Дистрибутив CDS и CLDX поставляется в виде LiveCD, а CLD – LiveDVD ISO-образов. Образы находятся в одноименных каталогах, внутри – отдельные подкаталоги со сборками для i686- и x64-систем. Здесь же доступны tar.7z-архивы, которые предназначены для обновления дистрибутива и по составу приложений не отличаются от ISO-вариантов. Последние версии Calculate поддерживают обновление и из установочных ISO-образов, поэтому дополнительно tar.7z-файл скачивать уже не обязательно.

Аппаратные требования системы для работы невысоки: процессор класса i686, 256 Мб ОЗУ (512 Мб для CLD) и 3 Гб (6 Гб CLD) на жестком диске. После перехода в версии 9.6 на использование алгоритма LZMA во время установки требуется не менее 1 Гб ОЗУ, иначе копирование файлов завершается с ошибкой. Решить проблему можно, подключив swap-раздел командой swapon. Разработчики знают о проблеме, и уже в CLD 9.7 установочный скрипт самостоятельно монтирует swap-раздел перед началом копирования файлов (в CDS 9.7 для этого необходимо обновить установщик).

Установка дистрибутива на жесткий диск, обновление, а также сборка загрузочного ISO-образа системы производится при помощи Perl-утилиты calculate собственной разработки, работающей в консоли. Несмотря на отсутствие каких-либо графических инструментов, процесс инсталляции очень прост. Следует загрузиться в Live-режиме (при наличии 2 Гб памяти можно выгрузить образ в ОЗУ), обновить скрипт calculate.

В версии 9.6 для этого следовало выполнять:

# calculate --update

В релизе 9.7 появилась новая версия calculate 1.1.0, которая не поддерживает параметра --update, поэтому обновлять следует через emerge:

# layman -S && emerge calculate

Далее два варианта установки. Первый – самый простой и почему-то до сих пор недокументированный на сайте проекта. При наличии жесткого диска размером больше 45 Гб (при установке на флешку достаточно 512 Мб) утилита calculate умеет автоматически разбивать пространство и создавать разделы (все разделы будут уничтожены). В этом случае в качестве параметра необходимо указать только диск:

# calculate --disk=/dev/sda

В результате будет установлена система, жесткий диск будет разбит на такие разделы:

/dev/sda1 swap
/dev/sda2 (/) 10 Гб (десктоп) или 20 Гб (сервер)
/dev/sda3 (/)10 Гб (десктоп) или 20 Гб (сервер)
/dev/sda4 Extended
/dev/sda5 Linux (/var/calculate – для CDS/CLD/CLDX)

Именно такая схема рекомендуется разработчиками, и, чтобы получить все преимущества Calculate, ее желательно придерживаться (почему – объясню чуть позже). Под корневой раздел можно отвести меньшее место (в документации указано 10-20 Гб, но нижний предел можно сделать еще меньше, установка занимает меньше 3 Гб).

Если в результате работы скрипта получаем сообщение:

The size of the disk is not sufficient to perform automatic partitioning!

то жесткий диск необходимо разметить вручную, при помощи fdisk/cfdisk. И указать затем на корневой в параметре запуска:

# calculate --disk=/dev/sda2

При большом количестве однотипных систем (типичные размеры жестких дисков 20, 30, 40, 80 Гб …), проще подправить скрипт calculate, указав свои настройки.

Например, за проверку объема диска отвечает такая строка:

if($size < 45){ printmes(gettext('The size of the disk is not sufficient to perform automatic partitioning')."!\n");

Указываем свой минимальный размер вместо 45. Параметры для разметки диска берутся из одного из файлов fdisk.*, соответствующего версии системы, который находится в /usr/calculate/install/config. Внутри файла – набор команд для fdisk, просто указываем другие размеры.

Разделы Calculate

Теперь следует разобраться, зачем используется такая довольно нестандартная схема разделов. Обновить Calculate можно стандартным для Gentoo способом, как описано в документации проекта Gentoo.

# emerge --sync && emerge -uD world
# env-update

Но в Gentoo изначально отсутствует понятие релиза как такового, любая сборка считается стабильной, поэтому главная идеология проекта гласит – хочешь иметь стабильную систему – обновляй все. Версии пакетов привязаны к профилю, руководство рекомендует обязательно обновлять профиль, если он объявляется нежелательным. В итоге после нескольких часов пересборки системы приходится еще заниматься адаптацией существующих настроек программ к их новым версиям. Если на домашнем (персональном) компьютере это может быть приемлемо, то простой даже одного сервера или рабочей системы пользователей на предприятии невозможен. А что делать, если их несколько сотен? Именно поэтому многие администраторы, использующие Gentoo, обновляют систему на сервере максимум один раз, на вторую попытку уже мало кто решается.

Разработчики Calculate сумели выйти из этого положения, вероятно, кому-то покажется, что не так элегантно, но зато весьма практично и безопасно. После того как новый релиз будет протестирован и выпущен, ISO-образ или tar.7z-архив, достаточно скопировать в каталог /usr/calculate/share и ввести команду calculate. Инсталлятор определит текущий корневой раздел и распакует дистрибутив во второй (свободный) корневой раздел, перенесет пользовательские настройки и перенастроит загрузчик GRUB. Если обновление произошло неудачно, то у пользователя всегда будет возможность вернуться в старую рабочую систему. В результате переустановка или обновление системы на порядок упрощается и происходит приблизительно за 5-7 минут. Такое обновление очень легко автоматизировать. Достаточно на сервере открыть доступ по NFS, который и примонтировать на клиентских системах в раздел /usr/calculate/share и добавить команду calculate в скрипты, выполняющиеся при выключении системы. Пользователь утром будет работать в новой версии.

В /usr/calculate/share помимо обновлений системы (каталог linux) хранятся другие полезные ресурсы, такие как пакеты программ (distfiles), внешние профили установки (profile), патчи в виде выполняемых скриптов для внесения изменений в системы (patch), бинарные пакеты для быстрого обновления (packages). Именно чтобы упростить перенос данных, каталог /var/calculate, в котором находятся настройки для подключения к серверу (/var/calculate/calculate.env) и пользовательские данные, рекомендуется сохранить в отдельном разделе. После ввода клиентской системы в домен CDS каталог /home будет располагаться в /var/calculate/client-home (монтируется через bind).

Утилиты Calculate

Управление LDAP, Samba и другими сервисами при помощи штатных утилит требует понимания процесса, то есть некоторой подготовки, что обычно отпугивает новичков. Чтобы упростить администрирование CDS, разработчики создали набор утилит (скриптов на Python) под общим названием Calculate 2, при помощи которых и производятся настройки единого интерфейса, основных сервисов – учетных записей LDAP, а также настройки Squid, FTP, UNIX, Samba и почтовых серверов.


Рисунок 1. Утилиты Calculate 2 – основа Calculate Directory Server

Распространяется Calculate 2 под свободной лицензией Apache2 и может быть использована на любом Gentoo-совместимом дистрибутиве. Учитывая, что вся идея дистрибутива заложена в Calculate 2, чтобы понять его суть, следует вначале хотя бы вкратце познакомиться с этими утилитами. Утилиты и библиотеки Calculate 2 в зависимости от назначения распределены в трех пакетах: calculate-server, calculate-client и calculate-lib. Чтобы узнать назначение конкретной утилиты, следует ее запустить с параметром --help или --help-название_сервиса (--help-samba).

В пакете calculate-server находится несколько утилит, в скобках приведены примеры использования:<br>
cl-usermod/cl-groupmod – модификация пользовательского профиля/группы в LDAP (cl-usermod -a test guest unix);<br>
cl-userdel/cl-groupdel – удаление учетной записи/группы из LDAP, без параметра -r создается резервная копия удаляемой записи (cl-userdel guest samba);<br>
cl-useradd/cl-groupadd – создание учетной записи пользователя/группы в LDAP (cl-useradd guest samba);<br>
cl-update – обновление конфигурационных файлов определенного сервиса (cl-update samba);<br>
cl-setup – управление сервисом (cl-setup samba);<br>
cl-replication – настройка репликации между LDAP-сервисами (cl-replication –r server mail);<br>
cl-rebuild – перестройка конфигурационных файлов и LDAP-базы для всех сервисов возможна с использованием резервной копии, находящейся /var/calculate/server-backup/ldap или с другого сервера (cl-rebuild);<br>
cl-passwd – установка/изменение пароля для пользователя unix, samba, mail, Jabber, ftp и proxy (cl-passwd test samba);<br>
cl-info – получение информации о сервисе (например, обо всех UNIX-пользователях – cl-info -u --full unix);<br>
cl-backup – создание резервной копии и восстановление всех установленных (при помощи cl-setup) сервисов (cl-backup --backup/cl-backup --restore).

Кроме этого, в состав пакета входят и утилиты для служебных целей – replcron, repldap, proxy, вызываемые по мере необходимости из скриптов cl-*.

В клиентском пакете calculate-client всего три утилиты:

cl-sync – если пользователь зарегистрирован в домене, утилита синхронизирует настройки сеанса пользователя с сервером при входе в систему и при завершении сеанса и монтирует домашний каталог пользователя (/home/$USER/Home) и сетевые ресурсы (/home/$USER/Disk). Для передачи используется rsync, то есть передаются только изменения, что минимизирует трафик.

cl-createhome – во время входа в систему производится настройка сеанса по профилям, расположенным на клиентской системе в /usr/lib/calculate/calculate-client/profile и на сервере /var/calculate/remote/client-profile.

cl-client – при вводе ПК в домен монтируется сетевой диск в /var/calculate/remote, место для размещения профилей учетных записей пользователей.

При этом названия и параметры утилит по работе с учетными записями пользователей схожи с аналогичными UNIX-командами (useradd, groupmod, passwd и проч.), что упрощает работу с Calculate.


Рисунок 2. Информация о пользователе UNIX

Профили – это еще одна из особенностей дистрибутива. Вместо прямого редактирования конфигурационных файлов Calculate хранит отличия от оригинала в файлах профиля, что упрощает перенос и модификацию данных, настройку сервисов, программ и окружения пользователя. Профили делятся на 3 типа – системный, сервиса и пользователя. И по расположению – базовый, внешний и локальный. Профили находятся в скрытых файлах .calculate_directory и могут накладываются как во время первого входа в систему, когда /home/$USER нет либо он пустой, так и при каждом входе в систему.

Таким образом можно пресечь попытки изменить стандартные настройки некоторых приложений всеми либо определенными группами пользователей.

Подробнее о профилях можно посмотреть в документе «Работа_с_профилями» [7].

После установки сервера обновите оверлей и утилиты:

# layman -S && emerge calculate-server calculate-lib

На клиентской машине соответственно:

# layman -S && emerge calculate-client calculate-lib

Устанавливаем контроллер домена

После перезагрузки регистрируемся с правами root. При наличии DHCP-сервера сеть будет определена автоматически, иначе ее следует настроить при помощи команды «net-setup eth0», которая поможет настроить ее при помощи псевдографического меню. Команда netstat показывает, что после установки CDS открыты порты SSH, NTP и Bootpc. Кроме этого, в списке обнаруживается полный набор сервисов – Apache 2.2.11, BIND 9.4.3, Squid 3.0.15, Sarg 2.2.5-r5, HAVP 0.89, Postfix 2.5.5, Dovecot 1.1.7-r1, PPTPD 1.3.4, ejabberd 2.0.5-r1, PostgreSQL 8.3.7, ProFTPD 1.3.2-r2, OpenLDAP 2.4.16, Clamd 0.95.1, Clamsmtpd 1.9.


Рисунок 3. Получаем информацию о пользователе домена

Для настройки контролера домена нам понадобится LDAP и Samba, запускаем при помощи cl-setup. Команда проста:

# cl-setup ldap

Программа выполнит настройку LDAP, администратор получит предупреждение о том, что база данных будет перезаписана (архив сохраняется в /var/calculate/server-backup/ldap). Также сервис будет добавлен в автозагрузку. Теперь аналогично настроим сервисы UNIX и Samba.

# cl-setup unix

Этой командой мы подключаем возможность аутентификации учетных записей c системными ID, хранящихся в LDAP. И наконец:

# cl-setup samba

Будет запущен сервис Samba и созданы служебные пользователи client и admin, необходимые для ввода соответственно Linux- и Windows-компьютеров в домен. Последовательность запуска важна. Так как, например, введя перед запуском LDAP команду «cl-setup unix», получим предупреждение:

* LDAP service not setuped
* Setup LDAP service
* cl-setup LDAP

Список настроенных сервисов можно узнать, просмотрев файл /etc/calculate/calculate.env:

# cat /etc/calculate/calculate.env

[server]
sr_ldap_set = on
sr_unix_set = on
sr_samba_set = on

Пароли доступа всех сервисов к LDAP хранятся в /etc/calculate/calculate.ldap (при запуске сервиса они генерируются случайным образом и уникальны для каждой системы).

# cat /etc/calculate/calculate.ldap

[admin]
DN = cn=ldapadmin,dc=calculate
PASS = fGdRTtajX
[unix]
DN = ou=Unix,ou=Services,dc=calculate
PASS = Fcy9dsW0y
[samba]
DN = ou=Samba,ou=Services,dc=calculate
PASS = iPyEgQTXx

Установим пароль для учетных записей client и admin, которые используются для ввода в домен соответственно Linux- и Windows-машин:

# cl-passwd --smb client samba

New password:
Retype new password:
  * Samba password of user admin is changed

# cl-passwd --smb admin samba

Подключение Linux-клиента к домену

Регистрируемся на клиентской Linux-системе как root, и вводим ее в домен, указав в качестве параметра cl-client имя сервера CDS или его IP-адрес. По ходу будет запрошен пароль учетной записи client:

# cl-client 192.168.17.147

Пароль для ввода рабочей станции в домен:
  * Подключен Samba-ресурс [remote] ...
  * Подключен /var/calculate/clinet-home ...
  * Компьютер введен в домен 192.168.17.147 ...

Команду рекомендуется вводить в локальной или удаленной (через SSH) консоли, а не под Х. И вот почему. При успешном входе в домен будет выполнено ряд действий. Изменятся настройки файлов /etc/pam.d/system-auth, /etc/nsswitch.conf, в которых будут подключены пользователи Samba-сервера. В /var/calculate/remote будет смонтирован сетевой ресурс.

# mount | grep remote

//192.168.17.147/remote on /var/calculate/remote type cifs (rw,mand)

Пока в указанном каталоге находится файл /var/calculate/remote/calculate.env настройками LDAP:

[client]
ur_organization =
ur_signature =
ld_samba_dn = ou=Samba,ou=Services,dc=calculate
ld_unix_dn = ou=Unix,ou=Services,dc=calculate
sr_samba_host = calculate.local
ld_services_dn = ou=Services,dc=calculate
ld_bind_dn = cn=proxyuser,dc=calculate
ld_bind_pw = calculate
ld_base_dn = dc=calculate

Можно его скорректировать, вписав в поле ur_organization название организации, а в ur_signature – подпись в почтовом сообщении. Чтобы исключить конфликты с локальными пользователями, поверх /home будет смонтирован локальный каталог /var/calculate/client-home. Именно поэтому на подключаемой системе лучше пока не работать.

# mount | grep home

/var/calculate/client-home on /home type none (rw,bind)

Сами разработчики не рекомендуют заводить локальные учетные записи (кроме стандартных root и guest, которые после ввода в домен будут недоступны), чтобы их ID не совпадали с ID пользователя в LDAP.

Чтобы вывести компьютер из домена, достаточно дать команду, зарегистрировавшись через SSH как локальный root:

# cl-client -r

* Компьютер выведен из домена 192.168.17.147 ...   [ ok ]

Введенный пароль для подключения к домену на клиентской системе кэшируется в файле calculate.env.

# cat /var/calculate/calculate.env

[client]
сl_remote_host = 192.168.17.147
cl_remote_pw = password

Как подключить Windows-систему, хорошо расписано в документе «Переход на использование Linux», но Calculate/Gentoo Linux является предпочтительным при работе с CDS. Чтобы предоставить доступ пользователей к определенным ресурсам компьютера, системные UNIX-группы из /etc/group необходимо продублировать в LDAP-сервере при помощи команды cl-groupadd. Например:

# cat /etc/group | grep scanner

scanner:x:441

# cl-groupadd -f -g 441 scanner samba

* Added group 'scanner' in Samba service

Кроме этого, учетная запись должна быть включена хотя бы в одну пользовательскую группу. Группы являются средством разграничения прав, поэтому в организации их может быть несколько. Например, создадим группу it.

# cl-groupadd it samba

* Added group 'it' in Samba service

Полностью команда для создания учетной записи выглядит так.

cl-useradd -p -c "Полное имя" -g пользовательская_группа -G системная_группа -p логин samba

Например:

# cl-useradd -p -c "Сергей Яремчук" -g it -G audio,lp,plugdev,scanner,video -p grinder samba

Вводим два раза пароль и получаем:

* Added user grinder in Unix service
* Added user grinder in Samba service

После входа пользователя на клиентской системе будет скопирован профиль, а на рабочем столе выведены ярлыки для доступа к его домашнему каталогу, ресурсам Samba и FTP (если настроен). Если перейти на другой компьютер, даже находящийся в другой подсети домена, то все настройки перекочуют за пользователем.

Все группы, в которые должен быть включен пользователь, уже должны быть созданы, иначе получаем ошибку:

* Group it is not found
* Can not add user grinder in Unix service

Удаляется учетная запись при помощи cl-userdel, но его домашние каталоги на сервере не удаляются (это нужно делать вручную). Поэтому при повторном использовании логина получаем сообщение:

* Path /var/calculate/server-data/samba/home/grinder exists
* Can not add user grinder

Для получения информации об учетных записях Samba используется cl-info. Например, выведем данные обо всех пользователях:

# cl-info -u samba

All users in LDAP for service Samba

+---------+-----------------------------+------+----------+
| Login   | Name                        | Lock | Password |
+---------+-----------------------------+------+----------+
| client  | Client unix workstation     | No   | Yes      |
| admin   | Administrator samba service | No   | Yes      |
| grinder | Сергей Яремчук              | No   | Yes      |
+---------+-----------------------------+------+----------+

Теперь по конкретной учетной записи:

# cl-info -U grinder samba

Чтобы запустить после настройки сервисы, не поддерживаемые утилитами Calculate 2 (вроде Apache 2), введите:

# rc-update add apache2 default
# /etc/init.d/apache2 start

Настройка почтового (Postfix/Dovecot) и Jabber-сервисов хорошо расписана на сайте проекта, команды для добавления сервиса и учетной записи аналогичны. В документации можно найти скрипт, при помощи которого пользователь подключается ко всем сервисам. Поэтому подробно останавливаться на этом не буду.


Рисунок 4. На рабочем столе пользователя, зарегистрированного в домене, будут выведены ярлыки для доступа к Samba- и FTP-ресурсам

* *** *

Признаться, после стольких лет администрирования Linux возможности, предоставляемые дистрибутивом Calculate Directory Server, более чем впечатлили. Процесс построения домена и поддержания его в работоспособном состоянии весьма продуман и логичен и не займет много вашего времени.


  1. Сайт проекта – http://www.calculate-linux.ru.
  2. Примеры внедрений Microsoft – http://www.microsoft.com/Rus/CaseStudies/Default.mspx.
  3. Страница проекта Mandriva Directory Server – http://mandriva.ru/resheniya/produkty/mandriva_directory_server.
  4. Страница проекта Red Hat Directory Server – http://www.redhat.com/directory_server.
  5. Сайт 389 Directory Server – http://port389.org, http://directory.fedoraproject.org.
  6. Документация Gentoo – http://www.gentoo.org/doc/ru.
  7. Работа с профилями – http://www.calculate-linux.ru/main/ru/templates
Спасибо!