DSM 7.1 DSM 7.1-42661 Update 2 - chmod +x /tmp/script.sh - Permission denied

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Hallo liebe Community

Ich habe mein System auf das DSM 7.1-42661 Update 2 aktualisiert. Jetzt habe ich folgendes Problem:

Täglich habe ich ein Skript, was Inhalte von einer Website downloadet und ausführt:

wget -O /tmp/script.sh "http://www.myscript.com/script.sh" && chmod +x /tmp/script.sh

aber das funktioniert nicht mehr. Das system schreibt "permission denied".


Wenn ich die Datei /tmp/script.sh nach /script.sh verschiebe und chmod +x /script.sh ausführe,
dann funktioniert es.

Kann mir jemand sagen, wie ich das beheben kann, dass ich Skripte mit Ausführungsrechten auch in /tmp ausführen kann?

Hab das gerade nach dem Update auf die DSM 7.1-42661 Update 2. Die vorherige Version mit dieser hatte ich das Problem nicht.

Ich habe auch versucht, mich mit ssh admin anzumelden, dann mit root, aber auch wenn ich die Dateirechte auf 777 setze, dasselbe Problem.


Vielen Dank
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.741
Punkte für Reaktionen
3.722
Punkte
468
Interessant. Diese Version scheint die Ausführung von Scripten in /tmp zu verhindern. Bestimmt aus Sicherheitsgründen, weil da jeder schreiben darf :unsure:
 

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Interessant. Diese Version scheint die Ausführung von Scripten in /tmp zu verhindern. Bestimmt aus Sicherheitsgründen, weil da jeder schreiben darf :unsure:
Ja das stimmt. Habe gerade selbst seitens rechere gefunden das dies seitens Synology verhindert wird. Als Workarround hab ich einfach folgenden Befehl (bevor mein wget Befehle begann) hinzugefügt:
mount -o remount,exec /tmp && wget -O /tmp/script.sh "http://www.myscript.com/script.sh" && chmod +x /tmp/script.sh

Somit wird dies wieder vor Ausführung erlaubt.

Lg
 

Georgius

Benutzer
Mitglied seit
10. Apr 2021
Beiträge
231
Punkte für Reaktionen
10
Punkte
18
Warum hast Du einen Skript in tmp? Das ist doch ein Verzeichnis in dem eigentlich nur Daten liegen sollten wärend ein Programm läuft.
 

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Hi, weil es auch nur heruntergeladen, ausgeführt und dann wieder gelöscht wird.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.119
Punkte
214
Darf man aus Neugier fragen warum oder wofür du es täglich herunter landen must, danach ausführen und löschen?
Ergibt für mich erst einmal keinen richtigen Sinn, würde aber gerne mein Wissen erweitern.
 

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Sind dynamische Scripts die auf der Website täglich geändert werden sonst wäre es kein Thema. Und es betrifft um die 100 Synologys in meinem Netzwerk. Ist eine Software die serverseitig ausgerollt wird. Und die synos holte sich dieses seit Version 4.x. Hat bis dato einwandfrei funktioniert. Lg
 
Zuletzt bearbeitet von einem Moderator:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.119
Punkte
214
Und was ist das für eine Software die es seit Version 4.x anbietet? Warum connecten diese 100 DS nicht zu einen Haupt-DS bzw. verteilen es intern nicht anders?
 

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Ist eine eigens entwickelte SW aber dies hat hier nichts mehr mit dem eigentlichen Problem zu tun. Danke für die Hilfe.
 
Zuletzt bearbeitet von einem Moderator:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.741
Punkte für Reaktionen
3.722
Punkte
468
Musst halt auf ein anderes Verzeichnis wie /tmp ausweichen. Dass Scripte in /tmp ein Risiko darstellen, dürfte klar sein. Stell dir mal vor ein böser Bube legt dort ein Script "ls" mit Inhalt "rm -rf /" ab und macht es ausführbar. Dann kommst du als root vorbei und schaust mit "cd /tmp; ls" was da liegt. Was passiert dann? Das ist auch der Grund dafür, dass root das aktuelle Verzeichnis (.) nie mit im Pfad haben sollte.

Ich hab übrigens mal meinen Sohn gefragt (Linux-Guru). Der sagt, das sei schon immer so und wird bereits beim Mounten festgelegt. Alle Filesysteme, die mit der Option "noexec" gemountet werden, erlauben nicht die Ausführung von darauf abgelegten Programmen oder Scripte. Bei /tmp ist das so
Code:
root@DS415:/tmp# mount | grep /tmp
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noexec)
Wenn das bisher ging, war das sicher ein Bug.
 
Zuletzt bearbeitet:

iceget

Benutzer
Mitglied seit
09. Jun 2022
Beiträge
12
Punkte für Reaktionen
1
Punkte
1
Ja auf jeden Fall. Ich werde sowieso die Pfade anpassen. Ich hab das System + Synos so übernommen. Muss hier sowieso alles überarbeiten. Ist nicht optimal das ist korrekt. Danke!
 
Zuletzt bearbeitet von einem Moderator:


 

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