day005-Linux基础-核心配置文件1

6次阅读
没有评论

2026年3月12日笔记

上台回顾流程:F9开始录制-自我介绍-回顾总分总-F10结束录制

01.vim问题

day005-Linux基础-核心配置文件1

在使用vim编辑文件时提示:发现交换文件".1.txt.swp"
vim编辑文件过程:
1)vim编辑一个文件1.txt
2)系统会自动生成一个名称叫.1.txt.swp的临时隐藏文件
3)如果正常保存退出,系统会将.oldoby.txt.swp移动成为1.txt

所以出现以上提示的原因:#是系统保护机制swp文件防止文件内容丢失
1.开启了两个窗口、两个窗口同时编辑一个文件
2.在企业中你和同事同时编辑一个文件
3.没有正常保存文件或服务器端口
    关闭xshell
    服务器断电、重启
    台式机断电
    非正常终止

解决方法:
1.自己开启多个窗口同时编辑、自己检查关闭一个窗口
2.和同事同时编辑一个文件、退出一个解决 #w查询编辑用户
3.断电导致的出现swp文件
    解决方法1:后面新写内容不要
        第一步:删除隐藏文件.1.txt.swp
        [root@oldboy ~]# rm -f .1.txt.swp 
        第二步:正常编辑1.txt

    解决方法2:保存后面写的内容
        第一步:vim -r 1.txt 按回车继续
        第二步:正常保存并退出:wq
        第三步:在删除.1.txt.swp即可
        [root@oldboy ~]# rm -f .1.txt.swp 

02.命令echo、tree

1.echo:输入内容到屏幕或文件中
语法结构:   echo 字符串
            echo 字符串 > file
案例1:输出字符串到屏幕
[root@oldboy ~]# echo oldboy 123
oldboy 123
[root@oldboy ~]# echo 凡人修仙传
凡人修仙传
案例2:echo使用序列
[root@oldboy ~]# echo a b c     #输入a b c
a b c
[root@oldboy ~]# echo {a..c}    #{}序列方式打印a b c
a b c
案例3:序列不连续的字符串
[root@oldboy ~]# echo {a,c,d}
a c d
[root@oldboy ~]# echo {1,3,5}
1 3 5
案例4:序列连续的数字
[root@oldboy ~]# echo {1..5}
1 2 3 4 5
[root@oldboy ~]# echo {01..5..2}
01 03 05
案例5:其他命令使用序列
[root@oldboy ~]# echo {1..3}    
1 2 3
[root@oldboy ~]# mkdir {1..3}
[root@oldboy ~]# ll
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:05 1
drwxr-xr-x 2 root root 6 Mar 12 13:05 2
drwxr-xr-x 2 root root 6 Mar 12 13:05 3

[root@oldboy ~]# ll {1..3}
1:
total 0

2:
total 0

3:
total 0
案例6:序列的拼接
#echo {1..2}测试  序列输入
[root@oldboy ~]# echo {1..2}测试
1测试 2测试

#mkdir {1..2}测试 序列创建目录
[root@oldboy ~]# mkdir {1..2}测试
[root@oldboy ~]# ll
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:09 1测试
drwxr-xr-x 2 root root 6 Mar 12 13:09 2测试

#touch {1..2}.txt
[root@oldboy ~]# touch {1..2}.txt
[root@oldboy ~]# ll
total 0
-rw-r--r-- 1 root root 0 Mar 12 13:14 1.txt
-rw-r--r-- 1 root root 0 Mar 12 13:14 2.txt

[root@oldboy ~]# echo oldboy{1..2}
oldboy1 oldboy2
[root@oldboy ~]# mkdir oldboy{1..2}
[root@oldboy ~]# ll
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:15 oldboy1
drwxr-xr-x 2 root root 6 Mar 12 13:15 oldboy2

[root@oldboy ~]# echo 练习{1..3}.txt
练习1.txt 练习2.txt 练习3.txt
[root@oldboy ~]# touch 练习{1..3}.txt
[root@oldboy ~]# ll
total 0
-rw-r--r-- 1 root root 0 Mar 12 13:17 练习1.txt
-rw-r--r-- 1 root root 0 Mar 12 13:17 练习2.txt
-rw-r--r-- 1 root root 0 Mar 12 13:17 练习3.txt
案例7:目录拼接oldboy/old1 oldboy/old2
#正常创建
[root@oldboy ~]# mkdir -p oldboy/old1 oldboy/old2
[root@oldboy ~]# ll oldboy/
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:21 old1
drwxr-xr-x 2 root root 6 Mar 12 13:21 old2
[root@oldboy ~]# rm -rf *
[root@oldboy ~]# ll
total 0

#序列拼接
[root@oldboy ~]# mkdir -p  oldboy/old{1..2}
[root@oldboy ~]# ll oldboy
oldboy/  oldboy1/ oldboy2/ 
[root@oldboy ~]# ll oldboy
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:23 old1
drwxr-xr-x 2 root root 6 Mar 12 13:23 old2
案例8:在test目录下创建www,bbs,blog三个目录
#正常方法创建
[root@oldboy ~]# mkdir -p test/www test/bbs test/blog
[root@oldboy ~]# ll test
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:30 bbs
drwxr-xr-x 2 root root 6 Mar 12 13:30 blog
drwxr-xr-x 2 root root 6 Mar 12 13:30 www

#序列方法创建
[root@oldboy ~]# mkdir -p  test/{www,bbs,blog}
[root@oldboy ~]# ll test
total 0
drwxr-xr-x 2 root root 6 Mar 12 13:32 bbs
drwxr-xr-x 2 root root 6 Mar 12 13:32 blog
drwxr-xr-x 2 root root 6 Mar 12 13:32 www
案例9:逗号是空格
[root@oldboy ~]# echo a.conf{,.bak}
a.conf a.conf.bak
[root@oldboy ~]# cp a.conf{,.bak}
[root@oldboy ~]# ll
total 0
-rw-r--r-- 1 root root  0 Mar 12 13:34 a.conf
-rw-r--r-- 1 root root  0 Mar 12 13:34 a.conf.bak
运维的原则:
运维的原则:
简单  易用  高效

互联网文化:
互联网公司屌丝文化 用最少的钱做出最牛逼的架构
2.tree:树形结构显示目录
[root@oldboy ~]# tree test
test
├── bbs
├── blog
└── www

3 directories, 0 files #3个目录,0个文件

03.核心配置文件

/etc/sysconfig/network-scripts/ifcfg-ens33  #网卡配置
/etc/hostname                               #主机名配置
/etc/resolv.conf                            #DNS配置
1.网卡配置文件/etc/sysconfig/netork-scripts/ifcfg-ens33
1)网卡配置文件
[root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE=Ethernet                               #网络类型 以太网
#PROXY_METHOD=none                          
#BROWSER_ONLY=no
BOOTPROTO=none                              #IP地址配置方式
                                                1.DHCP自动获取IP地址
                                                2.nono手动配置IP地址
                                                3.static手动配置IP地址
#DEFROUTE=yes
#IPV4_FAILURE_FATAL=no
#IPV6INIT=yes
#IPV6_AUTOCONF=yes
#IPV6_DEFROUTE=yes
#IPV6_FAILURE_FATAL=no
#IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33                                  #网卡名称
UUID=b13f7df1-32eb-4570-9c5e-749e5e529cea   #设备ID号 系统分配的唯一码
DEVICE=ens33                                #硬件名称 有的系统网卡叫eth0 eth1
ONBOOT=yes                                  #开启自动启动网络配置
IPADDR=10.0.0.200                           #IP地址、局域网内唯一
PREFIX=24                                   #子网掩码、决定了网段可用的IP数量
GATEWAY=10.0.0.2                            #网关 去往不同网段必经之路
DNS1=223.5.5.5                              #域名解析服务
#IPV6_PRIVACY=no

练习环境IP地址:
1.kylin     10.0.0.200
2.Ubuntu    10.0.0.201
3.vmnet8    10.0.0.1
4.nat网关    10.0.0.2

day005-Linux基础-核心配置文件1

2)优化配置文件
!命令     #调用最后一次执行过的此命令
esc.    #调用上次命令最后的参数
#第一步:vim /etc/sysconfig/network-scripts/ifcfg-ens33修改优化配置
#第二步:查看
[root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=10.0.0.200
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5

#第三步:重启生效
    方式1:reboot  #重启系统生效
    方式2:重启网卡服务 ifdown 关闭 ens33  ifup 打开 ens33
            [root@oldboy ~]# ifdown ens33 && ifup ens33
    方式3:先安装一个命令network-sctips
            [root@oldboy ~]# yum -y install network-scripts
            重启网卡服务
            [root@oldboy ~]# systemctl restart network
3) 扩展:Linux系统中大部分服务都是用systemctl来管理的
systemctl start 服务      #启动服务
systemctl stop 服务       #停止服务
systemctl restart 服务    #重启服务
systemctl reload 服务     #重新加载
systemctl enable 服务     #开机自动启动
systemctl disable 服务    #开机禁止启动
  • [ ] 作业:尝试修改IP地址200为100然后用xshell远程连接
4)Ubuntu系统修改网卡IP地址
配置文件:/etc/netplan/00-installer-config.yaml
#第一步:切换到管理员账号
oldboy@oldboy:~$ sudo su -
[sudo] password for oldboy:     #输入的是oldboy密码1
root@oldboy:~# 

#第二步:修改配置文件
root@oldboy:~# vim /etc/netplan/00-installer-config.yaml
#第三步:查看配置文件
root@oldboy:~# cat /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses:
      - 10.0.0.300/24   #IP地址
      nameservers:
        addresses:
        - 223.5.5.5     #DNS
        search: []
      routes:
      - to: default
        via: 10.0.0.2   #网关
  version: 2
#第三步:重启生效
root@oldboy:~# netplan apply
2.主机名称配置/etc/hostname
配置文件:/etc/hostname
主机名称:企业中命名比较规范、可以是字符+数字的组合
web01 web02 db01 db02 ..
不能使用特殊符号%¥&*
1)查看主机名的方式:
#1.看命令提示符
[root@oldboy ~]#    #主机名称oldboy
#2.使用命令查看 hostname
[root@oldboy ~]# hostname
oldboy
#3.使用命令查看 hostnamectl
[root@oldboy ~]# hostnamectl
   Static hostname: oldboy          #主机名称
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 73981175d12346a5b509818eb4fd9ab8
           Boot ID: be99f0ae26224eb8975444aa1b4ab003
    Virtualization: vmware          #VMware平台
  Operating System: Kylin Linux Advanced Server V10 (Lance) #系统版本
            Kernel: Linux 4.19.90-52.22.v2207.ky10.x86_64   #内核版本
      Architecture: x86-64          #架构指令集
面试题:你上家公司都用过什么内核版本的操作系统
centos6.3   2.6.32
centos7.6   3.10.0
kylin       4.19.90

#4.查看配置文件
[root@oldboy ~]# cat /etc/hostname 
oldboy
2) 修改主机名称
#方法1:临时修改主机名称、重启系统失效
    第一步:临时修改主机名称
    [root@oldboy ~]# hostname test01
    第二步:重新连接xshell生效(重新打开一个窗口)
    [root@test01 ~]# 
    #注意:临时修改不会修改配置文件
    [root@test01 ~]# hostname
    test01
    [root@test01 ~]# cat /etc/hostname 
    oldboy
#方法2:永久修改主机名称
    第一步:修改配置文件 vim /etc/hostname
    [root@oldboy ~]# cat /etc/hostname 
    test01
    第二步:重启系统生效
    reboot
    [root@test01 ~]# hostname
    test01
#方法3:使用第一种方法和第二种方式组合 临时+永久

#方法4:临时+永久生效的命令 记住这个就可以
    第一步:修改主机名称
    [root@test01 ~]# hostnamectl set-hostname oldboy #等同于方法1和方法2的组合
    [root@test01 ~]# cat /etc/hostname 
    oldboy
    第二步:重新连接xshell生效(重启系统生效)
    [root@oldboy ~]# hostname
    oldboy  
3.DNS配置文件/etc/resolv.conf
配置文件:/etc/resolv.conf
作用:存放域名解析服务器的IP地址的位置
[root@oldboy ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 223.5.5.5

resolv.conf和网卡配置的关系:
1.如果网卡中配置了DNS会覆盖resolv.conf
2.如果网卡中不配置DNS,不会影响resolv.conf,但需要手动配置

#案例1模拟:resolv.conf被覆盖
    第一步:查看resolve.conf
    [root@oldboy ~]# cat /etc/resolv.conf 
    # Generated by NetworkManager
    nameserver 223.5.5.5
    第二步:修改DNS 223.5.5.5为8.8.8.8
    [root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE=Ethernet
    NAME=ens33
    DEVICE=ens33
    ONBOOT=yes
    IPADDR=10.0.0.200
    PREFIX=24
    GATEWAY=10.0.0.2
    DNS1=8.8.8.8
    第三步:重启网卡生效
    [root@oldboy ~]# systemctl restart network
    第四步:检查DNS是否发生变化
    [root@oldboy ~]# cat /etc/resolv.conf 
    # Generated by NetworkManager
    nameserver 8.8.8.8
#案例2模拟:网卡不配置DNS、需要手动再resolv.conf中配置,重启网卡不影响resolv.conf
    第一步:修改网卡配置 去掉DNS
    [root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE=Ethernet
    NAME=ens33
    DEVICE=ens33
    ONBOOT=yes
    IPADDR=10.0.0.200
    PREFIX=24
    GATEWAY=10.0.0.2

    第二步:重启生效
    [root@oldboy ~]# systemctl restart network

    第三步:查看resolv.conf配置文件空了
    [root@oldboy ~]# cat /etc/resolv.conf 
    # Generated by NetworkManager
    [root@oldboy ~]#

    第四步:手动配置DNS 直接生效
    [root@oldboy ~]# cat /etc/resolv.conf 
    # Generated by NetworkManager
    nameserver 223.5.5.5
    nameserver 114.114.114.114
    -----------------------------
    [root@oldboy ~]# !271
    cat /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE=Ethernet
    NAME=ens33
    DEVICE=ens33
    ONBOOT=yes
    IPADDR=10.0.0.200
    PREFIX=24
    GATEWAY=10.0.0.2

    [root@oldboy ~]# ping www.baidu.com
    PING www.a.shifen.com (110.242.70.57) 56(84) bytes of data.
    64 bytes from 110.242.70.57 (110.242.70.57): icmp_seq=1 ttl=128 time=16.3 ms
    64 bytes from 110.242.70.57 (110.242.70.57): icmp_seq=2 ttl=128 time=16.1 ms
    64 bytes from 110.242.70.57 (110.242.70.57): icmp_seq=3 ttl=128 time=16.6 ms
扩展知识点
#面试题:DNS的配置文件是哪个?
/etc/resolv.conf 也可以在网卡中配置DNS服务
#查看历史执行过的命令
[root@oldboy ~]# history
[root@oldboy ~]# !271   #调用271行的命令

04.重点总结

1.vim文件保护机制 swp交换文件
方法1.不保存改后内容 直接删除swp文件
方法2.想要改后的内容 vim -r 1.txt 恢复,然后在删除swp文件

2.echo命令
echo oldboy #输出到屏幕
echo {1..3}{a..z}   #序列
echo a{1..2}
echo {1..2}.txt
echo test{1..2}.txt

3.tree命令 树形结构显示目录

4.网卡配置文件,每行含义
/etc/sysconfig/network-scripts/ifcfg-ens33 

5.重启网卡服务
ifdown ens33
ifup ens33
ifdown ens33 && ifup ens33

安装network服务
yum -y install network-scripts
重启网络服务
systemctl restart network

6.hostname
查看
hostname
hostnamectl
cat /etc/hostnaem

修改
hostname web02
hostnamectl set-hostname web03

7.DNS配置文件resolv.conf
存放223.5.5.5访问网站必须先找223.5.5.5拿到网站对应IP地址
网卡有DNS会覆盖resolv.conf
网卡不配置,手动配置resolv.conf
修改了网卡需要重启生效
修改了resolv.conf直接生效


下次内容
/etc核心配置文件
/proc
/var
面试题归纳
#面试题1:你上家公司都用过什么内核版本的操作系统
centos6.3   2.6.32
centos7.6   3.10.0
kylin       4.19.90
#面试题2:DNS的配置文件是哪个?
/etc/resolv.conf 也可以在网卡中配置DNS服务
#面试题3:目录文件数量统计tree命令以树形结构显示目录文件结尾有统计目录文件数量
[root@oldboy ~]# tree 
.
├── oldboy1.txt
└── oldboy.txt

0 directories, 2 files
正文完
 0
评论(没有评论)