整体介绍
1.操作系统硬件知识
2.操作系统安装部署
3.操作系统远程连接
4.操作系统基础命令
5.操作系统目录结构
6.操作系统基础优化
一、操作系统硬件
1.硬件主机种类介绍
①电脑种类分类:台式机,笔记本,服务器
②服务器种类:
(1)根据外观分类:机架式服务器、刀片服务器、塔式服务器。
(2)根据尺寸分类:1U 2U 4U 8U U(服务器高度)1U=4.45cm
(3)根据性能分类:x86架构(普通)、小型服务器、大型服务器。(4)根据企业应用:物理主机服务器、云主机服务器。
2.硬件主机组成
3.组成部分详细说明
raid 0 优点:提高数据存储效率缺点:磁盘数据安全性低
raid 1优点:提高数据安全性缺点:存储效率低 损失一半的容量
4.硬件性能排序
5.企业存储数据方案
大型企业
存储:用户→存储数据(高并发)→首先存放到内存的缓冲区→(定时定量)存放到硬盘
读取:用户→读取数据(高并发)→读取预先在内存缓存区存放好的数据→从硬盘读取数据
中小企业
存储:用户→存储数据(低并发)→为保证用户数据的安全性,直接存放到硬盘
读取:用户→读取数据(高并发)→读取预先在内存缓存区存放好的数据→从硬盘读取数据
二、操作系统安装部署硬件环境:
CPU:i5
内存:8G-16G
硬盘:500G软件
环境:Windows 64位 VMware 虚拟化软件 虚拟化:虚拟多个系统共用硬件
创建虚拟环境:
第一步:创建虚拟机网络类型:
a:桥接模式 可以访问外网 优点:
b:nat模式
c:仅主机(host)模式
1.时间选择亚洲上海
2.语言默认英语,添加中文
3.选择迷你安装,勾选1.2.34.分区,
选择自主分区
/boot分区为系统引导分区 200M
/swap分区为临时交换分区 1G
/ 根分区 剩余全部
5.网络设置
选择开机自启动
设置ipv4,
选择手动添加ip地址 子网为10.0.0.XXX 子网掩码为255.255.255.0网关为10.0.0.254
6.设置密码,全国统一123456
三、操作系统远程连接
操作系统远程连接回顾
01.操作系统网络配置:
nmtui【IP地址(身份证) 子网掩码(定义地址范围) 网关地址(主机到其他网络必经之路) DNS信息(域名信息解析地址信息)】 systemctl restart network 如果遇到异常: 网络服务无法正常重启, 请先关闭NetworkManager服务ip a 查看到IP地址
02.操作系统远程连接:
远程连接使用软件: xshell secureCRT
远程软件配置方式: 初始化配置 建立远程连接
3. 远程连接排错思路: 大保健流程
a 确保网络通讯链路正常
b 确认网络拥有阻止策略 systemctl stop/disabled firewalld
c 确认远程服务正常开启 systemctl start/stop/restart/status 服务名称 ssh
4. 虚拟网络模式概念:
a 桥接模式
优点: 可以让其他用户访问你的虚拟主机
缺点: 容易造成网络中地址冲突
b nat模式
优点: 可以随意分配虚拟主机地址, 不容易冲突
缺点: 不容易让其他用户访问虚拟主机
补充: 实现其他用户访问虚拟主机 – 端口转发/端口映射 192.168.37.200 9000 == 10.0.0.200 22
c 仅主机模式
优点: 系统安全性极高
缺点: 不可以访问外网???
四、操作系统基础命令
五、操作系统目录结构
创建文件信息命令: touch 文件信息 (修改文件实践戳信息)
查看文件信息命令: cat head tail
less(读书一样看文件 按行 回车↓/往上↑ 按页 空格↓/b↑)
more(读书一样看文件 按行 回车↓/往上shift+↑ 按页 空格↓/b↑)
编辑文件命令信息:
方法一: 利用vi/vim
基本用法: vi 文件 --> 输入 i --> esc —> wq
用法原理: 编辑三种模式
a 命令模式(输入快捷方式信息)
b 编辑模式(进行文件信息编辑)
c 底行模式(实现一些特殊功能)
命令模式 - i -> 编辑模式 - esc -> 命令模式
命令模式 - 😕? -> 底行模式 - esc -> 命令模式
编辑模式 – 命令模式 – 底行模式命令模式
- 快速移动光标位置
shift+g/ 大写字母G — 快速移动光标到最后一行
gg — 快速移动光标到首行
200gg/300G — 快速移动光标到指定行
shift+6 ^ — 快速移动光标到一行的行首 End 0
shift+4 $ — 快速移动光标到一行的行尾 Home - 特殊操作技巧
u — 撤回操作 undo
ctrl+r — 取消撤回 redo
快速编辑文内容方法:
yy — 进行一行内容快速复制
3yy — 进行三行内容快速复制
p — 粘贴复制的内容
3p — 粘贴三次复制的内容
dd — 删除(剪切)光标所在行内容
3dd — 删除(剪切)三行内容
dG — 将光标以下所有行内容都删除(剪切)
vim编辑模式:
i — 在光标所处位置进入编辑状态
I — 将光标移动到行首进入编辑状态
o — 在当前行下面新起一行进入编辑状态
O — 在当前行上面新起一行进入编辑状态
a — 在光标当前位置下一个字符进入编辑状态
A — 将光标切换到一行行尾进入编辑状态
s — 将光标所在文件字符删除并进入编辑状态
S — 将光标所在位置整行删除并进入编辑状态
r — 将光标所在位置字符进行单个替换
R — 将光标所在位置字符进入连续替换
底行模式:
:wq — 保存退出
:w — 保存
:q — 直接退出
:wq! — 强制保存退出
:w — 保存
:q! — 强制直接退出
:set nu — 显示文件行号信息
:set nonu — 取消行号显示
:%s###g — 文件所有内容做替换
😒###g — 将光标所在行内容进行替换
:2s###g — 将第2行进行替换修改
:2,4s###g — 将第2行到第4行进行替换修改
:2,KaTeX parse error: Expected 'EOF', got '#' at position 2: s#̲##g …s### — 将一行中第一个匹配的信息做替换
:1,3copy3 — 将连续多行内容进行复制操作
:1,3move3 — 将连续多行内容进行剪切操作
:set ic — 设置过滤数据时, 忽略大小写进行过滤
:set ignorecase — 设置过滤数据时, 忽略大小写进行过滤
/信息 — 文件中过滤指定内容(头部开始查找) n 继续向下查找 N 继续向上查找 /oldgirl\c — 忽略大小写
?信息 — 文件中过滤指定内容(尾部开始查找) n 继续向上查找 N 继续向下查找
高级操作方式: 批量编写文件内容 --vim
a 批量多行内容进行添加信息 添加#(分隔符)
第一步: 将光标方编辑行最上面
第二步: 进入批量编辑模式(视图块)
ctrl+v
第三步: 选中编辑多行信息 方向键 上 下
第四步: 回到首行进入编辑模式
shift+i
第五步: 退出编辑模式
esc
b 批量多行内容进行删除信息 删除#
第一步: 将光标方编辑行最上面
第二步: 进入批量编辑模式(视图块)
ctrl+v
第三步: 选中编辑多行信息 方向键 上 下 左 右
第四步: 批量删除选中的信息
d 或者 x
方法二: 利用echo编辑文件内容
echo oldboy > oldboy.txt — 清空文件信息, 添加指定内容
echo oldboy >> oldboy.txt — 向文件最后一行追加新的信息
方法三: 利用cat编辑文件内容
[root@linux67 oldboy]# cat >> oldboy.txt <<EOF(标记)
[> oldboy01
[> oldboy02
[> oldboy03
[> > EOF(标记)
方法四: 利用sed命令编辑文件内容
删除文件命令信息:
rm – remove 删除
rm -f 文件信息 — 强制删除文件信息
rm -rf 目录信息 — 强制删除目录信息
rm -rf / — 默认不允许直接删除/目录
移动文件命令信息:
mv – move
mv /移动数据 /移动路径
mv -t /移动路径 /移动数据
复制文件命令信息:
cp – copy
cp /文件信息 /备份目录
cp -r /目录信息 /备份目录
cp -a /目录信息 /备份目录
5. 系统帮助相关命令:
方式一: man 命令信息 详细信息帮助
方式二: 命令信息 --help 获取参数帮助
方式三: help 内置命令 获取内置命令帮助信息
掌握系统挂载操作
挂载 == 给一个仓库(存储磁盘)开一个门(挂载点目录)
mount 存储设备文件信息 挂载点目录信息(空目录)
mount /dev/cdrom /mnt
umount /mnt
系统下重要目录文件
/bin 存放的是系统命令
/sbin 超级用户使用命令
/boot 存放系统的启动文件及其内核
/dev 设备文件主目录
/etc 系统主配置文件主目录
/home 普通用户家目录
/lib或/lib64 系统文件存放目录 库
/proc 系统进程和系统硬件信息
/usr 系统帮助文档及源码包安装位置
/var 系统配置文件主目录
/mnt 用户手动挂载目录
/run 当前运行目录
/tmp 临时文件存放目录(启动系统时要有一定空间)
/root 超级用户的家目录
1./etc目录下文件
①/etc/sysconfig/natwork-scripts/ifcfg-eth0
文件作用:网络服务配置文件
文件保存路径:/etc/sysconfig/network-scripts/ifcfg-eth0
1)修改网卡文件中的名称:NAME=eth0DEVICE=eth0
2)修改网卡文件本身名称cd /etc/sysconfing/network-scripts/mv ifcfg-ens33 ifcfg=eth0
3)修改系统内核配置文件vim /etc/default/grubGRUB_CMDLINE_LINUX=“biosdevname=0 net.ifnames=0 rhgb quiet”
4)使配置文件生效grub2-mkcofig -o /boot/grub2/grub.cfg
5)重启系统
②resolv.conf
文件作用说明:用于解析名称信息 配置DNS服务器地址
文件保存路径:/etc/resolv.conf
文件配置信息:
generated by NetworkManagernameserver
10.0.0.254
配置文件生效:
两种方法:
1)配置好信息立即生效
2)在网卡中配置DNS,重启网络服务
③hosts 域名解析
文件作用说明:用于解析名称信息 配置域名和IP地址解析记录可以访问域名或主机名
文件保存路径:/etc/hosts
④hostname
文件作用说明:主机名称配置文件
文件保存路径:/etc/hostname
文件配置信息:
主机名称修改方法
系统6
临时修改: hostname oldboyedu
永久修改:vim/ etc/sysconfig/network
重启系统配置依旧生效
系统7
临时修改: hostname oldboyedu
永久修改:
修改文件信息hostnamectl set-hostname oldboyedu.com
⑤rc.local 开机自启动
文件作用说明:文件中的命令信息会在系统启动时自动启动 开机自启动
文件保存路径: /etc/re.local
文件配置信息:
vim /etc/rc.local
mount /dev/cdrom /mnt
脚本的编写
#!/bin/bash
编写完毕后应给权限
chmod +x
脚本编写后运行
sh XXXXX.sh
文件权限信息:
r read 可读 w write 可编辑 x execute
修改文件权限:chmod chmod +x 文件信息
⑥fstab 开机自动挂载
文件作用说明:完成开机自动挂载操作文件
文件保存路径:etc/fstab
文件配置信息:
UUID=601662e6-66c7-4203-a519-5806e1b15784 / xfs defaults 0 0UUID=4bd0fbea-e1fe-427c-a0a2-3b38e4d19cd2 /boot xfs defaults 0 0UUID=8e4a5371-bd85-4e6c-924a-97fc69bc9595 swap swap defaults 0 0
⑦inittab 设置系统默认运行级别
文件作用说明:设置系统默认运行级别
文件保存路径:etc/inittab
修改系统运行级别:
系统6:
临时:init
永久更改运行权限级别
系统7:默认修改系统运行模式
⑧profile 更改环境变量
文件作用说明:配置系统变量 或者 环境变量 或者 别名信息
文件保存路径:/et/profile
永久更改变量需要保存在文件中
临时保存:echo PATH
设置别名功能:
别名作用:
1.简化复杂命令
2.将危险命令转换系统别名设置方法 alias unalias
局部配置文件:~./bashrc ~~./bash_profile
全局配置文件:/etc/profile /etc/bashrc
⑨motd 更改系统开机显示
文件作用说明:系统信息提示
文件保存路径:etc/motd
motd 在用户登录之后提示
issue 在用户登录之前提示
issue.net
2./usr目录下文件
/local | /opt 第三方软件安装程序目录
3./var 目录中重要文件
a /var/log/messages 记录系统或者软件运行情况
b /var/log/secure 记录用户登录系统情况
日志信息如何进行查看:cat
方法一:只查看最新的信息 tail -n
实时查看日志文件最新信息 tail -f
查看最早信息head
方法二:关注指定信息
fail error 错误信息
grep 过滤(筛选)
4./proc (进程文件/核心内容信息)
①/cpuinfo 查看cpu信息
CPU信息查看:/proc/cpuinfo
cat/proc/cpuinfo
physical id : 0 — 服务器上有几颗CPU 出现几次代表有几颗
processor : 0 — 服务器CPU核心数 出现几次代表有几核
grep /proc/cpuinfo
physical id : 0 physical : 0 – 2行 == 服务器有两颗CPU
physical id : 0
physical id : 1 physical : 1
physical id : 1
[root@linux67 ~]# grep “physical id” /proc/cpuinfo | uniq
physical id : 0
physical id : 1
[root@linux67 ~]# grep “physical id” /proc/cpuinfo | uniq |wc -l
使用命令查看
ls cpuCPU(s): 4
Socket(s): 2
补充:wc命令功能介绍
wc - 输出文件中的行数、单词数、字节数
SYNOPSIS 总览
wc [选项列表]… [文件名列表]…
DESCRIPTION 描述
对每个文件输出行、单词、和字节统计数,如果指定了多于一个文件则还有一 个行数的总计。没有指定文件或指定的文件是
-,则读取标准输入。
-c, --bytes, --chars
输出字节统计数。 (包含空格和换行符)一个文字代表三个字符
-l, --lines
输出换行符统计数。
-L, --max-line-length
输出最长的行的长度。
-w, --words 单词串
②/meminfo 内存信息
内存信息:cat /proc/meminfo
MemTotal: 2028116 kB 总内存
MemFree: 398112 kB 空闲内存
MemAvailable: 1604628 kB 可用内存
Buffers: 2092 kB — 划分内存一定空间用于缓冲使用 加快数据写入
Cached: 98352 kB — 划分内存一定空间用于缓存使用 加快数据读写
使用命令查看:free
③/mounts 硬盘信息
硬盘信息: cat /proc/mounts
/dev/sr0 /mnt iso9660 ro,relatime 0 0
/dev/sda1 /boot xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0
01.存储设备文件信息
02.磁盘挂载点信息
03.文件系统类型信息
04.挂载的参数信息
05.是否备份磁盘信息
06.是否检查磁盘
④/lodvag 负载信息
查看负载情况: cat /proc/loadavg
#cat /proc/loadavg
0.09 0.10 0.07 1/133(?) 8019(?)
每1分钟 每5分钟 每15分钟
负载值 <= 服务器总的核心数
查看命令信息:
w uptime top
w
10:36:31 up 1:36, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 09:37 7.00s 0.60s 0.00s w
01 02 03 04 05 06 07
01: 登录系统用户信息
02: 登录系统方式 pts/x(远程登录) ttyx(本地登录)
03: 远程登录主机用户IP地址信息
04: 用户登录主机时间
05: 用户登录主机空闲时间
06: 用户操作系统占用CPU情况
07: 检查用户远程之后再做什么
w — 用户在执行w命令
-bash — 进行基础命令操作
vim — 编辑文件状态
sh xxx — 执行脚本
六、操作系统基础优化
1.系统用户优化
创建用户:useradd
修改密码:passwd XXX(用户名)
单个用户免交互修改密码
echo 123456 | passwd --stdin
批量修改多个用户密码:
for user in zhuzhu xiaozhu binghao ;do echo xiaozhu123|passwd --stdin $user;done
切换用户:su -XXX(用户名) 仅root用户
检查用户:ip -XXX(用户名)
删除用户:userdle
2.命令提示符优化
PS1
临时设置
PS1=XXXX
永久设置存放至/etc/profile
如何修改命令提示符颜色
[\033[01;32m] — 开始给字符添加颜色
\033[0m] — 结束添加颜色过程
3.系统安全优化
安全服务: firewalld(防火墙)-centos7 iptables(防火墙)-centos6
安全服务: selinux (限制root用户行为) 系统权限概念 root管理员
安全服务: firewalld(防火墙)-centos7 iptables(防火墙)-centos6
安全服务: selinux (限制root用户行为) 系统权限概念 root管理员
防火墙服务如何关闭:
临时关闭: centos7 centos6
systemctl stop firewalld /etc/init.d/iptables stop
systemctl is-active firewalld /etc/init.d/iptables status services stop iptables
永久关闭:
centos7 centos6
systemctl disable firewalld chkconfig iptables off
systemctl is-enabled firewalld chkconfig --list iptables
selinux安全服务如何关闭
临时关闭:
setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ] ??
setenforce Permissive | 0
#getenforce
Permissive
永久关闭:
vim /etc/selinux/config
SELINUX=disabled
enforcing - SELinux security policy is enforced.
selinux安全策略会被强制执行
permissive - SELinux prints warnings instead of enforcing.
selinux输出警告信息代替强制执行
disabled - No SELinux policy is loaded.
不加载Selinux策略
sed -i ‘7s#enforcing#disabled#g’ /etc/selinux/config
4.字符集优化
王永民 – 五笔
UTF-8 GBK
a 避免出现字符乱码
字符编码信息如何调整:
临时调整:
LANG=“en_US.GBK”
永久调整:
LANG=“en_US.GBK”
方法一: 将配置信息放入到/etc/profile
LANG=“en_US.GBK”
方法二: 将配置信息放入到/etc/locale.conf
LANG=“zh_CN.gbk”
说明: 配置的字符编码必须是系统可以识别的
localectl list-locales
即临时修改, 又永久修改
localectl set-locale LANG=“en_US.iso88591”
b 可以中文显示信息
localectl set-locale LANG=“zh_CN.utf8”
5.系统时间信息优化
1.修改时间和真正时间同步
时区不正确:timedatectl --help
调整时间信息:
a 手动调整时间 timedatectl set-time TIME
b 自动调整时间 yum install -y chrony
timedatecel set-ntp 1
timedatectl 参数信息:
status Show current time settings
显示目前时间设置信息
set-time TIME Set system time
设置系统时间
timedatectl set-time "2019-10-10 10:57“
set-timezone ZONE Set system time zone
timedatectl list-timezones Show known time zones 时区 显示出已知系统时区信息
修改时区 timedatectl set-timezone America/Los_Angeles
timedatectl set-timezone Asia/Shanghai
set-local-rtc BOOL Control whether RTC is in local time
set-local-rtc 0 rtc功能是关闭
set-local-rtc 1 rtc功能是开启
1 2 3 30 整数
1.11 1.12 1.13 浮点数
1(true) 0(false)布尔型
RTC: 设置硬件时间信息, 设置为1开启, 将系统信息自动同步给硬件
set-ntp BOOL Control whether NTP is enabled
是否设置开启网络时间同步功能(NTP: 网络时间协议)
yum install -y chrony
6.远程连接优化
修改远程服务配置文件
vim /etc/ssh/sshd_config
set nu 显示行号
115 UseDNS yes 改为no – 在远程访问时根据IP地址进行反向解析
79 GSSAPIAuthentication yes 改为no --远程认证方式