linux-目录结构
目录结构
目录结构预备知识
-
结构特点说明
1.linux根下⾯的⽬录是⼀个有层次的树状结构
2.linux每个⽬录可以挂载在不同的设备(磁盘)上 挂载
什么是挂载:
就如同 磁盘-设备(房间) 想存储东⻄ 从⻔进⼊>:⽬录(挂载点) 磁盘设备 《-- 挂载 --》 ⻔(⽬录)
-
实践操作实现挂载过程
第⼀个⾥程:拥有⼀个存储设备(光驱)
第⼆个⾥程:找到相应光驱设备
[root@jasonNB ~]# ls /dev/cdrom/dev/cdrom [root@jasonNB ~]# ls -l /dev/cdrom lrwxrwxrwx. 1 root root 3 Dec 6 09:07/dev/cdrom -> sr0
第三个⾥程:进⾏挂载操作
mount /dev/cdrom /mnt/(挂载点⽬录⼀定存在)
第四个⾥程:确认是否挂载成功----> ls /mnt
第五个⾥程:取消挂载----> umount /mnt
目录结构说明
-
目录结构的发展过程
一块盘:根目录
两块盘:/usr 目录
拓展: FHS⽂件系统⽬录规范
重要目录数据信息说明
网卡配置文件
命令 | 指令 |
---|---|
⽹卡配置⽂件 | /etc/sysconfig/network-scripts/ifcfg-eth0或ens33 |
编辑⽹卡⽂件时提前备份 | cp xxx /tmp/xxx.bak |
调⽤上⼀个命令最后⼀个参数信息 | ps:esc + . |
⽹卡⽂件修改后,重启⽹络服务 | systemctl restart network |
初始化软件安装 yum install -y vim tree bashcompletion(提供命令参数补全功能 systemctl)
-
网卡配置文件内部字段数据的信息
BOOTPROTO=none 启动协议 获取IP地址的⽅法 ⾃动获取 dhcp⼿动 设置 DEFROUTE=yes 开启了默认路由 ⽹络(默认路由 动态路由 静态路 由) NAME=eth0 ⽹卡逻辑名称 UUID=... 在虚拟化软件标识⼀些硬件设备信息 DEVICE=eth0 ⽹卡设备名称 ONBOOT=yes 确保⽹卡是否处于激活状态 IPADDR=10.0.0.200 IP地址设置 PREFIX=24 设置⼦⽹掩码确保⼀个局域⽹⾥⾯可以连接多少台主机默认253 GATEWAY=10.0.0.254 ⽹关信息 不同局域⽹之间进⾏通讯的必经关卡 需要和虚拟编辑器中nat⽹卡设置保持⼀致 IPV6_PRIVACY=no DNS=114.114.114.114 DNS 域名解析服务
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
网卡域名解析配置文件 / etc/resolv.conf
-
网卡域名解析的配置文件的编辑命令操作
vi /etc/resolv.conf nameserver 114.114.114.114 nameserver 223.5.5.5
配置完成,⽴即⽣效 ⽹卡的dns配置优先于resolv.conf⽂ 件中的配置
主机名称配置文件
-
不同版本的不同主机名称配置⽂件
版本 命令路径 centos6 /etc/sysconfig/network centos7 /etc/hostname -
修改主机名称
-
第⼀个⾥程:利⽤命令修改主机名称 (临时修改)
hostname jasonNB
修改完成,需要重新连接,才能命令⽣效
-
第⼆个⾥程:编辑修改配置⽂件 ( 永久修改)
vi /etc/hostname centos7有特殊修改主机名称⽅式: hostnamectl set-hostname oldboyds05
-
本地域名解析文件 /etc/hosts
-
⽹站⻚⾯信息变更
小公司 直接调试线上服务器 通常在夜间操作用户少,易维护
⼤企业 直接调试测试服务器测试访问 模拟真实环境访问
-
大企业事例
京东线上⽹站服务器地址 112.65.34.1
京东线下⽹站服务器地址 10.0.0.200
调制本地域名
[root@jasonNB ~]# vi /etc/hosts 10.0.0.200 www.jd.com # 指定映射关系
网络不通排查流程
1.确认⽹关地址是否通畅
2.确认⽹卡配置是否正确
3.确认⽹络管理服务关闭
systemctl stop NetworkManager
systemctl disable NetworkManager
etc⽬录下重要的数据⽂件
/etc/fstab
filesystem table 系统挂载信息表
磁盘 --- 分区格式化 --- 系统中可以看到磁盘设备 --- 挂载 (开了个⻔)
所有存储设备必须挂载才能使⽤
-
挂载分为临时挂载和永久挂载
临时挂载: mount /dev/cdrom /mnt
永久挂载: 修改⼀个和开机⾃动挂载相关的配置⽂件 /etc/fstab
-
设置文件
设备文件 挂载点 /dev/第⼀个分区 /boot /dev/第⼆个分区 swap /dev/第三个分区 / 查看⽂件内容: cat /etc/fstab
查看磁盘分区 : blkid
-
总结
实现磁盘存储设备,挂载操作永久⽣效,开机⾃动加载挂载信息
/etc/rc.local
此⽂件中只能存放linux系统命令操作信息
-
此⽂件操作流程
①系统正常加载启动
②读取rc.local⽂件
③⽂件主要保存命令 信息
④执⾏⽂件中的命令
⑤系统启动成功
-
开机自动备份
cp /etc/sysconfig/network-scripts/ifcfg-eth0/tmp/ifcfg-eth0.bak echo "cp /etc/sysconfig/network-scripts/ifcfgeth0 /tmp/ifcfg-eth0.bak" >> /etc/rc.local
centos6:按照以上说明进⾏操作即可
centos7:chmod +x /etc/rc.d/rc.local
-
运维操作规范(运维⼈员==救⽕队员)
①操作之前进⾏检查
②操作之前进⾏备份
③操作之后进⾏确认
④操作之后进⾏总结
-
具体操作
①检查相应路径是否存在备份⽂件 有备份⽂件:进⾏删除
②先在命令⾏进⾏测试执⾏
③编辑开机⾃动加载命令配置⽂件rc.local
④重启系统进⾏确认
/etc/inittab centos6 vs centos7
-
系统启动运⾏级别
A系统启动:⽹络服务运⾏ 安全服务运⾏ 存储服务运⾏ 01级别 B系统启动:安全服务运⾏ 存储服务运⾏ 02级别 C系统启动:存储服务运⾏ 03级别
三种系统:运⾏启动级别不⼀样
-
centos6 (7种运⾏级别)
0 关机级别(init 0) 1 单⽤户模式(重置⽤户密码信息root 修复系统)救援模式 2 多⽤户模式 NFS (没有⽹络服务) 3 多⽤户模式 (命令⾏模式) 4 未知 未使⽤ 5 图形化界⾯模式(init 5) 6 重启级别
-
centos7 (target⽬标)
ls /usr/lib/systemd/system/runlevel*target -l poweroff.target rescue.target multi-user.target multi-user.target multi-user.target graphical.target reboot.target
-
调整系统运⾏级别
1.centos6
init 级别信息 临时修改
vim /etc/inittab 永久修改
2.centos7
systemctl get-default 获取级别信息
systemctl set-default 修改了级别
/etc/profile
配置环境变量信息或者别名信息⽂件(重要)
-
环境变量特征
1.环境变量都⽤⼤写字⺟表示
2.环境变量可以被所有⽤户所使⽤
3.环境⼀般是系统安装就已经设置
-
环境变量的里程
第⼀个⾥程:定义变量
[root@jasonNB ~]# oldboy=123
第⼆个⾥程:调取变量信息
[root@jasonNB ~]# echo $oldboy
第三个⾥程:调整变量值信息
[root@jasonNB ~]# oldboy=456 [root@jasonNB ~]# echo $oldboy
/etc/bashrc
专⻔⽤于设置别名信息
-
别名可以让复杂的命令简单化
-
'别名的定义既可以在profile⾥⾯也可以在bashrc⾥设置
/etc/profile 国法 /etc/bashrc 国法 ~/.bashrc 家规 ~/.bash_profile 家规
/etc/motd
⽤户登陆系统之后提示信息
/etc/issue /etc/issue.net(centos7多)
⽤户登陆系统之 前提示信息
usr⽬录下重要的数据⽂件
/usr/local/ ⽤于保存⽤户安装软件程序信息
linux系统如何安装软件(四种⽅式)
-
1.yum安装软件
可以解决软件的依赖关系
例如:
购买外卖所有东⻄都准备集全: yum install -y tree vim bash-completion 针对出问题的软件可以重新安装修复: yum reinstall -y tree vim bash-completion
-
2.rpm包⽅式安装软件
在系统中需要有软件安装包
⽆法解决软件依赖问题 rpm -ivh xxx.rpm -i install 安装 -v verbose 显示详细信息 -h human 以⼈类更好看理解⽅式显示信息 rpm -qa tree -q query 查询 -a all 所有软件信息 rpm -ql vim-enhanced -l list 显示软件安装⽬录的列表信息 rpm -e tree 卸载软件 -e erase 擦出==删除
ps:yum remove tree切勿使⽤该⽅式卸载
-
3.编译安装软件
安装软件更加灵活
eg:购买⻝材(⾮成品)进⾏烹饪 可以灵活调整⻝物的味道
设置软件安装路径 指定软件功能信息
-
4.⼆进制包安装软件
安装软件部署效率⾼
eg:⼩零⻝即⻝即⽤ ⽅便简单
CS 软件安装包(绿⾊版免安装)
var⽬录下重要的数据⽂件
经常发⽣变化的⽂件保存在variable
经常变化的⽂件>>>:⽇志⽂件
命令 | 作用 |
---|---|
/var/log/messages | 服务运⾏情况信息、系统运⾏或异常信 息 |
/var/log/secure | ⽤户登陆信息保存⽂件 |
-
规律查看⽇志信息
[root@jasonNB ~]# grep # 三剑客中⽼三 [root@jasonNB ~]# grep "Failed" /var/log/secure # 对于⽇志⽂件过⼤必须要做切割处理 cat /etc/services >> a.txt # 连续追加 cat a.txt # 查看出现卡顿 secure-0k > secure-100k > ⼤⼩范围10M > 切割securebak01 secure ls -l /var/log/secure* # 查看默认切割策略 按天数切割
proc⽬录重要的数据⽂件
记录⼀些硬件使⽤情况 硬件详细信息
CPU # /proc/cpuinfo
-
命令查看CPU信息
lscpu CPU(s): 4 整个服务器有多少核⼼ Core(s) per socket: 2 每颗CPU有多少核⼼ Socket(s): 2 服务器有⼏颗CPU
-
命令查看内存信息
cat /proc/meminfo MemTotal: 2030172 kB --- 服务器的总共内存容量 MemFree: 1755372 kB --- 服务器未使⽤的CPU容量 MemAvailable: 1728900 kB --- 服务器还可以使⽤的 Buffers: 2076 kB Cached: 86716 kB 实时使⽤情况 free、free -h
-
命令查看磁盘信息
df -h 查看负载情况 cat /proc/loadavg 0.00 0.01 0.03 平均每分钟负载 平均5分钟负载 平均15分钟负载 负载的数值不能超过服务器的核⼼数 8核 7(阈值) 利⽤命令查看负载信息 [root@oldboysh03 ~]# w 15:39:53 up 43 min, 2 users, load average: 0.00,0.01, 0.03 当前时间 服务器运⾏时间 连接⽤户数 平均负载情况 查看挂载信息 df -h cat /proc/mounts # 记录系统挂载信息