Home könyvtár más néven

 ( bigacsiga | 2005. augusztus 1., hétfő - 7:55 )

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

hobord: Ez a sript mit is csinál? Nem nagyon jövök rá. Leírnád, hogy mire és hogyan lehet használni?

[quote:7d536535f9="bigacsiga"]hobord: Ez a sript mit is csinál? Nem nagyon jövök rá. Leírnád, hogy mire és hogyan lehet használni?[/quote:7d536535f9]

Csak egy példa volt, hogy hogyan lehet passord-öt változtatni sciptből.
Fontos hogy legyen fent az expect. (apt-get install expect)
a te problémádra a megoldás:

add_user.sh
[code:1:7d536535f9]
#!/bin/sh
# \
exec expect -f "$0" ${1+"$@"}
set password [lindex $argv 1]
set user [lindex $argv 0]

spawn adduser $user
expect "assword:"
sleep 0.1
send "$password\r"
expect "assword:"
sleep 0.1
send "$password\r"
expect -exact "Full Name \[\]:"
sleep 0.1
send "\r"
expect -exact "Room Number \[\]: "
sleep 0.1
send "\r"
expect -exact "Work Phone \[\]: "
sleep 0.1
send "\r"
expect -exact "Home Phone \[\]: "
sleep 0.1
send "\r"
expect -exact "Other \[\]: "
sleep 0.1
send "\r"
expect -exact "correct? \[y/N\]"
sleep 0.1
send "y\r"

spawn smbpasswd -a $user
expect "assword:"
sleep 0.1
send "$password\r"
expect "assword:"
sleep 0.1
send "$password\r"

expect eof
[/code:1:7d536535f9]

Használata
[code:1:7d536535f9]
add_user.sh username password
[/code:1:7d536535f9]

Helló!

Samba-val osztok meg egy könyvtárat amit egy logon scriptel be is map-olnék mint egy hálózati drive. Viszont abba a problémába ütköztem, hogy a path= /home/%u -t ha megosztom akkor a user neve lesz a könyvtáré is. (logikusan). Node akkor hogyan tudnám azt megoldani, hogy valami egységes legyen mert a batch scriptben már nem működik a %u.

Remélem nem volt túlságosan zavaros. No köszi a segítséget.

Egy kicsit érthetőbben, plíz!

Ha a windowsos .bat file nem fogadja el a %u -t mint változót, akkor használj %username%-ot.

üdv,
banyek

Tipp:

net help use

...
/HOME A felhasználó csatlakoztatása a saját kezdőkönyvtárához.
...

Ha windows alatt loginolsz be, minek a script? Kicsit nehéz a felfogásom...

[quote:1af1b9ea76="norcrys"]Ha windows alatt loginolsz be, minek a script? Kicsit nehéz a felfogásom...[/quote:1af1b9ea76]
gyanítom azért, mert szeretné hogy legyenek szép hálózati meghajtói :)

[quote:bbcc1b24ac="congo"]
gyanítom azért, mert szeretné hogy legyenek szép hálózati meghajtói :)[/quote:bbcc1b24ac]

Erre van a redmondi oprencerben az automount.

[quote:92608fd70b="norcrys"]Erre van a redmondi oprencerben az automount.[/quote:92608fd70b]
tudatlan kérdés: az micsoda? :)
lehet a szerverről kezdeményezni? csak mert ha a kliensekhez hozzá kell nyúlkálni, akkor az nem igazán jó megoldás...

[quote:fa14660d07="congo"][quote:fa14660d07="norcrys"]Erre van a redmondi oprencerben az automount.[/quote:fa14660d07]
tudatlan kérdés: az micsoda? :)
lehet a szerverről kezdeményezni? csak mert ha a kliensekhez hozzá kell nyúlkálni, akkor az nem igazán jó megoldás...[/quote:fa14660d07]

Kezd világosodni, csak akkor a kérdező írta volna... :idea:

Naigen szóval így csinálnám logonscriptben: net use X: \\192.168.1.16\usernév.

Csakhogy nemtudom az usernevet feloldani mertugye mindenkinek más. a hálózati meghajtóra szükség van mert örülök ha azt megtanítom hogy oda mentsenek a 2.-os kölkök.

Miért nem lehet a teljes home könyvtárat felcsatoltatni?
Olvasási jogot csak a tulaj kapjon, oszt' jónapot.

Mirét nem csatlagoztatod a homes share-t ?

smb.conf ba írd:
[code:1:cef8a56b35]
[homes]
comment = Home Directories
browseable = yes
# By default, the home directories are exported read-only. Change next
# parameter to 'yes' if you want to be able to write to them.
writable = yes
# File creation mask is set to 0700 for security reasons. If you want to
# create files with group=rw permissions, set next parameter to 0775.
create mask = 0640
# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
directory mask = 0750

[/code:1:cef8a56b35]

Vagy valamit nagyon félreértek?

Én is így csinálom (mondjuk az enyémben van egy path = /home/%u) de ezzel az a gáz hogy amit látok aze yg könyvtár lesz a felhasználó nevével. Ezt viszont nem tudom csatlakoztatni mert a winnek így kell megadni a felmappolandó útvonalat: net use X: \\192.168.1.16\usernév. Az usernév helyére pedig valamit írni kéne hogy mindíg az aktuális userrel legyen felmappolva.

[quote:c6796babc5="bigacsiga"]Én is így csinálom (mondjuk az enyémben van egy path = /home/%u) de ezzel az a gáz hogy amit látok aze yg könyvtár lesz a felhasználó nevével. Ezt viszont nem tudom csatlakoztatni mert a winnek így kell megadni a felmappolandó útvonalat: net use X: \\192.168.1.16\usernév. Az usernév helyére pedig valamit írni kéne hogy mindíg az aktuális userrel legyen felmappolva.[/quote:c6796babc5]

probáld így:
net use X: \\192.168.1.16\homes\

Én nem adtam meg path-ot és mindíg az aktuális userre hivatkozik agyanazzal a névvel.
Érdemes bekapcsolni a browseable = yes-t
:)

[quote:54ec781b00="bigacsiga"]Én is így csinálom (mondjuk az enyémben van egy path = /home/%u) de ezzel az a gáz hogy amit látok aze yg könyvtár lesz a felhasználó nevével. Ezt viszont nem tudom csatlakoztatni mert a winnek így kell megadni a felmappolandó útvonalat: net use X: \\192.168.1.16\usernév. Az usernév helyére pedig valamit írni kéne hogy mindíg az aktuális userrel legyen felmappolva.[/quote:54ec781b00]

Felejtsd el a userneveket és az egész home könyvtárt add meg megosztásként. Akkor a winekben mindnehol ugyanazt kell megadni és a felhazsnáló meg kattintson bele a saját könyvárába. Ennyit igazán megtehet...
Mondjuk, én babonából nem használom a home könyvtárt, csinálok egy "users" partíciót, ott pedig szépen kettéválasztom a normális és privát user könyvtárakat.

Én fordítva közelíteném meg a dolgot. Ahány felhasználó, annyi logon script. Ami közös mindenkinek, azt egy script file-ba kiraknám és meghívnám...

smb.conf
[code:1:ab4fbc7f58]logon script = %U.cmd[/code:1:ab4fbc7f58]

user1.cmd
[code:1:ab4fbc7f58]net use k: \\szerver\doksik
call \\szerver\netlogon\kozos.cmd[/code:1:ab4fbc7f58]

kozos.cmd
[code:1:ab4fbc7f58]net time \\szerver /set /yes[/code:1:ab4fbc7f58]

Az a gondom hogy a wineknek úgy kell megadni a felcsatolandó drivet hogy \\IP\megosztás. Tehát az a bajom hogy nem felejthetem el. Már énis aztmondtam volna neki hogy majd ő belekattint de nem megy.

Még mindig a /home beállítást javaslom, nem tudom miért nem jó. Esetleg összedobhatsz egy VBScriptet is erre a célra. A minden felhasználónak külön logonscript egy kicsit overkill szerintem :)

Hello!

Szerintem Te valami ilyesmit keresel:

http://us2.samba.org/samba/docs/man/Samba-HOWTO-Collection/AdvancedNetworkManagement.html#id2637626

Udv.

begin: Naigen ez tűnik a leg épkézlábabb megoldásnak csakhát ehhez meg valami script kelleneami legenerál minden usernek egy loginscriptet. Kézzel marhára nem akarom mert rengeteeg userem lesz.

[quote:19cf21eb32="bigacsiga"]Csakhogy nemtudom az usernevet feloldani mertugye mindenkinek más. a hálózati meghajtóra szükség van mert örülök ha azt megtanítom hogy oda mentsenek a 2.-os kölkök.[/quote:19cf21eb32]
Tehát akkor mégsincs mindenkinek saját /home könyvtára a szerveren?

Ha van, akkor a %username% segítségével meg tudod csinálni a csatlakoztatást, de ez még nem fogja azt jelenteni, hogy oda is fognak menteni a felhasználók.
Magyarul elkészíted Windows alatt a netlogon .bat fájlodat és a sambának csak megadod, hol találja. A felhasználói neveket pedig úgy osztod ki, hogy a samba és az azonosítást végző program ugyanazt tartalmazza.

Tehát a [code:1:19cf21eb32]net use H: \\192.168.0.1\%username%[/code:1:19cf21eb32] tökéletesen menni fog, mindössze a [homes] részt kell azu smb.conf-ban beállítani (elvileg bevan) oly módon, hogy ne lehessen tallózni a hálón és csak az adott felhasználó érhesse el.

<rosszmáj>
grat, hogy eljutottatok a 3. hozzászólásomban ajánlott módszerhez.
</rosszmáj>

[quote:0435224c64="banyek"]<rosszmáj>
grat, hogy eljutottatok a 3. hozzászólásomban ajánlott módszerhez.
</rosszmáj>[/quote:0435224c64]
A rosszmájadnak tökéletesen igaza van, nem olvastam el a teljes thread-et.

[quote:261ba8c8ac]
<rosszmáj>
grat, hogy eljutottatok a 3. hozzászólásomban ajánlott módszerhez.
</rosszmáj>
[/quote:261ba8c8ac]

És ezzel egyenértékű az én ajánlatom is mivel,

net use H: \\192.168.0.1\%username%
ugyan az mint a
net use H: \\192.168.0.1\homes\

8O

Legalábbis nálam: :wink:

banyek: tényleg valahogy elsiklottam felette(d). Bocs. Közben nem ezzel kapcsolatban de felmerült bennem az, hogy nem lehetne-e esetleg az usereket nem egyenként felvenni hanem a rendszerből betölteni?szalhogy ne kelljen nekem órákig begépelni az adduserbe a userkeket aztánmeg a smbpasswd-be is hanem a samba vegye át a rendszertől a felhasználólistát?

[quote:ddf08001fa="bigacsiga"]banyek: tényleg valahogy elsiklottam felette(d). Bocs. Közben nem ezzel kapcsolatban de felmerült bennem az, hogy nem lehetne-e esetleg az usereket nem egyenként felvenni hanem a rendszerből betölteni?szalhogy ne kelljen nekem órákig begépelni az adduserbe a userkeket aztánmeg a smbpasswd-be is hanem a samba vegye át a rendszertől a felhasználólistát?[/quote:ddf08001fa]
A kérdés, hogy honnan kell átvenni.
Active directory, egy gép userlista, xls, .... ?

Érdemes körbenézni perl tájékán.

http://www.xav.com/perl/site/lib/Win32API/Net.html#examples
http://www.roth.net/perl/
vagy ezt elolvasni
http://tr.samba.org/samba/docs/man/Samba-HOWTO-Collection/NT4Migration.html

Hát mondjuk a /etc/shadow-ra gondoltam elsőre. Vegye át onnan őket névvel jelszóval. Tipp?

[quote:df8fbcc094="bigacsiga"]Hát mondjuk a /etc/shadow-ra gondoltam elsőre. Vegye át onnan őket névvel jelszóval. Tipp?[/quote:df8fbcc094]
Tehát ha jól értem nem windows-ról kell átvenni a usereket hanem a shadow-ból.

Ekkor én elgondolkoznék azon, hogy nem hozok létre ujabb jelszófile-t, hanem átálítom a samba authentikációt.

http://pubwww.tudelft.nl/swat/help/PAM-Authentication-And-Samba.html

[quote:69eb10be9e="bigacsiga"]Hát mondjuk a /etc/shadow-ra gondoltam elsőre. Vegye át onnan őket névvel jelszóval. Tipp?[/quote:69eb10be9e]

smbpasswd -a usernév

norcrys: így akkor ponthogy én fogom begépelgetni őket nekem pont az ellenkezője a célom. Felveszem őket a linux rendszerbe felhasználóként (ez elkerülhetetlen) de ugyanezt vagy ennek egy kópiáját kéne használnia a sambanak így nem kellene 2X begépelnem az usereket.

[quote:41d894f190="bigacsiga"]norcrys: így akkor ponthogy én fogom begépelgetni őket nekem pont az ellenkezője a célom. Felveszem őket a linux rendszerbe felhasználóként (ez elkerülhetetlen) de ugyanezt vagy ennek egy kópiáját kéne használnia a sambanak így nem kellene 2X begépelnem az usereket.[/quote:41d894f190]

Ha még egyáltalán nincsenek felvíve a userek és a gondod annyi hogy nem akarsz 2x gépelni akkor except script.

Egy példa passwd wrapper:
#!/bin/sh
# \
exec expect -f "$0" ${1+"$@"}
# wrapper to make passwd(1) be non-interactive
# username is passed as 1st arg, passwd as 2nd

set password [lindex $argv 1]
spawn passwd [lindex $argv 0]
expect "assword:"
send "$password\r"
expect "assword:"
send "$password\r"
expect eof

[quote:c75a0f98c3="hobord"][quote:c75a0f98c3]
<rosszmáj>
grat, hogy eljutottatok a 3. hozzászólásomban ajánlott módszerhez.
</rosszmáj>
[/quote:c75a0f98c3]

És ezzel egyenértékű az én ajánlatom is mivel,

net use H: \\192.168.0.1\%username%
ugyan az mint a
net use H: \\192.168.0.1\homes\

8O

Legalábbis nálam: :wink:[/quote:c75a0f98c3]

Ez érdekes, mert a 'net use H: \\192.168.0.1\%username%' "szó szerinti fordításban" a 192.168.0.1-es gépen a felhasználó home-könyvtárát jelöli (nálam a /home/blanc), míg a net use H: \\192.168.0.1\homes\ a 'homes' nevű megosztást jelenti, amely nem feltétlenül neve egyik felhasználónak sem.

[quote:e855843775="blanc"][quote:e855843775="hobord"][quote:e855843775]
<rosszmáj>
grat, hogy eljutottatok a 3. hozzászólásomban ajánlott módszerhez.
</rosszmáj>
[/quote:e855843775]

És ezzel egyenértékű az én ajánlatom is mivel,

net use H: \\192.168.0.1\%username%
ugyan az mint a
net use H: \\192.168.0.1\homes\

8O

Legalábbis nálam: :wink:[/quote:e855843775]

Ez érdekes, mert a 'net use H: \\192.168.0.1\%username%' "szó szerinti fordításban" a 192.168.0.1-es gépen a felhasználó home-könyvtárát jelöli (nálam a /home/blanc), míg a net use H: \\192.168.0.1\homes\ a 'homes' nevű megosztást jelenti, amely nem feltétlenül neve egyik felhasználónak sem.[/quote:e855843775]

Nálam ez a megosztás mindíg annak a usernek a home könyvtára (pl /home/hobord/) aki kapcsolódott hozzá.
Tehát ha hobord-ként kapcsolódok a szerverhez akkor a hobord home könytára lessz, ha palko-ként akkor palko home-könyvtára.

De természetesen át lehet definiálni a 'homes' share-t és akkor már nem igaz az állításom.

Végül is a kettő közötti különbség jeletősége, hogy az egyik esetben a windows oldalon döl el a share kiválasztása, míg a másik esetben a kiszolgáló oldalon.