Rozdział 3. Możliwości AddUser-NG

Spis treści

Wtyczki
Interfejsy użytkownika
Konfiguracja
adduser-ng.conf
Pliki grup (konfiguracja pluginów)

Projektując AddUser-NG, postawiliśmy sobie następujące wytyczne:

Wszystkie wyżej wymienione wytyczne zostały spełnione (mamy nadzieję). Dzięki temu program nie ma z góry określonego sposobu działania. To użytkownik decyduje (kształtuje) w jaki sposób ma się zachowywać. Omówmy teraz po kolei w jaki sposób zostało to zrealizowane.

Wtyczki

Rozszerzają funkcjonalność programu (tak naprawdę sam AddUser-NG posiada jedynie umiejętność ładowania wtyczek, wszystkie podstawowe operacje jak dodawanie użytkownika, grupy, odbywa się natomiast za pomocą standardowych wtyczek dostarczanych razem z programem).

Konfigurując AddUser-NG, użytkownik wybiera, które wtyczki mają być ładowane oraz konfiguruje je. Dokładny proces konfiguracji opisany jest w podrozdziale: „Konfiguracja”.

A więc jak można się domyśleć, cała funkcjonalność programu opiera się na wtyczkach. Warto więc wiedzieć chociaż podstawowe informacje na temat sposobu funkcjonowania wtyczek.

Po załadowaniu wtyczek przez program, dla każdej z nich (w kolejności określonej przez użytkownika), wykonywane są następujące czynności:

  1. Każda z wtyczek jest konfigurowana, czyli ustalane są wartości dla każdej z opcji jakie wtyczka posiada. Jeżeli jakaś opcja wtyczki nie została określona w pliku konfiguracyjnym grupy, użytkownik zostaje zapytany o nią przez UI (interfejs użytkownika).

    Jeżeli w procesie konfiguracji, wystąpi błąd, program po prostu kończy działanie, nie dokonując żadnych zmian.

  2. Po skonfigurowaniu wszystkich wtyczek, następuje właściwe działanie programu, czyli wykonanie przez każdą wtyczkę powierzonych jej zadań (tzw. „wykonywanie wtyczek”). Jest to główny proces w działaniu programu, w tym oto momencie, użytkownik jest dodawany, ustawiana jest mu quota, itd..

    Jeżeli w jakimkolwiek momencie tego procesu wystąpi błąd, przerywane jest wykonywanie dalszych wtyczek, oraz zostaje uruchomiony proces cofania zmian. Ma on za zadanie wykonanie dla każdego pluginu (w odwrotnej kolejności, począwszy od pluginu, który się nie powiódł), metody rollback, która cofnie dokonane zmiany. Nie wchodząc w szczegóły programistyczne, powinineś po prostu wiedzieć, że gdy coś się nie powiedzie, AddUser-NG, po prostu cofa wykonane zmiany w systemie.

W standardowej dystrybucji programu, dostarczane są następujące wtyczki:

  • GroupAdd - wtyczka ta, jest odpowiedzialna za dodawanie grupy podczas dodawaniu użytkownika

  • UserAdd - odpowiedzialna za dodawanie użytkownika

  • PasswdUser - ustawia hasło nowo dodanemu użytkownikowi

Wtyczki te dają jedynie podstawową funkcjonalność i aby ją rozszerzyć dostępne są dodatkowe wtyczki (np. wtyczka „Quota”) dostarczane jako osobne pakiety źródłowe (oraz pakiety Debiana), tak aby każdy mógł wybrać te, które go interesują. Jest także możliwość napisania swoich własnych wtyczek, szczegółowy opis tej procedury dostępny jest w dokumentacji dla developerów.

Dokładny opis wszystkich wtyczek oraz ich opcji można znaleźć w katalogu dokumentacji programu.