Dit is de opdracht ncftpspooler die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator
PROGRAMMA:
NAAM
ncftpspooler - Wereldwijde daemon voor batch-FTP-taakprocessor
KORTE INHOUD
ncftpspooler -D [opties]
ncftpspooler -l [opties]
OPTIES
commando lijn vlaggen:
-d Start de verwerking van FTP-taken op de achtergrond in de aangewezen FTP-taakwachtrijdirectory.
-q XX Gebruik deze optie om een map op te geven die moet worden gebruikt als de FTP-taakwachtrij in plaats van de
standaardmap, /var/spool/ncftp.
-o XX Gebruik deze optie om een bestandsnaam op te geven die als logbestand moet worden gebruikt. Standaard (en
nogal ongepast) gebruikt het programma gewoon een bestand met de naam inloggen in de baanwachtrij
map. Als u geen logboek wilt, gebruikt u deze optie om /dev/null op te geven.
-l Toont de inhoud van de taakwachtrijdirectory.
-s XX Als de taakwachtrij leeg is, slaapt het programma 120 seconden en controleert dan opnieuw
om te zien of er een nieuwe opdracht is ingediend. Gebruik deze optie om het aantal te wijzigen
seconden gebruikt voor deze vertraging.
PRODUCTBESCHRIJVING
De ncftpspooler programma is voortgekomen uit de ncftpbatch programma. De ncftpbatch programma was
oorspronkelijk ontworpen als een ``persoonlijke FTP-spooler'' die een enkele achtergrond zou verwerken
werk een bepaalde gebruiker en sluit af wanneer het klaar is; de ncftpspooler programma is een ``global
FTP-spooler'' die actief blijft en achtergrondtaken verwerkt terwijl ze worden ingediend.
De taakwachtrijdirectory wordt gecontroleerd op speciaal benoemde en geformatteerde tekstbestanden. Elk
bestand dient als een enkele FTP-taak. De naam van het taakbestand bevat het type FTP-taak
(krijgen or zetten), een tijdstempel die aangeeft wanneer de taak op zijn vroegst moet worden verwerkt, en
optioneel wat aanvullende informatie om het gemakkelijker te maken om unieke taakbestanden aan te maken (bijv
een volgnummer). De inhoud van de taakbestanden bevat informatie zoals de afstandsbediening
servermachine naar FTP naar, gebruikersnaam, wachtwoord, externe padnaam, enz.
Uw taakwachtrijdirectory moet leesbaar en beschrijfbaar zijn voor de gebruiker die u wilt uitvoeren
ncftpspooler as, zodat taken kunnen worden verwijderd of hernoemd in de wachtrij.
Wat nog belangrijker is, de gebruiker die het programma uitvoert, heeft voldoende rechten nodig om het te kunnen gebruiken
toegang krijgen tot de lokale bestanden die betrokken zijn bij het FTP-en. Dat wil zeggen, als uw spooler gaat
zijn het verwerken van taken die bestanden uploaden naar externe servers, dan moet de gebruiker lezen
machtiging voor de lokale bestanden die worden geüpload (en machtiging voor directorytoegang de
bovenliggende mappen). Evenzo, als uw spooler taken gaat verwerken die
bestanden te downloaden, dan zou de gebruiker in staat moeten zijn om naar de lokale mappen te schrijven.
Nadat u uw spool-directory met de juiste machtigingen en eigendommen heeft gemaakt,
je kan lopen ncftpspooler -d om de spooler-daemon te starten. U kunt extra spoolers uitvoeren
als u meer dan een FTP-taak tegelijk uit dezelfde taakwachtrijdirectory wilt verwerken.
U kunt dan het logbestand controleren (d.w.z. met behulp van staart -f ) om de voortgang van de
spooler. Meestal zal het niets doen, tenzij er taakbestanden zijn verschenen
de taakwachtrijdirectory.
JOB FILE NAMEN
Wanneer de ncftpspooler programma de taakwachtrijdirectory bewaakt, negeert het alle bestanden die
volg niet de naamgevingsconventie voor taakbestanden. De taakbestanden moeten worden voorafgegaan door de
formaat van X-JJJJMMDD-uummss met de meeste X geeft een taaktype aan, YYYY is het viercijferige jaar, MM is
het tweecijferige maandnummer, DD is de tweecijferige dag van de maand, hh is het tweecijferige uur
van de dag (00-23), mm is de tweecijferige minuut, en ss is de tweecijferige seconde. De datum
en tijd vertegenwoordigen de vroegste tijd waarop u de taak wilt laten uitvoeren.
Het type baan kan zijn g voor een get (download van externe host), of p voor aput (uploaden naar
externe host).
Als u bijvoorbeeld een upload wilt plannen om 11:45 uur op 7 december,
2001, zou een werkbestand kunnen worden genoemd
p-20011207-234500
In de praktijk bevatten de opdrachtbestanden aanvullende informatie zoals een volgnummer of
proces-ID. Dit maakt het gemakkelijker om unieke taakbestandsnamen te maken. Hier is hetzelfde
bijvoorbeeld met een proces-ID en een volgnummer:
p-20011207-234500-1234-2
Zorg ervoor dat u na het indienen van taakbestanden naar de wachtrijdirectory een streepje gebruikt
the hmmss veld als u ervoor kiest om aanvullende gegevens toe te voegen aan de taakbestandsnaam.
JOB FILE INHOUD
Taakbestanden zijn gewone tekstbestanden, zodat ze met de hand kunnen worden aangemaakt. Elke regel van de
bestand is een sleutelpaar in de indeling variabele=waarde, of is een commentaarregel die begint met een
octothorpe-teken (#), of is een lege regel. Hier is een voorbeeld van een taakbestand:
# Dit is een ingang van een NcFTP-spoolbestand.
taaknaam=g-20011016-100656-008299-1
op=krijgen
hostnaam=ftp.freebsd.org
xtype=ik
passief=1
remote-dir=pub/FreeBSD
lokale map=/ tmp
remote-file=LEESMIJ.TXT
lokaal bestand=leesmij.txt
Taakbestanden zijn flexibel omdat ze een gebruiksvriendelijk formaat volgen en er niet veel hebben
vereisten, maar er zijn een paar verplichte parameters die voor de spooler moeten verschijnen
de klus kunnen klaren.
op De bewerking (taaktype) die moet worden uitgevoerd. Geldige waarden zijn krijgen en zetten.
hostname
De externe host naar FTP naar. Dit kan een IP-adres of een DNS-naam (bijv
ftp.voorbeeld.com).
Voor een gewone krijgen taak, zijn deze parameters vereist:
remote-bestand
De padnaam van het bestand dat moet worden gedownload van de externe server.
lokaal-bestand
De padnaam die moet worden gebruikt op de lokale server voor het gedownloade bestand.
Voor een gewone zetten taak, zijn deze parameters vereist:
lokaal-bestand
De padnaam van het bestand dat moet worden geüpload naar de externe server.
remote-bestand
De padnaam die moet worden gebruikt op de externe server voor het geüploade bestand.
Voor een recursief krijgen taak, zijn deze parameters vereist:
remote-bestand
De padnaam van het bestand of de map die van de externe server moet worden gedownload.
lokaal-dir
De mappadnaam die op de lokale server moet worden gebruikt om de gedownloade items te bevatten.
Voor een recursief zetten taak, zijn deze parameters vereist:
lokaal-bestand
De padnaam van het bestand of de map die moet worden geüpload naar de externe server.
afstandsbediening
De mappadnaam die op de externe server moet worden gebruikt om de geüploade items te bevatten.
De rest van de parameters zijn optioneel. De spooler zal proberen om redelijk te gebruiken
defaults voor deze parameters indien nodig.
gebruiker De gebruikersnaam die moet worden gebruikt om in te loggen op de externe server. Standaard ingesteld op ``anoniem'' voor
gast toegang.
passeren Het wachtwoord dat samen met de gebruikersnaam moet worden gebruikt om in te loggen op de afstandsbediening
server.
handeling Het account dat samen met de gebruikersnaam moet worden gebruikt om in te loggen op de externe server.
De noodzaak om deze parameter op te geven is uiterst zeldzaam.
port Het poortnummer dat moet worden gebruikt in combinatie met de externe hostnaam om verbinding te maken met de
externe server. Standaard ingesteld op het standaard FTP-poortnummer, 21.
host-ip Het IP-adres dat moet worden gebruikt in combinatie met de externe hostnaam om verbinding te maken met de
externe server. Deze parameter kan worden gebruikt in plaats van de hostname maatstaf, maar
het een of het ander moet worden gebruikt. Deze parameter wordt gewoonlijk samen met de
hostname parameter als aanvullende informatie.
xtype Het type overdracht dat moet worden gebruikt. Standaard ingesteld op binair overdrachtstype (TYPE I). Geldig
waarden zijn I voor binair, A voor ASCII-tekst.
passief Of FTP passieve dataverbindingen (PASV) of FTP actieve dataverbindingen gebruikt moeten worden
(HAVEN). Geldige waarden zijn 0 voor actief, 1 voor passief, of 2 om passief te proberen, dan
terugvallen op actief. De standaardwaarde is 2.
recursieve
Dit kan worden gebruikt om hele mappenbomen over te dragen. Standaard slechts één
bestand wordt overgedragen. Geldige waarden zijn ja or geen.
verwijderen Dit kan worden gebruikt om het bronbestand daarna op de bronmachine te verwijderen
met succes het bestand overbrengen naar de bestemmingsmachine. Standaard bron
bestanden worden niet verwijderd. Geldige waarden zijn ja or geen.
taaknaam
Dit wordt niet gebruikt door het programma, maar kan worden gebruikt door een entiteit die dat wel is
automatisch taakbestanden genereren. Als u bijvoorbeeld de -bb markeren met
ncftpput, maakt het een taakbestand aan op stdout met een taaknaam parameter zodat u kunt
kopieer het bestand eenvoudig naar de taakwachtrijdirectory met de voorgestelde taaknaam als
taak bestandsnaam.
pre-ftp-opdracht
post-ftp-opdracht
Deze parameters komen overeen met de -Wen -Y opties van ncftpget en ncftpput.
Het is belangrijk op te merken dat deze verwijzen naar RFC959 File Transfer Protocol-opdrachten
en niet shell-commando's, noch commando's die van binnenuit worden gebruikt /usr/bin/ftp of ncftp.
pre-shell-commando
post-shell-commando
Deze parameters bieden hooks zodat u een aangepast programma kunt uitvoeren wanneer een item is
verwerkt door de spooler. Geldige waarden zijn padnamen naar scripts of uitvoerbare bestanden
programma's. Merk op dat de waarde geen opdrachtregelargumenten mag bevatten -- if
je wilt dat doen, maak dan een shell-script en laat het je programma uitvoeren met de
opdrachtregelargumenten die het vereist.
Over het algemeen, post-shell-commando is veel handiger dan pre-shell-commando sinds als
Als u deze opties moet gebruiken, is de kans groter dat u iets wilt doen na de FTP
overdracht is voltooid in plaats van voorheen. U wilt bijvoorbeeld een shell uitvoeren
script welke pagina's een beheerder om haar te laten weten dat haar 37 gigabyte bestandsdownload heeft
voltooid.
Wanneer uw aangepaste programma wordt uitgevoerd, ontvangt het op standaardinvoer de inhoud van de taak
bestand (d.w.z. meerdere regels variabele=waarde sleutelparen), evenals aanvullende gegevens de
spooler kan bieden, zoals een resultaat sleutelpaar met een tekstuele beschrijving van de functie
voltooiingsstatus.
post-shell-commando werk een logbestand met de naam /var/log/ncftp_spooler bij.
#!/usr/bin/perl -w
mijn ($regel);
mijn (% parameters) = ();
terwijl (gedefinieerd($regel = )) {
$params{$1} = $2
als ($lijn =~ /^([^=\#\s]+)=(.*)/);
}
als ((gedefinieerd($params{"resultaat"})) &&
($params{"resultaat"} =~ /^Geslaagd/))
{
open(LOG, ">> /var/log/ncftp_spooler.log")
or afrit(1);
print LOG "DOWNLOAD" if ($params{"op"} eq "get");
print LOG "UPLOAD" if ($params{"op"} eq "put");
print LOG " ", $params{"lokaal bestand"}, "\n";
sluiten(LOGBOEK);
}
DIAGNOSE
Het logbestand moet worden onderzocht om te bepalen of er een is ncftpspooler processen zijn actief
werken aan banen. Het logboek bevat grote hoeveelheden nuttige informatie, waaronder de
volledige FTP-besturingsverbindingsgesprek tussen de FTP-client en de server.
Gebruik ncftpspooler online met behulp van onworks.net-services