网络管理,程序管理

lsmod |grep bond0

ifconfig bond0 down 关闭bonding服务

rmmod bonding  删除 bonding 服务

lsmod |grep eth1000 查看  lsmod指令,会列出所有已载入系统的模块

rmmod  删除内核中的一模块

blob.png 查找网卡驱动e1000

rmmod e1000  删除网卡驱动

blob.png删除网卡驱动e1000板块

QQ图片20160907192610.png发现网络板块直接不见了

modprobe et1000 加载回网卡驱动

blob.png

blob.png重新加载回网卡驱动e1000

locate eth0.ko  查看网卡驱动的位置

blob.png

rpm -e kernel-2.6版本号 删除内核

uname -r 查看内核版本

blob.png

rpm -qi rpm 查看rpm信息

blob.png

yum clean all 清除yum缓存

blob.png安装包前清理下缓存,预防产生冲突。

动态路由的配置

yum -y install quagga 里面包含很多服务脚本(先挂载光盘再安装)

rpm -ql quagga 查看服务脚本

cd /etc/quagga/

cp ospfd.conf.sample ospfd.conf

service autofs status

./

conf t

router ospf

netstat命令

man netstat 可以用ss代替

ss 的性能更强

ss命令用法与netstat差不多

-t: tcp协议相关

netstat -t 只显示在运行的tcp

netstat -tn 只显示纯数字,

blob.png

-u: udp协议相关

netstat -tunl 只看监听状态

-tunla 全部状态都能看到

blob.png

-w: raw socket相关

-l: 处于监听状态

-a: 所有状态

-n: 以数字显示IP和端口;

-e:扩展格式

netstat -tunlape

-p: 显示相关进程及PID

blob.png

netstat -tunlap 显示全部端口使用状态

可以查看是否有多余没用的服务,没使用的可以删除,降低漏洞危险。

blob.png

netstat -rn 都可以查看路由表

-r: 显示内核路由表

-n: 数字格式

blob.png

netstat -i 可以查看主机网络状态

blob.png

netstat -I=eno16(网卡名)可以监听这个网卡

blob.png

watch -n1 'netstat -Ieth16(网卡名)'持续监控这个网卡的状态

blob.png

ifconfig -s 

ifconfig -s eno16(网卡名) 查看网卡状态

blob.png

blob.png

ip neigh 

blob.png路由

ip link 可以看数据链路层的数据

blob.png

恢复传统网卡命名方式(eth0,eth1)

vim /boot/grub2/grub.cfg

/linux16 查找关键字

net.ifnames=0

blob.png在这行的最后加上net.ifname=0

ip addr

ip addr change 1.1.1.1/24 添加地址 所加的地址都是临时性的,重启服务会消失

ip addr flush dev eth1 清理全部地址

ip addr del 3.3.3.3 dev eth0 指定删除3.3.3.3地址

blob.png

global: 全局可用 

link: 仅链接可用

host: 本机可用

systemctl restart network  重启网络服务7版本之后使用

blob.png

blob.pngservice network restart 指令效果一样

ss

-t: tcp协议相关

-u: udp协议相关

-w: 裸套接字相关

-x:unixsock相关

-l: listen状态的连接

-a: 所有

-n: 数字格式

-p: 相关的程序及PID

-e: 扩展的信息

-m:内存用量

-o:计时器信息

blob.png

ss -l 显示本地打开的所有端口

ss -pl 显示每个进程具体打开的socket

blob.png

ss -t -a 显示所有tcp socket

blob.png

ss -u -a 显示所有的UDP Socekt

ss -o state established '( dport = :ssh or sport = :ssh )' 显示所有已建立的ssh连接

ss -o state established '( dport = :http or sport = :http )' 显示所有已建立的HTTP连接

ss -s 列出当前socket详细信息端口

blob.png

网络配置为文件

IP、MASK、GW、DNS相关配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE

route-eth1

192.168.0.0/24 via 172.16.0.2

ADDRESS1=192.168.0.0

NETMAKS1=255.255.255.0

GATEWAY1=172.16.0.2

路由相关的配置文件:

/etc/sysconfig/network-scripts/route-IFACE

blob.png

/etc/sysconfig/network-scripts/ifcfg-IFACE:

ONBOOT:在系统引导时是否激活此设备

TYPE:接口类型;常见有的Ethernet, Bridge

UUID:设备的惟一标识

IPADDR:指明IP地址

NETMASK:子网掩码

GATEWAY: 默认网关

DNS1:第一个DNS服务器指向

DNS2:第二个DNS服务器指向

USERCTL:普通用户是否可控制此设备

PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcp server分配的dns服务器指向信息直接覆盖至/etc/resolv.conf文件中(如果要设置DNS,这里要=no,不然修改不成功)

blob.png

cat /etc/resolv.conf 可以查看DNS地址

blob.png

getent hosts 查看host文件

/etc/hosts

blob.png显示的内容跟配置文件一致

blob.png

CentOS 7网络属性配置

rhel6之前,网络接口使用连续号码命名:eth0、eth1等,当增加或删除网卡时,名称可能会发生变化

rhel7使用基于硬件,设备拓扑和设置类型命名:

(1) 网卡命名机制

systemd对网络设备的命名方式

(a) 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,例如eno1

(b) 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,例如ens1

(c) 如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0

(d) 如果用户显式启动,也可根据MAC地址进行命名,enx2387a1dc56

(e) 上述均不可用时,则使用传统命名机制

(2) 名称组成格式

en: Ethernet 有线局域网

wl: wlan无线局域网

ww: wwan无线广域网

名称类型:

o<index>: 集成设备的设备索引号

s<slot>: 扩展槽的索引号

x<MAC>: 基于MAC地址的命名

p<bus>s<slot>: enp2s1

7版本之后可以使用nmcli

配置工具nmcli

nmcli connection show 查看现在链接的状态

blob.png还能查询到所用网卡的UUID,可以方便配置

nmcli con reload 重启网络服务

nmcli connection add con-name home type ethernet ifname eth1 autoconnect yes ip4 10.1.162.20/16 gw4 10.1.0.1 生成指定的配置文件

blob.png

blob.png发现会生成一个配置文件

nmcli connection up home  home配置文件生效 定义不同网段的配置文件(同一时间只能绑定一个配置)

nmcli connection delete home 删除配置文件

blob.png

nmcli connection show –active 只显示活动的链接

blob.png

nmcli connection show eth0  显示指定网卡的详细链接信息

blob.png

nmcli device show 显示全部网卡的信息

blob.png

nmcli device show eth0 显示指定网卡的信息

blob.png

nmcli connection modify +修改信息  修改配置信息

nmcli connection del default 删除链接

nmcli connection modify +ipv4.addresses 5.5.5.5/24  添加多个IP

nmcli connection down home

nmcli connection up home 

ip addr 查看具体信息

nmcli device disconnect eth0 关闭状态

blob.png

nmcli device connect eth0 激活状态

blob.png

nmcli connection modify home office ipv4.dns 8.8.8.8 增加dns文件

动态配置

DEVICE=ethXHWADDR=0:02:8A:A6:30:45 BOOTPROTO=dhcpONBOOT=yes Type=Ethernet

静态配置

DEVICE=ethXHWADDR=0:02:8A:A6:30:45 

IPADDR=192.168.0.123 

NETMASK=255.255.255.0 

GATEWAY=192.168.0.254 

ONBOOT=yes

Type=Ethernet

nmcli connection reload 重新加载

blob.png

网络组

网络组:是将多个网卡聚合在一起

方法,从二实现从而实现冗错和提高吞吐量

网络组不同于旧版中bonding技术,提供更好的性能和扩展性

网络组由内核驱动和teamd守护进程实现.

多种方式runner

broadcast

roundrobin

activebackup

loadbalance

lacp(implements the 802.3ad Link Aggregation Control Protocol)

启动网络组不会自动启动网络组中的prot接口

启动网络prot接口不会自动启动网络组接口

禁用网络组接口会自动禁用自动禁用prot接口

没有port接口的网络组接口可以启动静态IP连接

启用DHCP连接时,没有port接口的网络组会等待port接口的加入

格式:'{"runner": {"name": "METHOD"}}'

METHOD可以是broadcast,roundrobin,

activebackup,loadbalance, lacp

nmcli connection add con-name team0 type team ifname team0 config '{"runner":{"name":"activebackup"}}'

nmcli connection modify team0 ipv4.addresses 10.1.252.213/16    设置IP地址

nmcli connection modify team0 ipv4.method manual                设置为手动设置,不会自动获取IP

nmcli connection modify team0 ipv4.dns 8.8.8,8                  添加DNS地址

nmcli connection add con-name team0-ech0 type team-slave ifname eth0 master team0

                                                                添加成员eth0

nmcli connection add con-name team0-ech1 type team-slave ifname eth1 master team0

                                                                添加成员eth1

nmcli connection up team0 启动网络组

nmcli connection up team0-eth0

blob.png

nmcli connection up team0-eth1

blob.png

nmcli connection show

blob.png

teamdctl team0 state

blob.png

watch -n1 'netstat -Ieth0'

watch -n1 'netstat -Ieth1'

blob.png

cd /etc/sysconfig/network-scripts

blob.png会自动生成相应的配置文件

更改主机名字

cat /etc/hostname

blob.png

..bashrc

hostnamectl set-hostname centos8.localdomain (不用重新启动服务就能立刻生效)

blob.png立即生效

yum install ftp

yum install lftp 

ftp 10.1.0.1

pwd 显示在ftp的目录

lcd 才是本机所在的目录

lcd /root 本机切换路径

! +指令,表示在本机操作命令

get + “目标名称” 下载目标文件到本机

passive mode on/off 主动模式和被动模式 (主动模式20端口,被动模式大数字端口)

bye 结束退出

lftp 10.1.0.1

put 上传

mput 批量上传

get 下载

mget 同时下载多个文件

支持显示history记录

lftpget ftp://10.1.0.1/pub/ISOs/Centos-6.7-x86_64-bin-DVD1.iso 非交换操作,只需知道文件所在目录和名字,直接在本机下载文件。

wget (非交换操作)不仅能下载ftp资源,http资源都能下载

wget http://10.1.0.1/pub/ISOs/Centos-6.7-x86_64-bin-DVD1.iso -o /testdir/

-q: 静默模式

-c: 断点续传

-O: 保存位置

–limit-rates=: 指定传输速率

links 

yum install links 浏览器

links 10.1.0.1 –dump 纯文本显示

links 10.1.0.1 –source 查看网页源代码

curl -I 10.1.0.1 查看网页源代码

进程慨念

内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等

进程优先级:(优先级比越高,CPU资源优先使用)

系统优先级:数字越小,优先级越高

0-139(CentOS4,5)

各有140个运行队列和过期队列

0-98,99(CenOS6)

实时优先级:99-0:值最大优先级最高

realtime 优先级99-0 ,数字越大优先级别越高

nice -20-0-10  负数优先级比正数高

进程运行是按照队列的形式,进行时间调换(当正在运行的队列里所有的进程都去了过期队列,过期队列就会变成新的运行队列,旧的运行队列变成过期队列)

进程内存:

Page Frame:以页框为单位,用存储页面数据,存储Page 4k

LRU:Least Recently Used 近期最少使用算法,释放内存物理地址空间和线性地址空间 (swap虚拟内存)

MMU:Memory Management Unit负责转换线性和物理地址

Linux内核:抢占式多任务

进程类型:

守护进程: daemon,在系统引导过程中启动的进程,和终端无关进程

前台进程:跟终端相关,通过终端启动的进程

注意:两者可相互转化

进程状态:

运行态:running

就绪态:ready

睡眠态:

可中断:interruptable

不可中断:uninterruptable

停止态:stopped,暂停于内存中,但不会被调度,除非手动启动

僵死态:zombie,结束进程,父进程结束前,子进程不关闭

进程的分类:

CPU:密集型,非交互

IO:密集型,交互

pstree -p 显示进程树(p带上进程编号)

blob.png

ps:process state

ps 显示当前终端执行的进程

blob.png

ps a 显示所有终端执行的进程

blob.png

ps -A = ps -e

blob.png

支持三种选项

ps x 显示与终端无关的进程

blob.png

ps ax 显示所有进程 = ps -e

blob.png

ps axu 显示的信息更加详细

blob.png

ps axuf f是显示父进程

blob.png

ps axo pid,comm,%cpu,nice,ruser,euser  可以选择性显示

blob.png

ps -eFH

-F: 显示更完整格式的进程信息

-H: 以进程层级格式显示进程相关信息

blob.png

ruser 真正的用户

euser 有效用户

ps xao state  state显示进程状态

blob.png

R:running  运行态 

S: interruptablesleeping  可中断睡眠

D: uninterruptable sleeping 不可终端睡眠

T: stopped  停止态

Z: zombie 僵死态

+: 前台进程

l: 多线程进程

N:低优先级进程

<: 高优先级进程

s: session leader,会话(子进程)发起者

ps axo pri,psr

blob.png

ps axo pri,rtprio 

blob.png

pri: priority,优先级

psr: processor, CPU编号

rtprio: 实时优先级

ps aux |grep bash 查看有bash的进程

blob.png

pgrep

pgrep bash

blob.png

-u uid: effective user,生效者

pgrep -u zczx

blob.png

-U uid: real user,真正发起运行命令者

pgrep -U zczx

-t terminal: 与指定终端相关的进程

pgrep -t pts/0

blob.png

-l: 显示进程名

pgrep -t pts/0 -l

blob.png

-a: 显示完整格式的进程名

pgrep -t pts/0 -a

blob.png

-P pid: 显示指定进程的子进程 

pgrep -P 1 -a

blob.png

pidof bash 按照确切名字

blob.png

uptime 

显示当前时间,系统已启动的时间、当前上线人数,系统平均负载(1、5、10分钟的平均负载,一般不会超过1)

top 动态观察状态

blob.png

us:用户空间

sy:内核空间

ni:调整nice时间

id:空闲

wa:等待IO时间

hi:硬中断

si:软中断(模式切换)

st:虚拟机偷走的时间

排序:

P:以占据的CPU百分比,%CPU

M:占据内存百分比,%MEM

T:累积占据CPU时长,TIME+

首部信息显示:

uptime信息:l命令

tasks及cpu信息:t命令

cpu分别显示:1 (数字)

memory信息:m命令 查看内存

退出命令:q

修改刷新时间间隔:s 

终止指定进程:k  +进程编号使用

保存文件:W

top -d 5 5秒一次刷新

top -b 自动翻屏

top -n 3 翻3次结束

hotop

vim /etc/yum.repos.d/base.repo

[epel]

baseurl=http://10.1.0.1/fredora-epel/7/x86-64/

yum install htop

vmstat 查看虚拟内存

blob.png

vmstat 1 10  一秒一次,刷10次

blob.png

vmstat -s 内存统计

blob.png

内存工具

pmap +进程编号 可以查看进程使用内存情况

cat /proc/进程编号 

blob.png

系统加监控工具

glances

yum -y glances

可以查看网络资源使用的情况

glances -s -B 10.1.162.30

glances -c 10.1.162.30

dstat

yum -y install dstat

dstat 1 10

原创文章,作者:swzczx,如若转载,请注明出处:http://www.178linux.com/44447

(0)
swzczxswzczx
上一篇 2016-09-11
下一篇 2016-09-11

相关推荐