SMB-Shares-Shell
Inhaltsverzeichnis
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/