Synology-Forum.nl
Firmware => Synology DSM 6.2 => Topic gestart door: GosZk op 16 juni 2020, 15:25:30
-
Hoi!
Heb de volgende situatie:
Een lokale map op de NAS wordt automatisch gevuld met een aantal documenten en deze wil ik automatisch, periodiek uploaden naar een SFTP locatie.
Oplossing:
Allereerst heb ik SFTP locatie gekoppeld in de NAS via 'File Station' > Gereedschap > Externe verbinding > Verbinding instellen.
De locatie is nu toegevoegd in de File station dus nu het laatste stapje, de automatische kopieer actie.
Ik dacht dit even te kunnen regelen in de taakplanner maar kom niet uit het script stuk. Heb het volgende scriptje geprobeerd maar dat werkt niet.
CP -u /volume1/homes/voorbeeld/uploads/* sftp://voorbeeld.nl@voorbeeld.nl:22/subdomains/voorbeeld/uploads
Uiteraard wordt ik niet geremd door enige kennis van waar ik mee bezig ben ;)
-
Dit heeft weinig met de nas te maken. Lijkt me meer een linix vraag. zoek maar eens op linux upload sftp (https://www.google.com/search?client=safari&rls=en&q=linux+upload+sftp&ie=UTF-8&oe=UTF-8)
-
@GosZk, je hebt een externe verbinding gemaakt naar de sftp locatie. Deze externe verbinding staat als directory in /volume1. Het is daarmee voldoende als je als doel-locatie in je copy-commando opgeeft: /volume1/naam-van-de-externe-verbinding/etc/etc.
-
CP -u
Daarbij, Linux(DSM) is case sensitive.
Het is dus niet CP, maar cp
-
Dank voor jullie reacties 'Birdy' en 'hoorna'.
Heb wel het idee dat hier verder mee kan komen. Heb nu dit:
cp -u /volume1/homes/voorbeeld/uploads/* /volume1/domein.nl/subdomains/voorbeeld/uploads
Maar krijg nog een foutmelding op de target: 'is not a directory'. Zal nog wat variaties proberen :)
Edit voor deze vraag: Moet de '*' ook aan het einde van de target link of alleen bij de bron?
-
De aanduiding "domein.nl" lijkt mij niet juist. Tip: open File Station en kijk hoe de directory wordt genoemd voor de sftp verbinding. Gebruik die directory-naam. Ik vraag me af of "subdomains" nodig is; is dat een bestaande subdirectory?
Het sterretje bij de doellocatie is niet nodig.
-
In File Station was dit niet duidelijk dus ben via Putty en Midnight Commander (mc) gaan kijken en zoeken. Doelmap is in mijn geval:
/var/tmp/user/1028/gvfs/sftp:host=domein.nl,user=voorbeeld/subdomains/voorbeeld/uploads
Dit werkt op zich wel maar de connectie naar SFTP wordt verbroken. In eerste instantie kon ik de SFTP ook niet vinden totdat ik er ging browsen in de File Station en daarna zoeken in mc. Het scriptje werkt dus wel maar ik moet er nog iets aan toevoegen zodat hij vooraf verbinding met SFTP opbouwt want na een tijdje krijg ik weer de melding 'is not a directory'.
-
In de help van DSM->FileStation->Externe verbinding staat:
"Een cloudservice/bestandsserver zal zich automatisch loskoppelen van de verbindingsbron wanneer de desbetreffende bestanden gedurende meer dan 30 minuten niet worden geactiveerd. Klik op de cloudservice/bestandsserver om de verbinding te herstellen."
Ik weet niet of dit voor jou van toepassing is. Het lijkt erop omdat je SFTP verbinding na enige tijd steeds verbroken wordt. Mogelijk moet je aan de taak nog een extra commando toevoegen om de verbinding eerst weer te reactiveren.
Verder begrijp ik niet waarom je zo'n ingewikkelde doelmap gebruikt. In je eerste post schrijf je
Allereerst heb ik SFTP locatie gekoppeld in de NAS via 'File Station' > Gereedschap > Externe verbinding > Verbinding instellen.
De locatie is nu toegevoegd in de File station
Er is in principe dus een veel eenvoudiger doelmap beschikbaar in /volume1. Maar wie ben ik. Als je tevreden bent met jouw doelmap ..... :)
-
Ik weet niet hoe je er bij komt dat die doelmap in /volume1 staat. Ik las dit draadje met belangstelling, maar geloofde er geen snars van omdat ik zo'n map nog nooit gezien heb terwijl ik meerdere sftp koppelingen heb in filestation. Bovendien is zo'n koppeling aan een gebruiker gekoppeld zodat volume1 als locatie nog onwaarschijnlijker is.
@GosZk is blijkwaar verder gaan zoeken en vond deze folder inderdaad. Bij mij staat hij op:
/var/tmp/user/1026/gvfs
Blijkbaar is het getal "1026" de representatie van de gebruiker. Die map is bij mij echter leeg. Als ik dan naar filestation ga en de sftp verbinding activeer, krijg ik er ook de folder te zien. En als ik dan list, zie ik inderdaad mijn files die op de host staan:
ls -l /var/tmp/user/1026/gvfs/sftp:host=10.0.1.60,user=briolet
total 34
drwxrwxr-x 1 briolet users 5338 Jun 14 22:29 Applications
drwxr-xr-x 1 briolet users 1292 Jun 3 19:26 bin
-rw-r--r-- 1 briolet users 549 Mar 4 2019 com.foscam.FosIPCCoreManager.plist
drwxrwxr-x 1 briolet users 68 Sep 29 2017 cores
dr-xr-xr-x 1 briolet users 7693 Jun 3 19:32 dev
etc
Nu alleen nog een truuk om deze verbinding via een script te activeren. (Binnen filestation moet ik elke keer even de 'grijze' link aanklikken om de verbinding weer actief te krijgen.)
-
Ah, daar heb ik dan ook mee te maken. Upload staat ingesteld op een minuut en dat dus zal in die 'verbinding activeren' oplossing gaan zoeken. De SFTP staat extern dus hier heb ik zeer zeker mee te maken.
De verkorte link werkte niet (mogelijk doordat de verbinding alweer inactief was) en daarom ben ik verder gaan kijken en kwam ik op de lange link terecht welke wel werkt omdat ik nu door het browsen de verbinding actief hield.
SFTP is gekoppeld in File Station maar wordt 'los' toegevoegd.
NAS
- Homes
- Photo
- Surveillance
- ETC
SFTP
- Domein.nl
- Backups
- Logs
- ETC
Hierdoor is mogelijk een rechtstreekse verbinding niet mogelijk.