"Opportunistic Locking aktivieren" per Taskplaner ein und ausschalten?

Status
Für weitere Antworten geschlossen.

derek

Benutzer
Mitglied seit
14. Aug 2011
Beiträge
37
Punkte für Reaktionen
4
Punkte
8
Hallo zusammen,
wie kann ich die Einstellung "Opportunistic Locking aktivieren" per Taskplaner ein und ausschalten?

Kurz zum Hintergrund: Vorhanden ist eine DS1621+ mit DSM7 diese dient als Datenablage und Ziel für ein Backup von einem Hyper-V Server.
Dieser wird auf das NAS durch eine Software gesichert, benötgt aber, dass "Opportunistic Locking aktivieren" NICHT aktiviert ist.

Wenn ich jetzt per VPN (über separaten Router) verbunden bin und von einem Windows 10 Client per Datei Explorer zugreife habe ich folgendes Problem.
Öffnet man im Windows Datei-Explorer eine Datei mit Dateiendung wie .docx, .xlsx, .exe per Doppelklick dann dauert es erst eine Weile bis tatsächlich die Datei über die VPN Verbindung geöffnet wird.
Deutlicher wird dieses Phänomen wenn man einen Rechtsklick macht um das Kontextmenü zu öffnen.
Wobei je größer die Datei ist, desto länger dauert es.
Das heißt ich mache einen Rechtsklick, es dauert eine Weile bis das Kontextmenü erscheint, dann wähle ich kopieren und dann in einem lokalen Ordner auf dem Notebook Rechtsklick und Einfügen und es wird in der erwarteten Geschwindigkeit kopiert.
Dieser Effekt tritt nicht bei z.B. PDFs oder Zips auf.

Dieses Problem habe ich nicht wenn "Opportunistic Locking aktivieren" aktiviert (angehakt) ist.

Da das Backup nachts läuft würde mir ein Workaround reichen in dem ich per Taskplaner der Diskstation "Opportunistic Locking aktivieren" ein- und ausschalten kann.
Leider kenne ich mich mit Linux bzw. dem Linux auf der Diskstation gar nicht aus.
Hätte jemand einen Ansatz für mich?
Im Groben gehe ich davon aus, den Dienst zu stoppen. Die Konfiguration zu ändern (ist wahrscheinlich eine Datei - welche?). Den Dienst wieder starten.
Könnte man (mit welchen Linux-Befehlen?) die Konfigurationsdatei anpassen beim notwendigen Parameter?
Legt man die fertigen scripts (ein- und ausschalten) auf der DS ab und kann diese Scripts dann mit dem Taskplaner im DSM ausführen lassen, reichen dafür evtl. Berechtigungen?

Ich freue mich auf Tipps.

Viele Grüße
Derek
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.803
Punkte für Reaktionen
3.761
Punkte
468
Die Konfi für "Opportunistic Locking aktivieren" landet in der Datei /etc/samba/smbinfo.conf. Da gibt dann eine Zeile "oplocks=no" wenn die Option aus ist, ansonsten fehlt sie, vermutlich weil es der Default ist. Das hilft dir aber nicht viel, weil da jedesmal der SMB-Service neu gestartet werden muss.
 

derek

Benutzer
Mitglied seit
14. Aug 2011
Beiträge
37
Punkte für Reaktionen
4
Punkte
8
Hi,
Danke für die Rückmeldung.
Das der Dienst dabei neugestartet werden muss ist mir klar, möchte es dann in eine Zeit legen in der ich normaler Weise nicht per SMB zugreife.
Werde mal testen wie weit ich mit ändern der smbinfo.conf und Neustarten des Dienstes komme.
VG
Derek
 

derek

Benutzer
Mitglied seit
14. Aug 2011
Beiträge
37
Punkte für Reaktionen
4
Punkte
8
Hi,
nach weiterer Recherche habe ich mir jetzt zwei Scripte erstellt, die ich je per Taskplaner der Diskstation laufen lasse.
Vor dem Backup wird das Opportunistic Locking deaktiviert und nach der geplanten Sicherungsdauer + Reserve wieder aktiviert.
Hier meine Scripte:

smb_oplocks_on.sh
# -Opportunistic Locking aktivieren- +Haken setzen+ = Opportunistic Locking aktivieren # Zeilen mit oplocks=no entfernen sed -i '/oplocks=no/d' /etc/samba/smbinfo.conf # SMB Dienst neu starten synosystemctl restart pkg-synosamba-smbd.service


smb_oplocks_off.sh
# -Opportunistic Locking aktivieren- +Haken entfernen+ = Opportunistic Locking deaktivieren # falls script mehrmals ausgeführt werden sollte erstmal Zeilen mit oplocks=no entfernen sed -i '/oplocks=no/d' /etc/samba/smbinfo.conf # Zeile mit oplocks=no hinzufügen sed -i '$aoplocks=no' /etc/samba/smbinfo.conf # SMB Dienst neu starten synosystemctl restart pkg-synosamba-smbd.service

Viele Grüße
Derek
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.803
Punkte für Reaktionen
3.761
Punkte
468
Jo, könnte so klappen.
Ist da noch ein Tippfehler in der drittletzten Zeile des zweiten Scripts ($aoplocks) oder gehört das so? Ich kenne sed zu wenig.
 

derek

Benutzer
Mitglied seit
14. Aug 2011
Beiträge
37
Punkte für Reaktionen
4
Punkte
8
Hi,
beim Befehl sed steht das $ für 'letzte Zeile' und das a für 'append (anfügen).
Damit ergibt '$aoplocks=no' am Ende der Datei eine neue Zeile mit oplocks=no
Optisch besser wäre in der Tat ein Leerzeichen hinterm a.
Gruß
Derek
 
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