Linux中常见命令:
ping命令:可测试网络是否通畅。ping命令使用的是网络层的ICMP协议,但从命令本身来看是属于第七层应用层。
traceroute:电脑网络工具,可显示数据包在IP网络经过的路由器的IP地址。
iostat命令可以查看磁盘IO状态。
free命令查看的是内存占用情况,可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。
uptime命令:能够打印系统总共运行了多长时间和系统的平均负载。uptime可以显示的信息依次为:现在时间,
系统已经运行了多长时间,目前有多少个登录用户,系统在过去1,5,15分钟内的平均负载。
top命令:性能分析工具,能够实时显示系统中各个进程的资源占用情况,top命令用于显示当前进程的状况。
uptime -v 指定版本信息
lsof命令:一个列出当前系统的打开文件工具,Linux一切皆文件,每行显示一个打开的文件,若不指定条件默认
将显示进程的所有文件。
mount命令:可以查看磁盘的挂载状态。
du:统计目录(或文件)所占磁盘空间的大小。
df:用于显示文件系统的磁盘使用情况。
vmstat:命令报告关于内核线程,虚拟内存,磁盘陷阱和CPU活动的统计信息。
getconf PAGE_SIZE查看Linux内存页,一般为4KB。
mkdir -p 表示创建目录A并创建目录B
usermod -u/-g 修改用户id和组id
TOP参数:监控系统负载工具:
s:修改进程刷新时间间隔
m:根据内存占有率进行排序
c:根据CPU占有率进行排序
u:后面跟用户名
大写P:结果按CPU占用降序排序
大写M:按内存占有降序排序
PS参数:进程管理
a 关于当前shell运行的所有进程
X | -A 所有进程,X显示状态,-A不显示
f 显示进程从属关系
e 显示进程调用环境工具的详细信息
l 长列表显示进程的详细信息
u 显示进程的用户信息
-a 显示shell前台运行命令的进程
ps ax --sort = %mem 按照内存负载排序
Linux下ps -ef 和 ps aux的区别:
ps aux 是用BSD的格式来显示Java这个进程。
ps -ef 是用标准格式显示Java进程
find命令:
find命令删除指定大小的文件:
find /var/mail/ -size +50M -exec rm -fr {} \;
find命令查找最近修改的当前目录下的.php文件:
find . -name '*.php' -mtime 0
查找指定大小和类型
find /etc -size +1M -type f
找出并删除七天前的文件
find /tmp/ -type f -mtime +7 -print -exec rm -f {} \;
-exec 指出要执行后面的系统命令;\结束符
tcpdump抓包工具:
tcpdump可以将网络层中的数据包的头完全截获下来提供分析。
抓包存取:
tcpdump -i eth1 host 172.16.7.206 and port 80 -w /tmp/
网关,DNS,selinux:
使用genenforce查看selinux状态,/etc/sysconfig/selinux进行配置
修改网关:
1.更改配置文件: /etc/sysconfig/network-scripts/ifcfg-eth0
2.命令: route add default gw ... dev eth0
修改DNS:
vim /etc/resolv.conf
shell中的特殊字符:
$0 这个程式的执行名字
$n 这个程式的第n个参数值,n=1..9
$* 这个程式的所有参数,此选项参数可超过9个。
$# 这个程式的参数个数
$$ 这个程式的PID(脚本运行的当前进程ID号)
$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)
$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)
$- 显示shell使用的当前选项,与set命令功能相同
$@ 跟$*类似,但是可以当作数组用
iptables:
iptables是一款开放源代码完全自由的基于包过滤的防火墙工具,可以对流入流出服务器的数据包进行精细控制,主要
工作在OSI七层中的二、三、四层。iptables运用内核的layer7模块。
iptables的四表五链:
Filter表:过滤数据包
NAT表:用于网络地址转换(IP、端口)
Mangle表:修改数据包的服务类型、TTL、并且可以配置路由实现QOS
Raw表:决定数据包是否被状态跟踪机制处理
INPUT链——进来的数据包应用此规则链中的规则
OUTPUT链——外出的数据包应用此规则链中的规则
FORWARD链——转发数据包时应用此规则链中的规则
PREROUTING链——对数据包作路由选择前应用此链中的规则
POSTROUTING链——对数据包作路由选择后应用此链中的规则
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP
-j 指定ACCEPT接受,或者DROP不接受
--dport目标端口,当数据从外部进入服务器为目标端口,反之,数据从服务器出去,使用--sport
nginx为啥叫做反向代理服务器?:
反向代理方式是指以代理服务器来接受客户端的连接请求,然后将请求转发到网络上的web服务器(apache,nginx等),
并将从web服务器上得到的结果返回给请求连接的客户端,此时代理服务器对外就表现为一个服务器。而且nginx作为
反向代理服务器可以根据用户请求的内容转发到不同的后端服务器。
正向代理:
一个标准的代理缓冲器用于缓冲静态网页,当页面被再次访问时,浏览器将直接从本地代理服务器获取请求数据
而不向原web站点请求数据,只需在每一个内部主机指明IP地址和端口号,客户端上网时,每次交给代理服务器即可。
memcache:
1.由于网络的高并发读写需求,传统的关系型数据库出现瓶颈。需要对数据库的高并发读写,对海量数据的处理。
通常把查询的结果保存到memcache中,下次访问时直接从memcache中读取,而不再进行数据库的查询操作,
这样很大程度减轻了数据库的负担。
redis和memcache的区别:
1.redis中,并不是所有的数据都一直存储在内存中的,这是和memcache的最大区别。
2.redis多方面具备数据库的特征&#