Webmin est une interface basée sur le Web qui est utilisée pour l'administration système dans les systèmes de type Unix. Il vous permet de créer des comptes utilisateurs et le partage de fichiers . Grâce à sa conception , vous pouvez ajouter de nouveaux modules avec facilité sans modifier le code existant. Modules Webmin sont similaires à des applications iPhone en termes d'intégration . Même si un module doit administrer un service ou un serveur , les fonctions de systèmes complexes peuvent être traités par plus d'un module. Instructions
1
Créer un nouveau dossier dans le répertoire de base Webmin et nommez-le "foobar ". Un module Webmin est essentiellement un répertoire qui contient les programmes CGI gérés par le serveur Web de Webmin . Le chemin par défaut dans le répertoire de base est "/usr /libexec /webmin . "
2
créer un fichier dans votre nouveau répertoire et nommez-le " module.info . " Ce fichier contient les méta-informations de votre module. Ce fichier doit contenir au moins l' "desc ", " os_support " et "catégorie" tags.
3
Ouvrez le fichier " module.info " avec un éditeur de texte et ajouter ces lignes:
= Foo Web Serveros_support = * = - linuxcategory serveurs
"desc" contient la description de votre nouveau module, " os_support " contient une liste de systèmes d'exploitation
desc soutenu par le module et «catégorie» précise la catégorie de menu sous lequel le module est affiché.
4
Créer un nouveau fichier dans le répertoire de votre module. Il doit avoir le même nom que le dossier , en plus d'une partie " - lib.pl " . Dans notre exemple , le nouveau fichier sera nommé " foobar - lib.pl . " Ce fichier doit contenir les fonctions appelées par des programmes CGI de votre module et appeler des fonctions d'initialisation dans Webmin .
5
ouverte le fichier « toto- lib.pl " avec un éditeur de texte et d'ajouter cet exemple de code :
= head1 foobar - lib.plforeign_require ( "foobar ", " foobar - lib.pl "); @ les sites = foobar :: list_foobar_websites () = CUTBEGIN {push ( @ INC , ".." );} ; utilisation WebminCore ; init_config (); = head2 get_foobar_config () = cutsub get_foobar_config {my $ lref = & read_file_lines ( $ config {' foobar_conf '} ) ; my @ rv ; my $ nol = 0; foreach my $ line (@ lref $ ) { my ($ n, $ v) = split ( /\\ s + /, $ line , 2) if ( $ n) {push (@ rv, { 'name' => $ n, 'value' => $ v , 'line ' => $ nol }); } $ lnum + +; } return @ rv ; }
" init_config ();" ligne initialise l'environnement de votre nouveau module. Le sous " get_foobar_config " est un simple exemple d'une fonction qui peut être appelée par un script CGI qui gère l'un de vos serveurs de lire le fichier de configuration du serveur.
6
Créer un nouveau fichier nommé " ; index.cgi " Cette liens vers tous les programmes CGI votre module sert fichier . . Ouvrez le fichier avec un éditeur de texte . Voici un exemple de " index.cgi " file :
# /usr /bin /PerlRequire 'foobar - lib.pl '; ui_print_header (FNUD , $ text {' index_title '} " », undef, 1 , 1); $ conf = get_foobar_config (); $ dir = find ( $ conf , " root " ) ; print & texte (' index_root ', $ dir) , "
\\ n "; ui_print_footer (" /" , $ text { 'index' });
" require ' foobar - lib.pl »; « ligne accède à la bibliothèque de fonctions de votre module et appelle la fonction d'initialisation, le " ui_print_header " génère en-tête HTML de la page et le " ui_print_footer " est utilisé pour créer un lien vers le menu principal de Webmin .
7
créer un nouveau dossier dans le répertoire et le nom du module il "lang . " Créer un nouveau fichier dans ce dossier et nommez-le " en. " il contiendra tous les messages utilisés par vos scripts dans des lignes de texte , un par message. Voici un exemple de fichier "en" : . "
Index_title = Foobar Web Serverindex_root = Le répertoire racine est de 1 $