PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Quota und Profile



Seiten : [1] 2

ThoKre
15.01.04, 16:49
Hallo,

neues Problem!

Ich weiß, das viele nichts von Profilen halten. Aber bei uns funktioniert es ganz gut.

So habe quota für einen User eingerichtet. Nun habe ich mich am PDC angemeldet, aber leider schreibt es jetzt keine Profile mehr auf den Rechner, was vorher ohne quota funktioniert hat.

Ist bestimmt wieder nur ne Einstellungssache, aber mit quota kenn ich micht noch nicht wirklich aus. Binfroh, das ich es überhaupt zum laufen gebracht habe.

Hat jemand ne Idee?

CYP
15.01.04, 21:26
evtl ist deine quota einfach zu klein -> die gelten für jede datei die ein benutzer anlegt

ThoKre
15.01.04, 23:05
Die max grenze liegt bei 1,5 GB. Daran kanns also nicht liegen. Ich vermute, das es was mit rechten zu tun hat. Ich habe bis jetzt für einen Benutzer quota eingerichtet. Habe anderen Benutzer angelegt der keine quota auf der HD hat und bei dem funktioniert es auch nicht.

Es funktioniert nur beim Administrator, weil der ja root rechte hat. Alle anderen haben die AK gezogen.

Rechte sind noch nicht so meine stärke.

CYP
15.01.04, 23:21
das kommt noch :) evtl hat der ordner der die profile beinhalten soll

(ich geh mal davon aus das es ein extra ordner ist da die benutzer in ihrem homeverzeichniss eigentlich immer schreiben können)

nur die rechte 755 oder so also keiner darf schreiben auser der besitzer des ordners (dürfte wohl root sein)

ThoKre
15.01.04, 23:33
path = /data/profiles

data = 0777 # gemountete HDD
profiles = 0777 # Ordner

Das ist ja das was mich stuzig macht. Es haben alle volle schreib und lese Rechte. Sowohl auf die HD als auch dem Ordner.

Ich denke mal eher, dass das Problem bei dem share liegt.

[profiles]
comment = User - Profile
path = /data/profiles
browseable = no
read only = no
create mask = 0600
directory mask = 0777

logon path = \\%L\profiles\%U

mmmh...?

CYP
16.01.04, 13:51
sieht alles richtig aus -> bei mir gehts auch so

hast d schonmal versucht dich mit den entsprechend benutzer auf linux anzumelden und in den profile ordner zu speichern ?

ThoKre
16.01.04, 14:08
Das geht alles.

Der Ordner wurde erstellt. Ich kann rein schreiben. Habe am W2K sogar Servergespeichtes Profil eingestellt. Nachdem das nicht funktioniert hat, habe ich das Profil von Hand kopiert. Aber das ignoriert er auch.

???

mamue
16.01.04, 16:44
Du hast das Profil einfach rüberkopiert? Ich glaube nicht, dass das geht. In den Profilen steht irgendwo die SID des Eigentümers, wenn die nicht übereinstimmt funktioniert das nicht.
Samba3 hat das tool profile um die SID zu ändern. Ansonsten wie üblich, das Profil auf beiden Seiten (server und PC) löschen, wärend der betroffene nicht angemeldet ist und dann neu versuchen.
Profile sind eigentlich eine gute Sache, aber hier bei mir sind die des manches mal einfach so stillschweigend "defekt".

mamue

CYP
16.01.04, 16:52
Profile sind eigentlich eine gute Sache, aber hier bei mir sind die des manches mal einfach so stillschweigend "defekt".

nicht nur bei dir - bei uns (ca 6000 rechner) gehört das fast zum alltag

auch wenn es mittlerweile schon abgenommen hat

ThoKre
16.01.04, 17:00
Gut, mit 6000 Rechnern kann ich nicht dienen. Sind nur ca. 50.

Die einzige Zeit wo es Probleme geben könnte ist früh, wenn so ca. 10 Leute Ihren Rechner anschalten. Dies geschieht aber nie gleichzeitig. Von der Seite her ist es für mich ziemlich sinnvoll.

Naja ich lösche mal die Profile vom PDC und vom Rechner mal sehen, ob es dann funktioniert.

Wenn nicht hab ich noch genug zu tun, um es zu schaffen.

Und ein Mailserver muss auch noch installliert werden.

Also genügend arbeit für die nächsten Tage.

ThoKre
16.01.04, 17:33
Habe den falschen Button gedrückt. Deshalb jetzt ein neuer Thread.



Also hab jetzt mal probiert mich als User an Linux anzumelden.

Tja, versuch war es wert. Keine Chance.

So, also hab ich doch jetzt schon einen Fehler im LDAP.

Wenn ich versuche, die LDAP User über Yast2 zu administrieren, ignoriert er mein LDAP Passwort.

So jetzt komme ich dem Fehler langsam auf die Spur.

Was ist da jetzt falsh gelaufen?

mamue
16.01.04, 21:17
@cyp:
Heiliges Blechle, 6000 Rechner! Dann nehme ich mal an, Du hast auch wenigestens 6000 user, richtig? Wahrscheinlich ldap, soweit ich mich entsinnen kann, oder Kerberos?
Zwei kleine Fragen hätte ich da auf dem Herzen, ich hoffe Du magst Auskunft geben:
1.: Welche Hardware hat der Authentifizierungsserver (da, wo da ldap läuft)? Ist der gleichzeitig PDC?
2.: Ich habe ~8000 User, wenn sich mehrere dutzend gleichzeitig anmelden, geht die Last rauf bis auf fast 10 (top: load=10, cpu-idle=0%), Hauptproblem ist die grosse posixGroup mit 8000 Einträgen, wie sieht das bei Dir aus?

Danke,
mamue

Edit:
Das Gemeine in Bezug auf die Profile bei mir ist, das die PC Reborn-Karten haben. Wenn der Strom abgeschaltet wird, bevor sich der user abgemeldet hat, ist das Profil unter Umständen schon defekt, es gibt eben keine lokale Kopie. Die Grössenbeschränkung funktioniert hier eigentlich auch nicht, man bekommt bestenfalls Beschwerden von den usern: "Ich kann mich nicht mehr abmelden..."

mamue
16.01.04, 21:23
Hast Du die login Dienste unter /etc/pam.d konfiguriert, etwa für ssh?
Ansonsten: was sagt getent passwd?

mamue

CYP
16.01.04, 21:44
user sinds 60000 allerdings läuft die sache mit novell 5.1 ( abgesehen von der nds ziemlicher mist )
und es sind insgesamt 80 dezentrale server also hält sich die last in grenzen

wir haben aber auch noch knapp 8000 rechner ( 75000 user ) die mit knapp 100 linux servern + samba 2.8 mit ldap authentifizierung laufen
die server stehen dezentral und werden von einem zentralen sql server mit userdaten versorgt
(die kerberos authentifizierung läuft nur mal zum spass auf meinen
2 rechnern zuhause :) )

die linux server sind 2,4 ghz p4 xeons + scsi raid 5 (140 gb ) 1 gb ram
der sql server ist ein cluster aus 2 dual p4 xeons + 2 gb ram (wenn ich mich richtig erinnere)
und die novell server sind kleine p3 xeons mit 1gb ram und scsi raid (72 gb )

leider werden die linux server im moment noch von einer externen firma betreut ( wegen
dem support und der garatie )

das problem der profile gibts aber trotzdem und bei beiden serer systemen ( warum weiss wohl nur microsoft :) )

mamue
16.01.04, 22:50
Ok. Ich denke mir, die nds wird sich anders verhalten, als OpenLDAP.
Das ich Gruppen nicht schachteln kann, finde ich schon störend und das "ls -l " fast drei Gedenksekunden einlegt, wenn die Datei zur Gruppe "big-group" gehört, finde ich eher suboptimal.
Wenn ich die 75.000 user/ 8000 PC versuchsweise runterbreche auf meine Bedingungen, dann stehe ich mit meinem P-III 1GHz/1GB Ram für 200 PC und 7800 user (40 Accounts je Klasse) eigentlich ganz gut da.

Abseits davon: Ich habe manchmal den Eindruck, als sei Windows nicht wirklich als Netzwerkbetriebssystem konzipiert worden. Die Benutzerprofile sind ja ganz nett, wirken auf mich aber immer noch irgendwie "angeflanscht". Der ganze Mist wird einmal geladen und danach kann man eigentlich das Netzwerk abschalten - bis zum Abmelden natürlich (Naja, die Netzwerklaufwerke gibt es noch).

Danke,
mamue

ThoKre
16.01.04, 22:51
Ich kann momentan leider nciht an meinen Rechner auf arbeit.

Was heist jetzt getent passwd?

Stecke noch bei Linux nixht im Detail.

Kannst du das noch etwas genauer erklären?

mamue
16.01.04, 22:58
In der shell:
getent passwd
Das sollte bei Dir auch die user mit dem posixAccount aus dem Verzeichniss auflisten, jedenfalls bis zu einer gewissen Grösse.
Die Grundeinstellungen kann man mit Yast machen, aber ich glaube nicht, dass man da sehr weit mit kommt.

mamue

ThoKre
16.01.04, 23:12
Also ich habe zum erstellen der Gruppen und Benutzer .ldif-Dateien verwendet.

dn: ou=users,dc=wr,dc=local = Gruppe users
dn: ou=edv, ou=users,dc=wr,dc=local = Gruppe edv unter der Grußße User

usw.

Die Benutzer haben folgende objectClass:

top, person, posixAccount, sambaAccount

Die Gruppen habe ich extra im Yast angelegt. Und die gidnumber des Benutzers auf die jeweilige Gruppe gesetzt.

Das funktioniert auch ziemlich gut.

Naja ich werde das mal am Montag ausprobieren.

ThoKre
16.01.04, 23:22
Ich habe es bei mir in der Firma gemerkt, wenn ein Rechner völlig den Geist aufgibt, und ich unter Windows das Profil lade sehe ich wenigstens noch, was er für Software auf dem Rechner hatte. Zumindest die wo es eine Desktopverknüpfung gibt.

Da unsere Mitarbeiter öfter den Platz und Computer wechseln, ist das nicht schlecht. Sonst müsste ich immer erst wieder alles einrichten.

CYP
16.01.04, 23:31
schon mal den nscd versucht (name service caching daemon) das soll dabei ja helfen

und beim ldap server die index option gesetzt -> bei mir gehts trotz 7000 dummy
usern (auch alle in der selben gruppe ) auf einem p2 400 in null komm nix

ThoKre
19.01.04, 13:31
@mamue

So habe getent passwd in der shell eingegeben.

Es werden alle Benutzer, die ich im LDAP angelegt habe angezeigt.

@CYP

der nscd deamon läuft auch.
Der einzige Index, der bei mir in der slapd.conf steht ist.

index objectClass eq

Was kann man noch eintragen?

mamue
19.01.04, 15:54
Original geschrieben von CYP
schon mal den nscd versucht (name service caching daemon) das soll dabei ja helfen

Auf dem langsameren Gerät bekommt der nscd einen timeout, also lass ich das mal lieber.
Hier zum Beispiel, 1,3 Sekunden, bis gid zu Gruppen-namen aufgelöst ist:


fileserver:~/testdir # time ls -l slow/
total 0
drwxr-xr-x 2 root root 17 Nov 28 09:07 .
drwxr-xr-x 5 root root 41 Nov 28 09:07 ..
-rw-r--r-- 1 testuser4 susers 0 Nov 28 09:07 test

real 0m1.314s
user 0m0.758s
sys 0m0.055s

slow ist ein Verzeichniss mit einer Datei, die eben der Gruppe susers gehört.
Anzahl user in Gruppe "susers":


fileserver:~/testdir # ldapsearch -x cn=susers -LLL |grep "^memberUid:"|wc -l
5954

Nehme ich eine Datei, die einer kleinen Gruppe gehört, dauert das weit aus weniger lange:


fileserver:~/testdir # time ls -l fast/
total 0
drwxr-xr-x 2 root root 17 Nov 28 09:07 .
drwxr-xr-x 5 root root 41 Nov 28 09:07 ..
-rw-r--r-- 1 testuser4 lehrer 0 Nov 28 09:07 test

real 0m0.029s
user 0m0.018s
sys 0m0.003s



ldapsearch -x cn=lehrer -LLL |grep "^memberUid:"|wc -l
128


Ich habe meine Berkeley-DB wie folgt versucht zu tunen:
in /var/lib/ldapv3/DB_CONFIG
#100MB Cachesize
set_cachesize 0 104857600 1
set_flags DB_TXN_NOSYNC
set_lg_regionmax 1048576
set_lg_max 10485760
set_lg_bsize 2097152
set_lg_dir /var/log
set_tmp_dir /tmp

Ich habe OpenLDAP wie folgt getunt:


#Mehr als 10k Entries habe ich gar nicht:
cachesize 10000

Indizes:
index objectClass pres,eq
index cn pres,sub,eq
index sn pres,sub,eq
index uid pres,sub,eq
index displayName pres,sub,eq
index uidNumber eq
index gidNumber eq
index memberuid eq
index ou pres,eq

index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq

index mail eq,sub


Die resident size von Ldap (2.1.24) liegt dann auch gelegentlich bei 25MB.
Ich habe lange gesucht und gegoogelt und finde mich jetzt erst einmal einfach damit ab. Einiges habe ich abgestellt, zum Beispiel vermeide ich allow-users Anweisungen in der smb.conf, smbd fragt sonst halt bei jedem Zugriff beim Verzeichnissdienst nach, dafür gibt es ja ACL.
Ich kann auch statt lokalhost in der ldap.conf und smbd.conf den anderen schnelleren host angeben, da ich das aber nicht verschlüssele, mach ich das nur als Backup:
passdb backend = ldapsam:"ldap://fileserver ldap://revreselif"
URI ldap://localhost:389/ ldap://revreselif:389/
Das geht ganz gut.

mamue

ThoKre
19.01.04, 18:56
So habe jetzt einige Sachen geändert.

Habe z.B. in /etc/pam.d/sshd folgendes eingefügt:

auth required pam_ldap.so
password required pam_ldap.so use_authtok

Das Ergebnis davon war, das mein SSH Zugang nicht mehr funktioniert hat.

Jetzt habe ich im LDAP Gruppen angelegt und die Benutzer neu angelegt.

Ich kann mich zwar noch anmleden, habe aber keinen Zugriff mehr auf die Freigaben. Wenn ich jetzt getent passwd ausführe stehen auch die User aus dem LDAP nicht mehr drin. :mad:

Ich kann mir zwar jetzt im Yast Benutzer und Gruppen von LDAP anschauen, dies nützt mir aber nichts, wenn ich keinen Zugriff auf dei Shares habe.

Gibt es da eine Lösung?

mamue
19.01.04, 20:25
Der pam.d ssh Zugang ist eher als Test der nss-ldap Anbindung gedacht. Ich habe die /etc/pam.d/sshd gerade mal nicht zur Hand, aber ich mir die auch nur "ergooglet".

mamue

CYP
19.01.04, 20:34
Original geschrieben von ThoKre
So habe jetzt einige Sachen geändert.

Habe z.B. in /etc/pam.d/sshd folgendes eingefügt:

auth required pam_ldap.so
password required pam_ldap.so use_authtok


poste mal die ganze datei -> auth required ist normalerweise nicht ganz richtig

wenn z.b

auth required pam_ldap.so
auth required pam_unix.so

drin steht heisst das dein benutzer muss sowohl im ldap als auch in passwd/shadow
existieren

-> kannst ja mal ein wenig schmöckern ;)

http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html

CYP
19.01.04, 20:53
Original geschrieben von mamue
Auf dem langsameren Gerät bekommt der nscd einen timeout, also lass ich das mal lieber.
Hier zum Beispiel, 1,3 Sekunden, bis gid zu Gruppen-namen aufgelöst ist:


fileserver:~/testdir # time ls -l slow/
total 0
drwxr-xr-x 2 root root 17 Nov 28 09:07 .
drwxr-xr-x 5 root root 41 Nov 28 09:07 ..
-rw-r--r-- 1 testuser4 susers 0 Nov 28 09:07 test

real 0m1.314s
user 0m0.758s
sys 0m0.055s

slow ist ein Verzeichniss mit einer Datei, die eben der Gruppe susers gehört.
Anzahl user in Gruppe "susers":


fileserver:~/testdir # ldapsearch -x cn=susers -LLL |grep "^memberUid:"|wc -l
5954



wenn ichs mir recht überlege sind 1.3s gar nicht sooo schlecht
er muss ja einen eintrag mit knapp 6000 attribut-werten einlesen

weiss jemand ob die nss_ldap eingentlich für jede abfrage ein ldap-bind macht ?

wie sieht denn deine etc/ldap.conf aus (also die für pam_ldap/nss_ldap)
machst du ein ssl/tls ldap-bind ?

falls dus noch nicht hast -> mount option noatime für das filesystem auf dem die datenbank liegt

in /etc/openldap/slapd.conf
dbcachesize xxxx
hab gelesen xxxx soll so gross sein wie die grösste datei in /var/lib/openldap-ldbm
(oder wo deine db dateien so rumliegen :) )

aber wahrscheinlich hilft nur eine dickere maschiene ( oder aus eins mach mehr -> sprich ein cluster )

ThoKre
20.01.04, 14:53
So hab mal ein bißchen gegoogelt.

Und folgenes gefunden.

Für die LDAP-Authentifizierung mit pam. Ich habe jetzt die /etc/pam.d/login

folgender so geändert (das fett markierte):

login:

#%PAM-1.0
auth requisite pam_unix2.so nullok #set_secrpc
auth required pam_securetty.so
auth required pam_nologin.so
auth sufficient pam_ldap.so
#auth required pam_homecheck.so
auth required pam_env.so
auth required pam_mail.so
account required pam_unix2.so
account sufficent pam_ldap.so
password required pam_pwcheck.so nullok
password required pam_unix2.so nullok use_first_pass use_authtok
password required pam_ldap.so use_first_pass use_authtok
session required pam_unix2.so none # debug or trace
session required pam_limits.so
session required pam_env.so

So es geht aber immer noch nicht.

Ich habe noch ein indices ind er slpapd.conf eingetragen.

index uid pres,eq
index rid eq
index uidnumber eq
index gidnumber eq
index cn eq
index memberuid eq

Ich weiß jetzt aber nicht für was memberuid steht.

mamue
20.01.04, 16:00
Original geschrieben von CYP

1.: wenn ichs mir recht überlege sind 1.3s gar nicht sooo schlecht
er muss ja einen eintrag mit knapp 6000 attribut-werten einlesen

2.: weiss jemand ob die nss_ldap eingentlich für jede abfrage ein ldap-bind macht ?

3.: wie sieht denn deine etc/ldap.conf aus (also die für pam_ldap/nss_ldap)
machst du ein ssl/tls ldap-bind ?

4.: falls dus noch nicht hast -> mount option noatime für das filesystem auf dem die datenbank liegt

1.: Je länger ich darüber nachdenke, desto schlechter finde ich das. Irgendwann sollte der Eintrag ja mal im cache sein. Und wenn es für memberUID einen Index _gäbe_ sollte die Suche doch nicht länger als log(n) dauern, mit n=Anzahl memberUID. Das sind sechs Vergleiche bei 1.000.000 Einträge.
2.: Ein bind wohl nicht, als was sollte er auch binden, es sei denn Du hättest das rootDN-Passwort dort angegeben. Man kann das konfigurieren, sollte aber nicht nötig sein. (Dünnes Eis auf dem ich gerade stehe)
3.: Hab's gerade mal nicht da, aber da steht nur die URI und ein paar Angaben, wo die Gruppen und user zu finden sind (ou=accounts/groups,dc=...?one), shadow habe ich herausgenommen.
4.: Kenn ich gar nicht, mal schauen, was das macht, danke.
Aus dem cluster wird nix, das ist mir zu komplex, dann schon eher eine zweite CPU (hat noch jemand einen slot-P-IIIs mit VRM? :( )
mamue

CYP
20.01.04, 20:37
Original geschrieben von mamue

1.: Je länger ich darüber nachdenke, desto schlechter finde ich das. Irgendwann sollte der Eintrag ja mal im cache sein. Und wenn es für memberUID einen Index _gäbe_ sollte die Suche doch nicht länger als log(n) dauern, mit n=Anzahl memberUID. Das sind sechs Vergleiche bei 1.000.000 Einträge.
2.: Ein bind wohl nicht, als was sollte er auch binden, es sei denn Du hättest das rootDN-Passwort dort angegeben. Man kann das konfigurieren, sollte aber nicht nötig sein. (Dünnes Eis auf dem ich gerade stehe)
4.: Kenn ich gar nicht, mal schauen, was das macht, danke.
Aus dem cluster wird nix, das ist mir zu komplex, dann schon eher eine zweite CPU (hat noch jemand einen slot-P-IIIs mit VRM? :( )


zu 1. wieso gäbe ? nach deiner slapd.conf hast du doch einen :)

zu 2. bei ldap muss man immer ein bind machen -> man kann sich nacher anmelden wenn man will( je nachdem wie der server eingerichtet ist sieht man evtl nix )
die frage ist nur ob nss_ldap einmal beim ersten laden ein bind macht -> oder bei jeder suche
-> egal ich kanns eh nicht ändern wenns so wäre :)

4. so rein zufällig nicht -> aber ich tausche ein pentium2 400 gegen ein duron ein ;)

CYP
20.01.04, 20:49
Original geschrieben von ThoKre
So hab mal ein bißchen gegoogelt.

Und folgenes gefunden.

Für die LDAP-Authentifizierung mit pam. Ich habe jetzt die /etc/pam.d/login

folgender so geändert (das fett markierte):

login:

#%PAM-1.0
auth requisite pam_unix2.so nullok #set_secrpc
auth required pam_securetty.so
auth required pam_nologin.so
auth sufficient pam_ldap.so
#auth required pam_homecheck.so
auth required pam_env.so
auth required pam_mail.so
account required pam_unix2.so
account sufficent pam_ldap.so
password required pam_pwcheck.so nullok
password required pam_unix2.so nullok use_first_pass use_authtok
password required pam_ldap.so use_first_pass use_authtok
session required pam_unix2.so none # debug or trace
session required pam_limits.so
session required pam_env.so

So es geht aber immer noch nicht.

Ich habe noch ein indices ind er slpapd.conf eingetragen.

index uid pres,eq
index rid eq
index uidnumber eq
index gidnumber eq
index cn eq
index memberuid eq

Ich weiß jetzt aber nicht für was memberuid steht.


index memberuid eq -> das heisst ldap soll für das attribut memberuid (das sind nach dem
nis.schema die mitglieder einer gruppe)
ein index erstellen -> dann geht das suchen fixer
---------------------------------------------------------------------------------------------------
account required pam_unix2.so
account sufficent pam_ldap.so

hier hast du ja wieder angegeben das ein benutzer unbedingt einen eintrag in passwd/shadow haben muss

wenn dann musst du
account sufficent pam_unix2.so
account sufficent pam_ldap.so

das heisst ->
sieh erst in passwd/shadow nach ->
wenn ok anmeldung i.o
wenn falsch sieh in ldap nach ->
wenn ok anmeldung i.o
wenn falsch -> anmeldung verweigert

schau mal auf der seite da ist das alles prima beschrieben(ich weiss sehr viel zu lesen
aber du willst ja auch was lernen)
http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html



auth requisite pam_unix2.so nullok #set_secrpc
das sieht ja ganz falsch aus es bedeutet ->
probiere mal passwd/shadow obs den account gibt ->
wenn nicht geh nicht über los sonder verweigere direckt die anmeldung
(spreich alles darunter das mit auth beginnt wird gar nicht ausgeführt)
wenn dann
auth sufficient pam_unix2.so nullok
auth sufficient pam_ldap.so user_first_pass

das heisst ->
sieh erst in passwd/shadow nach ->
wenn ok anmeldung i.o
wenn falsch sieh in ldap nach (und frag nicht nochmal nach nem passwd)->
wenn ok anmeldung i.o
wenn falsch -> anmeldung verweigert