10.19内容整理和概述
今日内容概要
内容目录
- linux⽬录结构
- linux网络相关配置
- etc⽬录重要⽂件
- user⽬录重要⽂件
- var⽬录重要⽂件
- proc⽬录重要⽂件
- 系统优化相关
- 下载软件优化操作
- 运维操作规范
- 安全相关优化
- 好玩的小东西
linux⽬录结构
⽬录结构特点:
1.linux根下⾯的⽬录是⼀个有层次的树状结构
2.linux每个⽬录可以挂载在不同的设备(磁盘)上挂载 # 挂载:指将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件。
⽬录结构发展过程:
1.⼀块盘:根⽬录 # 根⽬录:/
2.⼆块盘:根⽬录和usr⽬录 # /和/usr
3.后来::FHS⽂件系统⽬录规范
⽬录结构详细说明:
1.bin:存放部分常见命令和二进制的文件目录
2.boot:存放系统相关目录
3.dev:存放设备,硬盘,光驱等相关配置目录
4.etc:存放系统和服务配置相关目录
5.home:存放普通用户目录 # 贫民窟
6.lib/lib64:存放资料,工具,库文件目录
7.lost+found:当磁盘,文件系统毁坏时,作为临时文件存放 # 失物招领
8.media:存放媒体相关数据
9.misc:音体相关目录
10.mnt:临时挂载目录
11.opt:存放第三方软件相关目录
12.proc/sys:存放内存相关信息目录 # 虚拟目录
13.root:存放root用户目录 # 皇宫
14.sbin:存放root用户命令相关目录
15.selinux:存放安全措施相关目录 # 一般会关闭
16.tmp:临时文件存放目录
17.user:存放用户相关程序目录
18.var:存放经常变化的文件目录 # 系统日志,相关服务日志
linux网络相关配置
⽹卡配置⽂件: # etc文件下
'相关操作'
⽹卡配置目录: /etc/sysconfig/network-scripts/ifcfg-eth0#/ens33
⽹卡⽂件修改后,必须重启⽹络服务:systemctl restart network #systemctl参数补全功能需安装:yum install -y vim tree bashcompletion
'配置参数解析'
1.TYPE:规定文件类型
2.BROWSER_ONLY:规定是否只有浏览器可以访问
3.BOOTPROTO:规定启动协议,获取IP地址的⽅法;none为⾃动获取,dhcp为⼿动设置
4.DEFROUTE:是否开启默认路由
5.NAME:规定网卡逻辑名称
6.UUID:产生虚拟化软件的唯一标识,件标识⼀些硬件设备信息
7.DEVICE:规定网卡设备名称
8.ONBOOT:确保⽹卡是否处于激活状态
9.IPADDR:IP地址设置
10.PREFIX:设置⼦⽹掩码,确保⼀个局域⽹⾥⾯可以连接多少台主机,默认253
11.GATEWAY:⽹关信息
12.DNS:域名解析服务
DNS服务设置⽅法: # 网卡ifcfg配置DNS
1.设置为阿⾥云dns服务器地址:
223.5.5.5
223.6.6.6
2.通⽤dns服务器地址:
114.114.114.114
114.114.114.119
3.利⽤移动dns服务器(⾕歌dns服务器):
8.8.8.8
4.使⽤⽹关地址充当dns服务器地址:
10.0.0.254
⽹卡域名解析配置⽂件: # ⽹卡域名解析配置⽂件配置DNS
文件目录: /etc/resolv.conf
优先度:网卡ifcfg > ⽹卡域名解析配置⽂件
主机名称配置⽂件:
文件目录:
1.centos6:/etc/sysconfig/network
2.centos7:/etc/hostname
修改主机名称:
1.临时修改:hostname xxxx(新名字)
2.永久修改:vi /etc/hostname
3.centos7专属修改主机名称⽅式:hostnamectl set-hostname xxxx(新名字)
本地域名解析⽂件:
文件目录:/etc/hosts
功能:指定映射关系 # 例子:输入www.baidu.com,系统自动映射10.0.0.200
解析顺序:先本地域名解析⽂件,在DNS解析
⽹络不通排查流程:
1.确认⽹关地址是否通畅
2.确认⽹卡配置是否正确
3.确认⽹络管理服务关闭
操作代码:
1.systemctl stop NetworkManager
2.systemctl disable NetworkManager
etc⽬录重要⽂件
/etc/fstab:系统挂载信息表
临时挂载:mount /dev/cdrom /mnt
永久挂载:修改⼀个和开机⾃动挂载相关的配置⽂件 # 自己研究
/etc/rc.local:系统每次启动都会加载当前目录内的linux系统命令
操作流程:
1.系统正常加载启动
2.读取rc.local⽂件
3.执⾏⽂件中的命令
4.系统启动成功
添加数据步骤:
1.echo写入 # 例子:echo "cp /etc/sysconfig/network-scripts/ifcfgeth0 /tmp/ifcfg-eth0.bak" >> /etc/rc.local
2.确保命令能执行:chmod +x /etc/rc.d/rc.local
/etc/inittab:系统启动运⾏级别
centos6的7种运⾏级别:
1 单⽤户模式(重置⽤户密码信息root 修复系统)救援模式
2 多⽤户模式 NFS (没有⽹络服务)
3 多⽤户模式 (命令⾏模式) # 正常都是3模式
4 未知 未使⽤
5 图形化界⾯模式(init 5)
6 重启级别
centos7的运行级别:
poweroff.target
rescue.target
multi-user.target
multi-user.target
multi-user.target
graphical.target
reboot.target
调整系统运⾏级别操作:
centos6:
临时修改:init 级别信息
永久修改:vim /etc/inittab
centos7:
获取级别信息:systemctl get-default
修改级别:systemctl set-default
/etc/profile: 配置环境变量信息或者别名信息⽂件 # 重要
环境变量特征:
1.环境变量都⽤⼤写字⺟表示
2.环境变量可以被所有⽤户所使⽤
3.环境⼀般是系统安装就已经设置
定义一个环境变量的步骤:
1.定义变量 # 例子: oldboy=123
2.调取变量信息 # 例子:echo $oldboy
修改环境变量力的变量的步骤:
临时修改:export PS1="[\u@\h \w]\$"
永久修改:
1.vim /etc/profile
2.export PS1="[\u@\h \w]\$ " # 添加内容
3.source /etc/profile # 重新加载⽂件内容
/etc/bashrc:专⻔⽤于设置别名信息
/etc/motd:⽤户登陆系统之后提示信息
/etc/issue.net:⽤户登陆系统之前提示信息
user⽬录重要⽂件
/usr/local/:⽤于保存⽤户安装软件程序信息 # 类似windows的= D:\ProgramFiles (x86)
linux系统安装软件(四种⽅式):
1.yum安装软件
优点:
1.可以解决软件的依赖关系
2.针对出问题的软件可以重新安装修复
2.rpm包⽅式安装软件
缺点:⽆法解决软件依赖问题
主要用处:查看软件信息
3.编译安装软件
优点:安装软件更加灵活 ,支持自定义安装
4.⼆进制包安装软件
优点:安装软件部署效率⾼
var⽬录重要⽂件
/var/log/messages:服务运⾏情况信息、系统运⾏或异常信息
/var/log/secure:⽤户登陆信息保存⽂件
grep查看⽇志信息:
功能:做数据过滤
例子:
查看含有Failed关键字信息: grep "Failed" /var/log/secure
⽇志切割:
应用背景:⽇志⽂件过⼤需做切割处理
proc⽬录重要⽂件
/proc/cpuinfo:存放cpu相关信息
cpu配置相关参数:
1.CPU(s):整个服务器有多少核⼼
2.Core(s) per socket:每颗CPU有多少核⼼
3.Socket:服务器有⼏颗CPU
/proc/meminfo:存放内存信息
内存配置相关参数:
1.MemTotal:服务器的总共内存容量
2.MemFree:服务器未使⽤的CPU容量
3.MemAvailable:服务器还可以使⽤的内存容量
4.Buffers:缓冲
5.Cached:缓存
实时使⽤情况查询命令:free -h
命令查看磁盘信息:df -h
/proc/loadavg: 负载情况信息 # 不能超过核心数
数据解析:
0.00 0.01 0.03
平均每分钟负载 平均5分钟负载 平均15分钟负载
查看负载信息:
1.cat /proc/loadavg
2.w
w查看数据解析:
15:39:53 up 43 min, 2 users, load average: 0.00,0.01, 0.03
当前时间 服务器运⾏时间 连接⽤户数 平均负载情况
查看挂载信息:
1.df -h
2.cat /proc/mounts
系统优化相关
优化相关:
1.性能优化
2.安全优化
3.编码优化
查询系统情况:
1.cat /etc/redhat-release
2.uname -r/-a/-n/-s/...
创建⽤户:
1.useradd jason01(用户名)
2.passwd jason01(用户名)
切换⽤户状态管理主机:su - jason01(用户名)
当前用户查询:whoami
下载软件优化操作
1.支持需要修改yum源⽂件,提高下载速度
例子:curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2.支持需要修改yum扩展源epel源
例子:wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
检查测试:yum install -y bash-completion-extras
3.所有源⽂件更新进⾏最终确认: yum repolist
安全相关优化
地位类比:国⼟安全局
功能: 限制root⾏为 # 实际应⽤不会使⽤它来限制root,较为麻烦,基本都是关闭
关闭selinux服务程序:
永久关闭:
1.vim /etc/selinux/config
2.SELINUX=disabled
3.重启linux系统
临时关闭:setenforce [ Enforcing | Permissive | 1| 0 ]
查看selinux服务状态:getenforce
防护墙相关:
centos6(iptables):
1.临时关闭防⽕墙:/etc/init.d/iptables stop
2.查看防火墙状态:/etc/init.d/iptables status
3.永久关闭防⽕墙:chkconfig iptables off
4.查看防火墙状态:chkconfig iptables
centos7(firewalld):
1.临时关闭防⽕墙:systemctl stop firewalld.service
2.查看防火墙状态:systemctl status firewalld.service
3.永久关闭防⽕墙:systemctl disable firewalld.service
4.查看防火墙状态:systemctl status firewalld.service
应用场景:
建议开启:服务器可以被外界访问(公⽹/外⽹ip)
建议关闭:服务器可以被内部访问(私⽹/内⽹ip)
建议关闭:服务器处于⾼并发状态(公⽹/外⽹ip) # 软件防⽕墙关闭 硬件防⽕墙进⾏安全控制
运维操作规范
操作准则:
1.操作之前进⾏检查
2.操作之前进⾏备份
3.操作之后进⾏确认
4.操作之后进⾏总结
具体操作:
1.检查相应路径是否存在备份⽂件 # 如果有备份⽂件:进⾏删除
2.先在命令⾏进⾏测试执⾏
3.编辑开机⾃动加载命令配置⽂件rc.local
4.重启系统进⾏确认
好玩的小东西
下载:yum install sl cowsay -y
输入:
1.sl
2.cowsay "Jason!!!"
3.animalsay "哒哒哒"
.....