当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪Linux netstat命令详细解析       简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。 输出信息含义执行netstat后,其输出结果为 .........
    ▪如何备份恢复IIS?详细备份恢复IIS的步骤       Windows的IIS有一个非常“坑爹”的备份还原功能,和大部分备份还原不同的是,这个服务默认不支持不同电脑之间的备份还原,如果用户重装Windows的话,即使备份了IIS的相关文件,还原的时.........
    ▪win2008 r2 安装sqlserver 2000问题的解决方法       1:点击安装,提示兼容问题,然后没有然后了··· 没有反应了 解决方法:直接运行  光盘\Microsoft SQL Server 2000 四合一\ENTERPRISE\X86\SETUP\SETUPSQL.EXE 2:安装到一半 提示  一般性网络错误 解决.........

[1]Linux netstat命令详细解析
    来源: 互联网  发布时间: 2013-12-24

简介
Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

输出信息含义
执行netstat后,其输出结果为

代码如下:

Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 2 210.34.6.89:telnet 210.34.6.96:2873 ESTABLISHED
tcp 296 0 210.34.6.89:1165 210.34.6.84:netbios-ssn ESTABLISHED
tcp 0 0 localhost.localdom:9001 localhost.localdom:1162 ESTABLISHED
tcp 0 0 localhost.localdom:1162 localhost.localdom:9001 ESTABLISHED
tcp 0 80 210.34.6.89:1161 210.34.6.10:netbios-ssn CLOSE

Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 1 [ ] STREAM CONNECTED 16178 @000000dd
unix 1 [ ] STREAM CONNECTED 16176 @000000dc
unix 9 [ ] DGRAM 5292 /dev/log
unix 1 [ ] STREAM CONNECTED 16182 @000000df


从整体上看,netstat的输出结果可以分为两个部分:

一个是Active Internet connections,称为有源TCP连接,其中"Recv-Q"和"Send-Q"指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。

另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
Proto显示连接使用的协议,RefCnt表示连接到本套接口上的进程号,Types显示套接口的类型,State显示套接口当前的状态,Path表示连接到套接口的其它进程使用的路径名。

常见参数
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

实用命令实例
 
1. 列出所有端口 (包括监听和未监听的)
列出所有端口 netstat -a

代码如下:

# netstat -a | more
 Active Internet connections (servers and established)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 tcp        0      0 localhost:30037         *:*                     LISTEN
 udp        0      0 *:bootpc                *:*

Active UNIX domain sockets (servers and established)
 Proto RefCnt Flags       Type       State         I-Node   Path
 unix  2      [ ACC ]     STREAM     LISTENING     6135     /tmp/.X11-unix/X0
 unix  2      [ ACC ]     STREAM     LISTENING     5140     /var/run/acpid.socket

列出所有 tcp 端口 netstat -at
代码如下:

# netstat -at
 Active Internet connections (servers and established)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 tcp        0      0 localhost:30037         *:*                     LISTEN
 tcp        0      0 localhost:ipp           *:*                     LISTEN
 tcp        0      0 *:smtp                  *:*                     LISTEN
 tcp6       0      0 localhost:ipp           [::]:*                  LISTEN

列出所有 udp 端口 netstat -au
代码如下:

# netstat -au
 Active Internet connections (servers and established)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 udp        0      0 *:bootpc                *:*
 udp        0      0 *:49119                 *:*
 udp        0      0 *:mdns                  *:*

2. 列出所有处于监听状态的 Sockets
只显示监听端口 netstat -l
代码如下:

# netstat -l
 Active Internet connections (only servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 tcp        0      0 localhost:ipp           *:*                     LISTEN
 tcp6       0      0 localhost:ipp           [::]:*                  LISTEN
 udp        0      0 *:49119                 *:*

只列出所有监听 tcp 端口 netstat -lt
代码如下:

# netstat -lt
 Active Internet connections (only servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 tcp        0      0 localhost:30037         *:*                     LISTEN
 tcp        0      0 *:smtp                  *:*                     LISTEN
 tcp6       0      0 localhost:ipp           [::]:*                  LISTEN

只列出所有监听 udp 端口 netstat -lu
代码如下:

# netstat -lu
 Active Internet connections (only servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 udp        0      0 *:49119                 *:*
 udp        0      0 *:mdns                  *:*

只列出所有监听 UNIX 端口 netstat -lx
代码如下:

# netstat -lx
 Active UNIX domain sockets (only servers)
 Proto RefCnt Flags       Type       State         I-Node   Path
 unix  2      [ ACC ]     STREAM     LISTENING     6294     private/maildrop
 unix  2      [ ACC ]     STREAM     LISTENING     6203     public/cleanup
 unix  2      [ ACC ]     STREAM     LISTENING     6302     private/ifmail
 unix  2      [ ACC ]     STREAM     LISTENING     6306     private/bsmtp

3. 显示每个协议的统计信息
显示所有端口的统计信息 netstat -s
代码如下:

# netstat -s
 Ip:
total packets received
with invalid addresses
forwarded
incoming packets discarded
incoming packets delivered
requests sent out
 Icmp:
ICMP messages received
input ICMP message failed.
 Tcp:
active connections openings
failed connection attempts
connection resets received
 Udp:
packets received
packets to unknown port received.
 .....

显示 TCP 或 UDP 端口的统计信息 netstat -st 或 -su
代码如下:

# netstat -st
# netstat -su

4. 在 netstat 输出中显示 PID 和进程名称 netstat -p
netstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。
代码如下:

# netstat -pt
 Active Internet connections (w/o servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
 tcp        1      0 ramesh-laptop.loc:47212 192.168.185.75:www        CLOSE_WAIT  2109/firefox
 tcp        0      0 ramesh-laptop.loc:52750 lax:www ESTABLISHED 2109/firefox

5. 在 netstat 输出中不显示主机,端口和用户名 (host, port or user)
当你不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。

同样可以加速输出,因为不用进行比对查询。

代码如下:

# netstat -an

如果只是不想让这三个名称中的一个被显示,使用以下命令
代码如下:

# netsat -a --numeric-ports
# netsat -a --numeric-hosts
# netsat -a --numeric-users

6. 持续输出 netstat 信息
netstat 将每隔一秒输出网络信息。
代码如下:

# netstat -c
 Active Internet connections (w/o servers)
 Proto Recv-Q Send-Q Local Address           Foreign Address         State
 tcp        0      0 ramesh-laptop.loc:36130 101-101-181-225.ama:www ESTABLISHED
 tcp        1      1 ramesh-laptop.loc:52564 101.11.169.230:www      CLOSING
 tcp        0      0 ramesh-laptop.loc:43758 server-101-101-43-2:www ESTABLISHED
 tcp        1      1 ramesh-laptop.loc:42367 101.101.34.101:www      CLOSING
 ^C

7. 显示系统不支持的地址族 (Address Families)
代码如下:

netstat --verbose

在输出的末尾,会有如下的信息
代码如下:

netstat: no support for `AF IPX' on this system.
netstat: no support for `AF AX25' on this system.
netstat: no support for `AF X25' on this system.
netstat: no support for `AF NETROM' on this system.

8. 显示核心路由信息 netstat -r
代码如下:

# 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 eth2
 link-local      *               255.255.0.0     U         0 0          0 eth2
 default         192.168.1.1     0.0.0.0         UG        0 0          0 eth2

注意: 使用 netstat -rn 显示数字格式,不查询主机名称。

9. 找出程序运行的端口
并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。
代码如下:

# netstat -ap | grep ssh
 tcp        1      0 dev-db:ssh           101.174.100.22:39213        CLOSE_WAIT  -
 tcp        1      0 dev-db:ssh           101.174.100.22:57643        CLOSE_WAIT  -

找出运行在指定端口的进程
代码如下:

# netstat -an | grep ':80'

10. 显示网络接口列表
代码如下:

# netstat -i
 Kernel Interface table
 Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
 eth0       1500 0         0      0      0 0             0      0      0      0 BMU
 eth2       1500 0     26196      0      0 0         26883      6      0      0 BMRU
 lo        16436 0         4      0      0 0             4      0      0      0 LRU

显示详细信息,像是 ifconfig 使用 netstat -ie:
代码如下:

# netstat -ie
 Kernel Interface table
 eth0      Link encap:Ethernet  HWaddr 00:10:40:11:11:11
 UP BROADCAST MULTICAST  MTU:1500  Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
 Memory:f6ae0000-f6b00000

11. IP和TCP分析
查看连接某服务端口最多的的IP地址
代码如下:

wss8848@ubuntu:~$ 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

TCP各种状态列表
代码如下:

wss8848@ubuntu:~$ netstat -nat |awk '{print $6}'
established)
Foreign
LISTEN
TIME_WAIT
ESTABLISHED
TIME_WAIT
SYN_SENT

先把状态全都取出来,然后使用uniq -c统计,之后再进行排序。
代码如下:

wss8848@ubuntu:~$ netstat -nat |awk '{print $6}'|sort|uniq -c
ESTABLISHED
FIN_WAIT1
Foreign
LAST_ACK
LISTEN
SYN_SENT
TIME_WAIT
established)

最后的命令如下:
代码如下:

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn

分析access.log获得访问前10位的ip地址
代码如下:

awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10

    
[2]如何备份恢复IIS?详细备份恢复IIS的步骤
    来源: 互联网  发布时间: 2013-12-24
Windows的IIS有一个非常“坑爹”的备份还原功能,和大部分备份还原不同的是,这个服务默认不支持不同电脑之间的备份还原,如果用户重装Windows的话,即使备份了IIS的相关文件,还原的时候还是提示“无效签名”,导致这个IIS无法恢复。

实际上,如果要在不同电脑之间(或者重装Windows)备份恢复IIS,需要在备份的时候输入密码,在还原的时候也输入密码,这样恢复才能正常,而默认是不输入密码则永远也无法成功恢复IIS配置,相信很多网站管理员都被微软这个坑爹的功能耍过。
如果你要重装系统,那么详细备份恢复IIS的步骤如下:

一、IIS的备份
1.在本地计算机上的 IIS 管理单元中,右键单击 Internet 信息服务下面的计算机图标。
2.选择“所有任务\备份/还原配置”选项。
3.点击“创建备份”按钮,在配置备份名称下输入你为备份起的名字
4.将“使用密码加密备份”勾选上(如果在做备份的时候,没有将“使用密码加密备份”勾选上,那么在重新安装系统后或者在另外一台计算机上还原时会提示"无效的签名")
5.输入密码,备份完成。
注:备份后的备份文件在 X:\WINDOWS\system32\inetsrv\MetaBack\ (X代表你安装系统的盘符)。

二、IIS的还原
1.将X:\WINDOWS\system32\inetsrv\MetaBack(X代表你安装系统的盘符)下的.sc0和.md0的两个备份的文件拷贝到新系统下的相同目录中。
2.在本地计算机上的 IIS 管理单元中,右键单击 Internet 信息服务下面的计算机图标。
3.选择“所有任务\备份/还原配”选项。
4.选中你的备份,点击还原,将出现一个对话框,提示“还原配置数据库操作非常耗时,它将清除所有当前设置,并导致所有internet服务停止。当操作完成后,IIS将重新启动这些服务。您确信要继续吗?”点是,然后弹出要求输入备份密码的对话框,输入完密码后,IIS备份就还原了。

    
[3]win2008 r2 安装sqlserver 2000问题的解决方法
    来源: 互联网  发布时间: 2013-12-24

1:点击安装,提示兼容问题,然后没有然后了··· 没有反应了

解决方法:直接运行  光盘\Microsoft SQL Server 2000 四合一\ENTERPRISE\X86\SETUP\SETUPSQL.EXE

2:安装到一半 提示  一般性网络错误

解决方法:把电脑的名字全部改成大写

3:因为上面报错了,所以还得卸载,卸载的时候,提示   无法找到安装日志文件 卸载过程将终止

解决方法,这个是在网上抄的

将Program files下的SQL安装目录删除(此处如果有重要的数据,请先备份)
C:\Program Files\Microsoft SQL Server\80\Tools。
C:\Program Files\Microsoft SQL Server\MSSQL。

注册表中的相关信息删除:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSDTC。
3。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\setup
删除ExceptionComponents

Windows 目录中的 Sqlstp.log 文件要删除,该文件列出了安装程序所执行的操作的详细信息,并包含安装期间遇到的所有错误。通过检查该文件,可以详细了解安装在什么地方失败、为什么失败。

4:安装完了之后,又提示 没有启动服务器服务

而且sqlserver2000 里面  就只有一个  启动器,就是我们平时见到的那个  开始,停止的玩意,其他的都没有

5:于是只要再次卸载,这次卸载还是很快的,我删除掉所有的  sql相关的文件夹, 再次来安装

直接运行 光盘\Microsoft SQL Server 2000 四合一\ENTERPRISE\X86\SETUP\SETUPSQL.EXE

一定要保证这里是勾选默认,不然的话,就表示你这里面,还有sql2000  没有卸载完,你就重复上面的悲剧吧··

6:如果挂起···

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
删除PendingFileRenameOperations

7:安装完毕,打sp4的补丁,然后记得要到管理里面,找到服务,打开 sqlserver agent 这个服务

8:将原来的数据库 拷贝到数据库的文件夹(系统的什么 northwind这些默认自带的数据库,就不要拷贝过来了)

然后进行附加,增加用户名····  请看这篇文章(http://www./article/40744.htm) 


另外,为了保证数据库的安全,我们做一个   数据库维护计划  每隔2天 ,备份一次, 并删除 2个星期前的备份

重新组织数据和索引页,每2天一次,发生在凌晨1点钟

然后每2天一次,备份数据库,发生在凌晨2点钟

把备份的数据库,备份到指定的文件夹,并且删除2个星期之前的备份数据库


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3