SMB-Shares-Shell

Aus alt.comp.hsr
Wechseln zu: Navigation, Suche

Serverangaben

Die HSR verwendet ein DFS Filesystem, um verschiedene Shares auf verschiedenen Servern unter \\hsr.ch\root\ zusammenzufassen. Unter Unix funktioniert das nicht immer so gut, deshalb werden hier die direkten Samba-Shares verwendet.

c206.hsr.ch

IP: 152.96.90.26

Freigaben:

  • twixtelprog - Twixtel Zentrale Ablage
  • twixteldaten - Twixtel Daten
  • virtualcd - IT Systems Installations CDs
  • ittools - IT Tools Extern
  • stdsoft - Allgemeine Software Ablage Studierende
  • scratch - HSR Temporaereablage
  • skripte - HSR Skript Ablage
  • tmp - HSR Temporaereablage
  • ebooks - HSR Bibliothek Ebooks
  • vshsr - Verein Studierende HSR
  • rattenfest - Rattenfest
  • notfall - HSR Notfall Datenablage

c101.hsr.ch

IP: 67.215.65.132

Freigaben:

  • <hsr-benutzername> - Studentenverzeichnisse

fs-i.hsr.ch

Hier werden Images von virtuellen Maschinen gespeichert. Damit man kein Input/output Error bekommt (mount error(5): Input/output error und smbclient sagt NT_STATUS_DUPLICATE_NAME → SMB Share funktioniert mit CNAME Record nicht: [[1]]) , wählt man den direkten Namen aus dem A Record (sin00003.hsr.ch) statt fs-i.hsr.ch, damit es funktioniert:

 sudo mount.cifs //sin00003.hsr.ch/vimages /mnt/ -o user=eduss

Windowsfreigaben via smbfs/cifs mounten

Installation

sudo apt-get install smbfs

Mounten

Der Mountpoint ist hier mit /mnt/hsr/skripte, /mnt/hsr/scratch und /mnt/hsr/HSR-Benutzername angegeben, kann aber beliebig verändert werden.

Zuerst müssen die Verzeichnisse angelegt werden.

$ sudo mkdir -p /mnt/hsr/{skripte,scratch,HSR-Benutzername}

Anschliessen können die verschienden Verzeichnisse gemountet werden. Das HSR-Passwort wird jeweils abgefragt.

$ sudo mount -t cifs //c206.hsr.ch/skripte /mnt/hsr/skripte/ -o username=HSR-Benutzername,iocharset=utf8
$ sudo mount -t cifs //c206.hsr.ch/scratch /mnt/hsr/scratch/ -o username=HSR-Benutzername,iocharset=utf8
$ sudo mount -t cifs //c101/HSR-Benutzername /mnt/hsr/HSR-Benutzername/ -o username=HSR-Benutzername,iocharset=utf8

Um zu verhindern, dass das Passwort abgefragt wird, kann man es auch sogleich im Befehl mit angeben. Allerdings taucht dann das Passwort im Klartext in der History der Bash auf.

$ sudo mount -t cifs //c206.hsr.ch/skripte /mnt/hsr/skripte/ -o username=HSR-Benutzername,password=HSR-Passwort,iocharset=utf8
$ sudo mount -t cifs //c206.hsr.ch/scratch /mnt/hsr/scratch/ -o username="HSR-Benutzername",password=HSR-Passwort,iocharset=utf8
$ sudo mount -t cifs //c101/HSR-Benutzername /mnt/hsr/HSR-Benutzername/ -o username=HSR-Benutzername,password=HSR-Passwort,iocharset=utf8


CIFS (Common Internet File System) ist die Ablösung von SMBFS (Samba File System) und sollte wenn möglich verwendet werden.

Einträge in der fstab

Um sich das Leben ein wenig zu vereinfachen, können die Shares in der Datei /etc/fstab eingetragen werden. Damit wird es möglich, falls denn gewünscht, dass die Shares ohne Rootrechte gemountet werden können.

//c206.hsr.ch/skripte /mnt/hsr/skripte cifs username="HSR-Username",noauto,user,iocharset=utf8 0 0
//c206.hsr.ch/scratch /mnt/hsr/scratch cifs username="HSR-Username",noauto,user,iocharset=utf8 0 0
//c101/"HSR-Username" /mnt/hsr/"HSR-Username" cifs username="HSR-Username",noauto,user,iocharset=utf8 0 0

Falls gewünscht, kann das HSR-Passwort auch direkt in der fstab abgelegt werden. Allerdings ist es dann für jeden Benutzer des Computers im Klartext ersichtlich.

//c206.hsr.ch/skripte /mnt/hsr/skripte cifs username="HSR-Username",password="HSR-Passwort",noauto,user,iocharset=utf8 0 0
//c206.hsr.ch/scratch /mnt/hsr/scratch cifs username="HSR-Username",password="HSR-Passwort",noauto,user,iocharset=utf8 0 0
//c101/"HSR-Username" /mnt/hsr/"HSR-Username" cifs username="HSR-Username",password="HSR-Passwort",noauto,user,iocharset=utf8 0 0

Hinweis: Unbedingt darauf achten, dass der Benutzer welcher mounten möchte auch Lese- und Schreibberechtigungen auf dem Mountpoint hat (hier also z.B./mnt/hsr/skripte, kann sonst mit chmod und/oder chown verändert werden.)

Optionen

Option Bedeutung
noauto wird beim booten nicht automatisch gemountet
user Ermöglicht einem normalen Benutzer das Mounten (nur der User, welcher gemountet hat, kann wieder umounten)
users Ermöglicht einem normalen Benutzer das Mounten (alle anderen User können auch wieder umounten)
iocharset=utf8 Characterset Angabe für korrektes Darstellen von Sonderzeichen etc.
exec Ermöglicht das ausführen von executables auf dem filesystem

Einträge in der /etc/fstab ohne Passwörter

Die Passwörter können auch ausserhalb der /etc/fstab gespeichert werden. Dazu legt man z. B. im Homeverzeichnis eine neue Datei mit Username und Passwort an:

 $ cat << EOF > ~/.fstab.credentials.hsr
 username=HSR-Benutzername
 password=HSR-Passwort
 EOF

Dort müssen noch die Berechtigungen angepasst werden, damit nicht jeder die Zugangsdaten lesen oder beschreiben kann oder gar die Freigabe mounten kann. Wenn die Datei nur dem betroffenen User gehört ($USER), kann auch nur dieser User auf diese Datei zugreifen und somit die Freigabe mounten.

 $ chmod 400 .fstab.credentials.hsr
 $ sudo chown $USER.root .fstab.credentials.hsr
 $ ls -l .fstab.credentials.hsr 
 -r-------- 1 emanuel root 41 Sep  4 14:54 .fstab.credentials.hsr

Die Einträge in der /etc/fstab sehen dann so aus:

 $ grep hsr.ch /etc/fstab
 //c206.hsr.ch/skripte           /media/hsr/skripte       cifs  credentials=/home/emanuel/.fstab.credentials.hsr,noauto,users,iocharset=utf8  0  0
 //c206.hsr.ch/scratch           /media/hsr/scratch       cifs  credentials=/home/emanuel/.fstab.credentials.hsr,noauto,users,iocharset=utf8  0  0
 //c206.hsr.ch/ebooks            /media/hsr/ebooks        cifs  credentials=/home/emanuel/.fstab.credentials.hsr,noauto,users,iocharset=utf8  0  0
 //c101.hsr.ch/HSR-Benutzername  /media/hsr/HSR-Passwort  cifs  credentials=/home/emanuel/.fstab.credentials.hsr,noauto,users,iocharset=utf8  0  0

Jetzt kann man die Freigabe mounten:

 $ mount /media/hsr/eduss/