Perl для системного администрирования


Создание системы учетных записей для работы с пользователями - часть 25


Sdelqueue = "delqueue"; ft имя файла очереди удаления

$maindata = "accountdb"; tt имя основной базы данных

ft учетных записей

if ($"0 eq "MSWin32"){

require Win32::Lanman;

require Win32::Perms;

require File::Path;

ft местоположение файлов учетных записей

Saccountdir = "\\\\server\\accountsystem\\";

ft списки рассылки

$maillists = "$accountdir\\maillists\\";

ft корневой каталог домашних каталогов

$homeNTdirs = "\\\\nomeserver\\home";

ft имя подпрограммы, добавляющей учетные записи

Saccountadd = "CreateNTAccount";

ft имя подпрограммы, удаляющей учетные записи

Saccountdel = "DeleteNTAccount": }

else {

require Expect;

и местоположение файлов учетных записей

$accountdir = "/usr/accountsystem/";

в списки рассылки

Smaillists = "Saccountdir/maillists/";

tt местоположение команды useradd

Suseraddex = ",/usr/sbin/useradd";

tt местоположение команды userdel

Suserdelex = "/usr/sbin/userdel";

tt местоположение команды passwd

Spasswdex = "/bin/passwd";

tt корневой каталог домашних каталогов

ShomeUnixdirs = "/home";

tt прототип домашнего каталога

$skeldir = "/home/skel";

ft командный интерпретатор по умолчанию

Sdefshell = "/bin/zsh";

ft имя подпрограммы, добавляющей учетные записи

Saccountadd = "CreateUnixAccount";

tt имя подпрограммы, удаляющей учетные записи

Saccountdel = "DeleteUnixAccount";

}

}

Рассмотрим сценарий, обрабатывающий очередь добавления:

use Account;

use XML;:Simple;

SlnitAccount;

считываем низкоуровневые подпрограммы

&ReadAddQueue;

tt считываем и анализируем очередь добавления

&ProcessAddQueue;

tt пытаемся создать все учетные записи

&DisposeAddQueue;

ft записываем учетную запись либо в основную

tt базу данных, либо обратно в очередь, если

tt возникли какие-то проблемы

tt считываем очередь добавления в структуру данных $queue




- Начало -  - Назад -  - Вперед -