Linux-网络配置和进程管理
Posted 小企鹅推雪球!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux-网络配置和进程管理相关的知识,希望对你有一定的参考价值。
文章目录
Linux的网络配置
Linux自动获取网络配置
- 自动获取网络配置比较简单,但是每次启动Linux后,分配的ip地址可能不一样,所有,自动获取网络配置不适合做服务器
第一步 配置固定的ip地址
- 查询虚拟机的网络配置:
vim /etc/sysconfig/network-scripts/ifcfg-eth0
- 这是我的虚拟机的网络文件
EVICE=eth0
HWADDR=00:0C:29:2A:D4:D1
TYPE=Ethernet
UUID=7a31255a-e65d-4e63-988e-7736d02d22cf
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.91.1
NETMASK=255.255.255.0
GATEWAY=192.168.91.2
DNS1=192.168.91.1
ONBOOT=yes
,这选项默认是 no,是关于网络配置的开关,需要设置为yesBOOTPROTO=static
.设置为static设置为静态的,表示会使用自定义的网络配置信息·IPADDR=192.168.91.0
:这是我自己配置的虚拟机网络ip信息,等我们配置网络信息的时候,会按照这个ip信息配置虚拟机的网络,这个可以自己配置GATEWAY=192.168.91.2
表示配置的网络网关地址,然后也是自己设置的DNS1=192.168.91.1
代表域名解析器,是自己的设置的,域名解析器,需要配置的信息和网关一致
如果希望配置生效使用reboot
指令重新启动虚拟机后,在终端中再使用service network restart
//重新启动网络服务
第二步:修改主机名
- 查看当前主机名:
hostname
- 修改linux的主机映射文件:
vim /etc/sysconfig/network
文件中的内容
NETWORKING=yes
HOSTNAME=CentOS // 这是我的主机名,是可以自己设置的,但是主机名称不要有“_”下划线 - 修改 /etc/hosts 增加ip和主机的映射
192.168.91.1 CentOS
- 然后,重启虚拟机,配置生效
- 如果希望windows也可以通过主机名来连接CentOS,进入C:\\Windows\\System32\\drivers\\etc\\hosts
- 最后在Windows 中ping一下
C:\\Users\\asus>ping 192.168.91.1
正在 Ping 192.168.91.1 具有 32 字节的数据:
来自 192.168.91.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.91.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.91.1 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.91.1 的回复: 字节=32 时间<1ms TTL=64
192.168.91.1 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 0ms,最长 = 0ms,平均 = 0ms
Linux进程管理
- 在Linux中,每个执行的程序(代码)都称为一个进程,每一个进程分配一个ID号
- 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程
- 每个进程都可能以两种方式存在的,前台和后台,
- 前台进程就是用户目前的屏幕上可以进行操作
- 后台进程则是实际在操作,但是由于屏幕上无法看到的进程
- 一般系统的服务器都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束
显示系统执行的进程
- ps -aux:显示所有的进程
[ryx@CentOS 桌面]$ ps -aux
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19356 1560 ? Ss 02:50 0:01 /sbin/init
root 2 0.0 0.0 0 0 ? S 02:50 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 02:50 0:00 [migration/0]
root 4 0.0 0.0 0 0 ? S 02:50 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S 02:50 0:00 [stopper/0]
root 6 0.0 0.0 0 0 ? S 02:50 0:00 [watchdog/0]
root 7 0.0 0.0 0 0 ? S 02:50 0:00 [migration/1]
root 8 0.0 0.0 0 0 ? S 02:50 0:00 [stopper/1]
root 9 0.0 0.0 0 0 ? S 02:50 0:00 [ksoftirqd/1]
root 10 0.0 0.0 0 0 ? S 02:50 0:00 [watchdog/1]
- ps -aux | grep sshd //查看sshd进程,sshd是服务器守护进程
[ryx@CentOS 桌面]$ ps -aux |grep sshd
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 2344 0.0 0.0 66236 1168 ? Ss 02:51 0:00 /usr/sbin/sshd
[ryx@CentOS 桌面]$ 0 0.0 103332 856 pts/0 S+ 21:53 0:00 grep sshd
[ryx@CentO
- ps -aux | grep xxx :查看虚拟机有没有xxx 服务
指令说明
- System V :展示风格
- USER:用户名称
- PID:进程号
- %CPU:进程占用CPU的百分比
- %MEM:进程占用物理内存的百分比
- VSZ:进程占用的虚拟内存的大小(单位:KB)
- RSS:进程占用的物理内存大小(单位:KB)
- TTY:终端名称,缩写
- STAT:进程状态,
- 常见的进程状态
- S:表示进程处于睡眠,
- s-表示该进程是会话的先导进程
- N-表示进程拥有比普通优先级更低的优先级
- R-正在运行
- D-短期等待
- Z-僵死的进程
- T-被跟踪或者被停止等等
- STARTED:进程的启动时间
- TIME:CPU时间,即进程使用CPU的总时间
- COMMAND:启动进程所用命令和参数,如果过长会被截断显示
终止进程 kill和killall
- 终止进程介绍:如果是某个进程执行一半需要停止时,或是已经消耗了很大的系统资源时,可以考停止该进程,使用kill命令来完成停止进程的任务
- kill和killall语法:
- kill [选项] 进程号(功能描述:通过进程号杀死进程 -9 表示强制终止)
- killall 进程名称 (表示:通过进程名称杀死进程,也支持使用通配符,使用killall结束进程系统因为负载过大的时很有用)
- 常用选项:-9 表示强迫进程立即停止
- 应用案例
- 终止多个gedit编辑器:
killall gedit
- 强制杀掉一个终端;对于bash:kill -9 对应的bash的进程号
- 终止多个gedit编辑器:
查看进程数 pstree
- 基本语法:pstree [选项] 可以更加直观的查看进程信息
- 常用选项
- -p :显示进程的PID,PID是进程的标识符
- -u :显示进程所属用户
- 应用案例:
- 用树状的形式显示进程的PID:
Pstree -p
- 用树状的形式显示进程的用户id:
Pstree -u
或Pstree -pu
- 用树状的形式显示进程的PID:
服务Service管理
- 服务Service的本质就是进程,但是是运行在后台的,通过会监听某个端口,等待其他程序的请求,比如(mysql,sshd,防火墙),因此我们又称之为守护进程
- Service 管理指令
- service 服务名 [start | stop | restart | reload | status ]
- 注意:在CentOS7.0后,不再使用service ,而是systemctl
[root@CentOS ~]# chkconfig --list
NetworkManager 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
abrt-ccpp 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭
abrtd 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭
acpid 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
atd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
auditd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
autofs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
blk-availability 0:关闭 1:启用 2:启用 3:启用 4:启用 5:启用 6:关闭
bluetooth 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
certmonger 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
cpuspeed 0:关闭 1:启用 2:启用 3:启用 4:启用 5:启用 6:关闭
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
- 关闭或者启动防火墙后,立即生效,telnet测试,某个端口即可
Service iptables stop
和service iptables start
设置的服务只是临时生效,当重启系统后,还是回归以前对服务的设置- 如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令
chkconfig 指令
- 通过chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭
- chkconfig基本语法:
- 查看服务:chkconfig --list | grep xxx
- chkconfig --level 5 服务名 on/off [可以指定某个服务,各个运行级别,开启或关闭]
- sshd 服务在1 运行级别 off
- chkconfig --level 1 sshd off/on
- chkconfig 服务名 on/off
- iptables 彻底关闭服务进程,
chkconfig iptables off [不管是哪个级别都会被关闭]
- chkconfig 指令案例
- 显示当前系统所有服务的各个级别的运行状态
chkconfig --list
- 查看sshd服务的运行状态
chkconfig sshd --list
或chkconfig --list | grep sshd
- 将sshd服务在运行级别5下设置为不自动启动
chkconfig --level 5 sshd off
- 当运行级别为5时,关闭防火墙
chkconfig --level 5 iptables off
- 在所有运行级别下,关闭防火墙
chkconfig iptables off
- 在所有运行级别下,开启防火墙
chkconfig iptables on
- 显示当前系统所有服务的各个级别的运行状态
- 注意:chkconfig重新设置服务后自启动或关闭,重启机器就会按照设置的状态运行
动态监控进程
- top与ps命令相似,都是用来显示正在执行的进程
- top与pps最大的不同之处,在于top在执行一段时间可以更新正在运行的进程,默认时每3秒变化一次
- top基本语法
- top -d 秒数 :指定top命令每隔几秒更新,默认是3秒,在top命令的交互模式中,可以执行的命令
- top -i;使top不显示任何限制或者僵死进程
- top -p :通过指定监控进程ID来仅仅监控某个进程的状态
- top交互操作指令
- p 以cpu使用了排序,默认就是此
- M ;以内存的使用率排序
- N:以PID排序
- q;退出top
- top应用实例
- 监视特定用户:在终端输入 top ,按回车,查看执行进程,再输入 u 回车,再输入用户名
- 终止指定的进程:终端输入 top ,按回车,查看执行的进程,输入 k 回车,再输入要结束的进程的ID号
- 指定系统每隔10秒更新一次;top -d 10
监控网络状态
- 查看系统网络的情况:netstat
- 基本语法: netstar [选项]
- 常用选项:
- -an 按照一定属性排列输出
- -p ;显示哪个进程在调用
- 应用案例:
- 查看服务名为 sshd 的服务信息
netstat -anp | grep sshd
- 查看当前系统有哪些端口在被监听
netstat -tlnp
- 查看服务名为 sshd 的服务信息
rpm和yum安装
- rpm使用于互联网下载包的打包以及安装工具,包含在某些Linux系统中,
- rpm生成具有.RPM(RedHat软件包管理工具的缩写)扩展名的文件,类似于windows下面的setup.exe
- rmp常用指令
- rpm -qa :查询所有安装的rmp软件包
- rpm -ql 软件包名:查询软件包中的文件
- rpm -q 软件包名;查询软件包是否安装
- rpm -qf 文件全路径名称 :查询文件所属的软件包
- rpm -qi 软件包名:查询软件包信息
卸载rpm包
- 基本语法:rpm -e RPM包的名称
- 删除firefox软件包;
- 如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息:
- 例如;rpm -e foo ,如果我们就是要删除 foo 这个 rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一般不推荐这样做,因为依赖于该软件包的程序可能无法运行
安装rpm包
- 基本语法;rpm -vih rpm包全路径名称
- 常用选项
- i = install 安装
- v = verbose 提示
- h = hash 进度条
- 很多的 rpm 包,就在我们的 centos 安装的镜像文件中
yum的使用
- yum是一个shell软件包管理器
- yum基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装
- yum还可以自动处理依赖关系,并且一次安装所需的所有依赖的软件包
- yum的基本指令
- 查询yum服务器是否有需要安装的软件:
yum list | grep xx软件列表
- 安装指定的yum包:yum install xxx下安装
- 查询yum服务器是否有需要安装的软件:
- yum案例
- 使用yum的方式安装firefox
yum install firefox // 会自动下载适合虚拟机的firefox最新版本
- 使用yum的方式安装firefox
以上是关于Linux-网络配置和进程管理的主要内容,如果未能解决你的问题,请参考以下文章
Linux 学习笔记网络配置进程管理rpm 包的管理和 yum 介绍
Linux 学习笔记网络配置进程管理rpm 包的管理和 yum 介绍
大数据学习之_01_Linux学习_02_组管理和权限管理+定时任务调度+linux磁盘分区挂载+linux的网络配置+进程管理(重点)+软件包管理+大厂面试题+感悟分享+资料附录