All pastes #2133565 Raw Edit

Miscellany

public text v1 · immutable
#2133565 ·published 2012-03-29 15:31 UTC
rendered paste body
#!/bin/bash


groups $USER >~/temp
utilisateurexec=admin    
        for verifutilisateurexec in $utilisateurexec
        do 
            if grep "$verifutilisateurexec" ~/temp >/dev/null
                then
                    rm -f ~/temp
                    break
                else
                    echo -e "Désolé mais vos droits d'administration sont insuffisant"
                    rm -f ~/temp
                    exit 0
            fi
        done
#clear
echo -e "\v\t\t########################################################"
echo -e "\t\t###         Configuration des partages samba         ###"
echo -e "\t\t########################################################"
echo -e "\t\t###                                                  ###"
echo -e "\t\t### -1- Configuration simple                         ###"
echo -e "\t\t### -2- Configuration avancée (Gestion des droits)   ###"
echo -e "\t\t### -3- Application des changements                  ###"
echo -e "\t\t### -4- Restauration smb.conf                        ###"
echo -e "\t\t### -5- Redemarrage du service samba                 ###"
echo -e "\t\t### -6- Quitter                                      ###"
echo -e "\t\t###                                                  ###"
echo -e "\t\t########################################################"
echo -e "\t\t## Odin #################################### V1.1 ######"
echo -e "\t\t########################################################\n\n"

echo -e "Votre choix : "
read reponse
case $reponse in

1) 
clear
echo -e "\t\t############################"
echo -e "\t\t### Configuration simple ###"
echo -e "\t\t############################"
            if [ -f ~/smb.conf.temp ]
                then 
                    echo -e "Le fichier temporaire existe déjà"
                    echo -e "Voulez vous l'écraser ? [o/n]"                    
                    while read ecraser
                        do
                            if [[ $ecraser != ?([on]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Voulez vous l'écraser ? [o/n]"
                                else
                                    break
                            fi    
                        done
            fi
    
            if [ $ecraser = n ]
            then 
                echo -e " "
            else 
                rm -f ~/smb.conf.temp
                echo -e "Fichier détruit"
            fi
    clear
    echo -e "\t\t### Quel nom voulez-vous donner a votre partage : "
    read nompartage
        echo -e "[$nompartage]" >>~/smb.conf.temp
    

    clear
    echo -e "\t\t### Veuillez indiquer le chemin complet du repertoire : "
    while read chemin
        do
            if [ ! -d $chemin ]
                then 
                    echo -e "ce n'est pas un dossier valide"
                    echo -e "###Veuillez indiquer le chemin complet du repertoire : "
                else
                    break
            fi    
        done
    echo -e "path = $chemin" >>~/smb.conf.temp


    clear    
    echo -e "\t\t### Voulez vous mettre un commentaire : "
    read commentaire
        if [ -z $commentaire ]
            then 
                echo -e "pas de commentaire"
            else 
                echo -e "comment = $commentaire" >>~/smb.conf.temp
        fi
    
    
    clear
    echo -e "\t\t### Voulez vous activez la lecture seul sur le partage [o/n] : "
        while read lecture
        do
            if [[ $lecture != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "### Voulez vous activez la lecture seul sur le partage [o/n] : "
                else
                    break
            fi    
        done
        
        if [ $lecture = n ]
            then 
                echo -e " "
            else 
                echo -e "read only = yes" >>~/smb.conf.temp
        fi
    
    clear
    unset verif verif1 verif2 tes tes1 tes2 tes3 tes4 tes5
    echo -e "\t\t### Veuillez indiquer les utilisateurs autorisés à accéder à votre partage: "
    echo -e "Si plusieurs utilisateurs mettre un espace entre chaque valeur"
        read utilisateur
        for verifutilisateur in $utilisateur
        do 
            if grep "$verifutilisateur" /etc/passwd >/dev/null
                then
                    tes1="$tes1 $verifutilisateur"            
                    tes="$tes $verifutilisateur"
                else
                    echo -e " '$verifutilisateur' n'est pas défini dans le système en tant qu'utilisateur"
                    tes1="$tes1 $verifutilisateur"
                    verif=$?
            fi
        done
        case ${verif:-1} in
            0) 

                echo -e "Voulez vous garder :"
                echo -e "1) '$tes ' qui sont défini dans votre système"
                echo -e "2) '$tes1 ' qui était votre première saisie "
                    read choixutilisateur
                        case $choixutilisateur in
                            1)     echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas defini dans le systeme en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont defini dans votre systeme"
                                                echo -e "2) '$tes5 ' qui etait votre premiere saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            2)     echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs utilisateurs ou groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas defini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                        esac
            ;;
            1)
                                echo -e "tous vos utilisateurs sont défini sur le système"
                                echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas defini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             
            ;;
        esac



    clear
    echo -e "\t\t### Voulez vous rendre accessible votre partage a tous le monde ? [o/n]"
    while read invite
        do
            if [[ $invite != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous rendre accessible votre partage a tous le monde ? [o/n]"
                else
                    
                    break
            fi    
        done
        
        if [ $invite = n ]
            then 
                echo -e "guest ok = no " >>~/smb.conf.temp
            else 
                echo -e "guest ok = yes" >>~/smb.conf.temp
        fi

    clear
    unset verif verif1 verif2 tes tes1 tes2 tes3 tes4 tes5
    echo -e "\t\t### Quels Utilisateurs ont le droits en modification sur votre partage"
    echo -e "Si plusieurs utilisateurs mettre un espace entre chaque valeur"
        read writeutilisateur
        for verifwriteutilisateur in $writeutilisateur
        do 
            if grep "$verifwriteutilisateur" /etc/passwd >/dev/null
                then
                    tes1="$tes1 $verifwriteutilisateur"            
                    tes="$tes $verifwriteutilisateur"
                else
                    echo -e " '$verifwriteutilisateur' n'est pas défini dans le système en tant qu'utilisateur"
                    tes1="$tes1 $verifwriteutilisateur"
                    verif=$?
            fi
        done
        case ${verif:-1} in
            0) 

                echo -e "Voulez vous garder :"
                echo -e "1) '$tes ' qui sont défini dans votre système"
                echo -e "2) '$tes1 ' qui était votre première saisie "
                    read choixwriteutilisateur
                        case $choixwriteutilisateur in
                            1)     echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $writegroupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            2)     echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $writegroupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont defini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            *) echo -e "choix incorrecte " ;;
                        esac
            ;;
            1)
                                echo -e "tous vos utilisateur sont défini sur le système"
                                echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $groupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             
            ;;
        esac


    clear    
    echo -e "\t\t### Votre partage est-il un partage caché ? [o/n]"
    while read browseable
        do
            if [[ $browseable != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "### Votre partage est-il un partage caché ? [o/n] : "
                else
                    break
            fi    
        done
        
        if [ $browseable = n ]
            then 
                echo -e "browseable = yes " >>~/smb.conf.temp
            else 
                echo -e "browseable = no " >>~/smb.conf.temp
        fi
        
    clear
    echo -e "\t\t### Voulez vous visualiser le fichier ? [o/n]"
    while read verification
        do
            if [[ $verification != ?([on]) ]]
                then 
                    echo -e "Pour appliquer les changements relancé le script et choisir -3-"
                    exit 0                    
                else
                    echo -e "Si vous voulez éditer manuellement le partage "                    
                    echo -e "le fichier temporaire ce trouve :"                    
                    ls ~/smb.conf.temp
                    echo -e " "                    
                    cat ~/smb.conf.temp                    
                    break
            fi    
        done
        
exit 0
;;
    
2)    
clear
echo -e "\t\t#############################"
echo -e "\t\t### Configuration avancée ###"
echo -e "\t\t#############################"
#    cp -f /etc/samba/smb.conf ~/smb.conf.temp    
            if [ -f ~/smb.conf.temp ]
                then 
                    echo -e "Le fichier temporaire existe déjà"
                    echo -e "Voulez vous l'écraser ? [o/n]"                    
                    while read ecraser
                        do
                            if [[ $ecraser != ?([on]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Voulez vous l'écraser ? [o/n]"
                                else
                                    break
                            fi    
                        done
            fi
    
            if [ $ecraser = n ]
            then 
                echo -e " "
            else 
                rm -f ~/smb.conf.temp
                echo -e "Fichier détruit"
            fi
    echo -e "\t\t### Nom du partage : "
    read nompartage
        echo -e "[$nompartage]" >>~/smb.conf.temp
    

    echo -e "\t\t### Chemin du repertoire : "
    while read chemin
        do
            if [ ! -d $chemin ]
                then 
                    echo -e "ce n'est pas un dossier valide"
                    echo -e "\t\t### Chemin du repertoire : "
                else
                    break
            fi    
        done
    echo -e "path = $chemin" >>~/smb.conf.temp


    echo -e "\t\t### Voulez vous mettre un commentaire : "
    read commentaire
        if [ -z $commentaire ]
            then 
                echo -e "pas de commentaire"
            else 
                echo -e "comment = $commentaire" >>~/smb.conf.temp
        fi
    
    
    echo -e "\t\t### Voulez vous activez la lecture seul sur le partage [o/n] : "
        while read lecture
        do
            if [[ $lecture != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous activez la lecture seul sur le partage [o/n] : "
                else
                    break
            fi    
        done
        
        if [ $lecture = n ]
            then 
                echo -e " " >> /dev/null
            else 
                echo -e "read only = yes" >>~/smb.conf.temp
        fi
    
    
    clear
    unset verif verif1 verif2 tes tes1 tes2 tes3 tes4 tes5
    echo -e "\t\t### Veuillez indiquer les utilisateurs autorisés à accéder à votre partage: "
    echo -e "Si plusieurs utilisateurs mettre un espace entre chaque valeur"
        read utilisateur
        for verifutilisateur in $utilisateur
        do 
            if grep "$verifutilisateur" /etc/passwd >/dev/null
                then
                    tes1="$tes1 $verifutilisateur"            
                    tes="$tes $verifutilisateur"
                else
                    echo -e " '$verifutilisateur' n'est pas défini dans le système en tant qu'utilisateur"
                    tes1="$tes1 $verifutilisateur"
                    verif=$?
            fi
        done
        case ${verif:-1} in
            0) 

                echo -e "Voulez vous garder :"
                echo -e "1) '$tes ' qui sont défini dans votre système"
                echo -e "2) '$tes1 ' qui était votre première saisie "
                    read choixutilisateur
                        case $choixutilisateur in
                            1)     echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            2)     echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont defini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            *) echo -e "choix incorrecte " ;;
                        esac
            ;;
            1)
                                echo -e "tous vos utilisateur sont défini sur le système"
                                echo -e "\t\t### Veuillez indiquer les groupes autorisés à accéder à votre partage : "
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read groupe
                                        for verifgroupe in $groupe
                                        do 
                                            if grep "$verifgroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifgroupe"            
                                                    tes4="$tes4 @$verifgroupe"
                                                else
                                                    echo -e " '@$verifgroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifgroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixgroupe
                                                    case $choixgroupe in
                                                        1) echo -e "valid users =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "valid users =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "valid users =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             
            ;;
        esac

    

    echo -e "\t\t### Voulez vous rendre accessible votre partage a tous le monde ? [o/n]"
    while read invite
        do
            if [[ $invite != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous rendre accessible votre partage a tous le monde ? [o/n]"
                else
                    
                    break
            fi    
        done
        
        if [ $invite = n ]
            then 
                echo -e "guest ok = no " >>~/smb.conf.temp
            else 
                echo -e "guest ok = yes" >>~/smb.conf.temp
        fi
    
    clear
    unset verif verif1 verif2 tes tes1 tes2 tes3 tes4 tes5
    echo -e "\t\t### Quels Utilisateurs ont le droits en modification sur votre partage"
    echo -e "Si plusieurs utilisateurs mettre un espace entre chaque valeur"
        read writeutilisateur
        for verifwriteutilisateur in $writeutilisateur
        do 
            if grep "$verifwriteutilisateur" /etc/passwd >/dev/null
                then
                    tes1="$tes1 $verifwriteutilisateur"            
                    tes="$tes $verifwriteutilisateur"
                else
                    echo -e " '$verifwriteutilisateur' n'est pas défini dans le système en tant qu'utilisateur"
                    tes1="$tes1 $verifwriteutilisateur"
                    verif=$?
            fi
        done
        case ${verif:-1} in
            0) 

                echo -e "Voulez vous garder :"
                echo -e "1) '$tes ' qui sont défini dans votre système"
                echo -e "2) '$tes1 ' qui était votre première saisie "
                    read choixwriteutilisateur
                        case $choixwriteutilisateur in
                            1)     echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $writegroupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            2)     echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $writegroupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont defini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             ;;
                            *) echo -e "choix incorrecte " ;;
                        esac
            ;;
            1)
                                echo -e "tous vos utilisateur sont défini sur le système"
                                echo -e "\t\t### Quels groupes ont le droits en modification sur votre partage"
                                echo -e "Si plusieurs groupes mettre un espace entre chaque valeur"
                                    read writegroupe
                                        for verifwritegroupe in $groupe
                                        do 
                                            if grep "$verifwritegroupe" /etc/group >/dev/null
                                                then
                                                    tes5="$tes5 @$verifwritegroupe"            
                                                    tes4="$tes4 @$verifwritegroupe"
                                                else
                                                    echo -e " '@$verifwritegroupe' n'est pas défini dans le système en tant que groupe"
                                                    tes5="$tes5 @$verifwritegroupe"
                                                    verif2=$?
                                            fi
                                        done
                                        case ${verif2:-1} in
                                            0) 
                                                echo -e "Voulez vous garder :"
                                                echo -e "1) '$tes4 ' qui sont défini dans votre système"
                                                echo -e "2) '$tes5 ' qui était votre première saisie "
                                                    read choixwritegroupe
                                                    case $choixwritegroupe in
                                                        1) echo -e "write list =$tes1 $tes4 " >>~/smb.conf.temp ;;
                                                        2) echo -e "write list =$tes1 $tes5 " >>~/smb.conf.temp ;;
                                                        *) echo -e "choix incorrecte " ;;
                                                    esac 
                                            ;;
                                            1)
                                                echo -e "tous vos groupes sont défini sur le système"
                                                echo -e "write list =$tes1 $tes5" >>~/smb.conf.temp
                                            ;;
                                        esac
                             
            ;;
        esac
    
    
    echo -e "\t\t### Votre partage est-il un partage caché ? [o/n]"
    while read browseable
        do
            if [[ $browseable != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Votre partage est-il un partage caché ? [o/n] : "
                else
                    break
            fi    
        done
        
        if [ $browseable = n ]
            then 
                echo -e "browseable = yes " >>~/smb.conf.temp
            else 
                echo -e "browseable = no " >>~/smb.conf.temp
        fi
    

    echo -e "\t\t### Activé les droits accordés à un fichier créé dans le partage ? [o/n]"        
    while read createmode
        do
            if [[ $createmode != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Activé les droits accordés à un fichier créé dans le partage ? [o/n]"
                else
                    
                    break
            fi    
        done
        
        if [ $createmode = n ]
            then 
                echo -e "" 
            else 
                echo -e "################################################"
                echo -e "###           Droit du proprietaire          ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read createmodedroitproprio
                        do
                            if [[ $createmodedroitproprio != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $createmodedroitproprio in
                    1) cmdp=07 ;;
                    2) cmdp=06 ;;
                    3) cmdp=05 ;;
                    4) cmdp=04 ;;
                    5) cmdp=03 ;;
                    6) cmdp=02 ;;
                    7) cmdp=01 ;;
                    8) cmdp=00 ;;
                esac

                echo -e "################################################"
                echo -e "###              Droit du groupe             ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read createmodedroitgroupe
                        do
                            if [[ $createmodedroitgroupe != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $createmodedroitgroupe in
                    1) cmdg=7 ;;
                    2) cmdg=6 ;;
                    3) cmdg=5 ;;
                    4) cmdg=4 ;;
                    5) cmdg=3 ;;
                    6) cmdg=2 ;;
                    7) cmdg=1 ;;
                    8) cmdg=0 ;;
                esac
                
                echo -e "################################################"
                echo -e "###             Droit des autres             ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read createmodedroitautre
                        do
                            if [[ $createmodedroitautre != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $createmodedroitautre in
                    1) cmda=7 ;;
                    2) cmda=6 ;;
                    3) cmda=5 ;;
                    4) cmda=4 ;;
                    5) cmda=3 ;;
                    6) cmda=2 ;;
                    7) cmda=1 ;;
                    8) cmda=0 ;;
                esac
                echo -e "create mode = $cmdp$cmdg$cmda " >>~/smb.conf.temp
        fi


    echo -e "\t\t### Activé droits accordés à un répertoire créé dans le partage ? [o/n]"        
    while read directorymode
        do
            if [[ $directorymode != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Activé les droits accordés à un répertoire créé dans le partage ? [o/n]"
                else
                    
                    break
            fi    
        done
        
        if [ $directorymode = n ]
            then 
                echo -e "" 
            else 
                echo -e "################################################"
                echo -e "###           Droit du proprietaire          ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read irectorymodedroitproprio
                        do
                            if [[ $irectorymodedroitproprio != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $directorymodedroitproprio in
                    1) dmdp=07 ;;
                    2) dmdp=06 ;;
                    3) dmdp=05 ;;
                    4) dmdp=04 ;;
                    5) dmdp=03 ;;
                    6) dmdp=02 ;;
                    7) dmdp=01 ;;
                    8) dmdp=00 ;;
                esac

                echo -e "################################################"
                echo -e "###              Droit du groupe             ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read directorymodedroitgroupe
                        do
                            if [[ $directorymodedroitgroupe != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $directorymodedroitgroupe in
                    1) dmdg=7 ;;
                    2) dmdg=6 ;;
                    3) dmdg=5 ;;
                    4) dmdg=4 ;;
                    5) dmdg=3 ;;
                    6) dmdg=2 ;;
                    7) dmdg=1 ;;
                    8) dmdg=0 ;;
                esac
                
                echo -e "################################################"
                echo -e "###             Droit des autres             ###"
                echo -e "################################################"
                echo -e "###                                          ###"
                echo -e "###  -1- rwx   -2- rw-   -3- r-x   -4- r--   ###"
                echo -e "###  -5- -wx   -6- -w-   -7- --x   -8- ---   ###"
                echo -e "###                                          ###"
                echo -e "################################################"
                echo -e "################################################"
                echo -e "Votre choix : "
                    while read directorymodedroitautre
                        do
                            if [[ $directorymodedroitautre != ?([1-8]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Votre choix : "
                                else
                                    break
                            fi    
                        done
                case $directorymodedroitautre in
                    1) dmda=7 ;;
                    2) dmda=6 ;;
                    3) dmda=5 ;;
                    4) dmda=4 ;;
                    5) dmda=3 ;;
                    6) dmda=2 ;;
                    7) dmda=1 ;;
                    8) dmda=0 ;;
                esac
                echo -e "directory mode = $cmdp$cmdg$cmda " >>~/smb.conf.temp
        fi


    echo -e "\t\t### Voulez vous imposé un groupe propriétaire d'un fichier lors de sa création dans le partage ? [o/n] "
    while read forcegroupe
        do
            if [[ $forcegroupe != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous imposé un groupe propriétaire d'un fichier lors de sa création dans le partage ? [o/n] "
                else
                    
                    break
            fi    
        done
        
        if [ $forcegroupe = n ]
            then 
                echo -e " "
            else 
                echo -e "Entrer le nom de groupe avec '@' devant "
                read nomforcegroupe
                echo -e "force groupe = $nomforcegroupe " >>~/smb.conf.temp
        fi


    echo -e "\t\t### Voulez vous cacher les fichiers dont le nom commence par un point [o/n] "
    while read hidedotfiles 
        do
            if [[ $hidedotfiles != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous cacher les fichiers dont le nom commence par un point [o/n]"
                else
                    
                    break
            fi    
        done
        
        if [ $hidedotfiles = n ]
            then 
                echo -e " "
            else 
                echo -e "hide dot files = yes " >>~/smb.conf.temp
        fi


    echo -e "\t\t### Voulez vous interdire certain poste du réseau de ce connecté au partage ? [o/n] "
    while read hostsdeny
        do
            if [[ $hostsdeny != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous interdire certain poste du réseau de ce connecté au partage ? [o/n] "
                else
                    
                    break
            fi    
        done
        
        if [ $hostsdeny = n ]
            then 
                echo -e " "
            else 
                echo -e "Entrez les adresses IP"
                read addressehostsdeny
                echo -e "hosts deny = $addressehostsdeny " >>~/smb.conf.temp
        fi


    echo -e "\t\t### Voulez vous configurer le nombre de connexions à la ressource ? [o/n] "
    while read maxconnections
        do
            if [[ $hmaxconnections != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "\t\t### Voulez vous configurer le nombre de connexions à la ressource ? [o/n] "
                else
                    
                    break
            fi    
        done
        
        if [ $maxconnections = n ]
            then 
                echo -e " "
            else 
                echo -e "Nombre de connexion ?"
                read nbmaxconnections
                echo -e "max connections = $nbmaxconnections " >>~/smb.conf.temp
        fi


echo -e "Voulez vous vérifier le fichier ? [o/n]"
    while read verification
        do
            if [[ $verification != ?([on]) ]]
                then 
                    echo -e "Pour appliquer les changements relancé le script et choisir -3-"
                    exit 0                    
                else
                    echo -e "Si vous voulez editer le partage manuellement"                    
                    echo -e "le fichier temporaire ce trouve :"                    
                    ls ~/smb.conf.temp
                    echo -e " "                    
                    cat ~/smb.conf.temp                    
                    break
            fi    
        done
exit 0
;;

3)
clear
echo -e "\t\t###################################"
echo -e "\t\t### Application des changements ###"
echo -e "\t\t###################################"

    echo -e "Voulez vous appliquer les changements ? [o/n] "
    while read change
        do
            if [[ $change != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "Voulez vous appliquer les changements ? [o/n] "
                else
                    
                    break
            fi    
        done

        if [ $change = n ]
            then 
                echo -e " "
            else 
                    echo -e "Voulez vous VRAIMENT appliquer les changements ? [o/n] "
                    while read change1
                        do
                            if [[ $change1 != ?([on]) ]]
                                then 
                                    echo -e "mauvaise saisie"
                                    echo -e "Voulez vous VRAIMENT appliquer les changements ? [o/n] "
                                else
                                    if [ $change1 = n ]
                                        then 
                                            echo -e " "
                                        else
                                            sudo cp -f /etc/samba/smb.conf /etc/samba/smb.conf.old
                                            sudo cat ~/smb.conf.temp >>/etc/samba/smb.conf
                                            exit 0
                                    fi     
                            fi
                        done

        fi

;;
4)
clear
    echo -e "\t\t###################################"
    echo -e "\t\t###    Restauration smb.conf    ###"
    echo -e "\t\t###################################"

    echo -e "Voulez vous restaurer le  smb.conf ? [o/n] "
    while read restauration
        do
            if [[ $restauration != ?([on]) ]]
                then 
                    echo -e "mauvaise saisie"
                    echo -e "Voulez vous appliquer les changements ? [o/n] "
                else
                    if [ $change = n ]
                        then 
                            echo -e " "
                        else
                            sudo rm -f /etc/samba/smb.conf 
                            sudo mv /etc/samba/smb.conf.old /etc/samba/smb.conf
                            exit
                    fi
             fi


        done    
;;

5)
sudo service smbd stop
sudo service smbd start
;;
6)
exit 0
;;    
    
esac