File::SambaMSNRL - Gestion de la configuration de Samba
Version 0.02
Le fichier indiqué doit correspondre à un fichier de configuration de samba Il doit posséder au minimum une partie [global] et au moins un partage
Retourne un nouvel objet
Example : my $objet=File::SambaMSNRL->new("/etc/samba/smb.conf);
Lit et renvoi la partie [global] du fichier smb.conf Le retour se fait sous la forme d'un Hash
Params: Aucun Returns: Hash du global Example: my %global = $smb->GetGlobal;
Modifie l'un des parametres de la partie [global] du smb.conf
Params: parametre = Le parametre du global à modifier nouvelle_valeur = la valeur du parametre à modifier Returns: Retourne 1 si la modification a été effectuée Retourne 0 si pas de modification Example: my $retour = $smb->ModifGlobal("workgroup","DOMAINE1"); if ($retour == 1) {print("La modification du parametre s'est déroulée avec succés\n");
Ajoute un nouveau parametre sur la partie [global] du smb.conf
Params: parametre_a_ajouter = le nom du parametre à ajouter dans la partie global valeur_du_parametre = la valeur de ce parametre Returns: - Example: $smb->AddParamGlobal("guest ok","Yes");
Supprime un parametre dans la partie [global] du smb.conf
Params: Nom du parametre à supprimer Returns: Retourne 0 en cas de non suppression Retourne 1 si le parametre a été correctement supprimé Example: my $result = $smb->DelParamGlobal("workgroup");
Recherche la valeur d'une section pour un partage donné
Params: Nom du partage Nom de la section dont on souhaite la valeur Returns: Valeur de la section d'un partage donné Example: my $valeur = $smb->ValeurSection("data","path");
Liste la totalité des partages contenus dans le fichier de configuration de samba
Params: Aucun Returns: Tableau contenant la liste des partages Example: my @partages = ListPartages;
Liste les différentes sections et leur valeur pour tous les partages samba
Params: Aucun Returns: Hash de hash contenant le détail de chaque partage samba Example: my %details = $smb->ListSections; my @part = keys %details; foreach $keys (@part) { my @key2 = keys %{$details{$keys}}; foreach my $value (@key2) { my $valeur = $details{$keys}{$value}; }; };
Permet la creation d'un nouveau partage
Params: Le nom du partage à créer Returns: Retourne 1 si le partage a été créé Retourne 0 si le partage n'a pas pu être créé Example: my $result = $smb->CreaPartage("nom_du_partage");
Ajoute une nouvelle section au partage créé précédemment à l'aide de "CreaPartage"
Params: partage : Nom du partage sur lequel créer une section Section : Nom de la section à créer Valeur de la section : Valeur à inscrire pour la section indiquée
Returns: Retourne 1 si la création s'est déroulée correctement Retourne 0 si la création n'a pas eu lieu
Example: my $result = $smb->CreaPartage("Data"); $smb->CreaSection("donnees","path","/home/data");
Modifie la valeur d'une section pour un partage donné
Params: [partage] : nom du partage sur lequel travailler [section] : nom de la section dans le partage indiqué [valeur_de_la_section] : Valeur de la section
Returns: Retourne 1 si la modification a été réalisée Retourne 0 si la modification a échouée
Example: my $retour = $smb->ModifSection("games","inherit permissions","No");
Supprime un partage du fichier smb.conf
Params: Un tableau contenant le nom de chaque partage à supprimer Returns: Retourne une référence sur un tableau contenant le nom des partages supprimés Example: my @partages = ("data","games","mp3","avi"); my $RefPartagesSupp = $smb->DelPartage(@partages); my @PartSupp = @$RefPartagesSupp;
foreach my $val (@PartSupp) { print("Partage Supprimé : $val\n"); };
Suppression d'un parametre dans un partage
Params: nom_partage : Nom du partage où le paramètre doit être supprimé valeur_a_supprimer : Le paramètre à supprimer dans ce partage Returns: Retourne 1 si le parametre a été supprimé Retourne 0 si le parametre n'a pas été supprimé Example: my $retour = $smb->DelValue("games","inherit permissions");
Sauvegarde des modifications effectuées > Ecriture du fichier final Pour que l'enregistrement se passe correctement, il faut au minimum une partie global et un partage.
Params: Nom du fichier à sauvegarder. Ce paramêtre est facultatif. S'il n'est pas donné, le fichier est enregistré sous son nom d'origine. Dans ce cas, une sauvegarde de ce fichier est réalisée dans le même répertoire avant l'écriture.
Returns: Si sauvegarde avec le nom du fichier d'origine, renvoi le nom du fichier sauvegardé Si sauvegarde avec un nouveau nom, renvoi 1
Example: my $retour = $smb->Sauve("/etc/samba/smbnew.conf");
Charge un fichier de configuration samba
Params: Nom du fichier de configuration Returns: Retourne un tableau contenant le fichier chargé
Charge la liste des partages présents dans le fichier de configuration de samba
Charge la partie global du fichier de configuration samba
1 POD Error
The following errors were encountered while parsing the POD:
Non-ASCII character seen before =encoding in 'Méthodes'. Assuming UTF-8
To install File::SambaMSNRL, copy and paste the appropriate command in to your terminal.
cpanm
cpanm File::SambaMSNRL
CPAN shell
perl -MCPAN -e shell install File::SambaMSNRL
For more information on module installation, please visit the detailed CPAN module installation guide.