2011年6月23日 星期四

FTP檔案傳輸協定〈FTP-File Transfer Protocol〉

Q20: 有關"FTP"!(88/11/26)
同學回應-2:[89會乙三AIS第六組 [代表人:王吉祥[u5806122@mail2.scu.edu.tw]] (89/1/6)
檔案傳輸服務FTP介紹
壹、FTP簡介
檔案傳輸協定〈FTP-File Transfer Protocol〉是學術網路上所提供的眾多服務資源項目中,最常用的項目之一,透過此公共協定,大家傳輸模式才會一致,應用此一方式做檔案交換。連接在學術網路上的電腦系統像超級電腦、大型電腦、中型電腦、迷你電腦、工作站、麥金塔電腦、微電腦 等,在這些不同的電子系統中所用的作業系統也不盡相同,例如VAX/VMS、UNIX、MS-DOS、OS/2,Macintosh等等,如何在這些不同的電腦系統中,互相擷取所需的資訊,這是相當值得重視的一環。要查尋FTP相關網站可鍵入相關FTP字串,執行搜尋。
在不同的電腦系統之間的檔案格式都不盡相同,因此要在兩部不同的電腦之間來傳遞檔案,就必須要彼此都認可的共同規範才能順利進行。FTP就是用來規範不同電腦系統間傳輸檔案的共同協定,任何電腦只要遵循此協定,即可和其它不同的電腦系統互傳檔案。透過FTP就可以容易在任何兩部電腦〈不論是否為相同的電腦系統〉之間互相傳遞檔案。
在國際學術網路上有許多Anonymous FTP Server(FTP檔案伺服器),再這些伺服器上存放著相當豐富的資源,包括UNIX、PC、Mac…等各種電腦系統的公用軟體(public domain).以及各種技術文件、學術論文、研究報告等….,都可以利用FTP來擷取。
貳、重要觀念
許多初學者再使用檔案傳輸時,時常會受到指令的字面意義影響,而下達不正確的指令甚至將有用的指令覆蓋掉。

一、LOCAL與REMOTE
在兩部電腦之間互相傳遞檔案時為了區別雙方的身份通常把這兩端的電腦分為Local及Remote兩端一般初學者通常都會依照字面上意義去解釋認為Local端是指使用者正在操作的這部電腦Remote是指遠端的那部電腦。
事實上,在區分Local或Remote應該是以電腦的立場來看,而非以人立場去看,也就是說,下達ftp這個指令時在那一個系統下則這一端就是Local,而被連接的另一端則是Remote端,此與距離遠近無關。
所謂檔案傳輸不外乎就是到對方的電腦系統取得資料檔案,或者是將檔案放置對方的電腦系統兩個動作,取得檔案的動作是GET,而將檔案放置對方的電腦系統就是PUT。在此強調:所謂GET與PUT是以Local端的立場來看,由Remote端取得檔案應下達GET指令,而將檔案放到Remote端則指令為PUT。

二、ASCII檔與Binary檔
儲存在電腦上的檔案可分為Ascii及Binary兩種格式,在FTP時必須宣告要傳輸檔案的格式,才可確保資料的正確性。
簡單的判斷方式
可以用MS-DOS的TYPE指令,或是Unix的cat指令,來顯示檔案內容,看起來不會有亂碼的檔案即是ASCII格式的文件檔。否則,可能為Binary檔。
如果不知道檔案格式時那就以binary方式來傳遞,所有的檔案大都可視為binary檔,尤其是PC上的執行檔(EXE.COM.OVL…)以及學術網路上常見的壓縮檔(tar.Z,targz,ZIP,hqx,tar,…)或影像檔(PCX,JPG,GIF,…)等。

參、FTP基本操作
《》由個人電腦DOS環境下進行連線
使用FTP時可以使用Windows所附的FTP.EXE來進行檔案傳輸連線。
例如:C:\WINDOWS>FTP ftp.ccu.edu.tw連接至ftp Server
C:\WINDOWS>FTP 140.123.254.1連結s1主機
C:\WINDOWS>FTP s1.cy.edu.tw連結s1主機
《》由主機系統UNIX環境下進行連線
1. 利用Telnet和要傳送檔案的電腦連線。
2. 在該電腦系統提式號下下達ftp及open或者ftp連接要傳送檔案的對方電腦。
例如:[sl][~][l]>ftp ftp.nctu.ccu.edu.tw連接交大的ftpServer
例如:[sl][~][l]>ftp140.123.1.138連接指定的電腦
《》確定使用者身份
在連接上另一部電腦之後系統會要求輸入使用者帳號及密碼以確保資料的安全。除非你有對方的帳號及密碼否則將無法進行檔案傳輸。
另外,也可以在ftp狀態下使用user指令來輸入或更改使用者帳號及密碼,例如:
ftp>user fatcat指定要和fatcat這個帳號的使用者傳輸檔案
331 Password required for fatcat
Password:輸入fatcat的密碼
《》傳送自己的檔案
要傳送自己私人的檔案則輸入自己的帳號及密碼即可正確的進行連線。
《》和別人進行檔案傳輸
如果你要取得別人的檔案或者將檔案傳送給別人,則除非對方肯告訴你帳號及密碼,否則將無法互傳檔案。若是你為了和別人傳送檔案而告訴對方你的帳號及密碼,最好在檔案傳送完畢時馬上更改你的密碼以免你的帳號被盜用。
《》傳送Anonymous FTP Server的公用檔案
若是你接到Anonymous FTP Server來取用公用檔案時,通常FTP Server的帳號大都為anonymous或ftp,至於密碼,有些FTP Server不需要密碼,有些則要輸入E-mail的地址或者以quest作為密碼,請依照對方指示輸入密碼,此為使用Anonymous FTP Server的基本禮貌,請務必遵守。
《》查看檔案目錄
要查看remote端的檔案目錄,可以使用ls或dir指令來查尋。另外,可以使用pwd指令來顯示目前所在之路徑。
《》改變取存檔案路徑
若要改變Remote端的路徑,可以使用cd指令
cd dir_name dir_name為指定的Remote端的路徑
若要改變Local端的路徑,可以使用lcd指令
lcd dir_name dir_name為指定的Local端的路徑
《》檔案傳輸格式
在ftp提式號之下,下達ascii或binary來指定檔案傳輸格式
《》取得檔案〈GET〉
1. 要取得一個特定檔案時:
get filename filename為要取得的檔案名稱
2. 要一次取得多個檔案時:
mget filename filename為要取得的檔案名稱可以配合
通用字元”*”來指定多個相關的檔案
例如:mget test*.*
《》放置檔案〈PUT〉
1. 要放置一個特定檔案時:
put filename filename為要放置的檔案名稱
2. 要一次取得多個檔案時:
mput filename filename為要放置的檔案名稱可以配合通用
通用字元”*”來指定多個相關的檔案
例如:mput test*.*
《》切換交談狀態
可以使用prompt指令切換交談狀態,以決定在傳輸檔案前是否要顯示提示訊息要求使用者確認。
ftp>prompt
Interactive mode off.原本為on則變為off
ftp>prompt
Interactive mode on.原本為off則變為on
《》線上求助
ftp提供許多命令,使用者可以隨時下達”?”或”help”指令來顯示輔助說明畫面以便得知有那些指令及其用法。
使用者亦可在主機系統狀態下使man ftp用指令來查尋更多的相關資訊。另外,在gopher或USENET News中亦可找到一些相關資料。
《》結束FTP
只要在ftp>提示號之下鍵入bye指令即可。

肆、操作實例
假設現在你要在Anonymous FTP Server取得/pub/win95/miscutil/目錄下的winzip95.exe檔案,並且要放置你的個人電腦中的目錄下,操作如下:
C:\WINDOWS>FTP ftp.ccu.edu.tw
Username:ftp 輸入帳號ftp或anonymous
Password:user@ccunix.ccu.edu.tw 輸入E-mail Address
ftp>cd/pub/win95/miscutil 跳到/pub/win95/miscutil目錄下
ftp>dir 查看檔案目錄
ftp>lcd c:/temp 將個人電腦切換到C:\TMP目錄
ftp>binary 以binary方式傳輸
ftp>get winzip95.exe
200 PORT command successful
150 Opening ASSCII mode data connection for winzip95.exe(497993 bytes)
226 Transfer complete
local:winzip95.exe remote:winzip95.exe
497993 bytes received in 1,1 seconds(1.8e+02 Kbytes/s)
ftp>bye結束FTP

NcFTP簡介
Ncftp是一個蠻好用的檔案傳輸程式。他的指令跟FTP幾乎一樣,而且還支援遞回抓檔,及斷線續傳功能
簡單使用方法如下:
1. 在mail主機的命令列下打:ncftp ftp.thu.edu.tw 自己登入FTP站並自動輸入帳號及密碼
2. 或使用ncftp-u XXX.thu.edu.tw 對其他站台使用其他帳號及密碼登入傳檔

其他FTP程式簡介
1. Ws_FTP:這是WIN95/98/NT圖形使用者介面的抓檔程式
2. Cute_FTP:
3. Netscape與 MS IE中的 ftp:直接在位址的欄位中打入要抓的主機即可:
ftp://XXX.XXX.XXX.XXX/

附註:國內FTP站台(其實在國外知名的FTP站所存放的檔案大部份都可在國內的FTP站上取得)
1. 資策會的FTP站 ftp.seed.net.tw 140.92.1.45
2. 數據所的FTP站 serv.hinet.net 168.95.192.6
3. 台大的FTP站 ftp.ntu.edu.tw 140.112.1.23
4. 交大的FTP站 ftp.nctu.edu.tw 140.113.250.3
5. 中興大學的FTP站 ftp.nchu.edu.tw 140.120.1.21
6. 成功大學的FTP站 snoopy.ncku.edu.tw 140.116.2.11
7. 中正理工的FTP站 cc04.ccit.edu.tw 140.132.1.204
8. http://solar0.ee.ncku.edu.tw/~andrew/FTPServer
9. http://www.avbc.ttct.edu.tw/doc/FreeBSD/10/5/2/1.html
10. http://www.fhjh.tn.edu.tw/pub/FreeBSD/ftp_install/tsld001.htm
11. http://bbs.ee.ntu.edu.tw/boards/Test/9/6.html
12. http://ccs.cc.nccu.edu.tw/train/99summer/class1/unix_ntework/ftp3.htm
13. http://www.tw.aunet.net/c1/ftp/ftp.htm
14. http://www.cc.ncu.edu.tw/network/tanet/ftp.html
15. http://www.setsanyo.com.tw/company/dept/edp/network/FTP.html
16. http://nt-test1.cclab.isu.edu.tw/ftp

陳專塗 確認/修改 89.1.7

沒有留言:

張貼留言