Linux课程笔记 Day06 命令总结
scp
【使用权限】
所有使用者
【语法】
scp [参数] [原路径] [目标路径]
【功能说明】
scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在linux服务器之间复制文件和目录。
【参数】
-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。
-q 不显示传输进度条。
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
【实例】
[root@test2 ~]# scp test2.sun.txt 192.168.1.4:/test2 The authenticity of host '192.168.1.4 (192.168.1.4)' can't be established. RSA key fingerprint is d3:1b:26:6c:bc:f2:af:14:cc:6a:bb:0c:13:53:59:be. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.1.4' (RSA) to the list of known hosts. root@192.168.1.4's password: test2.sun.txt 100% 0 0.0KB/s 00:00 [root@test2 ~]# scp -r scripts oldboy.txt 192.168.1.4:/test2 root@192.168.1.4's password: sh01.sh 100% 49 0.1KB/s 00:00 sh04.sh 100% 164 0.2KB/s 00:00 sh02.sh 100% 147 0.1KB/s 00:00 sh03.sh 100% 315 0.3KB/s 00:00
[root@test3 test2]# ll #test3的ip地址是192.168.1.4 总计 8 -rw-r--r-- 1 root root 45 08-20 06:06 oldboy.txt drwxr-xr-x 3 root root 4096 08-20 06:06 scripts -rw-r--r-- 1 root root 0 08-20 06:04 test2.sun.txt |
wget
【使用权限】
所有使用者
【语法】
wget [参数列表] URL
【功能说明】
一个从网络上自动下载的自由工具,支持通过HTTP、HTTPS、FTP三种协议下载,并可以使用HTTP代理
(1) 支持断点下载功能
(2) 同时支持FTP和HTTP下载方式
(3) 支持代理服务器
(4) 设置方便简单
(5) 程序小,完全免费
【参数】
1. 下载整个HTTP或FTP站点
-x:会强制建立与服务器一模一样的目录
-nd:服务器上所有下载的内容加到本地目录
-r:下载服务器上所有的目录和文件,并下载所有指向的地址
-l:指定下载的层数
-m:制作站点镜像
2. 断点续传
-c:表示自动断点续传
-t:表示重试次数,-t 0表示无穷次重试
-T:表示超时等待
3. 批量下载
-i:如果有多个文件要下载,可以将每个文件的URL写进一个文件,然后用命令wget -i download.txt批量下载
4. 选择性的下载
-reject=LIST:可以接受的文件类型
-accept=LIST:拒绝接受的文件类型
wget -m -reject=gif http://target.web.site/subdirectory
5. 密码和认证
-http-user=USER设置HTTP用户
-http-passwd=PASS设置HTTP密码
wget只能处理利用用户名和密码限制访问的网站
对于需要证书做认证的网站,只能利用其它工具,比如curl
6. 利用代理服务器下载
如果用户的网络需要通过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时,需要在用户当前的目录下创建一个wgetrc的文件,,文件中可以设置代理服务器:
http-proxy=111.111.111.111:8080
ftp-proxy=111.111.111.111:8080
如果代理服务器需要密码则使用:
-proxy-user=USER设置代理用户
-proxy-passwd=PASS设置代理密码
-proxy=on/off开启或关闭代理
ping
【功能说明】
使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。
【使用权限】
所有使用者
【语法】
ping [-dfnqrRv][-c 发送次数][-i 间隔秒数][-I 网络界面][-l 前置载入][-p 范本样式][-s 数据包大小][-t 存活数值][主机名或IP地址]
【参数】
-d 使用Socket的SO_DEBUG功能。
-f 极限检测。大量且快速地送网络封包给一台机器,看它的回应。
-n 只输出数值。
-q 不显示任何传送封包的信息,只显示最后的结果。
-r 忽略普通的Routing Table,直接将数据包送到远端主机上。通常是查看本机的网络接口是否有问题。
-R 记录路由过程。
-v 详细显示指令的执行过程。
-c 数目 在发送指定数目的包后停止。
-i 秒数 设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。
-I 网络界面 使用指定的网络界面送出数据包。
-l 前置载入 设置在送出要求信息之前,先行发出的数据包。
-p 范本样式 设置填满数据包的范本样式。
-s 字节数 指定发送的数据字节数,预设值是56,加上8字节的ICMP头,一共是64ICMP数据字节。
-t 存活数值 设置存活数值TTL的大小。
【实例】
[qinbf@test2 ~]$ ping -c 10 -i 2 www.baidu.com PING www.a.shifen.com (115.239.210.27) 56(84) bytes of data. 64 bytes from 115.239.210.27: icmp_seq=1 ttl=128 time=31.6 ms 64 bytes from 115.239.210.27: icmp_seq=2 ttl=128 time=32.7 ms 64 bytes from 115.239.210.27: icmp_seq=3 ttl=128 time=31.4 ms 64 bytes from 115.239.210.27: icmp_seq=4 ttl=128 time=30.7 ms 64 bytes from 115.239.210.27: icmp_seq=5 ttl=128 time=31.4 ms 64 bytes from 115.239.210.27: icmp_seq=6 ttl=128 time=32.4 ms 64 bytes from 115.239.210.27: icmp_seq=7 ttl=128 time=33.1 ms 64 bytes from 115.239.210.27: icmp_seq=8 ttl=128 time=31.2 ms 64 bytes from 115.239.210.27: icmp_seq=9 ttl=128 time=30.9 ms 64 bytes from 115.239.210.27: icmp_seq=10 ttl=128 time=30.4 ms
--- www.a.shifen.com ping statistics --- 10 packets transmitted, 10 received, 0% packet loss, time 17993ms rtt min/avg/max/mdev = 30.467/31.632/33.196/0.865 ms
[qinbf@test2 ~]$ ping -t 100 -s 128 www.baidu.com PING www.a.shifen.com (115.239.210.26) 128(156) bytes of data. 136 bytes from 115.239.210.26: icmp_seq=1 ttl=128 time=33.0 ms 136 bytes from 115.239.210.26: icmp_seq=2 ttl=128 time=32.3 ms 136 bytes from 115.239.210.26: icmp_seq=3 ttl=128 time=32.6 ms 136 bytes from 115.239.210.26: icmp_seq=4 ttl=128 time=34.3 ms 136 bytes from 115.239.210.26: icmp_seq=5 ttl=128 time=32.3 ms 136 bytes from 115.239.210.26: icmp_seq=6 ttl=128 time=32.6 ms 136 bytes from 115.239.210.26: icmp_seq=7 ttl=128 time=32.9 ms 136 bytes from 115.239.210.26: icmp_seq=8 ttl=128 time=32.6 ms 136 bytes from 115.239.210.26: icmp_seq=9 ttl=128 time=32.5 ms #加上8bytes的ICMP包头就是136bytes |
route
【功能说明】
打印和操作路由表
【使用权限】
打印(所用使用者) 操作(管理员权限)
【参数说明】
add:添加一条路由
del:删除一条路由
-net:目标是一个网络
-host:目标是一个主机
netmask:当添加一个网络路由时,需要设定子网掩码
gw:路由数据包通过网关,,指定的网关必须能够到达
metric:设置路由跳数
【实例】
添加一条路由: route add -net 192.168.1.0 mask 255.255.255.0 dev eth0 #添加一条到达192.168.1.0的路由,指定子网掩码是255.255.255.0,数据包通过eth0 |
route add -net 192.168.2.0 mask 255.255.255.0 gw 192.168.0.2 #添加一条到达192.1681.2.0的路由,指定子网掩码是255.255.255.0,数据包通过网关192.168.0.2
route add -host 192.168.3.1 mask 255.255.255.0 gw 192.168.0.2 #所有去往192.168.3.1主机的数据包通过网关192.168.0.2
route add default gw 192.168.1.2 #添加一条默认网关,所有数据包转发到192.168.1.2
[qinbf@test2 ~]$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 0.0.0.0 192.168.1.2 0.0.0.0 UG 0 0 0 eth0
Destination:目标网络或主机。 Gateway:网关地址。 Genmask:目标网络的网络掩码。"255.255.255.255"表示一个主机。"0.0.0.0"表示网关。 Flags:标记。 U、路由被启用。 H、目标是一个主机 G、使用网关。
|
ifconfig
【功能说明】
查看和配置网络设备,重启系统后配置将失效
【使用权限】
查看(所有使用者) 配置(管理员权限)
【参数】
up:启动指定网络设备/网卡
down:关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息,如果想永久地关闭一个借口,需要从核心路由表中将该接口的路由信息全部删除
arp:设置指定网卡是否支持ARP协议
-promisc: 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
address 为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度
【实例】
1.[qinbf@test2 ~]$ ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:DF:E8:87 inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fedf:e887/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:123171 errors:0 dropped:0 overruns:0 frame:0 TX packets:122982 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:12092654 (11.5 MiB) TX bytes:12079370 (11.5 MiB)
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:66 errors:0 dropped:0 overruns:0 frame:0 TX packets:66 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5340 (5.2 KiB) TX bytes:5340 (5.2 KiB) #eth0表示第一块网卡,其中HWaddr表示网卡的物理地址,为00:0C:29:DF:E8:87,inet addr,表示ip地址为192.168.1.3,广播地址192.168.1.255,子网掩码255.255.255.0。
#lo表示主机的环回地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。 第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址) 第二行:网卡的IP地址、子网、掩码 第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节 第四、五行:接收、发送数据包情况统计 第七行:接收、发送数据字节数统计信息。
2. ifconfig eth0 up #启动网卡eth0 ifconfig eth0 down #关闭网卡eth0 注意:ssh登录服务器要小心了,关闭了就不能开启,除非有多网卡。
3. ifconfig eth0 add 33ffe:3240:800:1005::2/64 #添加IPV6地址 ifconfig eth0 del 33ffe:3240:800:1005::2/64 #删除IPV6地址
4. ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE #修改硬件地址
5. ifconfig eth0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 #配置IP地址
6. ifconfig eth0 arp #开启arp协议 ifconfig eth0 -arp #关闭arp协议
7. ifconfig eth0 mtu 1500 #设置最大最大传输单元 |
ifup
【功能说明】
用于激活指定的网络接口
【语法】
ifup [网络接口]
【实例】
ifup eth0 |
【经验技巧】
ifup是一个Bash脚本程序,用于激活指定的网络接口。
ifdown
【功能说明】
禁用指定的网络接口
【语法】
ifdown [网络接口]
【实例】
ifdown eth0 |
【经验技巧】
ifdown 是一个Bash脚本程序,用于禁用指定的网络接口
*比较ifconfig、ifup或ifdown之间的区别
(1)ifconfig:查询、设置网卡与IP段等相关参数 (2)ifup/ifdown interface:这两个文件是脚本文件,通过更简单的方式来启动/禁用网络接口,其中interface必须是/etc/sysconfig/network-scripts/目录下与ifcfg-ethX文件相对的ethX。 在使用前确定ifcfg-ethX是否真的存在于正确的目录下,否则会启动失效。
另外,如果以ifconfig eth0来设置或者修改了网络接口的信息,那么就无法再以ifdown eth0的方式来关闭了,因为ifdown会分析比较目前的网络参数与ifcfg-eth0是否相符,不符的话,会放弃此次操作。因此若使用ifconfig修改完后,应该是要ifconfig eth0 down才能够关闭该接口。
总之,ifcfg-ethX必须存在而且与目前的网络参数相符,ifup/ifdown才能生效。 |
netstat
【功能说明】
用于显示各种网络连接信息
【使用权限】
所有使用者
【参数】
-a:显示所有选项,默认不显示LISTEN相关
-t:仅显示tcp相关项目
-u:仅显示udp相关项目
-n:拒绝显示别名,能显示数字的全部转化成数字
-l:仅列出有在listen的服务状态
-p:显示建立相关链接的程序名
-r:显示路由信息,路由表
-e:显示扩展信息,例如uid等
-s:按各个协议进行统计
-c:每个一个固定时间,执行netstat命令
【实例】
#列出所有端口 [root@test4 ~]# netstat -a |more Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:19880 *:* LISTEN tcp 0 52 192.168.1.5:19880 192.168.1.1:62524 ESTABLISHED tcp 0 0 *:19880 *:* LISTEN udp 0 0 *:bootpc *:* raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 7 [ ] DGRAM 9275 /dev/log unix 2 [ ] DGRAM 1905 @/org/kernel/udev/udevd unix 2 [ ] DGRAM 10648 unix 2 [ ] DGRAM 10156 unix 2 [ ] DGRAM 10137 unix 3 [ ] STREAM CONNECTED 9954 unix 3 [ ] STREAM CONNECTED 9953 unix 2 [ ] DGRAM 9949 unix 2 [ ] DGRAM 9421 unix 2 [ ] DGRAM 9284
#列出所有tcp端口netstat -at [root@test4 ~]# netstat -at Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:19880 *:* LISTEN tcp 0 284 192.168.1.5:19880 192.168.1.1:62524 ESTABLISHED tcp 0 0 *:19880 *:* LISTEN
#只显示监听端口netstat -l [root@test4 ~]# netstat -l Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:19880 *:* LISTEN tcp 0 0 *:19880 *:* LISTEN udp 0 0 *:bootpc *:* raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 raw 0 0 *:icmp *:* 7 Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node Path
#只列出所有监听tcp端口netstat -lt [root@test4 ~]# netstat -lt Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:19880 *:* LISTEN tcp 0 0 *:19880 *:* LISTEN
#显示所有端口的统计信息netstat -s [root@test4 ~]# netstat -s Ip: 6143 total packets received 3 with invalid addresses 0 forwarded 0 incoming packets discarded 6140 incoming packets delivered 6168 requests sent out Icmp: 5656 ICMP messages received 0 input ICMP message failed. ICMP input histogram: echo requests: 1 echo replies: 5655 5757 ICMP messages sent 0 ICMP messages failed ICMP output histogram: echo request: 5756 echo replies: 1 IcmpMsg: InType0: 5655 InType8: 1 OutType0: 1 OutType8: 5756 Tcp: 0 active connections openings 1 passive connection openings 0 failed connection attempts 0 connection resets received 1 connections established 400 segments received 330 segments send out 0 segments retransmited 0 bad segments received. 0 resets sent Udp: 81 packets received 0 packets to unknown port received. 0 packet receive errors 81 packets sent TcpExt: 5 delayed acks sent 78 packets header predicted 190 acknowledgments not containing data received 0 TCP data loss events IpExt: InBcastPkts: 3
#显示tcp端口的统计信息netstat -st [root@test4 ~]# netstat -st IcmpMsg: InType0: 6227 InType8: 1 OutType0: 1 OutType8: 6333 Tcp: 0 active connections openings 1 passive connection openings 0 failed connection attempts 0 connection resets received 1 connections established 436 segments received 390 segments send out 0 segments retransmited 0 bad segments received. 0 resets sent TcpExt: 5 delayed acks sent 84 packets header predicted 204 acknowledgments not containing data received 0 TCP data loss events IpExt: InBcastPkts: 3
#netstat -p可以与其他开关一起使用,就可以天剑pid/进程名称到netstat输出信息中 |
[root@test4 ~]# netstat -pt Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 284 192.168.1.5:19880 192.168.1.1:62524 ESTABLISHED 2402/sshd |
[root@test4 ~]# netstat -an Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:19880 0.0.0.0:* LISTEN tcp 0 284 192.168.1.5:19880 192.168.1.1:62524 ESTABLISHED tcp 0 0 :::19880 :::* LISTEN udp 0 0 0.0.0.0:68 0.0.0.0:* raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 raw 0 0 0.0.0.0:1 0.0.0.0:* 7 Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 7 [ ] DGRAM 9275 /dev/log unix 2 [ ] DGRAM 1905 @/org/kernel/udev/udevd unix 2 [ ] DGRAM 10648 unix 2 [ ] DGRAM 10156 unix 2 [ ] DGRAM 10137 unix 3 [ ] STREAM CONNECTED 9954 unix 3 [ ] STREAM CONNECTED 9953 unix 2 [ ] DGRAM 9949 unix 2 [ ] DGRAM 9421 unix 2 [ ] DGRAM 9284
[root@test4 ~]# netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 169.254.0.0 * 255.255.0.0 U 0 0 0 eth0 default 192.168.1.2 0.0.0.0 UG 0 0 0 eth0
netstat -nat | grep "192.168.1.15:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20 221.136.168.36 154.74.45.242 78.173.31.236 62.183.207.98 192.168.1.14 182.48.111.215 124.193.219.34 119.145.41.2 114.255.41.30 75.102.11.99 |
rpm
【功能说明】
RPM是RedHat Package Management的简称,是用来管理软件包的程序
【参数】
-I,--install
-v,--verbose
-h,--hash
-e,--erase
-U,--upgrade
--replacepkge:无论软件包是否已被安装,都强行安装软件包
--test:安装测试,并不实际安装
--nodeps:忽略软件包依赖关系强行安装
--force:忽略软件包及文件的冲突
Query options(with -q or --query)
-a,--all:检查所有的的包
-p,--package:检查某个包文件
-l,--list:列出包中的所有文件
-d,--docfiles:列出包中的所有说明文件
-f,--file:查询包中归属的文件
【常用组合】
-ivh:安装显示进度(--install--verbose-hash)
-Uvh:升级软件包--Update
-qpl:列出RPM软件包的文件信息(Query Package List)
-qpi:列出RPM软件包的描述信息(Query Package Install packages)
-qf:查找指定文件属于哪个RPM软件包(Query File)
-Va:校验所有的RPM软件包,查找丢失的文件(View Lost)
-e:删除包
rpm -q samba //查询程序是否安装
rpm -ivh /media/cdrom/RedHat/RPMS/samba-3.0.10-1.4E.i386.rpm //按路径安装并显示进度 rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm //指定安装目录
rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm //用来检查依赖关系;并不是真正的安装; rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版本
rpm -qa | grep httpd #[搜索指定rpm包是否安装]--all搜索*httpd* rpm -ql httpd #[搜索rpm包]--list所有文件安装目录
rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息 rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file rpm -qpR file.rpm #[查看包]依赖关系 rpm2cpio file.rpm |cpio -div #[抽出文件]
rpm -ivh file.rpm #[安装新的rpm]--install--verbose--hash rpm -ivh
rpm -Uvh file.rpm #[升级一个rpm]--upgrade rpm -e file.rpm #[删除一个rpm包]--erase |
rsync
【功能说明】
rsync是类unix系统下的数据镜像备份工具,可以讲一个客户机和远程文件服务器之间的文件同步
【参数】
-v, --verbose 详细模式输出
-q, --quiet 精简输出模式
-c, --checksum 打开校验开关,强制对文件传输进行校验
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r, --recursive 对子目录以递归模式处理
-R, --relative 使用相对路径信息
-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。
--backup-dir 将备份文件(如~filename)存放在在目录下。
-suffix=SUFFIX 定义备份文件前缀
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)
-l, --links 保留软链结
-L, --copy-links 想对待常规文件一样处理软链结
--copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结
--safe-links 忽略指向SRC路径目录树以外的链结
-H, --hard-links 保留硬链结
-p, --perms 保持文件权限
-o, --owner 保持文件属主信息
-g, --group 保持文件属组信息
-D, --devices 保持设备文件信息
-t, --times 保持文件时间信息
-S, --sparse 对稀疏文件进行特殊处理以节省DST的空间
-n, --dry-run现实哪些文件将被传输
-W, --whole-file 拷贝文件,不进行增量检测
-x, --one-file-system 不要跨越文件系统边界
-B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节
-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步
--rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息
-C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件
--existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件
--delete 删除那些DST中SRC没有的文件
--delete-excluded 同样删除接收端那些被该选项指定排除的文件
--delete-after 传输结束以后再删除
--ignore-errors 及时出现IO错误也进行删除
--max-delete=NUM 最多删除NUM个文件
--partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输
--force 强制删除目录,即使不为空
--numeric-ids 不将数字的用户和组ID匹配为用户名和组名
--timeout=TIME IP超时时间,单位为秒
-I, --ignore-times 不跳过那些有同样的时间和长度的文件
--size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间
--modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0
-T --temp-dir=DIR 在DIR中创建临时文件
--compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份
-P 等同于
--partial
--progress 显示备份过程
-z, --compress 对备份的文件在传输时进行压缩处理
--exclude=PATTERN 指定排除不需要传输的文件模式
--include=PATTERN 指定不排除而需要传输的文件模式
--exclude-from=FILE 排除FILE中指定模式的文件
--include-from=FILE 不排除FILE指定模式匹配的文件
--version 打印版本信息
--address 绑定到特定的地址
--config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件
--port=PORT 指定其他的rsync服务端口
--blocking-io 对远程shell使用阻塞IO
-stats 给出某些文件的传输状态
--progress 在传输时现实传输过程
--log-format=formAT 指定日志文件格式
--password-file=FILE 从FILE中得到密码
--bwlimit=KBPS 限制I/O带宽,KBytes
per second
-h, --help 显示帮助信息
【实例】
Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]... [USER@]HOST:SRC DEST rsync [OPTION]... [USER@]HOST::SRC DEST rsync [OPTION]... SRC [USER@]HOST::DEST rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST] 对应于以上六种命令格式,rsync有六种不同的工作模式: 1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup 2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src 3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data 4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av root@172.16.78.192::www /databack 5)从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack root@172.16.78.192::www 6)列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.16.78.192/www |