00. 课程介绍部分
1. 系统重要目录与文件 解锁开机自动挂载的功能 解锁简单脚本编写--变量/环境变量 解锁系统别名概念 解锁系统运行级别 解锁系统安装软件方法 yum install -y xxx
2. 介绍一些日志文件内容 以及系统硬件信息查看方法 学习技巧: 1. 课上听讲 2. 记录笔记 word 思维导图 习惯
3. 学习准备 预习视频
4. 学习复习 一定练习 5个题库 2个小时 3篇 每个题库15~20
5. 知识分享 组为单位 大神 排错能力者
01. 课程知识回顾(提问环节)
1. 磁盘挂载概念: 给存储设备(文件)开了个门(挂载点目录), 补充: 磁盘卸载操作 umount /mnt 2. 系统重要目录
/etc 配置文件保存目录
/dev 设备文件保存目录
/bin 二进制文件保存目录 命令文件保存目录
/sbin 管理
(root)操作命令存放路径
/var 存放日志文件(经常变化数据)
3. 系统重要文件:
网卡配置文件: DNS服务配置文件: 本地解析配置文件:
02. 系统重要文件说明 /etc
1. 主机名称配置文件
主机名称配置文件路径: /etc/sysconfig/network --- centos6
[root@web01 ~]# cat /etc/sysconfig/network # Created by anaconda 主机名称在cengtos7不存在,只存在centos6
/etc/hostname --- centos7 主机名称配置文件信息 /etc/sysconfig/network --- centos6 HOSTNAME=主机名称 /etc/hostname --- centos7 主机名称
如何修改系统主机名称:
centos6 临时修改: hostname 主机名称
修改的名称不会立即生效: 1. 重新连接 2.使用bash命令
[root@oldboy63 ~]# hostname web01
[root@oldboy63 ~]# bash
[root@web01 ~]#
永久修改: vi /etc/sysconfig/network 主机名称修改
重启操作系统 centos7 临时修改:
hostname 主机名称 修改的名称不会立即生效: 1. 重新连接 2.使用bash命令
永久修改: vi /etc/hostname 主机名称修改
重启操作系统 reboot
[root@web01 ~]# vi /etc/hostname oldboy63 2 files to edit 0ldboy63 "/etc/hostname" 2L, 10C written
Esc :wq! 保存退出
[root@web01 ~]# cat /etc/hostname 0ldboy63
[root@oweb01 ~]# reboot [e:\~]$ ssh [email protected]
[root@0ldboy63 ~]# 即临时又永久: hostnamectl set-hostname oldboyedu
[root@0ldboy63 ~]# hostnamectl set-hostname oldboyedu
[root@0ldboy63 ~]# bash
[root@oldboyedu ~]#
[root@oldboy63 ~]# cat /etc/hostname
oldboyedu
如何查看系统主机名称信息: hostname
hostname -I(显示有所网卡的IP地址)
[root@oldboy63 ~]# hostname oldboy63
[root@oldboy63 ~]# hostname -I 10.0.0.200
2. 磁盘挂载文件(实现自动挂载操作)
磁盘挂载文件路径: /etc/fstab
磁盘挂载文件信息: # cat /etc/fstab
UUID=9c9d613d-4605-4b85-90bd-550c92bd7c77 / xfs defaults 0 0
UUID=e0640ceb-c9db-43a7-90e9-fc179589ad0d /boot xfs defaults 0 0
UUID=74dc14b3-19f1-4bdf-bb6d-6db00d6b597b swap swap defaults 0 0
01 02 03 04 05 06
学习linux新知识的方法:
linux系统中可以有帮助方法: manual 手册-- man
01. 配置好存储设备信息 /dev/sda1 /dev/cdrom UUID
02. 挂载点目录信息
03. 描述文件系统类型 ext3/ext4 xfs 格式化效率不一样 存储数据效率(数据库服务器) 服务器磁盘处理方法 磁盘 地皮 阵列 打地基 分区 规划 格式化 清理垃圾 创建文件系统 建房子风格 --- 存储数据原理方法(NTFS--没有存储限制 U盘-FAT32--单个文件不能大于4G)
04. 挂载参数信息 存储服务器做详细说明
05. 是否对文件系统数据进行备份 备份--磁盘空间会损耗
06. 是否对磁盘文件系统进行检测 磁盘检测软件 fsck
实践操作:
实现自动挂载光驱设备 cat /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
实践: [root@oldboy63 ~]# vi /etc/fstab #
# /etc/fstab
# Created by anaconda on Thu Jul 4 12:42:00 2019 #
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
# UUID=3f89f8b8-6270-4ad0-8c83-58bc28872a61 / xfs defaults 0 0
UUID=bdd55916-052a-435d-bf83-f8075abbdeff /boot xfs defaults 0 0
UUID=6d01a6d6-a3b4-4c7c-b64f-ec5dbe02aff2 swap swap defaults 0 0
/dev/cdrom /mnt iso9660 defaults 0 0
~ ~ "/etc/fstab" 12L, 595C written
[root@oldboy63 ~]# reboot
[root@oldboy63 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 101456488 1600436 99856052 2%
/ devtmpfs 1003148 0 1003148 0% /dev
tmpfs 1014056 0 1014056 0% /dev/shm
tmpfs 1014056 9788 1004268 1% /run
tmpfs 1014056 0 1014056 0% /sys/fs/cgroup
/dev/sr0 4480476 4480476 0 100% /mnt
/dev/sda1 201380 107104 94276 54% /boot
tmpfs 202812 0 202812 0% /run/user/0
[root@oldboy63 ~]#
3. 开机自动加载文件
自动加载文件路径: /etc/rc.local
自动加载文件内容:
[root@oldboy63 ~]# vi /etc/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES #
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file. #
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services. #
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.
touch /var/lock/subsys/local
mount /dev/cdrom /mnt (可以是任意你需要它开机加载的内容) ~ ~ ~ ~ ~ ~ 退出保存 "/etc/rc.local" 14L, 495C written
[root@oldboy63 ~]# chmod +x /etc/rc.d/rc.local 赋予权限
[root@oldboy63 ~]# reboot 重启系统
[root@oldboy63 ~]# df 查看
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 101456488 1600776 99855712 2%
/ devtmpfs 1003148 0 1003148 0% /dev
tmpfs 1014056 0 1014056 0% /dev/shm
tmpfs 1014056 9788 1004268 1% /run
tmpfs 1014056 0 1014056 0% /sys/fs/cgroup
/dev/sr0 4480476 4480476 0 100% /mnt 已经自动加载
/dev/sda1 201380 107104 94276 54% /boot
tmpfs 202812 0 202812 0% /run/user/0
[root@oldboy63 ~]# cat /etc/rc.local
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script(脚本) will be executed(执行权限) during boot.
请注意你一定要确保hmod +x /etc/rc.d/rc.local这个命令运行。
这个脚本将有权限 操作运行
systemctl restart network 开机重启这个命令可以放在]# vi /etc/rc.local中
总结: 需要将/etc/rc.d/rc.local文件修改为有执行权限(centos 7必须)
作用: 开机自动运行文件中的命令信息
[root@oldboyedu ~]# ls -l /etc/rc.local lrwxrwxrwx. 1 root root 13 Jul 3 08:25 /etc/rc.local -> rc.d/rc.local
[root@oldboyedu ~]# ls -l /etc/rc.d/rc.local -rwxr-xr-x. 1 root root 495 Jul 9 22:56 /etc/rc.d/rc.local
说明: /etc/rc.local文件实际上是/etc/rc.d/rc.local文件的快捷方式
4. 系统登录提示文件
什么是登录提示文件:
1). 登录前提示文件: 显示登录之前的信息
登录前提示文件保存路径: /etc/issue /etc/issue.net
登录前提示文件保存路径: # cat /etc/issue /etc/issue.net
system_info: \S
system_Kernel: \r on an \m
system_info: \S
system_Kernel: \r on an \m
[root@oldboy63 ~]# vi /etc/issue
system_info: \S
system_Kernel: \r on an \m
[root@oldboy63 ~]# vi /etc/issue.net
system_info: \S
system_Kernel: \r on an \m
[root@oldboy63 ~]# cat /etc/issue /etc/issue.net
system_info: \S
system_Kernel: \r on an \m
system_info: \S
system_Kernel: \r on an \m
断开连接 重新连接
虚拟机上登录前提示文件更改
2). 登录后提示文件: 显示登录之后的信息
登录后提示文件保存路径: /etc/motd
登录后提示文件保存登录:
[root@oldboyedu ~]# cat /etc/motd
操作实践: [root@oldboy63 ~]# vi /etc/motd
佛祖保佑 永无BUG
保存退出
断开连接 重新连接
Xhell上登录后提示文件更改,显示上述内容
5. 系统变量和别名配置文件
系统变量或别名配置文件: /etc/profile
系统变量或别名文件内容: 很多内容
什么是系统变量: x+y=10 已知x=5 已知数(设置变量)
字符信息(开始有数字) oldboy=123456
设置变量: oldboy(变量名称)= (变量值) 数字字母皆可 注意事项: 数字不能作为变量的开始
调用变量: $oldboy
例子:#oldboy=123456
#echo $oldboy
#123456
变量作用: 在脚本中减少信息改动
脚本: 将多个命令操作汇总到一个文件执行, 提高工作效
脚本文件:
# vi test.sh
Madir –p /oldboy01/
Touch /oldboy01/oldboy.txt
Echo abcd >/o1dboy01/oldboy.txt
Cp /oldboy01/oldboy.txt /tmp
Esc :wq! 保存退出
[root@oldboy63 oldboy01]# vi test.sh
mkdir -p /oldboy01
touch /oldboy01/oldboy.txt
echo abcd > /oldboy01/oldboy.txt
cp /oldboy01/oldboy.txt /tmp
~
~
"test.sh" [New] 5L, 109C written
[root@oldboy63 oldboy01]# sh test.sh
[root@oldboy63 oldboy01]# :ls -d /oldboy01 /oldboy01
[root@oldboy63 oldboy01]# ls /oldboy01 oldboy.txt test.sh
[root@oldboy63 oldboy01]# ls /oldboy01/ -d /oldboy01/
[root@oldboy63 oldboy01]# cat /oldboy01/oldboy.txt abcd
[root@oldboy63 oldboy01]# cat /tmp/oldboy.txt abcd
文件中有信息变化,如何进行修改:
第一种方式: 利用vi命令替换功能 :
s#oldboy#oldgirl#g --- 默认将光标所在行指定内容做修改替换 :
%s#oldboy#oldgirl#g --- 整体文件全部内容指定信息都做替换 :
ns#oldboy#oldgirl#g --- 替换第n行指定内容信息 :
n,ms#oldboy#oldgirl#g --- 从第n行到第m行指定信息做替换 :
n,$s#oldboy#oldgirl#g --- 从第n行到最后一行指定信息做替换 :
2s#oldboy#oldgirl# --- 在替换信息是不加g, 表示只将一行中匹配信息第一个做替换
第二种方式: 利用变量
[root@oldboyedu ~]# vi test.sh
info=oldgirl
echo oldboy
echo $info
echo oldboy
echo $info
echo oldboy
第三种方式: 利用高级命令 sed命令
环境变量:
1. 不需要自己设置, 默认系统已经做了设置
2. 系统环境变量是大写字母表示
3. 环境变量设置好,全局生效
第一个环境变量:
PATH 将命令放入环境变量,可以让命令直接执行
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin linux
系统开发人员: 开发一个系统命令
第一个里程: 编写代码信息 # cat cmd
echo oldboy63
二个里程: 修改权限 chmod +x cmd
第三个里程: 需要将编写好的命令文件放置到环境变量中
cp cmd /usr/bin
总结: 命令执行的过程: 输入一个命令信息---> 找命令在指定环境变量中是否有
--> 有 ---> 直接执行命令
--> 没有 ---> No such file or directory 曾经出现在环境变量路径中
command not found 从来没有出现在环境变量路径中
如何修改环境变量:
临时修改: PATH="$PATH:/oldboy"
永久修改:
切换到/etc/profile文件最后一行进行编辑
export PATH="$PATH:/oldboy"
PS: 如何让配置文件信息加载生效
1) 断开服务连接,重新建立连接
2) 利用命令立即加载生效 source /etc/profile
03. 课程知识梳理
1) 如何修改主机名称信息 主机名称配置文件
2) 如何实现磁盘自动挂载 自动挂载配置文件 文件格式信息 如何获取系统帮助信息: man 文件名 man 命令
3) 如何使命令开机自动执行 需要修改rc.local 注意事项 有执行权限
4) 如何实现登录前和登录后提示信息 issue issue.net motd
5) 系统变量和环境变量概念 如何设置变量 profile 设置变量 调用变量 变量作用 修改文件内容方法: 2种方法: s###g 变量
6) 永久修改环境变量
作业:
01. 重新连接或使用bash命令,都可以让主机名称修改生效
02. 研究不同文件系统特征 adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs
03. 如果rc.local 和 fstab 都配置了挂载信息, 哪个文件优先使用
04. 目录信息进行补充说明
05. 系统基础优化操作