文章目錄
vsftpd(ftp伺服器)在linux上的移植
按照vsftpd的readme來就行了
1.下載
[url=ftp://vsftpd.beasts.org/users/cevans/]ftp://vsftpd.beasts.org/users/cevans/[/url]
vsftpd-2.0.6.tar.gz
2.安裝。
a.解壓後,進入vsftpd-2.0.6目錄
命令: tar zxvf vsftpd-2.0.6.tar.gz
cd vsftpd-2.0.6
b.根據你的編譯器修改Makefile檔案
如果是在PC上用,就不要改。CC = gcc
我是把vsftpd移植到開發辦上,使用的是arm_v5t_le-gcc編譯器
修改:CC = /opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-gcc
c.如果編譯器提示無法識別檔案:libpam.so.o 、libcap.so.1
修改vsf_findlibs.sh檔案
修改:locate_library /lib/libpam.so.0 && echo "/lib/libpam.so.0";
變為: locate_library
/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target/lib/libpam.so.0
&& echo
"/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target/lib/libpam.so.0";
修改:locate_library /lib/libcap.so.1 && echo "/lib/libcap.so.1";
變為:locate_library
/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target/usr/lib/libcap.so.1
&& echo
"/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target/usr/lib/libcap.so.1"
d.make
e.
如果移植到開發板上,可能還要3個檔案。
將/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/target/usr/lib 下
libcap.so.1,libreadline.so.4,libncurses.so.5拷貝到開發辦目錄中/workdir/filesye
/usr/lib/
f.將vsftpd-2.0.6目錄下vsftpd執行程式拷貝到/usr/sbin中
將vsftpd-2.0.6目錄下vsftpd.conf設定檔拷貝到/etc/下。
g.修改vsftpd.conf檔案。
添加:
listen=YES
修改: #write_enable=YES
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
去除這三項前面的#
h.在/var/下建立一個目錄ftp,許可權:755
mkfir /var/ftp
chmod 755 /var/ftp
在/ftp/下建立一個目錄upload,許可權:777
mkfir /var/ftp/upload
chmod 777 /var/ftp/upload
i.運行vsftpd &,啟動vsftpd背景程式。
這樣就在該平台上建立了ftp伺服器,匿名登陸,/ftp目錄具有唯讀屬性,/upload目錄具有可讀,可寫屬性
j.如果要修改vsftpd的下載目錄,修改vsftpd.conf
如果修改登陸目錄有/var/ftp,改為/opt/ftp
/opt/下建立一個目錄ftp,許可權:755
mkfir /opt/ftp
chmod 755 /opt/ftp
在/ftp/下建立一個目錄upload,許可權:777
mkfir /opt/ftp/upload
chmod 777 /opt/ftp/upload
在vsftpd.conf下添加一行:anon_root=/opt/ftp就可以了
k. vsftpd修改vsftpd.conf後,重啟平台。有時好像僅僅vsftpd &不管用
3.測試
a.LINUX平台
在另一個平台上運行:ftp IP(IP是ftp伺服器安裝的地址)
需要輸入使用者名稱:anonymous
輸入密碼時斷行符號
輸入:ls查看目錄
輸入:get 檔案名稱,可下載檔案
輸入:mkdir 目錄名,可建立檔案夾
b.WINDOWS平台
在瀏覽器中輸入:
[url=ftp://192.168.1.104/(192.168.1.104]ftp://192.168.1.104/(192.168.1.104[/url]
為ftp伺服器的地址)
可以看到目錄
下載下載Flashftp綠色板,在菜單“會話”中點擊“快速串連”,在“伺服器或USL”中輸入ftp伺服器的地址,點擊“串連”就可以了
4.注意:
如果要在ftp目錄下建立一個軟串連目錄。使用mount --bind 原目錄 連結目錄
例如ftp 目錄 /var/ftp ,還有一個目錄/opt/tmp,想將/opt/tmp目錄作為/var/ftp的子目錄ftptmp
mount --bind /opt/tmp /var/ftp/ftptmp
那麼對,/var/ftp/ftptmp的訪問,就是對/opt/tmp的訪問
[b]本文來自ChinaUnix部落格,如果查看原文請點:[/b][url]http://blog.chinaunix.net/u3/91211/showart_1793431.html[/url]