Webmin er et web- basert grensesnitt som brukes for systemadministrasjon i Unix - baserte systemer. Den lar deg sette opp brukerkontoer og fildeling . På grunn av sin utforming , kan du legge til nye moduler med letthet uten å endre den eksisterende koden . Webmin moduler er lik iPhone-programmer i form av integrasjon . Selv om en modul skal forvalte en tjeneste eller server, kan komplekse system fungerer håndteres av mer enn én modul . Instruksjoner
en
Opprett en ny mappe i Webmin basiskatalogen og gi den navnet " foobar . " En Webmin -modulen er i utgangspunktet en katalog som inneholder CGI-programmer som drives av Webmin webserver . Standardbanen til basen katalogen er " /usr /libexec /webmin . "
2
Lag en fil i den nye katalogen og gi den navnet " module.info . " Denne filen inneholder meta informasjon om modulen din . Denne filen må inneholde minst " desc ", " os_support " og " kategori " koder .
3
Åpne " module.info " fil med en tekst editor og legge disse linjene :
synkende = Foo Web Serveros_support = * - linuxcategory = servere
" desc" inneholder beskrivelse av den nye modulen , " os_support " inneholder en liste over operativsystemer støttes av modulen og " kategori " angir menyen kategorien som modulen vises.
4
Lag en ny fil i modulen katalog. Det må ha samme navn som mappen , pluss en " - lib.pl " delen . I vårt eksempel , vil den nye filen bli kalt " foobar - lib.pl . " Denne filen må inneholde funksjoner kalt av din modulen CGI-programmer og vil ringe initialisering funksjoner i Webmin .
5
Åpen den " foobar - lib.pl " filen med en teksteditor og legge til denne eksempelkode : en
= head1 foobar - lib.plforeign_require ( " foobar ", " foobar - lib.pl "); @ nettsider = foobar :: list_foobar_websites ( ) = cutBEGIN { presse ( @ INC, ".. "); }; bruk WebminCore ; init_config (); = head2 get_foobar_config ( ) = cutsub get_foobar_config { my $ lref = & read_file_lines ( $ config {' foobar_conf '} ) ; min @ rv ; min $ lnum = 0; foreach my $ linje ( @ $ lref ) { min ( $ n , $ v) = split ( /\\ s + /, $ linje, 2 ) ; if ( $ n ) { presse ( @ rv , { 'name' = > $ n , "verdi" = > $ v , "linje '= > $ lnum }); } $ lnum + +; } retur @ rv ;}
" init_config (); "-linjen initialiserer miljøet på den nye modulen. Den " get_foobar_config " sub er et enkelt eksempel på en funksjon som kan kalles av CGI- skript som forvalter en av serverne dine til å lese serverens config -filen .
6
Opprett en ny fil som heter " ; index.cgi " Denne filen lenker til alle CGI-programmer modulen din tjener . . Åpne filen med en tekst editor. Her er et eksempel på en " index.cgi " file :
# /usr /bin /perlrequire ' foobar - lib.pl '; ui_print_header ( undef , $ text {' index_title '} , " " undef , 1 , 1 ), $ conf = get_foobar_config (); $ dir = finne ( $ conf , " root "); print & tekst (' index_root ' , $ dir ) , "
\\ n "; ui_print_footer (" /", $ text {' index '} ) ;
" krever " foobar - lib.pl '; "-linjen får tilgang til modulen funksjon bibliotek og kaller initialisering funksjon , genererer " ui_print_header " sidens HTML header og " ui_print_footer " er brukt for å lage en link til Webmin hovedmeny.
7
Opprett en ny mappe i modulen katalog og navn det «lang . " Opprett en ny fil i denne mappen og gi den navnet " no. " Det vil inneholde alle meldinger som brukes av skript i linjer med tekst , én per melding. Her er et eksempel "no" file : ".
Index_title = Foobar Web Serverindex_root = Rotkatalogen er $ 1