FTP (File Transfer Protocol) je standardní síťový protokol používaný k přenosu souborů do a ze vzdálené sítě.
V tomto tutoriálu vám ukážeme, jak používat Linux ftp
velení pomocí praktických příkladů.
Ve většině případů budete pro připojení ke vzdálenému serveru a stahování nebo odesílání souborů používat desktopového FTP klienta. Nicméně ftp
je užitečný, když pracujete na serveru bez GUI a chcete přenášet soubory přes FTP na nebo ze vzdáleného serveru.
Než začnete #
Provoz FTP není šifrován. Pro bezpečný přenos dat použijte SC nebo SFTP.
Abyste mohli přenášet soubory, musíte mít alespoň oprávnění ke čtení zdrojového souboru a oprávnění k zápisu v cílovém systému.
Při přenosu velkých souborů se doporučuje spustit příkaz ftp uvnitř screen nebo tmuxsession.
Adresář, ze kterého spouštíte ftp
příkaz je místní pracovní adresář.
Navázání připojení FTP #
-
Chcete-li otevřít ftp připojení ke vzdálenému systému, vyvolejte
ftp
za ním následuje IP adresa vzdáleného serveru nebo název domény. Například pro připojení k FTP serveru na „192.168.42.77“ byste napsali:ftp 192.168.42.77
-
Pokud je spojení navázáno, zobrazí se potvrzovací zpráva a budete vyzváni k zadání uživatelského jména FTP, v tomto příkladu je uživatelské jméno FTP
linuxize
:220---------- Welcome to Pure-FTPd [privsep] [TLS] ---------- 220-You are user number 1 of 50 allowed. 220-Local time is now 21:35. Server port: 21. 220-This is a private system - No anonymous login 220-IPv6 connections are also welcome on this server. 220 You will be disconnected after 15 minutes of inactivity. Name (192.168.42.77:localuser): linuxize
You may see a different confirmation message depending on the FTP service running on the remote server.
-
Jakmile zadáte uživatelské jméno, budete vyzváni k zadání hesla:
Password:
-
Pokud je heslo správné, vzdálený server zobrazí potvrzovací zprávu a
ftp>
výzva.230 OK. Current restricted directory is / Remote system type is UNIX. Using binary mode to transfer files. ftp>
anonymous
jako uživatelské jméno a vaši e-mailovou adresu jako heslo. Běžné FTP příkazy #
Většina příkazů FTP je podobná nebo identická s příkazy, které byste zadali do příkazového řádku Linuxu.
Níže jsou uvedeny některé z nejběžnějších příkazů FTP
help
nebo?
- seznam všech dostupných příkazů FTP.cd
- změnit adresář na vzdáleném počítači.lcd
- změnit adresář na místním počítači.ls
- seznam názvů souborů a adresářů v aktuálním vzdáleném adresáři.mkdir
- vytvořit nový adresář v rámci aktuálního vzdáleného adresáře.pwd
- vytisknout aktuální pracovní adresář na vzdáleném počítači.delete
- odebrat soubor v aktuálním vzdáleném adresáři.rmdir
- odebrat adresář v aktuálním vzdáleném adresáři.get
- zkopírujte jeden soubor ze vzdáleného počítače na místní počítač.mget
- zkopírujte více souborů ze vzdáleného počítače na místní počítač.put
- zkopírujte jeden soubor z místního na vzdálený počítač.mput
- zkopírujte více souborů z místního na vzdálený počítač.
Stahování souborů pomocí ftp
Příkaz #
Jakmile jste přihlášeni, váš aktuální pracovní adresář je domovským adresářem vzdáleného uživatele.
Při stahování souborů pomocí ftp
soubory budou staženy do adresáře, ze kterého jste zadali ftp
příkaz.
Pokud chcete soubory stáhnout do jiného místního adresáře, přepněte se do něj pomocí lcd
příkaz.
Řekněme, že chceme stáhnout soubory do ~/ftp_downloads
adresář:
lcd ~/ftp_downloads
Chcete-li stáhnout jeden soubor ze vzdáleného serveru, použijte get
příkaz. Například ke stažení souboru s názvem backup.zip
použijete následující příkaz:
get backup.zip
Výstup by měl vypadat nějak takto:
200 PORT command successful
150-Connecting to port 60609
150 6516.9 kbytes to download
226-File successfully transferred
226 2.356 seconds (measured here), 2.70 Mbytes per second
6673256 bytes received in 2.55 seconds (2.49 Mbytes/s)
Chcete-li stáhnout více souborů najednou, použijte mget
příkaz. Můžete poskytnout seznam jednotlivých názvů souborů nebo použít zástupné znaky:
mget backup1.zip backup2.zip
Při stahování více souborů budete vyzváni k potvrzení pro každý soubor.
mget backup1.zip? y
200 PORT command successful
150 Connecting to port 52231
226-File successfully transferred
226 0.000 seconds (measured here), 31.51 Kbytes per second
14 bytes received in 0.00058 seconds (23.6 kbytes/s)
mget backup2.zip? y
200 PORT command successful
150-Connecting to port 59179
150 7.2 kbytes to download
226-File successfully transferred
226 0.000 seconds (measured here), 16.68 Mbytes per second
7415 bytes received in 0.011 seconds (661 kbytes/s)
Jakmile dokončíte stahování souborů ze vzdáleného FTP serveru, ukončete připojení buď pomocí bye
nebo quit
příkaz:
quit
221-Goodbye. You uploaded 0 and downloaded 6544 kbytes.
221 Logout.
Nahrávání souborů pomocí příkazu FTP #
Chcete-li nahrát soubor z místního adresáře na vzdálený server FTP, použijte put
příkaz:
put image.jpg
Výstup by měl vypadat nějak takto:
200 PORT command successful
150 Connecting to port 34583
226-File successfully transferred
226 0.849 seconds (measured here), 111.48 Kbytes per second
96936 bytes sent in 0.421 seconds (225 kbytes/s)
Pokud chcete nahrát soubor, který není ve vašem aktuálním pracovním adresáři, použijte absolutní cestu k souboru.
Chcete-li nahrát více souborů z místního adresáře na vzdálený server FTP, vyvolejte mput
příkaz:
mput image1.jpg image2.jpg
mput image1.jpg? y
200 PORT command successful
150 Connecting to port 41075
226-File successfully transferred
226 1.439 seconds (measured here), 102.89 Kbytes per second
151586 bytes sent in 1.07 seconds (138 kbytes/s)
mput image2.jpg? y
200 PORT command successful
150 Connecting to port 40759
226-File successfully transferred
226 1.727 seconds (measured here), 111.75 Kbytes per second
197565 bytes sent in 1.39 seconds (138 kbytes/s)
Při nahrávání více souborů vás příkaz vyzve k potvrzení každého souboru, který chcete nahrát.
Jakmile dokončíte nahrávání souborů na váš vzdálený server FTP, zavřete připojení pomocí bye
nebo quit
.
Závěr č.
V tomto tutoriálu jste se naučili používat ftp
příkaz ke stažení a odeslání souborů na váš vzdálený FTP server.
Pokud máte nějaké dotazy, neváhejte zanechat komentář.