rsync服务器

# cat /etc/rsyncd.conf
uid=root
gid=root

use chroot = yes
read only = no

max connections = 20
timeout = 300
motd file = /etc/rsyncd.motd
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

#不加这个就默认没没密码
secrets file = /etc/pass.crt

[www]
path = /data/
list=yes
auth users = www

chmod 600 /etc/pass.crt
[root@localhost srv]# cat /etc/pass.crt
www:www

srv]# useradd www
rsync --daemon
client
rsync --list-only www@192.168.1.10::

rsync -avzP /data/tmp/ rsync://www@192.168.1.10/www

***********************************************************************************
4game 一般的应该场景如下

service

echo '
uid=root
gid=root

use chroot = yes
read only = no

max connections = 20
timeout = 300
motd file = /etc/rsyncd.motd
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

secrets file = /etc/pass.crt

[phpbill]
path = /data/www/xunlei/log/
list=yes
auth users = bill ' > /etc/rsyncd.conf

echo 'bill:test' > /etc/pass.crt
chmod 600 /etc/pass.crt

rsync --daemon &

##*******************

# client 360
env RSYNC_PASSWORD=test rsync -avz bill@10.21.188.252::phpbill ./

How to install and configure VSFTPD server on Debian or ubuntu

aptitude install vsftpd
sudo apt-get install vsftpd

vim /etc/vsftpd.conf
#一开始提示不能用覆盖 什么的 原来是
#自聪明的学centos打开了这个
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
/etc/init.d/vsftpd start

#添加用户举例
useradd -d /home/test -g ftp -s /sbin/nologin test

How to install and configure VSFTPD server on Debian
https://wiki.debian.org/vsftpd

Debian操作系统配置Vsftp方法

debian配置简单的vsftp服务器

How To Set Up vsftpd on Ubuntu 12.04
https://www.digitalocean.com/community/tutorials/how-to-set-up-vsftpd-on-ubuntu-12-04

https://help.ubuntu.com/community/vsftpd
http://wiki.ubuntu.org.cn/Vsftpd

快速配置nginx虚拟主机(游戏入口快速搭建)

使用场景: 游戏的入口是 lnmp 环境,于是怕麻烦 就有了下面的sh
#!/bin/bash
# entran.sh
#合作方标识
echo -e "\033[31m Please input U gametag! \033[0m"
read games

#games=877wan
mkdir /data/www/${games}
echo "
" > /data/www/${games}/evan.php

echo "server {
listen 80;
server_name tm.${games}.game.com;
charset utf-8;
access_log off;
root /data/www/${games};
index index.php index.htm index.html;
location ~ .*\.(gif|jpg|jpeg|png|bmp|ico|swf|html|htm|mp3|wma|js|css)$ {
expires 7d;
}
location ~ .*\.php?$ {
include /usr/local/nginx/conf/fcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
}
error_page 404 /error/404.php;

}
" >/usr/local/nginx/conf/hosts/${games}.conf

/etc/init.d/nginx check
if [ $? -eq 0 ]
then
/etc/init.d/nginx restart
fi

linux运维面试题目

[root@vultr evan]# cat mycreatedir
#!/bin/bash
for no in `seq 1 50`
do
mkdir -p /userdata/user${no}
chmod 0754 /userdata/user${no}

done

#实时抓取并显示当前系统中tcp 80 端口的网络数据信息
root@ubuntu:~# tcpdump -vv tcp port 80
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
17:07:57.868226 IP 61-216-2-15.HINET-IP.hinet.net.53313 > 10.2.43.12.http: Flags [R], seq 3009089

#!/bin/bash
def=30
dir=/data/1/
dir2=/data/2/
for i in `ls -l $dir|awk '{print $9}'`
do
size=`du -shm ${dir}|awk '{print $1}'`

if [[ $size -gt $def ]] ;
then
mv ${dir}/$i ${dir2}
fi

done

列出某个程序进程所打开的文件信息
lsof -c mysql

############
1.快速批量重命令
#!/bin/sh
for file in `ls *.txt`
do
mv $file $(echo $file | sed 's/.txt/_bak.txt/g')
done

for i in $(seq 10)
do
mv ${i}.txt ${i}.txt_bak
done

2. 目录下有 0,  1001,1002  每10秒同步一次 到0目录下

#good
while true;do rsync -avz 0/* 1001/;rsync -avz 0/* 1002/;rm -rf 0/*;sleep 10;done

#在crontab 设置 每10秒跑脚本
* * * * * ./script
* * * * * sleep 10; ./script
* * * * * sleep 20; ./script
* * * * * sleep 30; ./script
* * * * * sleep 40; ./script
* * * * * sleep 50; ./script
script内容
dest_dir=/data/dest_dir
opt_dir=`for loop in $(ls ${dest_dir});do [[ -d ${dest_dir}/${i} ]] && echo $loop;done`
for loop in ${opt_dir}
do
if [[ ${loop} != '0' ]];then
rsync -ar $dest_dir/0/ $dest_dir/$i/
fi
done
[[ $? == 0 ]] && [[ -d $dest_dir/0 ]] && [[ rm -rf $dest_dir/0/*]]

3. mysql 常用的备份方式, mysql常用的工具有哪些

4. 你所熟悉的监控软件, 每个监控软件的差别和优势

5. web 容器有哪些,每个容器的特别

web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求,如JAVA中的Tomcat容器,ASP的IIS或PWS都是这样的容器。一个服务器可以多个容器。
apache nginx resin tomcat 

6.ops 你觉得要关注哪些方面的技术

7.http常见的状态码有哪些 每个状态码代表什么

8.常见性能分析命令
top sar uptime

用户追加到其它用户组以及用户和用户组的相关命令

将一个用户追加到其它用户组中,千万不能直接用:
usermod -G groupA

这样做会使你脱离其他用户组,而成为groupA这个用户组 的成员。

应该用 加上 -a 选项:
usermod -a -G groupA user
-a 代表 append, 也就是 将自己添加到 用户组groupA 中,而会脱离其他用户组。

使用场景:
某用户要求建立ftp用户 ,但是web目录的所有组不是ftp用户 而是www-data 所以得把用户添加到www-data用户组

root@ubuntu:/home/evan# usermod –help
Usage: usermod [options] LOGIN

Options:
-c, –comment COMMENT new value of the GECOS field
-d, –home HOME_DIR new home directory for the user account
-e, –expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE
-f, –inactive INACTIVE set password inactive after expiration
to INACTIVE
-g, –gid GROUP force use GROUP as new primary group
-G, –groups GROUPS new list of supplementary GROUPS
-a, –append append the user to the supplemental GROUPS
mentioned by the -G option without removing
him/her from other groups
-h, –help display this help message and exit
-l, –login NEW_LOGIN new value of the login name
-L, –lock lock the user account
-m, –move-home move contents of the home directory to the
new location (use only with -d)
-o, –non-unique allow using duplicate (non-unique) UID
-p, –password PASSWORD use encrypted password for the new password
-R, –root CHROOT_DIR directory to chroot into
-s, –shell SHELL new login shell for the user account
-u, –uid UID new UID for the user account
-U, –unlock unlock the user account

查看用户所属的组使用命令 groups evan
或者查看文件: grep evan /etc/group

ps 用户和用户组的相关命令

1)管理用户(user)的工具或命令

useradd 注:添加用户
adduser 注:添加用户
passwd 注:为用户设置密码
usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
pwcov 注:同步用户从/etc/passwd 到/etc/shadow
pwck 注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;
finger 注:查看用户信息工具
id 注:查看用户的UID、GID及所归属的用户组
chfn 注:更改用户信息工具
su 注:用户切换工具
sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;
visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;
sudoedit 注:和sudo 功能差不多;

2)管理用户组(group)的工具或命令;
groupadd 注:添加用户组;
groupdel 注:删除用户组;
groupmod 注:修改用户组信息
groups 注:显示用户所属的用户组
grpck
grpconv 注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;
grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件;

mysqlcheck mysql检查和修复

Mysqlcheck

Mysqlcheck在mysqld运行时使用,其内嵌check/repair/analyze/optimize table命令;
在执行时相应表被锁定,analyze/check table使用读锁,其它均为写锁;
同myisamchk功能近似,但是后者最好在mysqld关闭时运行;

1. Check a Specific Table in a Database
If your application gives an error message saying that a specific table is corrupted, execute the mysqlcheck command to check that one table.
The following example checks employee table in thegeekstuff database.
# mysqlcheck -c thegeekstuff employee -u root -p

2. Check All Tables in a Database
To check all the tables in a particular database, don’t specify the table name. Just specify the database name.
The following example checks all the tables in the alfresco database.
shell> mysqlcheck -c alfresco -u root -p

3. Check All Tables and All Databases
To check all the tables and all the databases use the “–all-databases” along with -c option as shown below.
# mysqlcheck -c -u root -p –all-databases

If you want to check all tables of few databases, specify the database names using “–databases”.
The following example checks all the tables in thegeekstuff and alfresco database.
# mysqlcheck -c -u root -p –databases thegeekstuff alfresco

Repair Tables using Mysqlcheck
The following repairs employee table that is located in thegeekstuff database.
# mysqlcheck -r thegeekstuff employee -u root -p

Additional Useful Mysqlcheck Options

The following are some of the key options that you can use along with mysqlcheck.

-A, –all-databases Consider all the databases
-a, –analyze Analyze tables
-1, –all-in-1 Use one query per database with tables listed in a comma separated way
–auto-repair Repair the table automatically it if is corrupted
-c, –check Check table errors
-C, –check-only-changed Check tables that are changed since last check
-g, –check-upgrade Check for version dependent changes in the tables
-B, –databases Check more than one databases
-F, –fast Check tables that are not closed properly
–fix-db-names Fix DB names
–fix-table-names Fix table names
-f, –force Continue even when there is an error
-e, –extended Perform extended check on a table. This will take a long time to execute.
-m, –medium-check Faster than extended check option, but does most checks
-o, –optimize Optimize tables
-q, –quick Faster than medium check option
-r, –repair Fix the table corruption

可以在表和数据库级别执行
Mysqlcheck db_name [tbl_name …]
Mysqlcheck –databases db_name
Mysqlcheck –all-databases

选项
–analyze:执行analyze table
–auto-repair:如果表损坏则自动修复
–check:执行check table
–check-only-changed:只对上次操作以来变化过的表执行check table
–check-upgrade:执行check table for upgrade
–compress:压缩服务器和客户端之间的所有通信信息
–extended:检查并修复表;如果用于检查表,会确保100%一致但耗时较长;如果用于修复表,可能会产生垃圾数据;
–fast:只检查没有正常关闭的表
–medium-check:比extended选项稍快,可检查99.99%的错误
–optimize:执行optimize table
–quick:只修复索引树,是最快的方法
–repair:除了unique key包含重复数据,可以修复其它大部分错误
–use-frm:修复MyISAM表
–write-binlog:将analyze/optimize/repair语句记录进binlog

Analyze table
要求对候选表有select和insert权限;
可用于分区表,alter table … analyze partition
用于分析表中key键的分布情况,即收集统计信息;
如果自上次analyze以来表没有改动,则analyze table并不会被实际执行;
如果不想记录binlog,可使用NO_WRITE_TO_BINLOG或LOCAL

Check table
可用于MyISAM/InnoDB,该命令有一系列选项,包括
For upgrade/quick/fast/medium/extened/changed
对于MyISMA默认为medium,等同于Myisamchk –m tbl_name
表损坏经常来自索引,故所有的检查级别都会完整的检查索引;
可用于分区表,alter table … check partition

恢复例子

第一,常用的 check 命令
mysqlcheck -c -A -uroot -ppassword
mysqlcheck -c -uroot -ppassword --all-databases
mysqlcheck -c --database dbname -uroot -p
mysqlcheck -c -u root -ppassword --all-databases
mysqlcheck -r table # myisam表才可以

第二 恢复
1.首先 导入当天的冷备份 那就回到当然冷备的时候 一般是凌晨3点什么的
2. 查看系统当机时间   –start-datetime 冷备开始时间 ; –stop-datetime 系统当机时间 , mysql-bin.000201 binlog文件 这个也要看对应时间
mysqlbinlog -d games_s25 --start-datetime="2016-07-25 02:05:00" --stop-datetime="2016-07-25 04:40:00" "mysql-bin.000201" | mysql -uroot -ppassword

from http://www.thegeekstuff.com/2011/12/mysqlcheck/

利用mysqlcheck命令快速修复mysql数据库
http://blog.csdn.net/adparking/article/details/6388917

mysqlcheck和myisamchk
http://blog.itpub.net/15480802/viewspace-757890

mysqlbinlog 恢复数据的四种方法

ssh常用配置

/etc/ssh/sshd_config #on ubuntu
# 设置选项PermitRootLogin
# 选项设置为without-password,root用户就不能从没有密匙的计算机上登录
# 选项设置为no,将禁止root用户登录,只能用sudo命令从普通用户转成root
PermitRootLogin without-password

#不让root远程登入:
PermitRootLogin no

# 设置选项PasswordAuthentication
# 选项设置为no,只允许用户用基于密匙的方式登录
PasswordAuthentication no

linux 硬件和性能查看

一、如何查看服务器的CPU

判断依据:

1.具有相同core id的cpu是同一个core的超线程。(Physical id and core id are not necessarily consecutive but they are unique. Any cpu with the same core id are hyperthreads in the same core.)
2.具有相同physical id的cpu是同一颗cpu封装的线程或者cores。(Any cpu with the same physical id are threads or cores in the same physical socket.)

①物理cpu个数:
[root@localhost ~]# cat /proc/cpuinfo | grep “physical id” | sort | uniq | wc -l
②每个物理cpu中core的个数(即核数)
[root@localhost ~]# cat /proc/cpuinfo | grep “cpu cores” | uniq cpu cores : 4
这样可以推算出自己服务器的逻辑CPU为物理个数*核数

/proc/cpuinfo 描述中有 6 个条目适用于多内核和超线程(HT)技术检查:processor, vendor id, physical id, siblings, core id 和 cpu cores。
* processor 条目包括这一逻辑处理器的唯一标识符。
* physical id 条目包括每个物理封装的唯一标识符。
* core id 条目保存每个内核的唯一标识符。
* siblings 条目列出了位于相同物理封装中的逻辑处理器的数量。
* cpu cores 条目包含位于相同物理封装中的内核数量。
* 如果处理器为英特尔处理器,则 vendor id 条目中的字符串是 GenuineIntel。

二、查看服务器的内存情况
[root@]# free -m
total used free shared buffers cached
Mem: 64350 12506 51843 0 263 10608
-/+ buffers/cache: 1634 62715
Swap: 11999 0 11999

参数解释:
total 内存总数
used 已经使用的内存数
free 空闲的内存数
shared 多个进程共享的内存总额
buffers Buffer Cache和cached Page Cache 磁盘缓存的大小
-buffers/cache (已用)的内存数:used – buffers – cached
+buffers/cache(可用)的内存数:free + buffers + cached
可用的memory=free memory+buffers+cached
其可使用内存为=51843+263+10608。 Linux的内存使用管理机制是有多少就用多少(特别是在频繁存取文件后),即Linux内存不是拿来看的,是拿来用的。

三、服务器磁盘使用情况
有时感觉硬盘反映很慢,或需要查看日志所在分区时,下列命令可以查看磁盘的使用情况:

[root@]# iostat -x 1 10
Linux 2.6.32-358.el6.x86_64 07/26/2016 _x86_64_ (24 CPU)

avg-cpu: %user %nice %system %iowait %steal %idle
0.18 0.00 0.06 0.58 0.00 99.17

Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda 0.28 261.15 0.42 44.21 30.34 2442.90 55.41 0.85 19.02 4.53 20.21

avg-cpu: %user %nice %system %iowait %steal %idle
0.38 0.00 0.13 1.29 0.00 98.21
**********省略

[root@]# iostat -d
Linux 2.6.32-358.el6.x86_64 07/26/2016 _x86_64_ (24 CPU)

Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 44.63 30.29 2442.76 3742706 301857704

图解:
Tps 该设备每秒I/O传输的次数(每秒的I/O请求)
Blk_read/s 表求从该设备每秒读的数据块数量
Blk_wrth/s 表示从该设备每秒写的数据块数量

五、查看服务器使用的Linux发行版的名称、版本号及描述信息等
lsb_release -a or root@]# cat /etc/redhat-release

六、查看服务器的平均负载
感觉到系统压力较大时用可top uptime or w 查看下服务器的平均负载。uptime w 的另一个用法是查看你的Linux服务器已经稳定运行多少天没有重启了。

七、查看系统整体性能情况

如果感觉系统比较繁忙,可以用vmstat查看系统整体性能情况。vmstat不仅仅适应于linux系统,它一样适用于FreeBSD等unix系统。
[root@]# vmstat 1 2
procs ———–memory———- —swap– —–io—- –system– —–cpu—–
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 1 0 53079932 270924 10869396 0 0 1 51 4 11 0 0 99 1 0
0 0 0 53079296 270924 10869424 0 0 0 148 404 512 0 0 99 0 0
如果 r经常大于 4 ,且id经常少于40,表示cpu的负荷很重。
如果pi,po 长期不等于0,表示内存不足。
如果disk 经常不等于0, 且在 b中的队列 大于3, 表示 io性能不好。

八、查看系统已载入的相关模块
Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。你可以将这些功能编译成一个个单独的模块,待需要时再分别载入。比如说在安装LVS+Keepalived,下列用法被经常用到:
#检查内核模块,看一下ip_vs是否被加载
lsmod |grep ip_vs ip_vs 77313 0
如果要查看当前系统的已加载模块,直接lsmod。

九、Linux下查找PCI设置
有时需要在Linux下查找PCI设置,可用lspci命令,它可以列出机器中的PCI 设备,比如声卡、显卡、Modem、网卡等,主板集成设备也能列出来。lspci 读取的是hwdata 数据库。有的小伙可能和我一样,最关心的还是网卡型号:

[root@~]# lspci | grep Ethernet
07:00.0 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01)
07:00.1 Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01)

su 与sudo

sudo su -和 sudo su是不一样的,前面表示把环境变量也换到root用户即$PATH也改变(输入程序名时的查找路径)

命令名称:su
使用权限:所有使用者
使用方式:su [-fmp] [-c command] [-s shell] [–help] [–version] [-] [USER [ARG]]
说明:变更为其他使用者的身份,除 root 外,需要键入该使用者的密码
参数:
-f 或 –fast 不必读启动档(如 csh.cshrc 等),仅用于 csh 或 tcsh
-m -p 或 –preserve-environment 执行 su 时不改变环境变数
-c command 或 –command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使用者
-s shell 或 –shell=shell 指定要执行的 shell (bash csh tcsh 等),预设值为 /etc/passwd 内的该使用者(USER) shell
–help 显示说明文件
–version 显示版本资讯
– -l 或 –login 这个参数加了之后,就好像是重新 login 为该使用者一样,大部份环境变数(HOME SHELL USER等等)都是以该使用者(USER)为主,并且工作目录也会改变,如果没有指定 USER ,内定是 root
USER 欲变更的使用者帐号
ARG 传入新的 shell 参数

curl

linux curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,

最常用选项: -s/–silent静音模式。不输出任何东西

1.常用curl实例
1),抓取页面内容到一个文件中
curl -o home.html http://blog.a.com

2),用-O(大写的),后面的url要具体到某个文件,不然抓不下来。我们还可以用正则来抓取东西
curl -O http://blog.a.com/wp-content/uploads/2010/09/compare_varnish.jpg

3) 测试多个url
#!/bin/bash
#cat mycurl
for loop in 901wan a6wan
do
curl -s evan.${loop}.game.com/evan.php
done

2.常用选项

-a/–append 上传文件时,附加到目标文件
-A/–user-agent   设置用户代理发送给服务器
– anyauth   可以使用“任何”身份验证方法
-b/–cookie cookie字符串或文件读取位置
– basic 使用HTTP基本验证
-B/–use-ascii 使用ASCII /文本传输
-c/–cookie-jar 操作结束后把cookie写入到这个文件中
-C/–continue-at   断点续转
-d/–data    HTTP POST方式传送数据
–data-ascii   以ascii的方式post数据
–data-binary 以二进制的方式post数据
–negotiate     使用HTTP身份验证
–digest        使用数字身份验证
–disable-eprt  禁止使用EPRT或LPRT
–disable-epsv  禁止使用EPSV
-D/–dump-header 把header信息写入到该文件中
–egd-file 为随机数据(SSL)设置EGD socket路径
–tcp-nodelay   使用TCP_NODELAY选项
-e/–referer 来源网址
-E/–cert 客户端证书文件和密码 (SSL)
–cert-type 证书文件类型 (DER/PEM/ENG) (SSL)
–key      私钥文件名 (SSL)
–key-type 私钥文件类型 (DER/PEM/ENG) (SSL)
–pass    私钥密码 (SSL)
–engine   加密引擎使用 (SSL). “–engine list” for list
–cacert CA证书 (SSL)
–capath CA目录 (made using c_rehash) to verify peer against (SSL)
–ciphers   SSL密码
–compressed    要求返回是压缩的形势 (using deflate or gzip)
–connect-timeout 设置最大请求时间
–create-dirs   建立本地目录的目录层次结构
–crlf          上传是把LF转变成CRLF
-f/–fail          连接失败时不显示http错误
–ftp-create-dirs 如果远程目录不存在,创建远程目录
–ftp-method [multicwd/nocwd/singlecwd] 控制CWD的使用
–ftp-pasv      使用 PASV/EPSV 代替端口
–ftp-skip-pasv-ip 使用PASV的时候,忽略该IP地址
–ftp-ssl       尝试用 SSL/TLS 来进行ftp数据传输
–ftp-ssl-reqd  要求用 SSL/TLS 来进行ftp数据传输
-F/–form 模拟http表单提交数据
-form-string 模拟http表单提交数据
-g/–globoff 禁用网址序列和范围使用{}和[]
-G/–get 以get的方式来发送数据
-h/–help 帮助
-H/–header 自定义头信息传递给服务器
–ignore-content-length  忽略的HTTP头信息的长度
-i/–include 输出时包括protocol头信息
-I/–head  只显示文档信息
从文件中读取-j/–junk-session-cookies忽略会话Cookie
– 界面指定网络接口/地址使用
– krb4 <级别>启用与指定的安全级别krb4
-j/–junk-session-cookies 读取文件进忽略session cookie
–interface 使用指定网络接口/地址
–krb4   使用指定安全级别的krb4
-k/–insecure 允许不使用证书到SSL站点
-K/–config  指定的配置文件读取
-l/–list-only 列出ftp目录下的文件名称
–limit-rate 设置传输速度
–local-port 强制使用本地端口号
-m/–max-time 设置最大传输时间
–max-redirs 设置最大读取的目录数
–max-filesize 设置最大下载的文件总量
-M/–manual  显示全手动
-n/–netrc 从netrc文件中读取用户名和密码
–netrc-optional 使用 .netrc 或者 URL来覆盖-n
–ntlm          使用 HTTP NTLM 身份验证
-N/–no-buffer 禁用缓冲输出
-o/–output 把输出写到该文件中
-O/–remote-name 把输出写到该文件中,保留远程文件的文件名
-p/–proxytunnel   使用HTTP代理
–proxy-anyauth 选择任一代理身份验证方法
–proxy-basic   在代理上使用基本身份验证
–proxy-digest  在代理上使用数字身份验证
–proxy-ntlm    在代理上使用ntlm身份验证
-P/–ftp-port

使用端口地址,而不是使用PASV
-Q/–quote 文件传输前,发送命令到服务器
-r/–range 检索来自HTTP/1.1或FTP服务器字节范围
–range-file 读取(SSL)的随机文件
-R/–remote-time   在本地生成文件时,保留远程文件时间
–retry    传输出现问题时,重试的次数
–retry-delay   传输出现问题时,设置重试间隔时间
–retry-max-time 传输出现问题时,设置最大重试时间
-s/–silent静音模式。不输出任何东西
-S/–show-error   显示错误
–socks4 用socks4代理给定主机和端口
–socks5 用socks5代理给定主机和端口
–stderr
-t/–telnet-option Telnet选项设置
–trace   对指定文件进行debug
–trace-ascii Like –跟踪但没有hex输出
–trace-time    跟踪/详细输出时,添加时间戳
-T/–upload-file 上传文件
–url      Spet URL to work with
-u/–user 设置服务器的用户和密码
-U/–proxy-user 设置代理用户名和密码
-v/–verbose
-V/–version 显示版本信息
-w/–write-out [format]什么输出完成后
-x/–proxy 在给定的端口上使用HTTP代理
-X/–request 指定什么命令
-y/–speed-time 放弃限速所要的时间。默认为30
-Y/–speed-limit 停止传输速度的限制,速度时间’秒
-z/–time-cond  传送时间设置
-0/–http1.0  使用HTTP 1.0
-1/–tlsv1  使用TLSv1(SSL)
-2/–sslv2 使用SSLv2的(SSL)
-3/–sslv3         使用的SSLv3(SSL)
–3p-quote      like -Q for the source URL for 3rd party transfer
–3p-url        使用url,进行第三方传送
–3p-user       使用用户名和密码,进行第三方传送
-4/–ipv4   使用IP4
-6/–ipv6   使用IP6
-#/–progress-bar 用进度条显示当前的传送状态

参考 
http://blog.51yip.com/linux/1049.html
http://www.cnblogs.com/subsir/articles/2632412.html