第二周笔记
12月2日
操作系统挂载概念
服务器磁盘如何使用
1) 进行磁盘阵列配置
2) 进行系统分区操作
3) 进行磁盘格式化操作
4) 进入磁盘创建文件系统???
5) 进行挂载操作使用 ??? 给一个存储设备开个门
如何进行挂载操作:
第一个历程: 挂载环境准备
PS: linux系统中一切皆文件
准备光驱(分区): /dev/cdrom /dev/ 存储设备文件目录
/dev/sda /dev/sda1 /dev/sda2
/dev/sdb
/dev/sdc
准备挂载门 : 任意空目录 /mnt 临时挂载点目录
第二个历程: 光驱设备中需要放入光盘
第三个历程: 进行挂载操作
mount 设备文件信息 挂载点目录
mount /dev/cdrom /mnt
umount /mnt
第四个历程: 检查确认是否挂载
df --- 检查磁盘信息
系统重要文件数据
/etc目录
1) 网卡配置文件
文件路径信息: /etc/sysconfig/network-scripts/ifcfg-eth0
文件作用说明: 配置网卡地址信息 (IP地址 掩码地址 网关地址 DNS地址信息)
文件详细信息:
TYPE=Ethernet --- 指定网络类型 以太网类型
BOOTPROTO=none --- 获取IP地址方式 none static(手动配置地址) dhcp(自动获取地址)
DEFROUTE=yes --- 是否激活默认?路由? (网络知识)
NAME=eth0 --- 网卡名称信息 逻辑名称
DEVICE=eth0 --- 网卡名称信息 设备名称
UUID=226f4037-72f4-4c0e-b72a-442145f64d81 --- eth0网卡设备编号
ONBOOT=yes --- 是否激活开启网卡
IPADDR=10.0.0.200
PREFIX=24
GATEWAY=10.0.0.254
DNS1=223.5.5.5
文件配置生效: 重启网络服务
方法一: 利用systemctl命令 企业环境不建议
systemctl restart network
方法二: 利用service命令 企业环境不建议
service network restart
方法三: 利用ifxx命令,指定网卡重启
ifdown eth0 && ifup eth0 企业环境配置
方法四: 利用nmcli
https://my.oschina.net/u/3754919/blog/1811361
==================================================
如何修改网卡名称信息:
第一个历程: 修改网卡文件中名称信息
vi ifcfg-ens33
NAME=eth0
DEVICE=eth0
第二个历程: 网卡文件名称重命名
mv ifcfg-ens33 ifcfg-eth0
第三个历程: 让系统内核加载网卡名称修改信息
vi /etc/default/grub
GRUB_CMDLINE_LINUX="xxx net.ifnames=0 biosdevname=0 xxx"
第四个历程: 加载修改配置信息
grub2-mkconfig -o /boot/grub2/grub.cfg
第五个历程: 重启操作系统
reboot
====================================================
2) 域名服务配置文件
文件路径信息: /etc/resolv.conf
文件作用说明: 是否可以访问名称或者域名信息
文件内容信息:
vi /etc/resolv.conf
nameserver 223.5.5.5(DNS服务器地址)
PS: DNS服务器作用: 将域名解析(炮局)成IP地址(派处所)
223.5.5.5 阿里云公司 ***
114.114.114.114 电信公司
8.8.8.8 谷歌公司
配置如何生效: 立即生效
3) 本地域名解析配置文件:
文件路径信息: /etc/hosts
文件作用说明: 实现本地名称解析(用于访问不同服务器) 用于网站测试
web服务器 -网络- 数据库服务器 192.173.16.122 db01
-网络- 存储服务器 187.169.45.231 date01
-网络- 监控服务器 177.187.56.93 zabbix01
文件信息配置:
vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.173.16.122 db01 database01
187.169.45.231 date01
177.187.56.93 zabbix01
4) 开机自动运行命令文件:
文件路径信息: /etc/rc.local
文件作用说明: 让系统启动后, 自动运行命令信息
文件内容信息:
#!/bin/bash 脚本文件
mkdir -p /backup
cp /etc/hosts /backup
rm -rf /tmp/*
mount /dev/sdb1 /oldboy01
mount /dev/cdrom /mnt
PS: 确认/etc/rc.d/rc.local文件必须有执行权限
chmod +x /etc/rc.d/rc.local
什么是脚本文件: 将复杂工作简单化 将重复工作高效化 堆命令文件
脚本文件如何执行:
方法一:
sh 脚本文件.sh
方法二: 必须确认脚本文件有执行权限 x--execute
脚本文件.sh
需求: 系统启动好
1) 将重要数据做好初始备份
2) 系统启动好自动清除回收站数据
3) 实现自动存储设备挂载
12月3日
系统重要文件介绍
1) 系统自动挂载文件
文件路径信息: /etc/fstab
文件作用说明: 实现存储设备自动挂载
文件配置信息:
UUID=2276c35c-a7d0-476b-9ca3-b2cd1bdae20b / xfs defaults 0 0
UUID=2673b61b-1b44-449a-b75a-e8b74bdce018 /boot xfs defaults 0 0
UUID=c067a535-f7bd-420f-9f5f-d88765e3f13f swap swap defaults 0 0
① ② ③ ④ ⑤ ⑥
了解fatab文件配置: man fstab
1) 挂载存储设备信息 表示方式 UUID 文件信息 /dev/sda3
2) 挂载点目录信息 / 挂载点
3) 文件系统类型 xfs 默认centos7文件系统
4) 挂载参数信息 决定了是否可以向存储设备中存储数据 ro rw
5) 是否进行磁盘备份 影响磁盘存储效率 磁盘利用率会降低 数据恢复 0 功能未开启 1 功能开启
6) 是否进行磁盘检查 影响磁盘存储效率 fsck
文件配置生效: 重启操作系统
如何配置信息:
1) 如何进行光驱自动挂载操作
第一个历程: 编写配置文件
/dev/cdrom /mnt iso9660 defaults 0 0
第二个历程: 重启系统
2) 如何进行磁盘自动挂载操作 扩展
第一个历程: 编写配置文件
UUID=4b82f39b-f6e2-4ebc-b494-c67a6a83cde6 /oldboy/oldboy01 xfs defaults 0 0
第二个历程: 重启系统
查看磁盘uuid信息: blkid
2) 系统环境变量 别名功能设置文件
文件路径信息: /etc/profile
文件作用说明: 可以设置环境变量 可以设置别名功能
变量?
变量如何设置: X(变量)=10(变量值) oldboy=10 oldboy=oldboy69 ***
变量如何使用: $X $oldboy ***
环境变量?
1) 环境变量都是由大写字母组成
2) 环境变量都是系统默认设置好的变量
3) 环境变量是有特殊作用变量
$PATH --- 让系统用户可以直接运行命令
命令执行逻辑:
1) 用户输入命令 --> 系统加载PATH环境变量 $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin 保存二进制文件目录
2) 在指定环境变量目录中找寻执行命令的文件
cat 环境变量路径中找到命令文件 ---> 执行命令功能
环境变量路径中找不到命令 ---> 提示报错信息 命令找不到 文件不存在
4) 环境变量设置完毕后, 影响所有用户
环境设置方法:
临时生效:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
永久生效:
vi /etc/profile
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
永久配置生效:
方法一: 重新连接主机
方法二: 利用命令加载profile文件中的配置
source /etc/profile 或者 . /etc/profile
==============================================
可以自己发明系统命令:
创建一个删除命令 作用:将数据放到回收站里面
第一个历程: 编写命令文件del shell
vi del
#!/bin/bash
mv $* /tmp
第二个历程: 将文件放入到环境变量PATH路径中
mv del /bin
第三个历程: 将命令文件权限修改 +x
chmod +x /bin/del
==============================================
别名设置
作用: 简化命令操作 将危险命令设置保险 rm
临时设置:
alias --- 查看别名信息
unalias --- 临时取消别名
alias 别名名称='真正命令'
alias vinet0='vi /etc/sysconfig/network-scripts/ifcfg-eth0'
永久设置:
vi /etc/profile
alias vinet0='vi /etc/sysconfig/network-scripts/ifcfg-eth0'
执行rm命令 等价于将删除的数据移动到回收站?
临时设置:
mv -t /tmp /oldboy/oldboy01.txt
alias rm='mv -t /tmp'
永久设置:
alias rm='mv -t /tmp' --> /etc/profile
#alias rm='rm -i' --> ~/.bashrc
============================================================
别名和环境变量设置方法: 4个文件可以设置
/etc/profile /etc/bashrc 全局配置(国法 强奸罪:不能违背妇女意愿): 影响所有用户
~/.bash_profile ~/.bashrc 局部配置(家规 强奸罪:也不能违背男人意愿): 只影响指定用户 局部优先于全局
============================================================
取消别名功能:
方法一: 利用unalias
方法二: 使用命令绝对路径
/usr/bin/rm /oldboy/oldboy03.txt
方法三: 使用撬棍
\rm /oldboy/oldboy04.txt
12月4日
系统重要文件信息
1) 系统运行级别文件
文件路径信息: /etc/inittab
文件作用说明: 定义系统启动后,自动开启哪些软件程序
一台电脑可能有多个用户使用
运维课程讲师 (虚拟软件 思维导图 通讯软件 文档软件) 系统运行级别1
开发课程讲师 (代码编辑 测试软件 画板软件 通讯软件) 系统运行级别
数据可课程
系统运行级别: 7个级别
centos6
0 -- 系统关机级别 init 0
1 -- 系统单用户级别 用于破解系统密码root 救援恢复系统数据
没有网络服务
2 -- 系统多用户级别 没有网络多用户级别
3 -- 系统多用户级别 拥有网络多用户级别 ***
4 -- 未使用级别
5 -- 系统图形化级别
6 -- 系统重启级别 init 6
设置方法:
临时设置:
init 级别数字
runlevel 查看当前运行级别
永久设置:
vi /etc/inittab
xx:5:xxx
centos7 (target 模式)
ll /usr/lib/systemd/system/runlevel*target
/usr/lib/systemd/system/runlevel0.target -> poweroff.target
/usr/lib/systemd/system/runlevel1.target -> rescue.target
/usr/lib/systemd/system/runlevel2.target -> multi-user.target
/usr/lib/systemd/system/runlevel3.target -> multi-user.target
/usr/lib/systemd/system/runlevel4.target -> multi-user.target
/usr/lib/systemd/system/runlevel5.target -> graphical.target
/usr/lib/systemd/system/runlevel6.target -> reboot.target
设置方法:
临时设置:
init 级别数字
runlevel 查看当前运行级别
永久设置:
# To view current default target, run:
查看当前系统默认运行模式
systemctl get-default
# To set a default target, run:
修改系统默认运行级别
systemctl set-default multi-user.target/graphical.target
2) 系统登录提示信息
文件路径信息: /etc/motd
文件作用说明: 登录系统后显示提示信息
文件路径信息: /etc/issue* /etc/issue.net
文件作用说明: 登录系统前显示提示信息
3) 系统主机名称配置文件
文件路径信息: /etc/hostname
文件作用说明: 修改主机名称
系统名称修改:
临时修改:
hostname web01
永久修改:
vi /etc/hostname
web01
hostnamectl set-hostname backup
PS: 企业需求, 统计主机信息 == 资产管理
主机名称 主机网络地址 主机品牌型号 主机CPU 主机内存 主机存储信息
主机名称: 区域-机房-机柜号码-机器编号
BJ - pbs-010203 - 01
文件路径信息 文件作用说明 文件配置信息 文件配置相关命令 备 注
/etc/sysconfig/network-scripts/ifcfg-eth0 网卡配置文件 配置参数 systemctl
ifup ifdown
nmtui nmcli
/etc/resolv.conf DNS服务配置文件 nameserver ping www.baidu.com
/etc/hosts 本地解析文件 ping dig nslookup
/etc/hostname 主机名称文件 hostname hostnamectl
/etc/rc.local 开机运行命令 文件权限必须为执行权限
/etc/fstab 开机自动挂载存储 df fdisk parted fask 挂载概念 文件系统
mkfs mount umount ...
/etc/profile 设置环境变量/别名 $PATH alias unalias 全局配置 局部配置
/etc/inittab 系统运行级别文件 init runlevel systemctl 关注系统7个运行级别
/etc/motd 登录系统后提示信息
/etc/issue 登录系统前提示信息
04. 系统软件安装方法
第一个方法: 利用rpm命令安装软件
命令简单介绍:
rpm: RPM软件包管理命令 软件包都成为rpm包
命令使用方法:
前提: 必须有软件包
rpm -ivh 软件包名称
-i --- 安装软件
-v --- 显示安装过程
-h --- 以人类可读方式显示信息
缺点: 无法解决软件依赖关系
第二个方法: 利用yum命令安装软件 *****
命令简单介绍:
yum: 可以下载软件 并 安装软件
命令使用方法:
yum install -y 软件名称
yum reinstall -y 软件名称 --- 重新安装 或者 修复软件
缺点: 过度依赖网络 不能定制一些功能
第三个方法: 利用编译命令安装软件 (源码安装软件)
命令简单使用:
软件程序源码包 --> configure (指定软件安装目录 指定软件功能) --> make 编译过程 --> make install 编译安装
代码(c c++ php python) - 翻译 - 系统识别(计算机语言 二进制)
翻译:
有道软件翻译 单词 句子 --- 解释过程 shell python 解释语言
翻译工作者 整个信息全翻译 编译过程 c ++ java
缺点: 需要解决软件依赖 安装复杂度
第四个方法: 二进制包安装方法 (绿色软件安装包)
安装软件过程:
二进制压缩包 --- 解压 --- 数据保存好 -- 简单配置 --- 启动程序
缺点: 无法解决软件依赖 功能单一
05. 系统日志文件查看
日志文件: 记录系统或者服务运行情况 正常信息/异常信息*
日志文件保存路径: /var/log/
日志重要文件信息:
· /var/log/messages --- 系统运行或者服务运行状态信息日志文件
· /var/log/secure --- 系统用户登录情况日志文件
9
用正常登录系统日志信息
Dec 3 22:42:07 oldboy69 sshd[19391]: Accepted password for root from 10.0.0.1 port 2570 ssh2
Dec 3 22:42:07 oldboy69 sshd[19391]: pam_unix(sshd:session): session opened for user root by (uid=0)
① ② ③ ④
第一列: 日志产生时间
第二列: 主机名称信息
第三列: 登录主机方式 ssh远程登录
第四列: 登录成功或失败具体信息
日志文件如何查看:
head --- 查看一个文件头部前面10行内容
tail --- 查看一个文件结尾最后10行内容
tail -f --- 实时查看文件变化内容信息
06. 系统基础优化:
1) 系统用户优化: 如何创建用户 用户设置密码 如何使用创建用户 如何删除用户
· 如何创建用户: useradd oldboy id 用户名称 --- 查看确认用户是否创建成功
· 如何设置密码:
方法一: 交互式设置密码
passwd oldboy --> 输入两次密码信息
方法二: 免交互设置密码
echo 123456 | passwd --stdin oldboy
· 如何使用新建用户
方法一: 重新建立远程连接
方法二: 直接切换用户信息
su - oldboy
PS: 皇帝root -无需密码信息- 平民oldboy
平民oldboy-需要密码信息- 皇帝root
· 如何删除用户
userdel oldboy
2) 系统下载优化: yum下载安装
3) 系统安全优化: 安全相关服务关闭
PS: 系统安全 反比 系统性能
4) 系统时间优化: 系统时间同步, 和所在时区同步
日志文件: 京东服务器 -- 用户购物订单日志文件
5) 字符编码优化: 解决中文乱码 系统提示信息变为中文
6) 远程连接优化: 提升远程连接速度
12月5日
操作系统基础优化
1) 系统下载优化 yum (更新yum源文件)
优化选择软件仓库:
1) 软件仓库中软件比较全面,定期更新
2) 软件仓库服务器网络必须稳定
最终选择:
阿里源: https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.53322f70iBkVGV
下载优化过程:
确认是否有下载优化目录: /etc/yum.repos.d/
完成下载优化操作:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
清华源: https://mirrors.tuna.tsinghua.edu.cn/help/centos/
下载优化过程:
vi /etc/yum.repos.d/CentOS-Base.repo
.....
下载基础软件:
yum install -y vim tree telnet nc nmap net-tools wget bash-completion lrzsz
vim --- 编辑文件内容 vi升级版
telnet --- 用于测试服务端口 telnet 服务器地址 服务端口
nc --- 用于测试服务端口 nc 服务器地址 服务端口
nmap --- 用于测试服务端口 nmap 服务器地址 -p 服务端口
net-tools --- 使centos7系统可以支持centos6系统网络相关命令
wget --- 用于下载软件
bash-completion --- 将部分命令参数进行补全 systemctl start NetworkManager
lrzsz --- 用于从linux系统下载数据 将windows数据上传到linux系统
sz -y 数据信息 rz -y -- 选择上传数据
开发人员开发完成软件: 放入不同平台 (审核)
Base软件平台 : 审核操作标准 严格
epel软件平台 : 审核操作标准 松 Extra Packages for Enterprise Linux
epel下载源优化:
下载优化步骤: https://developer.aliyun.com/mirror/epel?spm=a2c6h.13651102.0.0.53322f70iBkVGV
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
2) 系统安全优化:
firewalld 防火墙服务: 关闭
攻击者(入侵 渗透) 外面 防火墙(安全策略 默认) 里面 网站架构
用户访问 防火墙(安全策略 默认) 里面 网站架构
临时关闭:
systemctl stop firewalld
systemctl status firewalld
systemctl is-active firewalld
永久关闭:
systemctl disable firewalld
systemctl status firewalld.service
systemctl is-enabled firewalld.service
selinux 安全服务: 关闭
root: 管理员用户 皇帝 权利至高无上 利用selinux程序配置 限制皇帝能力
oldboy: 普通用户 平民 权利限制
临时关闭:
setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
setenforce Enforcing --- selinux功能开启
setenforce 1 --- selinux功能开启
setenforce Permissive --- selinux功能临时关闭
setenforce 0 --- selinux功能临时关闭
永久关闭:
vi /etc/selinux/config
# enforcing - SELinux security policy is enforced.
selinux安全策略被强制执行 -- 安全策略启用
# permissive - SELinux prints warnings instead of enforcing.
selinux输出警告信息代替强制执行 -- 临时关闭
# disabled - No SELinux policy is loaded.
没有selinux策略被加载 -- 永久关闭策略功能
SELINUX=disabled --- 永久关闭selinux
永久关闭生效: 重启系统
永久启动程序: 修改配置文件 -- 重启系统 等待很长时间 重新加载selinux程序
3) 系统时间优化
时间信息同步操作:
自动同步时间:
方式一: 实现时间自动同步 利用timedatectl
timedatectl 命令使用方法/参数说明
status Show current time settings
显示目前时间设置信息
set-time TIME Set system time
手动调整设置时间
set-timezone ZONE Set system time zone
设置系统时区
list-timezones Show known time zones
展示系统已知所有时区
set-local-rtc BOOL Control whether RTC is in local time
控制RTC功能是否开启 0关闭 1开启
10 整数字符
10.01 浮点字符
abc char 字符串
0 1 布尔类型字符
RTC 是否将系统时间同步到主板上
set-ntp BOOL Control whether NTP is enabled
是否开启network time protocol (实现时间网络同步)
第一个历程: 修改时区
timedatectl set-timezone Asia/Shanghai
第二个历程: 开启时间同步功能
timedatectl set-ntp 1
第三个历程: 时间同步软件
yum install -y chrony
systemctl start chrony
systemctl enable chrony
方式二: 实现时间自动同步 利用ntpdate
ntpdate 找时间服务器
ntpdate ntp1.aliyun.com
手动修改时间:
方式一: 利用命令 timedatectl
timedatectl set-time "2019-12-5 12:08"
12月6日
字符优化
1) 是为了防止出现中文乱码
查看系统现在的字符编码
修改字符编码的方法
1)临时修改
需要先找到要修改的字符
然后输入
会显示很多字符但我们需要知道我们想用的所以还要做一个grep检索
最后输入完成临时修改
最后是永久修改
临时永久都修改
远程连接优化
解决远程连接较慢
需要在配置文件中进行修改115行将反向解析改成no
然后将79行GASSAPA认改成no
最后需要重启服务
系统提示符优化
查看系统提示符
[ \u@ \h \W]\$
[root@yhm ~]#
\u --- 表示登录系统用户信息
\h --- 表示主机名称信息
\W --- 显示当前路径信息
临时修改提示符
永久修改提示符
在配置文件里加入要修改的提示符信息
系统信息查看方法
系统信息查看方法
版本信息查看 cat /pro/cpuinfo 或者 lscpu
1) CPU
查看文件信息: /proc/cpuinfo
model name : Intel(R) Core(TM) i5-4440 CPU @ 3.10GHz
cpu MHz : 3092.900 主频
cache size : 6144 KB 缓存
physical id : 0 服务器上CPU颗数
physical id : 0 physical id : 0 2颗
cat /etc/redhat-release 显示系统版本信息
系统内核信息 uname -a
grep "physical id" /proc/cpuinfo | uniq |wc -l 服务器CPU颗数
grep "processor" /proc/cpuinfo|wc -l 服务器CPU总的核心数
内存 查看文件信息: /proc/meminfo
MemTotal: 995924 kB --- 服务器总的内存容量
MemFree: 776060 kB --- 服务器内存空闲容量
MemAvailable: 750916 kB --- 服务器可用内容容量 ***
Buffers: 2092 kB --- 缓冲(加快写入数据)
Cached: 80404 kB --- 缓存(加快读取数据)
查看内存信息: free -h
查看负载信息: w
负载数值 <= 总的CPU核心数
查看负载信息: /proc/loadavg
0.00 0.23 0.24
1分钟平均负载 5分钟平均负载 15分钟平均负载
浙公网安备 33010602011771号