一、操作系统挂载概念
1、服务器磁盘如何使用
1)进行磁盘阵列配置
2)进行系统分区操作
3)进行磁盘格式化操作
4)进入磁盘,创建文件系统
5)进行挂载操作(给一个存储设备开个门)
2、如何进行挂载操作
1)挂载环境准备
PS:linux系统中一切皆文件
1.1、准备光驱(分区):/dev/cdrom (/dev/ 存储设备文件目录)
/dev/s(接口类型)d(设备)a(第几块)
1.2、准备挂载门:任意空目录 /mnt 临时挂载点目录
1.3、光驱设备中需要存放光盘
1.4、进行挂载操作
#mount + 设备文件信息 + 挂载点目录
#mount /dev/cdrom /mnt (将光盘挂载到mnt目录)
#umount + 挂机点目录 (取消挂载操作/卸载操作)
#umount /mnt
1.5、检查确认是否挂载
df ——检查磁盘信息 -h(人类能看懂的方式显示)
二、操作系统重要文件
1、/etc目录
1)网卡配置文件
文件路径信息:/etc/sysconfig/network-scripts/ifcfg-eth0(ifcfg-ens33)
文件作用说明:配置网卡地址信息(IP地址、子网掩码、网关地址、DNS地址信息)
文件详细信息:
TYPE=Ethernet ——指定网络类型 以太网类型(以前用电话网) 3G、4G、5G(人工智能)
BOOTPROTO=static ——获取IP地址方式 none/static(手动配置IP地址)、dhcp(自动获取IP地址)
DEFROUTE=yes ——是否激活默认路由(网络知识)
NAME=eth0 ——当前网卡名称信息 (逻辑名称)
UUID=c413a280-edef-416c-a3b1-9b3ac8d734fb ——eth0网卡设备编号
DEVICE=eth0 ——当前网卡名称信息(设备名称)
ONBOOT=yes ——是否激活开启网卡
IPADDR=10.0.0.200 ——IP地址
PREFIX=24 ——子网掩码
GATEWAY=10.0.0.254 ——网关地址
DNS1=10.0.0.254 ——DNS地址
问题:如何快速修改IP地址
sed -i 's#10.0.0.200#10.0.0.201#g' /etc/sysconfig/network-scripts/ifcfg-eth0
#nmcli connection add type ethernet autoconnect yes con-name eht0 ifname eth0 ip4 10.0.0.200 gw4 10.0.0.254
#nmcli connection modify eth0 ipv4.dns 10.0.0.254
#systemctl restart network
文件配置生效:重启网络服务
方法一:利用systemctl命令 企业环境不建议
#systemctl restart network
方法二:利用serivce命令 企业环境不建议
#service network restart
方法三:利用ifxx命令,指定网卡重启
#ifdown eth0 &&ifup eth0
方法四:利用nmcli命令
# nmcli con reload
如何修改网卡信息:
1、修改网卡文件中的名称信息
#vi /etc/sysconfig/network-scripts/ifcfg-ens33 网卡文件重命名
2、将网卡配置文件改名
#mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-eth0
3、让系统内核加载网卡名称修改信息
vi /etc/default/grub
#GRUB_CMDLINE_LINUX=''crashkernel=auto rhgb [这里添加]net.ifnames=0 biosdevname=0'
保存退出
4、加载修改配置信息
#grub2-mkconfig -o /boot/grub2/grub.cfg
5、重启操作系统
#reboot
2)域名服务配置文件
文件路径信息:/etc/resolv.conf
文件作用说明:影响是否可以访问名称或者域名信息
文件内容信息:
#vi /etc/resolv.conf
nameserver 10.0.0.254
223.5.5.5 阿里云公司提供的DNS服务器 ***
114.114.114.114 电信公司提供的DNS服务器
8.8.8.8 谷歌公司提供的DNS服务器
文件配置如何生效:立即生效不需更改
3)本地域名解析配置文件
文件路径信息:/etc/hosts
文件作用说明:实现本地名称解析 (用于访问不同服务器);用于网站测试;(web服务器、数据库服务器、存储服务器、监控服务器、日志服务器、备份服务器、审计服务器、缓存服务器等)
文件内容信息:
#vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.201 db01(使访问db01时解析成10.0.0.201)
文件配置如何生效:立即生效不需更改
4)开机自动运行命令文件:
文件路径信息:/etc/rc.local
文件作用说明:让系统启动后自动运行命令信息
需求:系统启动好
1、将重要数据做好初始备份
2、系统启动后自动清除回收站数据
3、实现自动存储设备挂载
#vi /etc/rc.local
添加+
mkdir /backup #建立备份文件夹
cp /etc/hosts /backup #将/etc/hosts文件备份到/backup
rm -rf /tmp/* #删除tmp下的所有文件
mount /dev/cdrom /mnt #挂载光盘
文件配置如何生效
/etc/rc.local为/etc/rc.d/rc.local的快捷方式,
所以需要给/etc/rc.d/rc.local执行权限
#chowd +x /etc/rc.d/rc.local #为rc.local文件添加执行权限
文件内容信息:
#!/bin/bash #脚本文件
什么是脚本文件:将复杂工作简单化,将重复工作高效化(堆命令的文件)
脚本文件如何执行:
方法1:sh 脚本文件.sh
方法2:脚本文件.sh(需要完整路径以及必须确认脚本文件有执行权限)x--execute
#chowd +x test.sh #为test.sh增加执行权限
系统自动挂载文件
文件路径信息:/etc/fstab
文件作用说明:实现存储设备自动挂载
文件配置信息:
UUID / xfs defaults 0 0
了解fstab文件配置:man fstab
1、挂机存储设备信息:表示方式UUID
2、挂载点目录信息 / 挂载点
3、文件系统类型 xfs 默认centos7文件系统
4、挂载参数信息 决定了是否可以向存储设备中存储数据 ro rw
5、是否进行磁盘备份 影响磁盘存储效率 磁盘利用率会降低
6、是否进行磁盘检查 影响磁盘存储效率
如何配置信息:
1、如何进行光驱自动挂载操作
一:编写配置文件
/dev/cdrom /mnt iso9660 defaults 0 0
二:重启系统(使配置文件生效)
reboot
2、如何进行磁盘自动挂载
一:编写配置文件
blkid #查看UUID
UUID /oldboy xfs defaults 0 0
二:重启系统
reboot
系统环境变量
文件路径信息:/etc/profile
文件作用说明:可以设置环境变量,可以设置别名功能
环境变量:
变量如何设置:字母、数字、下划线
X(变量)=10(变量值)
变量如何使用:$+X(变量)
info="oldgirl"
echo "$info"
#显示内容即是oldgirl
一:环境变量都是由大写字母组成
二:环境变量都是系统默认设置好的变量
三:环境变量是有特殊作用的变量
$PATH —— 让系统用户可以直接运行命令
命令执行逻辑:1、用户输入命令——>系统加载PATH环境变量 $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
保存二进制目录
2、在指定环境变量目录中找寻执行命令的文件
环境变量路径中找到命令文件——>执行命令功能
环境变量路径中找不到命令——>提示报错信息 (命令找不到、命令不存在)
四:环境变量设置完毕后,影响所有用户
环境变量设置方法:
临时生效:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:
永久生效设置:
vi /etc/profile
(G切换到最后一行添加以下内容)
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
永久配置生效:
方法一:重新连接
方法二:source /etc/profile 利用命令重新加载配置文件
. == source 同等作用,系统默认别名
可以自己发明系统命令:
创建一个命令,将数据放到回收站里面
一:vi del
#!/bin/bash
mv $* /tmp
:wq保存退出
二:将文件放入到环境变量PATH路径中
三:将命令文件权限修改
chmod +x /bin/del
别名设置
作用:简化命令操作
临时设置
alias ——查看别名信息
alias rm='rm -i' (为rm设置别名等于rm -i)
unalias rm (临时取消别名)
alias 别名名称='真正命令'
永久设置
vi /root/.bashrc
vi /etc/profile
按G到最后一行添加以下内容
alias rm='rm -i' (为rm设置别名等于rm -i)
需求:执行rm命令,等价于将删除数据移动到回收站
alias rm='mv -t /tmp'
vi /etc/profile,将以上内容添加至最后一行
:wq 保存退出
source /etc/profile
永久设置别名和环境变量设置方法:
有4个文件可以设置
/etc/profile /etc/bashrc 全局配置:影响所有用户
/~/.bashrc /~/.bash_profile 局部配置:只影响指定用户
局部优先于全局
取消别名功能:
方法一:unalias rm 清除别名
方法二:使用命令绝对路径 /usr/bin/rm + 要删除的文件或目录
方法三:使用撬棍
\rm + 要删除的文件或目录
/etc/profile 优先级最低
/etc/bashrc 优先级第二
/root/.bashrc 优先级第三
/root/.bash_profile 优先级第一
同一个文件,相同命令,下面的生效
系统运行级别文件
文件路径信息:/etc/inittab
文件作用说明:定义系统启动后,自动开启哪些软件程序
系统运行级别:
centos6: 0 -- 系统关机级别(init 0) 1 -- 单用户模式 (可以用于破解系统密码、救援恢复系统数据) 2 -- 系统多用户级别(没有网络多用户级别) 3 -- 系统多用户级别(拥有网络多用户级别、系统默认登录级别) 4 -- 未使用级别 5 -- 系统图形化级别 6 -- 系统重启级别 (init 6)
设置方法:
临时设置:init + 级别数字
永久设置:vi /etc/inittab 最后一行 xx:3 :XXX改成你想要的级别
查看级别:runlevel
centos7(target模式):
ll /usr/lib/systemd/system/runlevel*target
lrwxrwxrwx. 1 root root 15 Dec 2 17:27 /usr/lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 13 Dec 2 17:27 /usr/lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 17 Dec 2 17:27 /usr/lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 Dec 2 17:27 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 Dec 2 17:27 /usr/lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 Dec 2 17:27 /usr/lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 Dec 2 17:27 /usr/lib/systemd/system/runlevel6.target -> reboot.target
设置方法:
查询级别命令:systemctl get-default
临时设置:init + target模式
永久设置:systemctl set-default 相应的target
系统登录提示信息
文件路径信息:/etc/motd
文件作用说明:登录系统后显示的提示信息
文件路径信息:/etc/issue *** /etc/issue.net
文件作用说明:登录系统前显示的提示信息
系统主机名称配置文件
文件路径信息:/etc/hostname
文件作用说明:修改主机名称
PS:企业需求,需要统计主机信息 == 资产管理
主机名称信息——主机网络地址——主机品牌型号——主机CPU——主机内存——主机存储信息等
主机名称规范:区域—机房名称—机柜号码—机器编号
BJ-pbs-010203-01
系统名称修改:
临时修改:
hostname + 主机名
永久修改:
vi /etc/hostname 修改主机名
hostnamectl set-hostname 主机名 (临时也修改,永久也修改)
操作系统软件安装(4方法)
第一种:利用rpm命令安装软件
命令简单介绍
rpm:RPM软件包管理命令 软件包都称为rpm包
命令使用方法:
安装准备:必须要有软件包
rpm -ivh
i (install装软件) v(显示安装过程) h(以人类能看懂的方式)
缺点:无法解决软件依赖关系
第二种:利用yum命令安装软件
命令简单介绍:
yum:可以下载软件 并安装软件
命令使用方法:
yum install -y 软件名
yum reinstall -y 软件名 (重新安装)
缺点:过度依赖网络,不能定制一些功能
第三种:利用编译命令安装软件(源码安装软件)
命令简单使用:
软件程序源码包——>configure(指定软件安装目录,指定软件功能)——>make ——>make install 编译安装
缺点:需要解决软件依赖,安装复杂度较高,安装软件更灵活
第四种:二进制包安装方法 (绿色软件安装包)速度快
安装软件过程:
二进制压缩包——>解压——>数据保存好——>简单配置——>启动程序)
缺点:无法解决软件依赖关系,功能单一
操作系统日志文件查看
日志文件:记录系统或者服务的运行情况(正常信息)(异常信息*)
cat /var/log/nginx/error.log(nginx错误路径)
日志文件保存路径:/var/log/
日志重要文件信息:
/var/log/messages ——系统运行或者服务运行状态信息的日志文件
/var/log/secure —— 系统用户登录情况日志文件
Dec 4 19:42:44 mwy sshd[8254]: Address 10.0.0.1 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Dec 4 19:42:45 mwy sshd[8254]: Accepted password for root from 10.0.0.1 port 53110 ssh2
Dec 4 19:42:45 mwy sshd[8254]: pam_unix(sshd:session): session opened for user root by (uid=0)
第一列:日志产生时间
第二列:主机名称信息
第三列:登录主机方式 ssh远程登录 login直接登录
第四列:登录成功或失败的具体信息
(opened或者closed代表打开或关闭)
日志文件如何查看:
head ——查看一个文件头部10行内容 加—数字可指定行数
tail ——查看一个文件尾部10行内容 加—数字可指定行数
tail -f ——实时查看文件变化内容信息,当文件被删除后停止追踪
tail -F——实时查看文件变化内容信息,文件被删除后保持重试,当创建同名文件后继续追踪
grep 筛选字符 日志文件 ——过滤文件信息
grep -i failed /var/log/secure
忽略大小写帅选secure 文件中含有failed内容
操作系统基础优化
1)系统用户优化:
如何创建用户:
useradd + 用户名
id + 用户名查询用户是否存在
用户设置密码:
方法一:交互式设置密码(输入两次密码信息)
passwd oldboy
输入密码:
确认密码:
方法二:免交互式设置密码
echo 123456 | passwd --stdin oldboy
管道符号:|
作用:将前面的命令执行结果信息 通过管道 输出给后面的命令加载使用
如何使用创建的用户:
方法一:重新建立远程连接
方法二:su - 用户名
su - oldboy
PS:root前往其他用户无需密码信息,其他用户切换至root或别的用户,需要密码信息
如何删除用户:
userdel oldboy #删除oldboy用户
2)系统下载优化:
优化选择软件仓库:(更新yum源文件)
1、软件仓库中软件比较全面,定期更新
2、软件仓库服务器网络必须问题
最终选择
阿里源:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.53322f70j4DgVa
下载优化过程:
确认是否有下载源目录:/etc/yum.repos.d/
完成下载优化操作:
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
清华源:https://mirrors.tuna.tsinghua.edu.cn/help/centos/
vi /etc/yum.redos.d/CentOS-Base.repo
下载基础软件:
vim ——vi 升级版
telnet——用于测试服务端口 telnet 服务器地址 服务端口
nc ——用于测试服务端口 nc 服务器地址 服务端口
nmap——用于测试服务端口 nmap 服务器地址 -p 服务端看
net-tools——使centos7系统可以支持centos6中网络相关命令
wget ——用于下载软件
bash-completion ——将部分命令参数进行补全
lrzsz ——用于从linux系统下载数据,也可以将windows数据上传到linux
sz -y 数据文件 rz -y 数据文件或直接拖拽
开发人员完成开发软件:放入不同平台(审核)
base软件平台:审核操作标准严格
epel软件平台:审核操作标准较松
epel下载源优化:
3)系统安全优化:
PS:系统的安全—反比—系统性能
firewalld 防火墙服务:
***者(*** ***) 外面 防火墙(安全策略 默认) 里面 网站架构
临时关闭:
systemctl stop firewalld 关闭防火墙
systemctl status firewalld 查看防火墙状态
systemctl is-active firewalld 查看防火墙状态精简
永久关闭:
systemctl diable firewalld 永久关闭防火墙
systemctl status firewalld 查看防火墙开机是否启用
systemctl is-enabled firewalld 精简查看防火墙开机状态
selinux 安全服务:
root 管理员用户 利用selinux程序配置,限制root用户的能力
oldboy 普通用户
临时关闭:
setenforce 0(permissive) 临时关闭selinux
setenforce 1(enforcing) 临时开启selinux
getenforce 查看selinux状态
0——功能开关关闭 1——功能开关开启
永久关闭:
vi /etc/selinux/config
找到SELINUX改成SELINUX=desabled(enforcing是开启,permissive自由)
保存退出
查看selinux状态:getenforce
永久关闭生效:重启系统
永久启动程序:修改配置文件——重启系统——等待很长时间——重新加载selinux程序
技能领域各种问题:解决问题大招
1、重启系统服务
2、重启操作系统
3、重装操作系统
4)系统时间优化:
时间信息同步操作
系统时间同步,和所在时区同步
自动同步时间:
方式一:利用timadatectl
10为整数字符 10.01为浮点字符 abc为char字符串 0或者1为布尔类型字符
timedatectl status 查看时间、时区等信息
timedatectl timezone Asis|Shanghai 设置时区为亚洲上海
timedatectl set-ntp 1 同步网络时间
timedatectl set-local-rtc 1 同步硬件时间和电脑时间一样
yum -y install chrony 安装系统同步软件
systemctl start chronyd 启动同步软件服务
systemctl enable chronyd 让时间同步软件开机自启
方式二:利用ntpdete
yun -y install ntpdate
ntpdate ntp.aliyun.com 找时间服务器
情况一:下载软件包 软件包名称和命令名称一致
yum -y install ntpdate 直接安装使用即可
情况二:下载软件包 软件包名称和命令名称一致
yum provides locate (检索含有locate的软件包)
yum search locate (搜索含有locate的软件包)
手动修改时间:
方式一:利用timedatectl
timedatectl set-timezone Asis|Shanghai 设置时区为亚洲上海
timedatectl set-time "2019-05-12 12:23" 手动设置时间
yum -y install chrony 安装系统同步软件
systemctl start chronyd 启动同步软件服务
systemctl enable chronyd 让时间同步软件开机自启
方式二:利用命令date
date “月日时分年” 手动更改时间
5)字符编码优化:
解决中文乱码,系统提示信息变为中文
字符编码修改方法:
UTF-8 支持中文
GBK-xx 支持中文
修改字符编码:
$LANG
en_US.UTF-8
临时修改:LANG=zn_CN.gbk
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8 支持中文的字符编码
localectl list-locales 查询字符编码信息
localectl list-locales | grep "zh_CN" 查询支持中文的字符编码
永久修改
localctl set-locale "LANG=zn_CN.gbk"
6)远程连接优化:
提升远程连接速度
vi /etc/ssh/sshd_config ---远程服务配置文件
UseDNS no ---是否开启DNS反向解析过程
DNS 已知域名-->解析-->IP 利用IP地址通过网络---访问IP地址主机
已知IP地址-->访问服务器中的服务 22端口 ssh远程服务
收到谁访问 源IP:10.0.0.1
服务端询问-->10.0.0.1名称或者域名是什么
RDNS 已知IP地址-反向解析->名称域名信息 (影响速率)
GSSAPIAuthentication yes GSSAPI身份验证 关闭改成no
systemctl restart sshd 重启sshd服务生效
7)系统提示符优化:
改组成信息 颜色优化
特殊环境变量:PS1 = [\u@\h \W]\$
[\u@\h \W]\$
[root@mwy ~]#
\u---表示登录系统用户信息
\h---表示主机名称信息
\W---显示当前路径信息(相对路径)
临时修改:
PS1='[\u@\h \w]\$' 可以改成显示绝对路径
\w---显示当前绝对路径信息
永久修改:
vi /etc/profile 加入信息保存退出
修改命令提示符颜色:
临时修改
\[\e[32;1m] 字符串信息添加颜色 数字信息表上不同颜色 m代表字体信息加粗
[\u@\h \W \t]\$ 命令提示符
\[\e[0m\] 停止后面字符串颜色修改
PS1='\[\e[32;1m\][\u@ \W \t]\$ \[\e[0m\]'
运维操作文件信息:
1)先将文件进行备份
2)编辑文件内容信息
3)利用对比命令分析错误
vimdiff(对比文件,找出错误) + 配置文件信息+备份文件信息
系统信息查看方法
系统信息查看:
1)使用系统版本信息:centos 7.6
cat /etc/redhat-release 查看系统版本信息
CentOS Linux release 7.6.1810 (Core)
2)使用系统内核信息
uname -a
Linux mwy 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
硬件信息查看
1)CPU
查看文件信息:
cat /proc/cpuinfo
model name : Intel(R) Core(TM) i5-8300H CPU @ 2.30GHz CPU名称
cpu MHz : 2303.999 CPU主频
cache size : 8192 KB CPU缓存
physical id : 0 服务器上CPU颗数
physical id : 0 physical id : 1
physical id : 0 physical id : 1
2颗CPU
cpu cores : 1 CPU核心总数 显示单颗CPU的内核数量
processor : 0 服务器核心数 服务器上所有CPU的总核心数
grep "physical id" /pro/cpuinfo | uniq | wc -l 统计服务器CPU数量
grep "processor" /pro/cpuinfo | wc -l 统计服务器总核心数
查看CPU命令:lscpu
Core(s) per socket: 1 每颗CPU核心数
CPU(s): 1 服务器总核心数
问题:为什么proc中的信息不能更改
此目录中的所有数据都存储在内存里面,无法更改
2)内存
查看文件信息:/proc/meminfo
cat /proc/meminfo
MemTotal: 995896 kB 服务器总内存容量
MemFree: 734044 kB 服务器内存空闲容量
MemAvailable: 725888 kB 服务器可用内存容量 ***
Buffers: 2092 kB 缓冲(加快写入数据)
Cached: 109016 kB 缓存(加快读取速度)
查询内存信息命令:free -h
3)磁盘
查看挂载信息:/proc/mounts
cat /proc/mounts
/dev/sr0 /mnt iso9660 ro,relatime 0 0
/dev/sda1 /boot xfs rw,relatime,attr2,inode64,noquota 0 0
硬盘 挂载点 硬盘类型
查看挂载信息:df -h
Filesystem Size Used Avail Use%*** Mounted on
/dev/sda3 99G 1.8G 98G 2% /
devtmpfs 476M 0 476M 0% /dev
除了硬盘信息还能查询到容量,使用率
4)系统负载情况
cpu压力-->CPU负载(系统负载)
查看负载信息:/proc/loadavg
cat /proc/loadavg
0.00 0.01 0.05 1/115 10508
每分钟平均负载 5分钟平均负载 15分钟平均负载
命令查看负载信息:w
12:17:36 up 6:51, 3 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 Thu19 3:58m 0.01s 0.01s -bash
root pts/0 10.0.0.1 10:56 1:15m 0.02s 0.02s -bash
root pts/1 10.0.0.1 11:02 0.00s 0.04s 0.00s w
负载数值 <= 服务器总核心数