接上段 (一)Linux实操之——权限、任务调度、磁盘分区
4.网络配置
4.1 NAT模式的网络配置
目前我们采用的网络配置是NAT模式。
windows下cmd通过 ipconfig 命令可以得到本机的网络配置。
linux下通过 ifconfig 可得到虚拟机的网络配置
在windows系统中运行着虚拟机中的linux系统,那么两个系统是怎么通信的呢?
实际上windows系统与本机的linux的通信是通过 VMnet8的虚拟网卡来进行的,两者形成网络,192.168.177.128 和192.168.177.1 是该网络下的两个ip地址。
那么本机是怎么和其他机器通信的呢?通过上面的图可以看出,本机的真实网卡配置的本机的真实ip地址,即本机在局域网内显示的ip,本机(ip:192.168.1.100)和同一内网内的其他机器(ip:192.168.7.101)之间可以相互ping通,共同构成了局域网。
那么本机是怎么访问百度来查询资料的呢?访问外网绕不开网关,同一局域网是通过网关来访问Internet的。linux访问外网是通过linux的ip(ip:192.168.177.128 )通过VMnet8虚拟网卡(ip:192.168.177.1)来借用真实网卡的ip(ip:192.168.1.100)来访问的。
4.2 Linux网络环境的配置方法
4.2.1 自动获取
这样在每次linux 启动后会自动获取ip,这种方式不适用作为服务器,因为每次自动获取的 ip 地址可能不一样,而我们的服务器ip是需要固定的。
4.2.2 设置指定的ip
这种方式不难理解,我们在公司里也要设置和公司内网一致的固定ip。这里我们直接修改配置文件。
vim /etc/sysconfig/network-scripts/ifcfg-eth0
增加ip配置
修改后一定要重启服务才能生效
service network restart #重启网络服务 reboot #重启系统
5.进程管理
5.1 Linux中的进程介绍
- 在 LINUX 中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个 ID 号。
- 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如 www 服务器。
- 每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
- 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束。
5.2 查看系统执行的进程 —— ps
语法:
ps (选项)
由于ps命令能够支持的系统类型相当的多,所以选项多的离谱,这里介绍几项常用的,更多可到 ps命令 查看;另外,ps 命令有两种不同的语法风格 —— BSD 与 UNIX 两种风格,两者的区别在于BSD 格式的参数前面不加 -,UNIX/LINUX 格式 —— 参数前面通常要加 -,两种风格显示的效果可能不同,如ps aux 与 ps -aux 是不同的,例如 -u 参数表示打印进程的 uid,而参数 u 表示显示进程的详细信息。使用时要注意。
- ps -a: 显示当前终端的所有进程信息
- ps -u: 以用户的格式显示进程信息
- ps -x: 显示后台进程运行的参数
结果参数:
- USER:用户名称
- PID:进程号
- %CPU:进程占用 CPU 的百分比
- %MEM:进程占用物理内存的百分比
- VSZ:进程占用的虚拟内存大小(单位:KB)
- RSS:进程占用的物理内存大小(单位:KB)
- TT:终端名称,缩写 .
- STAT:进程状态,其中 S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
- STARTED:进程的启动时间
- TIME:CPU 时间,即进程使用 CPU 的总时间
- COMMAND:启动进程所用的命令和参数,如果过长会被截断显示
5.3 ps命令使用示例
(1)以全格式显示当前所有的进程,查看进程的父进程。
命令解释:ps -ef 是以全格式显示当前所有的进程
命令参数: -e: 显示所有进程;-f :全格式。
结果参数:
- UID:用户 ID
- PID:进程 ID
- PPID:父进程 ID
- C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算,执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高
- STIME:进程启动的时间
- TTY:完整的终端名称
- TIME:CPU 时间
- CMD:启动进程所用的命令和参数
(2)查看 sshd 进程的父进程号
5.4 终止进程 ——kill & killall
5.4.1 命令介绍
若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用 kill 命令来完成此项任务。
命令语法:
kill [选项] 进程号 #通过进程号杀死进程 killall 进程名称 #通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用
选项:
- -a:当处理当前进程时,不限制命令名和进程号的对应关系;
- -l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;
- -p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;
- -s <信息名称或编号>:指定要送出的信息;
- -u:指定用户;
- -9 :表示强迫进程立即停止。
5.4.2 kill命令使用
(1)踢掉某个非法登录用户
(2)终止远程登录服务 sshd, 在适当时候再次重启 sshd 服务
(3)终止多个 gedit 编辑器 ( killall , 通过进程名称来终止进程)
(4)强制杀掉一个终端 (-9: 强制终止)
5.5 查看进程树
语法:
pstree [选项]
选项:
- -p :显示进程的 PID
- -u :显示进程的所属用户
6.服务管理
6.1 服务管理介绍
服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如(mysql,sshd,防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。
语法:
service 服务名 start|stop|restart|reload|status
需要注意的是:在Centos7.0后不再使用service,而是systemctl。
查看当前防火墙的状况,关闭防火墙和重启防火墙。
注意:这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。 如果希望设置某个服务自启动或者关闭永久生效,要使用chkconfig指令。
6.2 查看服务名
查看服务有两种方式,如下:
方式一:使用setup,然后选择系统服务,就可以看到了。
方式二:/etc/init.d/服务名称
6.3 服务的运行级别
如果不小心将默认的运行级别设置成0或7,可通过进入单用户模式,修改成正常来恢复。
6.4 chkconfig指令
通过chkconfig命令可以给每个服务的各个运行级别设置自启动、关闭。
语法:
chkconfig --list #查看所有服务 chkconfig --list | grep 服务名 #查看某服务情况 chkconfig 服务名 --list #查看某服务情况 chkconfig --level 5 服务名 on/off #设置某服务在运行级别为5的情况下开启或关闭
7.组管理
7.1 组的介绍
在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者、所在组、其它组的概念。
- 所有者
- 所在组
- 其它组
- 改变用户所在的组
7.2 文件/目录所有者
7.2.1 创建
初始情况下,创建该文件/目录的即为该文件/目录的所有者。
创建组boss,添加用户feng,通过feng来创建文件,查看文件的用户和组信息。
7.2.2 更改文件所属用户/组
语法:
chown username file #更改文件所属用户 chgrp groupname file #更改文件所属组
这个之前介绍过,不再赘述。
7.3 其他组
除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组.
7.4 改变用户所属的组
用 root 的管理权限可以改变某个用户所在的组。
语法:
usermod -g newgroup usernmae
8. YUM
8.1 yum介绍
yum是一个shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。使用yum的前提是可以联网。
语法:
yum list | grep softwarename #查询yum服务器是否有需要安装的软件 yum install softwarename #安装指定的yum包
8.2 yum使用
对系统中firefox软件卸载后,再通过yum安装。
(1)查看一下yum服务器是否存在firefox的rpm
(2)有的话,先删除系统的firefox
(3)用yum重新安装