Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/10/2017, à 18:44

sharky

Logon script sur Linux

Hello,

J'essaye depuis quelques temps de créer un logon script qui connecte des lecteurs réseau avec les droits de l'utilisateur.

Comme un desktop peut avoir plusieurs utilisateurs, je cherche un moyen de mapper (mount.cifs) avec le droits de chacun.
Si on met dans FSTAB le montage ce fait avec le même compte ... ça ne va pas
1. Je crée un fichier avec les droits distant
\home\$USER\.$USER_cred
Contenu du fichier

username=ouruser
password=ourpassword

Pour qu'un script soit exécuter au login il faut le stocker dans le dossier
/etc/profile.d (ou /etc/profile)

sudo -i
[mot de passe root]
cd /etc/profile.d

Le script

#!/bin/bash
#chmod 644 /etc/profile.d/mountsyno.sh
#cd /etc/profile.d/

#Credential user file
CredFileName=$USER
CredFileName+="_cred"
CredFullPath=/home/$USER/.$CredFileName

#Check Cred Exist, if not exit script
if [ ! -f $CredFullPath ]
	then
		exit
fi

#Server/NAS
nasip=192.168.1.40
sleep 2
#Check if exist
ping -c3 $nasip &> /dev/null
if [ "$?" != 0 ]
	then
#		echo no nas
		exit
fi

#Local mount path
PHome=/home/$USER/syno/home
Pmusic=/home/$USER/syno/music
PVideo=/home/$USER/syno/video
Pphoto=/home/$USER/syno/photo

#Create local path if not exist
mkdir -p -- $PHome
mkdir -p -- $Pmusic
mkdir -p -- $PVideo
mkdir -p -- $Pphoto

#Mount shares
sudo mount.cifs //$nasip/home $PHome -o credentials=$CredFullPath
sudo mount.cifs //$nasip/music $Pmusic -o credentials=$CredFullPath 
sudo mount.cifs //$nasip/video $PVideo -o credentials=$CredFullPath
sudo mount.cifs //$nasip/photo $Pphoto -o credentials=$CredFullPath

Indiquer à Linux que pour ce script on ne veut pas demander de mot de passe

sudo visudo

Ajouter la ligne suivante

user ALL=(ALL:ALL) NOPASSWD:/sbin/mount.cifs

Tout est OK ! sauf hors réseau. Malgré le contrôle IP, si mon portable n'est pas connecté à un/mon réseau, impossible d'ouvrir de session !
J'ai besoin de regard extérieur !!
Je n'arrive pas à sortir du script si l'adresse IP ne ping pas, rien à faire !
J'ai testé plein de truc ...

Merci de votre retour

Dernière modification par sharky (Le 21/10/2017, à 18:48)

Hors ligne