DSM 6.x und darunter Die neue FW DSM 2.3 ist Online

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Alle DSM Version von DSM 6.x und älter
Status
Für weitere Antworten geschlossen.
Nein. Solange die Filme nicht im Verzeichnis photo liegen, sollte die Indexierung dabei aber eh relativ schnell gehen. Da muss ja dann nichts konvertiert werden.

Trolli
 
Also bei mir liegen Sie nicht im Photo-Verzeichnis sondern im Filmverzeichnis. Trotzdem rödelt das Ding schon seit vorgestern. Einziger prozess der ständig läuft und zu 99 % die CPU beansprucht ist convert.
 
Hast Du denn auch was im Verzeichnis photo liegen?
 
Zwei bis drei kleine Handyfilme glaube ich. Sonst wüßt ich nichts.
 
Mhh, werde mir das zu Hause nochmals ansehen. Eigentlich sind bei den Fotos schon die Thumbnails erstellt worden!

meinst du ein Neustart könnte etwas bewirken?
 
Eigentlich eher nein. Aber probieren kannst Du es natürlich mal...
 
open_basedir wird durch S97apache-user.sh restart überschrieben!

Ist eigentlich noch niemandem aufgefallen, dass seit der 1139er Firmware die "open_basedir = [...]" Einstellung in der /usr/syno/etc/php.ini bei jedem Neustart des User-Apache überschrieben wird?
Das kann man auch schön in der S97apache-user.sh so sehen. War bei der Beta noch nicht der Fall.

Oder ist das aus irgendwelchen Gründen nur bei mir der Fall?

Jedenfalls bin ich jetzt etwas Ratlos wie ich die open_basedir wieder entsprechend auf meine zusätzlichen Verzeichnisse erweitern soll, ohne die S97apache-user.sh gleich mit umzukrämpeln :confused:...

BTW:
Da ich in den Release Notes davon nichts gelesen habe:
bei mir is nun der User-Apache die Version 2.2.14 (statt 2.2.13) und PHP auf 5.2.12 (statt 5.2.10) :)

EDIT:
Das mit der User-Apache Version 2.2.14 muss ich leider wieder zurücknehmen, da hatte sich bei mir noch eine ipkg httpd version eingeschlichen, die User-Apache Version ist nach wie vor die 2.2.13.
 
Zuletzt bearbeitet:
Ist eigentlich noch niemandem aufgefallen, dass seit der 1139er Firmware die "open_basedir = [...]" Einstellung in der /usr/syno/etc/php.ini bei jedem Neustart des User-Apache überschrieben wird?
Das kann man auch schön in der S97apache-user.sh so sehen. War bei der Beta noch nicht der Fall.

Kann das jemand noch bestätigen, dass trotz dieser Änderung in der S97apache-user.sh die Init_3rdparty.spk-Geschichte durchschlägt mit ihren Änderungen hinsichtlich der Einstellungen?

... ich hab noch die Beta drauf und kannst nicht verifizieren.

Itari
 
Überschreiben des open_basedir Eintrages wahrscheinlich etwas spezielles

Also die Init_3rdparty_1.5.spk hab ich gerade mal ausprobiert, die hat bei mir die /usr/syno/etc/php.ini aber völlig unberührt gelassen, Inhalt und Zeitstempel sind vorher wie nachher gleich...

Muss aber dazu sagen, dass ich das Tool bisher noch nie genutzt habe, könnte also auch ein Bedienungsfehler meinerseits gewesen sein.

EDIT:
Ich habe mir auch gerade nochmal die alten S97apache-user.sh und S97apache-sys.sh angeschaut. Da scheint sich doch nichts geändert zu haben. Unter bestimmten Umständen zieht der S97apache-user.sh die php.ini aus der /usr/syno/etc.defaults/ und ändert dann über die S97apache-user.sh den open_basedir Eintrag individuell ab und überschreibt dann die /usr/syno/etc/php.ini komplett.
Warum das bei mir früher nie gemacht wurde und nun auf einmal nach dem Update von der Beta auf die FW1139 so passiert muss ich erst noch näher untersuchen.
 
Womit hast Du die Datei denn editiert? Die Synology Stations sind da sehr empfindlich, was z.B. die Zeilenenden angeht. Wenn beim Startvorgang Dateien mit ungültigen Zeichen gefunden werden, werden die Dateien ersetzt. War schon immer so.

Versuch es mal mit dem Editor 'vi'.

Trolli
 
Hallo,
in der Beta ist der code noch nicht enthalten.
1139
Rich (BBCode):
Httpd="/usr/syno/apache/bin/httpd"
HttpdConf="/usr/syno/apache/conf/httpd.conf"
HttpdSSLConf="/usr/syno/apache/conf/extra/httpd-ssl.conf"
PHPINI="/usr/syno/etc/php.ini"
SynoConf="/etc/synoinfo.conf"
SynoDefConf="/etc.defaults/synoinfo.conf"
PIDFILE="/var/run/httpd-user.pid"
RunHTTPS=`/bin/get_key_value /etc/synoinfo.conf runHTTPS`
HttpPort=`/bin/get_key_value /etc/synoinfo.conf httpport`
SSLKEYGEN="/usr/syno/etc/rc.ssl_keygen"

SZF_PHPINI="/usr/syno/etc/php.ini"
PHPINI_DEF_BASEDIR="/usr/syno/synoman:/etc:/var/run:/tmp:/var/spool/php:/volume1/@tmp/php:/var/services/web:/var/services/photo:
/var/services/blog:/var/services/homes"

GenerateConf()
{
        cp ${HttpdConf}-user ${HttpdConf}
        SupportWeb=`/bin/grep -s ^supportweb /etc.defaults/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
        RunWeb=`/bin/grep -s ^runweb /etc/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
        RunWebLocal=`/bin/grep -s ^supportweblocaluser /etc/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
        open_basedir="${PHPINI_DEF_BASEDIR}"
        if [ "$SupportWeb" = "yes" -a "$RunWeb" = "yes" ]; then
                echo "Include /usr/syno/etc/httpd-vhost.conf-user" >> ${HttpdConf}
                echo "DocumentRoot \"/var/services/web\"" >> ${HttpdConf}
                cat ${HttpdSSLConf}-user > ${HttpdSSLConf}
                echo "Include /usr/syno/etc/httpd-ssl-vhost.conf-user" >> ${HttpdSSLConf}
                open_basedir="${open_basedir}:`ls -ld /var/services/web | awk '{print $NF}'`"
        else
                echo "DocumentRoot \"/usr/syno/synoman/phpsrc/web\"" >> ${HttpdConf}
                cat ${HttpdSSLConf}-user | sed 's/DocumentRoot "\/var\/services\/web"/DocumentRoot "\/usr\/syno\/synoman\/phpsrc
\/web"/g' > ${HttpdSSLConf}
        fi
        if [ "$HttpPort" != "80" ]; then
                echo "Listen $HttpPort" >> ${HttpdConf}
        fi
        if [ "$SupportWeb" = "yes" -a "$RunWebLocal" = "yes" ]; then
                echo "Include /usr/syno/apache/conf/extra/httpd-userdir.conf-user" >> ${HttpdConf}
        fi
        WebmailEnabled=`/bin/get_key_value /etc/synoinfo.conf webmail_enabled`
        SZD_MailStation="/var/packages/MailStation"
        SZD_RoundCube="${SZD_MailStation}/target/roundcubemail"
        if [ "x$WebmailEnabled" = "xyes" -a -f "${SZD_MailStation}/enabled" ]; then
                echo "AliasMatch ^/mail$ \"${SZD_RoundCube}/\"" >> ${HttpdConf}
                echo "Alias /mail/ \"${SZD_RoundCube}/\"" >> ${HttpdConf}
                open_basedir="${open_basedir}:${SZD_RoundCube}"
        fi
        sed "/^open_basedir/c\\open_basedir = ${open_basedir}" ${SZF_PHPINI} > ${SZF_PHPINI}.$$
        mv ${SZF_PHPINI}.$$ ${SZF_PHPINI}
}
...
Komischerweise funktioniert bei mir cacti weiterhin auch wenn /opt/bin nicht im open_basedir ist:confused:. cacti meckert zwar bei Settigs->Paths das snmpwalk, snmpget ... und rrdtool und php binary path nicht im open_basedir sind, funktionieren tut es aber.
Alle 3rd Partys laufen bei mir, AdminTool, Webeditor, Messages, ConfigfileEditor, PHPInfo.

Gruß Götz
 
Diff der S97apache-user.sh von der Beta und dem Release

Womit hast Du die Datei denn editiert? Die Synology Stations sind da sehr empfindlich, was z.B. die Zeilenenden angeht. Wenn beim Startvorgang Dateien mit ungültigen Zeichen gefunden werden, werden die Dateien ersetzt. War schon immer so.

Versuch es mal mit dem Editor 'vi'.

Trolli

Editiere eigentlich immer mit vi oder mit Notepad++, letzterer erkennt die Zeilenenden automatisch und verwendet diese weiter. Die php.ini hatte ich in dem Fall mit Notepad++ geändert.
Nur um ganz sicher zu sein habe ich es aber gerade auch nochmal mit dem vi probiert... leider mit dem selben Ergebnis...

Nachdem Goetz bestätigen konnte das es tatsächlich Änderungen an der S97apache-user.sh gegeben hat habe ich nun mal ein Diff zur Beta gemacht.
Hier das Ergebnis (rot = neu; blau = geändert; schwarz = alt):
Rich (BBCode):
SZF_PHPINI="/usr/syno/etc/php.ini"
PHPINI_DEF_BASEDIR="/usr/syno/synoman:/etc:/var/run:/tmp:/var/spool/php:/volume1/@tmp/php:/var/services/web:/var/services/photo:/var/services/blog:/var/services/homes"

GenerateConf()
{
	cp ${HttpdConf}-user ${HttpdConf}
	SupportWeb=`/bin/grep -s ^supportweb /etc.defaults/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
	RunWeb=`/bin/grep -s ^runweb /etc/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
	RunWebLocal=`/bin/grep -s ^supportweblocaluser /etc/synoinfo.conf | awk -F \" '{print $2}' | sed 's/ //g'`
	open_basedir="${PHPINI_DEF_BASEDIR}"
	if [ "$SupportWeb" = "yes" -a "$RunWeb" = "yes" ]; then
		echo "Include /usr/syno/etc/httpd-vhost.conf-user" >> ${HttpdConf}
		echo "DocumentRoot \"/var/services/web\"" >> ${HttpdConf}
		cat ${HttpdSSLConf}-user > ${HttpdSSLConf}
		echo "Include /usr/syno/etc/httpd-ssl-vhost.conf-user" >> ${HttpdSSLConf}
		open_basedir="${open_basedir}:`ls -ld /var/services/web | awk '{print $NF}'`"
	else
		echo "DocumentRoot \"/usr/syno/synoman/phpsrc/web\"" >> ${HttpdConf}
		cat ${HttpdSSLConf}-user | sed 's/DocumentRoot "\/var\/services\/web"/DocumentRoot "\/usr\/syno\/synoman\/phpsrc\/web"/g' > ${HttpdSSLConf}
	fi
	if [ "$HttpPort" != "80" ]; then
		echo "Listen $HttpPort" >> ${HttpdConf}
	fi
	if [ "$SupportWeb" = "yes" -a "$RunWebLocal" = "yes" ]; then
		echo "Include /usr/syno/apache/conf/extra/httpd-userdir.conf-user" >> ${HttpdConf}
	fi
	WebmailEnabled=`/bin/get_key_value /etc/synoinfo.conf webmail_enabled`
	SZD_MailStation="/var/packages/MailStation"
	SZD_RoundCube="${SZD_MailStation}/target/roundcubemail"
	if [ "x$WebmailEnabled" = "xyes" -a -f "${SZD_MailStation}/enabled" ]; then
		echo "AliasMatch ^/mail$ \"${SZD_RoundCube}/\"" >> ${HttpdConf}
		echo "Alias /mail/ \"${SZD_RoundCube}/\"" >> ${HttpdConf}
		open_basedir="${open_basedir}:${SZD_RoundCube}"
	fi
	sed "/^open_basedir/c\\open_basedir = ${open_basedir}" ${SZF_PHPINI} > ${SZF_PHPINI}.$$
	mv ${SZF_PHPINI}.$$ ${SZF_PHPINI}
}

Hat da nun irgendwer ne Idee wie man sich nun sauber die open_basedir erweitern könnte?
 
Hallo,
versuch doch mal in dem Script
PHPINI_DEF_BASEDIR=
zu erweitern.

Gruß Götz
 
Hallo,
versuch doch mal in dem Script
PHPINI_DEF_BASEDIR=
zu erweitern.

Gruß Götz

Nun, funktionieren tut es so schon, ist aber eben meiner Meinung nach nicht so die eleganteste Lösung.
Aber immerhin kriegt man so vorerst wieder alles zum laufen, also danke für den Tipp (und die damit verbundene Überwindung jetzt doch auch noch die S97apache-user.sh zu meinen Konfigurationsfiles hinzu zu fügen). ;)

Versuch es doch mal so, wie itari es in seinem init-Skript macht: http://www.synology-forum.de/showthread.html?p=24021#post24021

Das geht bei open_basedir afaik leider nicht, da dieser Parameter in der php.ini oder der httpd.conf gesetzt werden muss. Letzteres wäre ja im Rahmen eines VirtualHosts noch interessant, da muss ich mich aber erst mal einlesen wie man das macht...
 
Hallo,
Nun, funktionieren tut es so schon, ist aber eben meiner Meinung nach nicht so die eleganteste Lösung.
nicht mehr oder weniger elegant als php.ini direkt zu bearbeiten. Die ist bei Firmwareupgrade auch weg.

Gruß Götz
 
@Trolli und goetz: beeindruckend, zweimal nach einander zeitgleich geantwortet! :eek: ;)


Okay, dass wäre auch eine Möglichkeit, allerdings sind dann auch alle Verzeichnisse offen...

Hallo,

nicht mehr oder weniger elegant als php.ini direkt zu bearbeiten. Die ist bei Firmwareupgrade auch weg.

Gruß Götz

Naja, Objektive betrachtet muss ich dir da wohl recht geben. ;)
Ist wohl mehr so ein subjektives unwohl fühlen Konfigurationen am Server innerhalb der S97apache-user.sh zu machen. :rolleyes:
 
Wenn ich das jetzt hier so lese, dann scheint die Methode, welche ich im Init_3rdparty.spk verwende - nämlich über die httpd.conf die PHP-Variablen zu setzen - nicht von dem Start-Skript tangiert zu werden. Das war auch meine Vermutung. Trolli hat dankenswerter Weise bereits den Link zu der Diskussion gelegt.

Was mich jetzt interessieren würde, wäre, warum macht Synology da so einen Zirkus im Startskript ... hat das irgendeine tiefere Bedeutung? Oder ist das nur, damit sie was zum Laufen bekommen, was sonst nicht geht? Oder schotten sie etwas ab?

Itari
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat