/etc/重要目录详解

1 /etc/sysconfig/network-scripts/ifcfg-eth0

centos6.x 默认网卡名称eth0  centos7.x 默认网卡名称 ens33

[root@oldboy-lnb ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet # 以太网 快速以太网

BOOTPROTO=none # 获取IP地址的方式  1 none  2 static 3.dhcp(路由器 三层交换机 192.168.1.2-192.168.1.254)

NAME=eth0     # 网卡的名称  在系统中显示的名称

UUID=2ccba174-21d0-4cb4-810f-93b5e16d1768 # 设备的唯一标识 系统会为每个硬件设备 分配一个UUID作为设备的唯一标识

DEVICE=eth0 # 网卡的硬件名称

ONBOOT=yes # 自动启动 自动激活该网卡

IPADDR=10.0.0.200 # IP地址 类似家的地址 唯一的 公网IP(任意有网络的地方连接) 私网IP(局域网内连接) 扩展 公网IP 私网IP

PREFIX=24 # 子网掩码 决定了当前网络中可用的主机数量 24--> 10.0.0.1-10.0.0.254 255.255.255.0

GATEWAY=10.0.0.254 # 网关 类似于 楼宇的大门 想要上网 必须配置网关 不配置网关只能在局域网内发送数据

DNS1=223.5.5.5 # 域名解析协议 负责把域名解析成IP地址 什么是域名 www.bidu.com www.sina.com

精简配置后 重启网卡

两种方式重启网卡

1.systemctl restart network

2.ifdown eth0 && ifup eth0

!cat  # 执行最后一次执行cat的命令

cat /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet

BOOTPROTO=none

NAME=eth0

DEVICE=eth0

ONBOOT=yes

IPADDR=10.0.0.200

PREFIX=24

GATEWAY=10.0.0.254

DNS1=223.5.5.5

查看当前系统版本信息

[root@oldboy-lnb ~]# cat /etc/redhat-release

CentOS Linux release 7.6.1810 (Core)

2 /etc/hostname    主机名称

作用: 可以使用主机名称进行通信

访问一台服务器 两种方式

1.通过IP地址访问

2.通过主机名方式访问

如何查看主机名:

[root@oldboy-lnb ~]# hostname

oldboy-lnb

[root@oldboy-lnb ~]# hostnamectl

Static hostname: oldboy-lnb

[root@oldboy-lnb ~]# cat /etc/hostname

oldboy-lnb

如何修改主机名:

    1.临时修改 重启失效

[root@oldboy-lnb ~]# hostname oldboyedu

2.永久修改 重启生效

  1) 直接修改配置文件

  第一步 修改配置文件

  vi /etc/hostname

  test

  第二步 重启操作系统

  reboot

  2) 使用命令方式修改主机名 推荐使用

[root@test ~]# hostnamectl set-hostname oldboyedu

[root@test ~]# bash

[root@oldboyedu ~]# exit

exit

[root@test ~]# cat /etc/hostname

oldboyedu

默认的YUM源

1.备份默认的YUM源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2.下载阿里云YUM源

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

3.使用yum repolist 查看当前的源

4.安装扩展的仓库

  安装wget命令

  yum -y install wget

  安装扩展的仓库

  wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

  yum -y install cowsay sl

5.安装扩展命令的tab补全插件  前提安装了扩展的yum仓库

[root@oldboyedu ~]# yum -y install bash-completion-extras.noarch

  需要重新登录下操作系统 可自动补全

[root@oldboyedu ~]# hostname

hostname    hostnamectl 

[root@oldboyedu ~]# hostnamectl set-

set-chassis    set-deployment  set-hostname    set-icon-name 

[root@oldboyedu ~]# hostnamectl set-

set-chassis    set-deployment  set-hostname    set-icon-name 

[root@oldboyedu ~]# hostnamectl set-hostname oldboyedu

3 /etc/resolv.conf  # 配置DNS服务器IP地址

  作用: 配置DNS IP地址 解析域名为IP地址

  resolv.conf和网卡的dns配置区别

  1. resolv.conf 配置优先于网卡的配置

    resolv.conf 223.5.5.5 ----> 优先使用223.5.5.5解析域名

网卡-----> 114.114.114.114

  2. 如果网卡中存在dns 重启网卡会覆盖掉resolv.conf中的配置

  3. 如果网卡中不配置DNS 不影响resolv.conf配置文件

[root@oldboyedu ~]# cat /etc/resolv.conf

nameserver 223.5.5.5

[root@oldboyedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

TYPE=Ethernet

BOOTPROTO=none

NAME=eth0

DEVICE=eth0

ONBOOT=yes

IPADDR=10.0.0.200

PREFIX=24

GATEWAY=10.0.0.254

DNS1=223.5.5.5

配置备用DNS

[root@oldboyedu ~]# cat /etc/resolv.conf

# Generated by NetworkManager

nameserver 224.5.5.15

nameserver 114.114.114.114

    网卡中配置备用DNS

DNS1=223.5.5.5

DNS2=114.114.114.114

DNS服务器 共用的DNS

223.5.5.5

223.5.5.6

114.114.114.114 电信

8.8.8.8  谷歌

202.106.0.20  联通

.....

全球顶级域名 13台 最近的一台 在日本

4 /etc/hosts 存放着域名和IP地址的对应关系

    文件作用: 本地域名解析 访问域名的时候 先查看hosts下有没有对应的域名解析  测试环境使用

5 /etc/issue  # 登录后系统显示的内容 

  /etc/issue.net # 存放着登录后的系统版本号和内核版本

  清空

  > /etc/issue

  > /etc/issue.net

6) /etc/motd  # 登录系统后显示的内容 使用xshell连接后显示的内容

7) /etc/inittab # 系统的运行级别

  当前默认的运行级别3

  0      # 关机  配置文件不能设置为0

  1      # 单用户模式 救援模式 密码忘记了   # 如何进入单用户模式修改密码 作业!

  2      # 多用户模式 没有NFS 网络文件系统

  3      # 完全多用户模式  当前默认的级别 运行3级别

  4      # 保留 未开发

  5      # 桌面模式 desktop centos不安装桌面 浪费资源

  6      # 重启

  init 0  关机

  init 6  重启

  查看当前系统默认的运行级别

  [root@oldboyedu ~]# runlevel

  N 3

  设置默认的运行级别

  systemctl set-default runlevel3.target

8 /etc/fstab 文件作用: 开机自动挂载设备

UUID=cd3ad562-0789-4384-b0fa-272c7de138fe /                      xfs      defaults        0              0

设备的唯一标识(也可以写设备名)     目录挂载点     文件系统  挂载的参数    是否磁盘备份  开机自检

0为关闭

1位开启

开启磁盘备份 占用大量的磁盘空间 浪费IO 负载变高

开机自检    检查磁盘是否有坏道 fsck命令

如何让cdrom开机自动挂载

第一步:

获取cdrom的uuid或者设备名称

uuid: blkid

设备名: /dev/cdrom  /dev/sr0

第二步:

写入/etc/fstab 开机自动挂载

/dev/cdrom                                /mnt                    iso9660 defaults        0 0

第三步:

检查是否开机自动挂载

df -h

9) /etc/rc.local 文件作用: 开机自动运行命令或者自动运行某个服务

    rc.local 必须给执行权限

    分为三种权限: 读 写 执行

  r  w  x

案例:

第一个步骤: 停止ssh服务 并设置为开机禁止启动

systemctl disable sshd

reboot

第二步骤:

测试xshell是否能够连接  无法连接

第三步: 测试 /etc/rc.local

vi /etc/rc.local

systemctl start sshd    # 开机后执行这条命令

进行测试 发现无法连接

第四步: 给/etc/rc.d/rc.local 执行权限

chmod +x  /etc/rc.d/rc.local

第五步: 重启 测试 正常连接

测试完后把sshd重新加入开机自动运行

[root@oldboyedu ~]# systemctl enable sshd

查看服务的状态

[root@oldboyedu ~]# systemctl status sshd

● sshd.service - OpenSSH server daemon

  Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled(开机是否自动运行 enabled 自动运行  disable 禁止开机启动); vendor preset: enabled)

  Active: active (running) since Tue 2020-11-03 11:37:49 CST; 1min 11s ago

  状态    运行

开机自动挂载是否可以使用rc.local

vi /etc/rc.local

mount /dev/cdrom /mnt

10 /etc/profile 文件作用: 配置全局环境变量的文件

连接xshell或者开机后会自动运行profile中的变量

  什么是变量

  x=1 y=x+1  方程式

  name=oldboy # 变量赋值

  用一个固定的值 表示一个不固定的内容

  全局变量  环境变量 # 针对所有的shell生效

  局部变量  普通变量 # 针对当前的shell生效

  系统为我们能够正常的使用 才设置了环境变量

  自己配置变量: 需求 可重复调用

  举例:

  定义字符串或者数字使用单引号或者双引号(解析变量)

  变量赋值  dir 变量的名称(下划线字母开头 不允许数字开头)

等号右边的 为变量的值 (值可以是数字 字母 命令)

等号两端不允许有空格

[root@oldboyedu ~]# dir="/etc/sysconfig/network-scripts/"

查看调用变量使用$

    [root@oldboyedu ~]# echo $dir

/etc/sysconfig/network-scripts/

定义命令变量使用反引号``

[root@oldboyedu ~]# time=`date +%F-%H-%M-%S`

[root@oldboyedu ~]# echo $time

2020-11-04-09-54-00

单引号和双引号的区别

[root@oldboyedu ~]# time=`date +%F-%H-%M-%S`

[root@oldboyedu ~]# echo $time

2020-11-04-09-54-00

[root@oldboyedu ~]# test='oldboy name $dir'

[root@oldboyedu ~]# echo $test

oldboy name $dir

[root@oldboyedu ~]# test="oldboy name $dir"

[root@oldboyedu ~]# echo $test

oldboy name /etc/sysconfig/network-scripts/

系统环境变量都是大写

linux中所有在文件中的命令 都属于子shell

source 和 .  执行文件 相当于把子shell中的命令在父shell中执行

[root@oldboyedu ~]# source /etc/profile

[root@oldboyedu ~]# echo $name

oldboy

PATH 我们执行命令需要使用到PATH变量

[root@oldboyedu ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

shell执行命令的过程

    第一步:

  命令在什么位置? 为什么直接可以在任意的位置执行所有命令?

  每个命令都有自己的位置 都有自己的路径 都是以二进制的方式存在

  [root@oldboyedu ~]# which cat

/usr/bin/cat

第二步:

  当我们执行cat命令  会先去查找PATH变量中的所有的目录

  如果找到 则执行命令  如果找不到则返回命令找不到 command not found

第三步:

  测试把cat命令移动到/tmp目录

  在执行cat命令 无法执行

  如果想要执行必须使用命令的全路径

  /tmp/cat hosts 执行

第四步:

      解决方法

  1.移动到/usr/bin目录

  2.把新的位置增加到PATH变量中

  临时生效 退出失效

  [root@oldboyedu ~]# PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp"

  永久生效 写入/etc/profile 即可

  [root@oldboyedu ~]# tail -1 /etc/profile

  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp"

  -------------------

  [root@oldboyedu ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[root@oldboyedu ~]# PATH="$PATH:/tmp"

[root@oldboyedu ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp

  -------------------

/usr/local

  文件作用: 存放第三方安装程序的位置 类似我们直接使用软件商城进行安装

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。