PHP proc_open - wie erlauben?

Status
Für weitere Antworten geschlossen.

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Vielen Dank, Bob.

Die ARM-exe dürfte ausführbar sein, ich kriege jetzt eine andere Fehlermeldung.

extensions/Scribunto/engines/LuaStandalone/binaries/lua5_1_5_linux_32_generic/lua_5.0.2_arm: /lib/libm.so.6: version `GLIBC_2.0' not found (required by extensions/Scribunto/engines/LuaStandalone/binaries/lua5_1_5_linux_32_generic/lua_5.0.2_arm)

Diese Fehlermeldung wird im oben verlinkten Thread ebenfalls erwähnt, das bedeutet, dass ich einen Schritt weiter bin. Das Verzeichnis /usr/bin/lua gibt es auf meiner DS allerdings nicht.

Wie gesagt, in Linux kenne ich mich nicht wirklich aus...

Update: es scheint, dass die Standard-C Bibliothek zu alt ist. Frage: kann man sie upgraden, ohne das das ganze System flöten geht?
 
Zuletzt bearbeitet:

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Mach da nicht weiter mit /usr/bin/lua findest du auf Linux Distros die eine andere Installationsvariante nutzen.
Du musst dich nur auf das Extension Verzeichnis konzentrieren. Findet sich nichts besteht noch die Möglichkeit selbst eine zu bauen, das ist nur nicht wirklich was für Beginner.
Ich hab die sources gesucht die brauchts du dafür https://sourceforge.net/projects/lu...aries/lua-5.3.4_Linux26g4_lib.tar.gz/download
und dabei hier noch eine Version gefunden versuch diese
https://sourceforge.net/projects/lu...ables/lua-5.3.4_Linux26g4_bin.tar.gz/download
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Danke, Bob.

Die C-Bibliothek sollte man nicht updaten, habe ich irgendwo gelesen, viel zu riskant. Ich hatte bereits etwas in der Art vermutet, wenn da etwas schiefgeht, ist die DS perdü.

Die Binaries von deinem Link lassen sich nicht ausführen, Exec format error

Jetzt gibt es mehrere Möglichkeiten:

- ich finde eine funtionierende Binary im Netz
- einer meiner Söhne übersetzt eine für mich
- ich spiele XAMPP auf eine Platte im NAS; das hatte ich bereits einmal versucht, hat nicht geklappt, XAMPP war nicht zum Laufen zu bewegen, anscheinend wird das Laufwerk in einer Art und Weise in Windows angebunden, die sich mit XAMPP nicht verträgt; im Büro z.B arbeitet XAMPP auch auf Netzlaufwerken problemlos
- ich suche ein anderes NAS (ohne Garantie, dass die von mir gewünschte Funktionalität vorhanden ist)
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Hi Manuela, einen Punkt fehlt mir in deiner Liste noch: LuaSandbox
https://www.mediawiki.org/wiki/LuaSandbox

Das könnte wohl die beste Option sein, denn diese PHP Extension kannst du über den PHP Composer laden.
Sie muss also nicht installiert werden wie im Wiki beschrieben.
https://packagist.org/packages/mediawiki/scribunto

Achte nur darauf es gibt php56 und php vom DSM.
Die Custom Webserver config (SYNO.SDS.MediaWiki.ini) muss im Anschluss erneut angepasst werden.

Bob
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Danke für deine wertvolle Unterstützung, Bob.

Bitte gehe davon aus, dass ich ein Linux-Dummy bin ;-).

Sehe ich das richtig, dass ich diese Sandbox irgendwie installieren muss? Leider habe ich keine Ahnung, wie das geht, ich lese immer nur "sudo ..:"

Ich versuche mal aufzuzählen, was zu tun ist.

Snapshot von Github downloaden und entpacken
in irgendein Verzeichnis am Server kopieren
im Verzeichnis folgendes Kommando ausführen: phpize && ./configure && make && sudo make install

In der Beschreibung steht weiters
Then add extension=luasandbox.so to the PHP configuration in an appropriate place

Weder weiß ich, was genau ich der PHP-Konfiguration hinzufügen muss noch wo dieser "appropriate place" ist...

Wie gesagt, Linux-Dummy...
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Wie gesagt, Linux-Dummy...

Das ist kein Problem; schon mal gut das du nachfragst.
Habs im Beitrag bereits geschrieben du müsstest dich mit dem PHP Composer anfreunden, der übernimmt die Installation.
Ich kann es nicht versprechen, aber wenn das noch etwas Zeit hat schreib ich dir im laufe der Woche ein kleines Howto.
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Mein Sohn schreibt mir folgendes:

-) Das Linux, das auf der Box läuft, ist ein von der Firma selbst
gemachtes. Gibt es vllt. ein lua-package in der GUI?
-) Lt. einem Forumseintrag gibt es keinen Compiler, und selbst wenn,
dann sind das sehr schwache Geräte (ARM, wenig Arbeitsspeicher). Da
stellt sich die Frage, ob man das auf der Maschine überhaupt kompilieren
kann.
-) Bleibt als bis jetzt erfolgsversprechendste Lösung eine
Cross-Compilierung auf einem starken Linux-System. Das habe ich aber
noch nie gemacht - keine Ahnung, wie lange das dauern wird, bis alles
läuft. Außerdem müsste man es statisch kompilieren, d.h. die Binärdatei
ist für sich lauffähig, ohne Abhängigkeiten zu System-Bibliotheken (um
genau die Fehlermeldungen zu vermeiden, die du schon gesehen hast, mit
z.B. der glibc). Das klingt sehr mühsam, und kann lange dauern...

Alternativ kann man eine Zweit-glibc versuchen zu installieren, und den
Linker anweisen, diese für lua zu verwenden - klingt auch nach einem
Murks...

Anm: heißt der Prozessor deswegen ARM, weil er arm ist? :rolleyes:
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Es geht um eine php Extension das sind ca. 200kb das sollte machbar sein. Wir kompilieren ja keinen Kernel ;) Du kannst das DSM aufbohren mit einem Bootstrap und dann auch mit Programmen bestücken die regulär nicht vorhanden sind wie gcc & co.(Compiler) Es sind aber mehr die Kernel Sources die hier oft Schmerzen bereiten, da sie meist mit Abwesenheit glänzen zur aktuellen DSM Version. Aber ich denke das ist alle nicht mehr notwendig.

Schau dir diesen Beitrag an; ich wollte zuerst den PHP Composer installieren aber das MW hat bereits einen mitgebracht :)
https://www.mediawiki.org/wiki/Composer/For_extensions

Nun ARM’s sind heute nicht mehr wegzudenken, in unserem Fall (NAS - beste Kompatibilität) empfiehlt sich aber immer noch eine 64bit Intel CPU.

Bob
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Kann die DS218+ das, was ich suche?
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Ich habe die Community am großen Fluss befragt, aber anscheinend bin ich der einzige Mensch weltweit, der dieses Problem hat, keine Antwort bisher. :(

Naja, wer betreibt schon ein privates Wiki, noch dazu mit einer Skriptsprache.
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Naja, wer betreibt schon ein privates Wiki,

Ich auch, nur meins basiert auf Wordpress. Irgendwann wurden die Script Sammlungen, brain dumps und howto‘s immer mehr. Ich erstelle die Artikel unter linux mit BloGtk das geht fix so muss ich nicht dafür auf die Webseite selbst. Perfekte Lösung für meine Zwecke :)

Zurück zum Composer; Hier ist es nicht wie zuerst von mir angenommen :confused:
Die Nutzung wurde integriert nicht der Composer selbst und dann wird git benutzt um das Repository zu klonen, also 1:1 dasselbe was wir bereits mit dem herunterladen der Files für die Extension manuell machten. Jetzt sind halt Updates komfortabler einzuspielen.

Eins würde ich noch versuchen das ist die PHP Erweiterung [luasandbox.so]
Unter Debian armhf hab ich sie gefunden, das wäre 32bit ARM .. oder selbst kompilieren. Mal sehen ob ich da noch helfen kann.

Bob
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Ich auch, nur meins basiert auf Wordpress. Irgendwann wurden die Script Sammlungen, brain dumps und howto‘s immer mehr. Ich erstelle die Artikel unter linux mit BloGtk das geht fix so muss ich nicht dafür auf die Webseite selbst. Perfekte Lösung für meine Zwecke :)

Aha, dir geht es ähnlich wie mir. :) Ich tigere mich in ein Thema hinein, sammle eine Menge Wissen darüber, und nach zwei Monaten habe ich alles wieder vergessen, wenn ich es nicht aufschreibe. Ich bevorzuge ein Wiki, weil es flexibler ist als ein Blog.

Die Beschreibung der LuaSandBox und des Composers hat mich verwirrt, daher habe ich diesen Weg nicht weiter verfolgt. Ich denke, diejenigen, die die Anleitungen schreiben, setzen zu viel Wissen voraus. Git ist auch so ein Fall, da blicke ich mich nicht durch.

Es gab mal ein RezepteWiki, das ist inzwischen wieder vom Netz. Ich habe seinerzeit ein paar Beiträge geliefert, aber das war echt mühsam. Die Admins wollten alles genau wissen, wieviele Töpfe und Pfannen man dafür braucht sowie bis aufs Gramm genaue Mengenangaben (wie schwer ist ein Happel Kraut???). Wirklich komisch, Installationsanleitungen sind selten so detailliert wie diese Rezepte. Wo doch jede Hausfrau weiß, wie viele Zutaten sie nehmen muss, das geht einfach nach Gefühl bzw. Geschmack. ;)

Bis Weihnachten werde ich eh weniger Zeit haben, ich muss ein paar Weihnachtslieder einüben, weil ich am Keyboard begleiten werde.

Danke für deine Unterstützung, vll klappt es ja mit dem Kompilieren noch,
-- Manuela

Update: eine Antwort habe ich vom großen Fluss bekommen, sinngemäß: das weiß ich nicht, das macht unser Administrator :rolleyes:
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Hallo; Hab die PHP Extension erzeugt. Das was über chroot sehr einfach. Leider kann ich nicht genau sagen ob das Resultat auch funktioniert. Kannst du mir bitte ein lua Code Beispiel machen, etwas um festzustellen dass alle i.O. ist? So detailliert wie möglich.

Bin mir nicht sicher aber die Extension müsste doch auch Funktionen beinhalten :confused:
Dazu hab ich mir eine simple php Abfrage gebaut die bei alle Modulen greift nur nicht luasandbox :(

Rich (BBCode):
<?php
if(!extenson_loaded('luasandbox')) {
         dl('luasandbox.so');
}
$module = 'luasandbox';
$functions = get_extension_funcs($module); echo "Folgende Funktionen sind verfügbar:<br>\n"; foreach($functions as $func) {
         echo $func."<br>\n";
}



Rich (BBCode):
----------------------------------------------------------------------
Build complete.

=====================================================================
PHP         : /usr/bin/php
PHP_SAPI    : cli
PHP_VERSION : 5.6.38-0+deb8u1
ZEND_VERSION: 2.6.0
PHP_OS      : Linux - Linux DiskStation 3.10.102 #15284 SMP Sat May 19
04:16:44 CST 2018 x86_64
INI actual  : /luasandbox/tmp-php.ini
More .INIs  :
CWD         : /luasandbox
Extra dirs  :
VALGRIND    : Not used
=====================================================================
TIME START 2018-11-28 19:22:11
=====================================================================
PASS LuaSandboxFunction::construct() is private [tests/LuaSandboxFunction_construct.phpt]
PASS Array key conversion [tests/array-key-conversion.phpt] PASS LuaSandboxFunction::call [tests/call.phpt] PASS Exception in a PHP function called from Lua [tests/callback_exception.phpt] PASS Handling of unsupported datatypes [tests/datatypes-unsupported.phpt]
PASS Data type round-tripping [tests/datatypes.phpt] PASS dump -> loadBinary -> call [tests/dump_loadBinary_call.phpt] PASS Errors at PHP?Lua call boundaries [tests/errors-at-call-boundaries.phpt]
PASS Extending LuaSandbox [tests/extending-LuaSandbox.phpt] PASS ipairs() and __ipairs [tests/ipairs.phpt] PASS loadString 1 [tests/loadString.phpt] PASS PHP throwing exceptions to be caught by pcall() [tests/lua_catches_php_exception.phpt]
PASS pairs() and __pairs [tests/pairs.phpt] PASS pcall() catching various errors [tests/pcall.phpt] PASS profiler sorting [tests/profiler-sorting.phpt] PASS profiler [tests/profiler.phpt] PASS Re-entering Lua during a callback to PHP [tests/reentrant.phpt] PASS timer pausing and unpausing [tests/timer.phpt] PASS xpcall() basic behaviour [tests/xpcall.phpt] =====================================================================
TIME END 2018-11-28 19:22:16

=====================================================================
TEST RESULT SUMMARY
---------------------------------------------------------------------
Exts skipped    :    0
Exts tested     :   43
---------------------------------------------------------------------

Number of tests :   19                19 Tests skipped   :    0 (  0.0%) -------- Tests warned    :    0 (  0.0%) (  0.0%) Tests failed    :    0 (  0.0%) (  0.0%) Expected fail   :    0 (  0.0%) (  0.0%) Tests passed    :   19 (100.0%) (100.0%)
---------------------------------------------------------------------
Time taken      :    5 seconds
=====================================================================
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Hallo Bob,

ich verstehe nicht genau, was du gemacht hast.

Lege im Wiki eine Seite namens Module:test an (oder Module:irgendeinname) und füge folgendes ein:

-- der allereinfachste Lua-Modul
-- die Deklarationszeile und ein wenig Kommentar

local p = {} -- p stands for package


Wenn du die Seite speichern kannst, funktioniert Lua. Wenn nicht, erhältst du eine der beschriebenen Fehlermeldungen.

Danke für deine Mühe!
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Die Kurzfassung: Das funktioniert jetzt bei mir :)
Die Code Schnipsel von dir hab ich vervollständigt und erfolgreich das Beispiel nachgebaut: Die PHP Extension alleine reichte aber immer noch nicht aus es gab anfänglich weitere Fehler:

SyntaxHighlight_GeSHI extension ‘ProcessBuilder not found’
'Symfony\Component\Process\Process' not found


Das war aber in 2 Minuten dank Composer behoben.

Die ausführliche Fassung: Bevor ich jetzt beginne alle notwendigen Tasks aufzuzählen eins vorweg: Du erreichst hier einen Punkt der über die normale Nutzung deiner DS hinausgeht. Folgende Modifikationen können bei falscher Anwendung das System lahm legen. Ich will das nur gesagt haben, dass muss ab hier jeder selber entscheiden.

Deine erste Aufgabe besteht darin zu prüfen ob alle Abhängigkeiten vorhanden sind, da seit DSM 6 div. Probleme bekannt sind und chroot die Unterstützung hierfür in der SynoCommunity zurzeit nicht hat. Es ist wichtig dass die Pakete zur jeweiligen DS passen. Eine Unterscheidung erfolgt wieder auf CPU Ebene.

Also deine DS218j gehört zur x18 Series und hat folgende CPU Architektur: Armada38x
Hier gibt es ein nicht offizielles chroot Paket.
Download & install CHROOT
Download & install GIT

War das erfolgreich steht dem Rest nichts mehr im Weg. Müsste meine Notes dann sortieren und ins Reine schreiben.

Da dein Sohn sich mit Linux auskennt solltest du Ihn hinzuziehen, dann nach dem build unter chroot könnt ihr dieses Paket wieder entfernen so das nur git für den Composer bleibt und die erzeugte php Extension mit der notwendigen Änderung beim mediawiki. Du musst wissen das jedes Update für das DSM derartige Mod’s zum Erliegen bringen kann.

Danke für deine Mühe!
Ich hab schon des Öfteren ein paar Themen hier aufgegriffen und gerne unterstützt. Cross compile und spk‘s erzeugen stand schon sehr lange auf meiner todo Liste, jetzt hab ich endlich meine Entwicklungsumgebung eingerichtet. :cool:

Bob
 

Manuela

Benutzer
Mitglied seit
03. Nov 2018
Beiträge
31
Punkte für Reaktionen
0
Punkte
0
Wow, danke. Leider gibt es in diesem Forum kein Icon, das Applaus liefert. (mir würden auch noch ein paar andere Verbesserungen für das Forum einfallen...)

Syntaxhighlight zickt auch des Öfteren, das habe ich schon bemerkt.

Falls bei dem Einspielen der Software irgendetwas schiefgeht, ist die DS dann gebrickt oder kann man dann noch etwas reparieren? Ich glaube, das traue ich mich nicht alleine, da muss einer meiner Söhne her (beide sind Linux-Freaks).

Ich glaube, ich bin ein Medium.;) Ich mache auf fast jedem System irgendwelche ausgefallene Sachen, die unerwartete Ergebnisse bringen.

Nochmals vielen vielen Dank
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
Nun, es kommt immer wieder vor das Anwender Ihr DSM (auch ganz ohne Mod) eindrucksvoll brick‘en - also ohne Wissen ist die root bash schon eine „Gefahr“. :eek:
Lassen wir das Thema Intel 64bit CPU und dessen Möglichkeiten mit VMM und Docker außen vor,
ist Debian-Chroot der erste Anlauf bevor ich einen bootstrap durchführen würde. Aber auch die Paketverfügbarkeit unter beiden Methoden spielt eine Rolle.

Vorbereitung ist alles! Ein Backup muss immer vorhanden sein. Dann könntest du im schlimmsten Fall das DSM neu installieren und die Daten wiederherstellen.

Ein großer Vorteil wenn Fachleute zugegen sind, daher solltest du dieses Blatt auch spielen. Debian-Chroot nutze ich seit DSM5 und habe noch keine „böse“ Überraschung erlebt.
Das Howto wird jeden Punkt kurz beschreiben und sollte recht fix ausgeführt sein. Für einen Anfänger ist meine einzige Sorge die Zeichenkodierung, also wenn Inhalte kopiert werden und nicht stimmen oder die Bedienung von vi, oder ich habe eine Abhängigkeit übersehen, da meine Umgebung etwas fortgeschritten ist ;)
Falls einer deiner Söhne nachfragt, ja es gibt auch NANO.

Um die Pakete der SynoCommunity (nano, git uva.) nicht selbst herunterzuladen, auch wegen der Updates, folge Step 1-3 und richte dir das für dein Paket Center selbst ein.

mir würden auch noch ein paar andere Verbesserungen für das Forum einfallen...
Immer her damit und hier vorstellen: https://www.synology-forum.de/showthread.html?7655-Wunschliste-fürs-Forum

Bob
 
Zuletzt bearbeitet:

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
php composer

Hi, anbei die versprochene Vorgehensweise.
Die erste Abhängigkeit hier wäre GIT; Wenn das installiert wurde und läuft, prüfe ob es sich in der Konsole aufrufen lässt.

Rich (BBCode):
git --version

Ja? Ok diesen Punkt dann überspringen, ich musste es erst noch hinterlegen:

Rich (BBCode):
ln -s /var/packages/git/target/bin/git /usr/bin

Anpassung für php56 CLI; [] ganz ans Ende von user-settings.ini
Rich (BBCode):
nano /usr/local/etc/php56/conf.d/user-settings.ini

[Extension]
extension = phar.so
extension = openssl.so
extension = zip.so


Mehr Extension's sind für unseren Task nicht notwendig!

Download composer (jetzt unterm admin, oder einem User der Schreibrechte im Webverzeichnis vom MediaWiki hat)
also root ausloggen
Rich (BBCode):
exit

Rich (BBCode):
whoami
admin

Downlaod composer (nach Anleitung)

Rich (BBCode):
php56 -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Rich (BBCode):
php56 -r "if (hash_file('sha384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Rich (BBCode):
php56 composer-setup.php
Rich (BBCode):
php56 -r "unlink('composer-setup.php');"

Composer (version 1.7.3) successfully installed to: /volume1/homes/admin/composer.phar
Use it: php composer.phar


composer lasse ich im admin home und wechsel das Verzeichnis:
Rich (BBCode):
cd /volume1/web/mediawiki/
teste composer
Rich (BBCode):
php56 /volume1/homes/admin/composer.phar validate
lade eine Abhängigkeit nach:
Rich (BBCode):
php56 /volume1/homes/admin/composer.phar require symfony/process

Fertig!

Als Hinweis noch: Du hast Scribunto bereits hinterlegt, es kann aber auch bequem
durch das editieren der composer.json eingerichtet werden

Rich (BBCode):
nano /volume1/web/mediawiki/composer.json
neue Zeile unter require für scribunto hinzufügen
hier ein Schnipsel ...

Rich (BBCode):
     "require": {
        "mediawiki/scribunto": "dev-REL1_30",

jetzt ausführen (als admin)
Rich (BBCode):
php56 /volume1/homes/admin/composer.phar update

Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 39 installs, 0 updates, 0 removals
- Installing mediawiki/scribunto (dev-REL1_30 4e3a20b): Cloning 4e3a20b8f5
 

4bob

Benutzer
Mitglied seit
04. Mai 2016
Beiträge
604
Punkte für Reaktionen
2
Punkte
38
compile php extension bootstrap less

Der letzte Teil; Einstieg ins chroot
Rich (BBCode):
/var/packages/debian-chroot/scripts/start-stop-status chroot

1.php base installation
Rich (BBCode):
apt-get update
Rich (BBCode):
apt-get upgarde
Rich (BBCode):
apt-get install php5-fpm php5 php5-dev

2.lua runtime (lua5.1)
Rich (BBCode):
apt-get install liblua5.1-0-dev liblua50-dev liblualib50-dev

3.luasandbox
Rich (BBCode):
git clone https://gerrit.wikimedia.org/r/p/mediawiki/php/luasandbox.git
Rich (BBCode):
cd luasandbox
Rich (BBCode):
phpize
Rich (BBCode):
./configure
Rich (BBCode):
make
Rich (BBCode):
make install

----------------------------------------------------------------------
Build complete. ;)

4.Prüfe das Ergebnis "ELF 64-bit" passt auf mein System
Rich (BBCode):
file /luasandbox/modules/luasandbox.so
/luasandbox/modules/luasandbox.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=94783e865a378b7c4d8385bd0be52be94140bd3b, not stripped

5.verlasse chroot
Rich (BBCode):
exit

6.Kopiere die PHP Extension + lib ins DSM
Rich (BBCode):
cp /volume1/@appstore/debian-chroot/var/chroottarget/luasandbox/modules/luasandbox.so /usr/local/lib/php56/modules/luasandbox.so
Rich (BBCode):
cp /volume1/@appstore/debian-chroot/var/chroottarget/usr/lib/x86_64-linux-gnu/liblua5.1.so.0 /usr/lib/liblua5.1.so.0

7.Edit MediaWiki's php settings:
Rich (BBCode):
/volume1/@appstore/MediaWiki/synology_added/SYNO.SDS.MediaWiki.ini

Rich (BBCode):
extension=luasandbox.so
extension=mysql.so
extension=mysqli.so
extension=pdo_mysql.so
extension=iconv.so
extension=openssl.so
extension=mcrypt.so

[PATH=/var/services/web/mediawiki]
open_basedir=/var/services/web:/tmp:/var/services/tmp:/dev/null:/usr/bin/git:/bin/bash
mysql.default_socket = /run/mysqld/mysqld10.sock
mysqli.default_socket = /run/mysqld/mysqld10.sock
pdo_mysql.default_socket = /run/mysqld/mysqld10.sock
mysql.default_port = 3307
mysqli.default_port = 3307

8.php update check
Rich (BBCode):
synoservicectl --restart pkg-php56-fpm
Rich (BBCode):
php56 -m |grep lua
Hier muss ein Treffer angezeigt werden.

9.edit MediaWiki web config
Rich (BBCode):
nano /volume1/web/mediawiki/LocalSettings.php

Rich (BBCode):
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
$wgScribuntoDefaultEngine = 'luasandbox';
$wgScribuntoUseGeSHi = true;
$wgScribuntoUseCodeEditor = true;
$wgScribuntoEngineConf['luasandbox']['errorFile'] = '/volume1/web/mediawiki/scribunto_lua.log';

10.Neustart vom MediaWiki

Rich (BBCode):
synoservicectl --restart pkgctl-MediaWiki

Anmelden und das Ergebnis prüfen:
http://diskstation/mediawiki/index.php?title=Spezial:Version

Installierte Software:
LuaSandbox 3.0.3
Lua 5.1.5


Viel Erfolg beim Nachbauen :)
Bob
 
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