Cacti Installationsprobleme

radiohead

Well-Known Member
Moin,

habe cacti nun installiert und wollte es einrichten. Greife ich auf das Webinterface zu, kommt die Meldung wie im Screenshot zu sehen. Ich habe die cacti.sql aber auch schon nach Anleitung importiert. Witzigerweise kann ich auch nicht ueber mein phpMyAdmin auf die SQL DB zugreifen, da kommt dann der Fehler wie im zweiten Screenshot zu sehen. Die DB ist aber gestartet und ich komme manuell via mysql Kommando ran. Kennt jemand das Problem? Hat doch irgendwie mit dem Apache chroot in OpenBSD zu tun, oder?
 

Anhänge

  • cacti.png
    cacti.png
    23,2 KB · Aufrufe: 374
  • phpmyadmin.png
    phpmyadmin.png
    38,2 KB · Aufrufe: 416
hehe, damit hatte ich auch zu kämpfen. entweder, du lässt mysql den socket unterhalb von /var/www erstellen, oder du greifst übers netz (localhost oder andere ip) darauf zu. wenn du nicht weiterkommst, schau ich nochmal bei mir nach, wie ich das gemacht habe.

hth,
marc

ps: bitte entlasse den apachen nicht aus seinem chroot, wie so oft empfohlen wird. wenn man das chroot richtig bestückt, geht (fast) alles ;).
 
Danke dir! Hat natuerlich gleich funktioniert! Mann muss es halt nur wissen. Sag mal, welche Rechte muss eigentlich /var/www haben? Bei mit steht da fast alles auf root.daemon. Sollte das nicht alles dem User www gehoeren?
 
Jetzt gibt es aber Probleme, da einige Binaries nicht in der chroot sind. Reicht es diese einfach zu kopieren?
 

Anhänge

  • cacti.png
    cacti.png
    57,6 KB · Aufrufe: 386
1. nein, das ist schon richtig so. es ist das homeverzeichnis vom www, das heisst aber nicht, dass es ihm gehört und er dort auch alles darf.
2. ja, die müssen kopiert werden. du musst die benötigte struktur unterhalb von /var/www so anlegen, als wenn das dein root-verzeichnis wäre, da der apache das ja als sein root ansieht. dementsprechend als /usr/bin -> /var/www/usr/bin etc.
 
dann muss man das dem apachen aber auch erlauben, denen zu folgen. aber es ist sauberer, wenn man ein update durchführt, das stimmt schon. ansonsten laufen die anwendungen evtl. noch mit älteren binaries
 
Danke fuer eure Antworten. Werde mal die Links erstellen und dann schauen, ob es geht. Melde mich sonst nochmal.
 
Gibt es nicht so etwas wie nullfs mounts unter OpenBSD?
ne haben die nicht. das kann nur freebsd ;)

edit: oops falschgedacht. mount_null heißt das ding bei netbsd und openbsd. also das würde sich anbieten, am besten mit -o ro reinmounten, das mache ich in meinen jails auch.
 
Zuletzt bearbeitet:
ne haben die nicht. das kann nur freebsd ;)

edit: oops falschgedacht. mount_null heißt das ding bei netbsd und openbsd. also das würde sich anbieten, am besten mit -o ro reinmounten, das mache ich in meinen jails auch.

Kannst du mir mal auf die Spruenge helfen wie ich das mach und wo da der Vorteil ist? Bei mir auf dem 4.1er System gibt es naemlich kein mount_null.
 
Zuletzt bearbeitet:
Kann mir sonst jemand das mit nem lokalen NFS mount erklaeren. Das soll ja ein workaround sein. In meiner /etc/exports steht folgendes drin:

Code:
/usr/local/bin -maproot=root:wheel -ro 127.0.0.1

Folgendes habe ich nach FAQ gemacht:

/usr/sbin/portmap
/sbin/nfsd -tun 4

echo -n >/var/db/mountdtab
/sbin/mountd

Wenn ich jetzt versuche den share zu mounten, passiert folgendes:

Code:
# mount -o ro -t nfs localhost:/usr/local/bin /var/www/usr/local/bin/ 
NFS Portmap: RPC: Program not registered
 
und warum genau versuchst du es nicht erstmal mit links der dateien, was evtl. leichter zu bewerkstelligen ist, als extra dafür noch nen nfs-server aufzusetzen?
 
afaik man kann Verzeichnisse auch so mounten du brauchst kein nfs server wenn die verzeichnisse auf der gleiche kiste sind.
schau dir man mount an.


Gruß Menuhin
 
Hi,

habe nun erstmal die Links erstellt:

Code:
# ls -l /var/www/usr/       
total 16
lrwxr-xr-x  1 root  daemon    9 Aug 16 17:28 bin -> /usr/bin/
drwxr-xr-x  2 root  daemon  512 Aug 14 13:20 lib
drwxr-xr-x  3 root  daemon  512 Aug 14 13:06 libdata
drwxr-xr-x  2 root  daemon  512 Aug 13 03:29 libexec
drwxr-xr-x  3 root  daemon  512 Aug 16 17:28 local

Code:
# ls -l /var/www/usr/local/                                                                                                             
total 4
lrwxr-xr-x  1 root  daemon   15 Aug 16 17:28 bin -> /usr/local/bin/
drwxr-xr-x  3 root  daemon  512 Aug 14 13:05 libdata

Kann es sein, dass die Links nicht ueber Partitionen hinweg funktionieren? Ich bekomme im Cacti immer noch den Fehler, dass er z.B. snmpwalk nicht findet. In der httpd.conf habe ich folgendes eingetragen, damit die Verzeichnisse im Zugriff sind:

Code:
<Directory "/usr/local/bin/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<Directory "/usr/bin/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
 
Wenn dein Programm den Links folgen könnte wäre es aus dem chroot ausgebrochen. Mit null-mounts kannst du einfach deine bin/ Verzeichnisse Read-Only in dein chroot mounten, was ich für die praktischste Lösung halte.
 
Wenn dein Programm den Links folgen könnte wäre es aus dem chroot ausgebrochen. Mit null-mounts kannst du einfach deine bin/ Verzeichnisse Read-Only in dein chroot mounten, was ich für die praktischste Lösung halte.

Ja dann sag mir doch mal wie das mit den null mounts gehen soll. Das was ich gefunden habe ist, dass es dieses Verfahren seit 3.7 nicht mehr gibt. Ich nutze 4.1-stable...
 
Wenn das Null-Mount-Feature abgeschafft wurde, dann habe ich leider auch keinen Vorschlag mehr. Dann muss man wirklich mit hardlinks arbeiten.

Das geht so lang das chroot in der gleichen Partition ist. Du musst halt die benötigten Binaries verlinken, statt einen Link auf das bin/ Verzeichnis anzulegen.
 
Ja. Daran wird es schon scheitern. Ich muss ja von meiner /usr Partition auf die /var Partition verlinken und das geht eben nicht.
 
da das linken nicht funktioniert, solltest du die benötigten dateien (!) kopieren. und auch nur die benötigten dateien kopieren und nicht die ganzen verzeichnisse. dein webserver braucht ja nicht mehr als nötig
 
Zurück
Oben