Sida 1 av 1

Montera sambautdelningar beroende på användare

Postat: 18 mar 2007, 10:25
av danno
Att montera en sambautdelning med smbfs är inga problem,
men hur gör jag ett ”loginscript” så att när en användare loggar in,
monteras kataloger med dennes användarnamn, password, uid, och gid
ÄVEN om användaren inte kan/får göra sudo

Skulle du låta dina användare få köra mount (hur?), eller finns det något bättre sätt att lösa det?

SV: Montera sambautdelningar beroende på användare

Postat: 18 mar 2007, 13:14
av mcNisse
Men idé är att du skapar ett skript som kan köras av root för att montera disken. Sedan ser du till att användarna kan köra skriptet med sudo utan lösenord. Sedan skapar du ytterligere ett skript som användarna kör vid inloggning.

Skapa ett skript som kan montera disken som den änvander med rätt flaggor till mount.
Jag ger dig ett utkast...

Kod: Markera allt

#!/bin/bash
if [ -z  "$1" ]
then 
  echo "Användarnamn saknas"
  exit 1
fi
user=$1
case $user in
   olle)
       uid=`id -u $user`
       gid=`id -g $user`
       smbuser=abc
       smbpasswd=cba
       share=xyz
       rhost=zyx
       ;;
   *)  
      echo "Okänd användare $user"
      exit 1
      ;;
esac
mount -t smb -o username=$smbuser,password=$smbpasswd,uid=$uid,gid=$gid  "//$rhost/$share" "/home/$user/$share"
Se till att filen enbart är läsbar av root då den innehåller lösenord, chmod 700 "skriptet". Annars går det att lägga en fil per användare som läses in...
Sedan måste du pillra i /etc/sudoers

Kod: Markera allt

sudo visudo
lägg till en rad per användare (user)...

Kod: Markera allt

user  ALL=NOPASSWD: skriptet user
Se till att det är en fullständig sökväg till skriptet. Utan lösenord fungerar bara för användare som inte är med i admingruppen.

Till slut behöver du bara göra ett skript som kör skriptet.

Kod: Markera allt

#!/bin/bash
sudo skriptet $USER

SV: Montera sambautdelningar beroende på användare

Postat: 18 mar 2007, 13:54
av danno
Tack, detta var intressant...
nu har jag  lite att pilla med