Erdekelne, hogy ki mit hasznal laptopon halozati (cifs) mountra. En regota szenvedek ezzel, a vegeredmeny altalaban az, hogy irok egy scriptet ami megcsinalja amikor kell. De tenyleg igy kell ezt? Az fstab-ba nem szeretem berakni (vagy csak noauto-val), mert lapotpot hasznalok es nem akarok ezzel bajlodni amikor az adott share kozeleben sem vagyok. Aztan meg az umount is problemas, mert nem csak kikapcsolaskor, de mondjuk egy suspend elott is jol jonne (vagy olyankor tortenik "network umount"? nem hiszem...).
Most viszont szeretnem vegre "szepen" megoldani a dolgot, nehany guglizas viszont nem mutatja, hogy lenne erre valami altalanosan hasznalt modszer.
Szoval kene kenem egy olyan cifs mount, ami:
- felmountolja a beallitott konyvtarakat amikor elerhetoek
- nem akasztja meg a rendszeremet amikor mas halozaton vagyok
- automatikus, azaz nem igenyel semmilyen beavatkozast (nem, egy kattintast sem)
- minnel inkabb "gyari" (scriptet irni en is tudok)
Talaltam mar egy ket (fel)megoldast, de egyik sem tetszik igazan. Kivancsi vagyok ki hogy oldja ezt meg, gyanitom sokan vagyunk ezzel a helyzettel (= cifs + Linux laptop).
------------------------------------------------------------------------
update (2013.04.22):
Vegul autofs-sel valoban sikerult megoldani. Korabban valamiert ockodtam tole, de jo dolog ez az autofs. Csak egy script hianyzott belole, hogy a kulonbozo share-eket akkor is fel tudja mountolni, ha azok nem olvashatok anonymous-kent (guest-kent):
Az autofs-ben meglevo /etc/auto.smb-t faragtam at, igy most a /home/*/.config/smb/${key}.credentials helyen keresi a credentials file-t (ahol a "$key" a szerver neve). credentials file-ert lasd a "man mount.cifs"-et:
#!/bin/bash
key="$1"
for P in /bin /sbin /usr/bin /usr/sbin
do
if [ -x $P/smbclient ]
then
SMBCLIENT=$P/smbclient
break
fi
done
[ -x $SMBCLIENT ] || exit 1
### per workgroup:
#WORKGROUP=$($SMBCLIENT -gNL $key 2>&1 | grep "^Domain=" | head -1 | sed -e "s/^[^\[]*\[//g" -e "s/\].*//g")
#CREDENTIALS=$(find /home/*/.config/smb/credentials/${WORKGROUP}/{key}.credentials | head -1)
### simplified:
CREDENTIALS=$(find /home/*/.config/smb/${key}.credentials 2> /dev/null | head -1)
opts="-fstype=cifs"
if [ "$CREDENTIALS" ]
then
opts="$opts,credentials=$CREDENTIALS"
LOCAL_USER=$(dirname $CREDENTIALS | sed "s,^/home/\([^/]*\)/.*$,\1,g")
else
opts="$opts,guest"
CREDENTIALS_DIR=""
CREDENTIALS_DIR=$(find /home/*/.config/smb/ -maxdepth 0 2> /dev/null | head -1)
if [ -z "$CREDENTIALS_DIR" ]; then
# no any credentials file or directory
exit 1
fi
LOCAL_USER=$(dirname $CREDENTIALS_DIR | sed "s,^/home/\([^/]*\)/.*$,\1,g")
fi
opts="$opts,uid=$LOCAL_USER,gid=$LOCAL_USER"
$SMBCLIENT -gNL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- '
BEGIN { ORS=""; first=1 }
/Disk/ {
if (first)
print opts; first=0
dir = $2
loc = $2
# Enclose mount dir and location in quotes
# Double quote "$" in location as it is special
gsub(/\$$/, "\\$", loc);
gsub(/\&/,"\\\\&",loc)
print " \\\n\t \"/" dir "\"", "\"://" key "/" loc "\""
}
END { if (!first) print "\n"; else exit 1 }
'
------------------------------------------------------------------------
update2 (2013.04.22):
csinaltam is hozza blogbejegyzest kicsit tobb reszlettel:
traktor blogja: autofs + cifs avagy: halozati mount okosan laptopon
- 6999 megtekintés
Hozzászólások
Szia!
Mar ebben a forumban is irtam rola. En autofs-t hasznalok erre a celra Ubin. Nekem teljesen jol mukodik.
- A hozzászóláshoz be kell jelentkezni
Es hasznalsz nem public (vagyis guest-kent nem elerheto) smb megosztast is? Mert en most odaig jutok, hogy latom a megosztasokat, de a mount nem megy. Jol sejtem, hogy kell irnom ehhez egy sajat auto.smb-t?
Az autofs amugy kepbe kerult nalam joval korabban, de valahogy nem tetszett. Mar nem tudom regen mi volt vele a bajom. Most kicsit zavar, hogy nem latszik egyszerre minden elerheto share felmountolva, de asszem ezen a konzervativ szemleleten tul kell lepnem... Kicsit maceras, hogy a szerverek nevet tudnom kell es kozvetlenul a /smb alatt a tab nem csinal semmit, de vegulis nincs sok gep..
Nagyobb baj, hogy a kulonbozo share-ek kulonbozo jogosultsaggal valo elereset meg nem latom, hogy fogom vele pontosan megoldani...
- A hozzászóláshoz be kell jelentkezni
Csak le kellett irnom, hogy elgondolkodjak kicsit. ;) A "nem lathato szerverek" problemajat egyszeru megoldani. Csinalok a home-omba egy smb konyvtarat es azon belul szimlinkeket "emlekeztetoul".
valahogy igy:
/home/en/smb/kiskedvenc -> /smb/kiskedvenc
Igy a szimlinkek lathatoak mindig, azokon keresztul meg elerhetoek a szerverek (ha eppen elerhetoek).
- A hozzászóláshoz be kell jelentkezni
Koszi a tippet meg egyszer. Fent update-ben leirtam hogy oldottam meg vele, de ez szerintem meger egy blogbejegyzest is mindjart. :)
- A hozzászóláshoz be kell jelentkezni
csinaltam is hozza blogbejegyzest kicsit tobb reszlettel:
traktor blogja: autofs + cifs avagy: halozati mount okosan laptopon
- A hozzászóláshoz be kell jelentkezni
/etc/network/if-up.d;if-down.d alá beteszed a megfelelő mountoló scripteket. Aztán amit sikerül mountolnia induláskor attól függően, h melyik hálón van a noti, azt mountolja.
- A hozzászóláshoz be kell jelentkezni
Ha mar ez, akkor reszemrol inkabb a /etc/NetworkManager/dispatcher.d/ de nem tudom mi a kulonbseg igazabol.
De egyelore az autofs megtetszett, csak azzal is van azert egy kis szenvedes, hogy mit hogyan mountoljon (user+jelszo a problemas, foleg ha szeretnel tobb szervert, tobb workgroupot kulonbozo userekkel/jelszavakkal elerni), de megoldodni latszik, csak korbe kell scriptelni... Eredetileg remeltem, hogy valami egyszerubb lesz. Ezt a reszet (user+pass) mashol is meg kellene oldani, nem csak autofs-sel.
- A hozzászóláshoz be kell jelentkezni