用FTP升级程序时的问题

我希望用FTP来升级目标机的程序,客户端的OS是windows,现在的问题是我虽然可以从windows上将新的文件通过FTP拷贝到目标机上,但是发现文件的属性中“可执行”的属性全没有了,我不得不手工将这些文件的“可执行”属性加上,这样非常麻烦,如何解决这个问题呢?

在ftp里也可以chmod的。

ftp> put mybin
ftp> chmod a+x mybin

唐先生,请问文件的属性为什么会变能,是不是各OS下定义不一样呢?

是啊,如果你传去Windows FAT32,那里来的用户ID,和读写属性啊 :smiley:

还有比较重要的是安全因素。ftpd 允许执行对面传来的任何软件,如果一个传来的软件直接可以执行的话,对系统的安全性是很大的威胁。

远程chmod的实现其实是ftp向ftpd发一个要求,ftpd 在本机上执行 “chmod a+x file”。换言之,只要在ftpd的环境里没有可执行文件 “chmod”,远程就无法执行这个命令了。