Linux学习:第四天

目录

网络配置

设置hosts映射

主机名解析过程分析(Hosts、DNS)

进程管理

终止进程

进程树pstree

service服务管理

chkconfig指令 

systemctl管理指令

打开或者关闭指定端口

netstat监控网络状况


网络配置

原理图如下:

 ipconfig指令:查看Windows环境中VMnet8网络配置

ifconfig指令:查看linux环境中的网络配置

ping指令:测试主机之间网络连通性,测试当前服务器是否可以连接目的主机。

可以自己来配置网络环境:可以设置自动获取ip地址,这样每次登录机器,机器的ip地址都是不一样的,这样会对别人找到自己产生麻烦。所以这时我们可以指定ip地址,方式如下:

vi /etc/sysconfig/network-scripts/ifcfg-ens33进入文件:

ifcfg-ens33 文件说明

DEVICE=eth0                                                        #接口名(设备,网卡) HWADDR=00:0C:2x:6x:0x:xx                                                        #MAC 地址

TYPE=Ethernet                                                        #网络类型(通常是 Ethemet) UUID=926a57ba-92c6-4231-bacb-f27e5e6a9f44                                  #随机 id

#系统启动的时候网络接口是否有效(yes/no) ONBOOT=yes

# IP 的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配 IP|BOOTP 协议|DHCP 协议)

BOOTPROTO=static #IP 地址

IPADDR=192.168.200.130

#网关GATEWAY=192.168.200.2

#域名解析器DNS1=192.168.200.2

hostname:查看主机名

vim /etc/hostname:修改主机名

设置hosts映射

hosts是一个文本文件,用来记录 IP Hostname(主机名)的映射关系

  • windows:在 C:\Windows\System32\drivers\etc\hosts 文件指定即可
  • linux:在 /etc/hosts 文件 指定

主机名解析过程分析(Hosts、DNS)

DNS,就是 Domain Name System 的缩写,翻译过来就是域名系统,是互联网上作为域名和 IP 地址相互映射的一个分布式数据库

如下是用户在浏览器中输入了一个网址

  1. 浏览器先检查浏览器缓存中有没有该域名解析 IP 地址,有就先调用这个 IP 完成解析;如果没有,就检查 DNS 解析器缓存,如果有直接返回 IP 完成解析。这两个缓存,可以理解为 本地解析器缓存
  2. 一般来说,当电脑第一次成功访问某一网站后,在一定时间内,浏览器或操作系统会缓存他的 IP 地址(DNS 解析记录).如
    1. 在 cmd 窗口中输入ipconfig /displaydns       //DNS 域名解析缓存   
    2. ipconfig /flushdns                  //手动清理 dns 缓存

  3. 如果本地解析器缓存没有找到对应映射,检查系统中 hosts 文件中有没有配置对应的域名 IP 映射,如果有,则完成解析并返回。
  4. 如果 本地 DNS 解析器缓存 和 hosts 文件 中均没有找到对应的 IP,则到域名服务 DNS 进行解析域

思考:如果黑客在终端窗口将ip地址对应的网站映射修改了,那么你输入的域名,访问的就不是真正的网站,由此骗取用户!比如:192.168.200.1  www.baidu.com。则当你访问百度的时候,出现的网址就不是真正的百度,而是这个假冒的192.168.200.1

进程管理

  • UID:用户ID     PID:进程号        PPID:父进程号
  • ps:查看目前系统中,有哪些进程正在执行,以及他们的执行情况。信息选项如下:
    • PID:进程号
    • TTY:终端机号
    • TIME:此进程所消耗CPU时间
    • ps -a:显示当前终端的所有进程信息
    • ps -u:以用户的格式显示进程信息
    • ps -x:显示后台进程运行的参数
    • ps -ef:以全格式显示当前所有的进程。-e:显示所有进程,-f:全格式
    • 显示的信息说明:
      • 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:启动进程所用的命令和参数,如果过长会被截断显示

top动态监控进程

top 与 ps 命令很相似。它们都用来显示正在执行的进程。Top 与 ps 最大的不同之处,在于 top 在执行一段时间可以更新正在运行的的进程

格式:top [选项]

-d秒数:指定top命令每隔几秒更新,默认是3秒。-i:使top不显示任何闲置或者僵死进程。-p:通过指定监控进程ID来仅仅监控某个进程的状态。

交互说明:按如下键:

        P:以CPU使用率排序(默认)。M:以内存的使用率排序。N:以PID排序。q:退出top

终止进程

kill    [选项] 进程号(功能描述:通过进程号杀死/终止进程)

killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)

常用选项:-9表示强迫进程立即停止

进程树pstree

pstree [选项] ,可以更加直观的来看进程信息

常用选项:-p显示进程的UID。-u显示进程的所属用户

service服务管理

服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld , sshd防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。

service    服务名 [start | stop | restart | reload | status]

setup查看服务名

Linux 系统有 7 种运行级别(runlevel):常用的是级别 3 5

  • 运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动
  • 运行级别 1:单用户工作状态,root 权限,用于系统维护,禁止远程登陆
  • 运行级别 2:多用户状态(没有 NFS),不支持网络
  • 运行级别 3:完全的多用户状态(有 NFS),无界面,登陆后进入控制台命令行模式
  • 运行级别 4:系统未使用,保留
  • 运行级别 5:X11 控制台,登陆后进入图形 GUI 模式
  • 运行级别 6:系统正常关闭并重启,默认运行级别不能设为 6,否则不能正常启动

Linux虚拟机开机说明

chkconfig指令 

通过 chkconfig 命令可以给服务的各个运行级别设置自 启动/关闭。chkconfig 指令管理的服务在 /etc/init.d 查看

例子:对 network 服务   进行各种操作, 把 network 在 3 运行级别,关闭自启动。chkconfig --level 3 network off。chkconfig --level 3 network on

systemctl管理指令

格式:systemctl [start | stop | restart | status] 服务名

systemctl 指令管理的服务在 /usr/lib/systemd/system 查看

设置服务的自启动状态:

  •        (1) systemctl list-unit-files   [ | grep 服务名] (查看服务开机启动状态, grep 可以进行过滤)          (2)systemctl enable 服务名 (设置服务开机启动)

          (3)systemctl disable 服务名 (关闭服务开机启动)

           (4)systemctl is-enabled  服务名 (查询某个服务是否是自启动的)

  • 例子:查看当前防火墙的状况,关闭防火墙和重启防火墙:firewalld.service

    •         systemctl status firewalld; systemctl stop firewalld; systemctl start firewalld

      •         说明:这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。如果希望设置                       某个服务自启动或关闭永久生效,要使用 systemctl [enable|disable] 服务名

      • 打开或者关闭指定端口

 firewall指令

  1. 打开端口:      firewall-cmd --permanent --add-port=端口号/协议
  2. 关闭端口:      firewall-cmd --permanent --remove-port=端口号/协议
  3. 重新载入,才能生效 : firewall-cmd --reload
  4. 查询端口是否开放:    firewall-cmd --query-port=端口/协议

netstat监控网络状况

格式:netstat [选项]    。-an按一定顺序排列输出。-p显示哪个进程在调用

猜你喜欢

转载自blog.csdn.net/weixin_62775913/article/details/125601876