选择显示字体大小

源码e家 - 网络学院 -文章首页 - 服务器技术 - 基于unix平台ftp服务器的建立 -

目前很多企业单位正在构架自己的intr.net,ftp服务器是其中的一个服务支持,有很多单位购置了基于unix平台的计算机,为了在网上能够提供ftp服务支持,专门购置基于unix平台的ftp server软件,其实在基于unix平台的计算机系统中,采取一定的技术方法,就可以建立自己的ftp server,实现网上文件上下载服务,无须再购置专门的软件,和乐而不为之呢?下面就其建立过程阐述如下:



  1.确定ftp server的共享目录

为ftp server建立一个ftp工作目录,在此设定为/home/ftp



  2.编写ftp server初始设置的shell程序(setup)

用编辑工具(如vi)编写一个shell程序,用于对系统进行设置。

#!/bin/sh

case $# in

0) ftphome="`grep '^ftp:' /etc/passwd cut -d: -f6`"

;;

1) if [ "$1" = "start" ]; then

ftphome="`grep '^ftp:' /etc/passwd cut -d: -f6`"

else

ftphome=$1

fi

;;

*) echo "usage: $0 [anon-ftp-root]"

exit 1

;;

esac

if [ -z "${ftphome}" ]; then

echo "$0: ftphome must be non-null"

exit 2

fi

if [ "${ftphome}" = "/" -o "${ftphome}" = "/usr" ]; then

echo "$0: ftphome must not be / or /usr"

exit 2

fi

if [ ! -d ${ftphome} ]; then

mkdir ${ftphome}

fi

if [ ! -d ${ftphome}/usr/bin ]; then

mkdir -p ${ftphome}/usr/bin

fi

cp /usr/bin/ls ${ftphome}/usr/bin

chmod 111 ${ftphome}/usr/bin/ls

chown root ${ftphome}/usr/bin

chmod 555 ${ftphome}/usr/bin

if [ -r ${ftphome}/bin ]; then

mv -f ${ftphome}/bin ${ftphome}/obin

fi

ln -s usr/bin ${ftphome}

if [ ! -d ${ftphome}/usr/lib ]; then

mkdir -p ${ftphome}/usr/lib


fi

if [ ! -d ${ftphome}/etc ]; then

mkdir -p ${ftphome}/etc

fi

cp /usr/lib/ld.so /usr/lib/ld.so.1 ${ftphome}/usr/lib

for lib in libc libdl libintl libw libnsl libsocket \

nss_nis nss_nisplus nss_dns nss_files

do

cp /usr/lib/${lib}.so.1 ${ftphome}/usr/lib

rm -f ${ftphome}/usr/lib/${lib}.so

ln -s ./${lib}.so.1 ${ftphome}/usr/lib/${lib}.so

done

cp /usr/lib/straddr.so.2 ${ftphome}/usr/lib


rm -f ${ftphome}/usr/lib/straddr.so

ln -s ./straddr.so.2 ${ftphome}/usr/lib/straddr.so

cp /etc/passwd /etc/group /etc.netconfig ${ftphome}/etc

chmod 555 ${ftphome}/usr/lib/*

chmod 444 ${ftphome}/etc/*

chown root ${ftphome}/usr/lib ${ftphome}/etc

chmod 555 ${ftphome}/usr/lib ${ftphome}/etc

if [ ! -d ${ftphome}/dev ]; then

mkdir -p ${ftphome}/dev

fi

prefix="/devices/pseudo/mm@0:"

for device in zero

line=`ls -l ${prefix}${device} sed -e 's/,//'`

major=`echo $line awk '{print $5}'`

minor=`echo $line awk '{print $6}'`

rm -f ${ftphome}/dev/${device}


mknod ${ftphome}/dev/${device} c ${major} ${minor}

done

prefix="/devices/pseudo/clone@0:"

for device in tcp udp ticotsord

do

line=`ls -l ${prefix}${device} sed -e 's/,//'`

major=`echo $line awk '{print $5}'`

minor=`echo $line awk '{print $6}'`

rm -f ${ftphome}/dev/${device}

mknod ${ftphome}/dev/${device} c ${major} ${minor}

done

chmod 666 ${ftphome}/dev/*

chown root ${ftphome}/dev

chmod 555 ${ftphome}/dev

#建立一个匿名ftp服务目录,并设立可读可写属性

if [ ! -d ${ftphome}/pub ]; then

mkdir -p ${ftphome}/pub

fi

chown ftp ${ftphome}/pub

chmod 777 ${ftphome}/pub



3.         编辑/etc/passwd和/etc/shadow文件

设置匿名ftp帐号,按下面方法分别对/etc/passwd和/etc/shadow两个文件中增加如下数据项:

(1)在/etc/passwd文件中增加

ftp:x:30000:30000:anonymous ftp:/home/ftp:/nosuchshell

(2)在/etc/shadow文件中增加

ftp:np:6445::::::



4.         运行setup程序

在运行setup程序之前,将该文件设置成执行文件

#chmod +x setup

运行setup程序 #setup /home/ftp

以上步骤就完成了ftp服务器的建立,即可使用ftp服务器,可以用如explorer.netscape navigator等浏览器对ftp服务器进行访问,进行下载和上载文件操作,使用非常方便。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons