Linux系统重要目录与文件详解
Posted magicsimba
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统重要目录与文件详解相关的知识,希望对你有一定的参考价值。
系统重要目录
目录 | 功能 | 目录 | 功能 |
---|---|---|---|
bin | 存储普通用户命令 | sbin | 存储超级用户命令 |
etc | 存储程序的配置文件 | opt | 存储第三方软件数据 |
lib | 存储32位库文件 | lib64 | 存储64位库文件 |
root | 管理者用户目录 | home | 普通用户目录 |
var | 存储经常发生数据变化的文件如日志文件 | boot | 系统启动引导目录 |
mnt | 临时挂载点 | tmp | 缓存目录 |
dev | 存储系统设备文件 | usr | 根目录替身 |
proc | 存储系统进程和内核文件(数据一般在内存中) |
系统重要文件
网络服务配置文件
-
用于存储网络配置信息
/etc/sysconfig/netwwork-scripts/ifcfg-eth0
-
网络服务配置文件配置信息
名称 | 含义 | 参数 |
---|---|---|
TYPE=Etherent | 网络类型 | 以太网网络类型 |
BOOTPROTO=none | 获取地址方式 | 手动静态配置 |
DEFROUTE | 是否开启默认路由 | |
UUID | 设备硬件标识信息 | |
ONBOOT | 网卡激活状态 | |
PREFIX | 子网掩码 | 决定一个局域网内可以有多少个IP地址 |
GATEWAY | 网关 | 实现某一网络主机和其他网络主机进行通讯 |
DNS(domain name system) | 域名解析系统 | 通过DNS服务器转换IP地址为网页地址 |
子网掩码为255进制
-
配置文件生效方法
- 重启网络服务
systemctl restart network
- 异常问题
- 配置文件信息错误或缺失
- NetworkManager服务冲突
关闭NetworkManager服务后重启网络服务
- 针对不同网卡进行重启操作
ifdown eth0 ; ifup eth0
ifdown etho && ifup eth0
- 重启网络服务
-
修改网卡名称方法
-
修改网卡文件中的名称
NAME=eth0
DEVICE=eth0 -
修改网卡文件本身名称
cd /etc/sysconfig/network-scripts/
mv ifcfg-ens33 ifcfg-eth0
-
修改系统内核配置文件
vim /etc/default/grub
GRUB_CMDLINE_LINUX="biosdevname=0 net.ifnames=0 rhgb quiet"
-
使配置文件生效
grub2-mkconfig -o /boot/grub2/grub.cfg
-
重启系统
-
域名解析配置文件
- 配置DNS服务器地址
/etc/resolv.conf
- 文件配置信息
Generated by NetworkManager nameserver 10.0.0.254
- 配置文件生效的两种方法
- 直接配置
resolv.conf
, 会立即生效 - 在网卡中配置DNS, 重启网络服务
- 直接配置
解析名称信息
- 配置域名和IP地址解析记录
/etc/hosts
- 文件配置信息
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 182.61.200.7 www.baidu.com 10.0.0.41 backup
- 配置文件生效方法
文件配置完毕, 立即生效
主机名称配置文件
- 存储本地主机名称
/etc/hostname
- 主机名称修改方法
centos6 | centos7 | |
---|---|---|
临时修改 | hostname 新主机名 | hostnamectl set-hostname 新主机名 |
永久修改 | vim /etc/sysconfig/network | contos7下没有临时永久之分 |
启动后自动执行命令配置
- 文件中的命令信息会在系统启动时自动执行
/etc/rc.local
- 文件配置信息
vim /etc/rc.local
- 配置文件生效方式
- 修改文件权限:
chmod +x /etc/rc.d/rc.local- 什么是脚本文件:
将多个命令操作可以整合在一个文件中, 这个文件就是脚本文件 - 脚本文件编写
#!/bin/bash mkdir -p /oldboy/oldboy01/oldboy02 touch /oldboy/oldboy.txt echo oldboy67 >/oldboy/oldboy.txt mount /dev/cdrom /mnt
- 脚本文件运行:
- 加上sh命令执行脚本文件中信息
sh test_01.sh
- 不要加上sh命令直接运行脚本文件
/server/scripts/test_01.sh
- 加上sh命令执行脚本文件中信息
- 什么是脚本文件:
- 修改文件权限:
开机自动挂载操作文件
-
挂载操作的目的
实现数据存储至磁盘中 -
挂载语法
mount /dev/cdrom /cd-rom 挂载命令 存储设备 挂载点
-
卸载语法
umount /cd-rom 挂载命令 挂载点
卸载时需先退出挂载目录
- 开机后自动挂载文件中指定的分区
/etc/fstab
- 文件配置信息
UUID=8814f471-53b4-4eb7-aee9-a20b2ce6fe64 / xfs defaults 0 0
UUID=7f45bd81-656c-45c3-8c9b-01105857d65a /boot xfs defaults 0 0
UUID=79d951d0-06a4-4f9f-9d10-e273dc25d4d1 swap swap defaults 0 0
01 02 03 04 05 06
- (01) 存储设备文件信息
- (02) 挂载点目录信息
- (03) 文件系统类型
- (04) 默认挂载参数信息
- (05) 是否进行磁盘数据备份
- (06) 是否检查磁盘信息
可以使用UUID或者/dev/sdax进行配置
root@oldgirledu ~]# blkid
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/sda1: UUID="7f45bd81-656c-45c3-8c9b-01105857d65a" TYPE="xfs"
/dev/sda2: UUID="79d951d0-06a4-4f9f-9d10-e273dc25d4d1" TYPE="swap"
/dev/sda3: UUID="8814f471-53b4-4eb7-aee9-a20b2ce6fe64" TYPE="xfs"
- 配置文件生效方法
- 重启系统
mount -a
查看/设置系统默认运行级别
- 存储系统运行级别的配置文件
- contos6:
/etc/inittab
- contos7:
/usr/lib/systemd/system/runlevel*target
- contos6:
- 修改系统运行级别
centos6 | centos7 | |
---|---|---|
临时配置 | init 级别编号 | |
永久配置 | 修改inittab下id:级别编号:initdefault: |
systemctl set-default 模式信息 |
运行级别 | 0 - halt(关机级别) | poweroff.target |
1 - Single user(单用户级别) | rescue.target | |
3 - multi user(多用户有网络) | multi-user.target | |
5 - 图形化级别 | graphical.target | |
6 - reboot(关机级别) | reboot.target |
ll /usr/lib/systemd/system/runlevel*target
查看模式信息
systemctl set-default multi-user.target
配置模式信息
环境变量配置文件
/etc/profile 系统环境变量配置文件
~/.bash_profile 用户环境变量配置文件
/etc/profile.d/*.sh 应用程序环境变量配置文件
- 变量
- 如何应用变量
- 给一个变量赋值
oldboy=123456
- 应用
echo $oldboy
- 给一个变量赋值
- 变量存在的意义: 在脚本中存在
#!/bin/bas info=oldgirl echo /oldboy/$info-01/$info-02/$info-03 /oldboy/oldgirl-01/oldgirl-02/oldgirl-03
指定一些经常变化的信息, 利用变量可以快速修改调整
- 如何应用变量
- 环境变量
PATH
- 系统默认已经设置好的变量
- 环境变量都是大写字母表示
- 环境变量可以被所有用户调用
- 系统环境变量都有具体存在价值
echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local/bin:root/bin
- 修改环境变量
- 临时修改环境变量
直接输入命令添加,每个路径用:
分隔
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin
- 永久修改环境变量
进入/etc/profile
下修改配置文件,每个路径用:
分隔
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin
- 临时修改环境变量
- 配置文件生效
- 重新连接
- 利用命令记录加载
source /etc/profile
别名的配置
/etc/bashrc 系统别名配置文件
~/.bashrc 用户别名配置文件
- 别名的作用
- 简化复杂命令便于重复输入
- 将危险命令进行转换
- 别名的配置
临时配置 | 永久配置 |
---|---|
直接执行命令 | 编辑配置文件 |
alias 别名=‘命令信息‘ |
vim /etc/profile |
alias rm=‘mv -t /tmp/‘ |
alias rm=‘mv -t /tmp/‘ |
将代码添加到配置文件中 |
用户别名优先于系统别名,但仅影响所属用户
- 别名的临时取消(rm命令为例)
- 临时取消
unalias rm
- 临时使用命令的绝对路径
/bin/rm xxx.txt
- 在别名前加上
m xxx.txt
- 临时取消
系统信息提示文件
/etc/issue 用户登录系统之前显示的提示信息
/etc/issue.net
/etc/motd 用户登录系统之后显示的提示信息
第三方软件安装目录
/usr/local
/opt
日志文件目录
/var/log/secure 记录用户登录系统情况信息
/var/log/mesages 记录系统或者软件运行情况
用户登录成功信息 Oct 22 12:13:45 linux67 sshd[8410]: Accepted password for root from 10.0.0.1 port 51635 ssh2 Oct 22 12:13:45 linux67 sshd[8410]: pam_unix(sshd:session): session opened for user root by (uid=0) 用户断开连接信息 Oct 22 12:14:42 linux67 sshd[8410]: pam_unix(sshd:session): session closed for user root 用户登录错误信息 Oct 22 12:15:41 linux67 unix_chkpwd[8437]: password check failed for user (root) Oct 22 12:15:41 linux67 sshd[8435]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.0.0.1 user=root Oct 22 12:15:41 linux67 sshd[8435]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root" Oct 22 12:15:43 linux67 sshd[8435]: Failed password for root from 10.0.0.1 port 51642 ssh2 Oct 22 12:15:47 linux67 sshd[8435]: error: Received disconnect from 10.0.0.1 port 51642:0: [preauth] Oct 22 12:15:47 linux67 sshd[8435]: Disconnected from 10.0.0.1 port 51642 [preauth] 01 02 03 04
-
- 登录连接时间信息
-
- 显示主机名称信息
-
- 登录方式
- sshd(远程连接)
- login(本地连接)
-
- 登录过程详细信息
cat head -n 文件信息 查看文件前n行信息 cat tail -n 文件信息 查看文件后n行信息 cat tail -f 文件信息 实时查看日志文件最新内容
grep
命令 : 筛查
grep 选项 n ‘指定信息‘ 文件信息
选项 | 含义 |
---|---|
-B | 查看指定信息以及前面n行信息 |
-A | 查看指定信息以及后面n行信息 |
-C | 查看指定信息以及前后n行信息 |
-i | 忽略指定信息大小写后查询 |
-c | 仅显示包含指定信息的行数 |
grep -A 5 -i ‘error‘ /var/log/secure 查看‘error‘以及后面5行信息
grep -c error /var/log/secure 统计‘error‘出现的次数
uniq
命令 : 去重
选项 | 含义 |
---|
wc
命令 : 行数统计
选项 | 含义 |
---|---|
-c | 统计文件的字节数 |
-m | 统计文件的字符数 |
-l | 统计文件中的行数 |
-w | 统计文件中的词数 |
进程内核文件
- 资产管理记录文件
/proc/cpuinfo
CPU硬件信息lscpu
/proc/meminfo
内存硬件信息free -h
/proc/mounts
磁盘硬件信息df -h
/proc/loadavg
系统负载情况w uptime top
physical id: 0 不同的数字有几个就有几颗CPU
processor : 0 不同的数字有几个就有几个CPU核心
MenTotal 服务器总内存数量
MemFree 空闲内存数量
MemAvailable 可用内存数量
Buffers 缓冲区,用于加快数据写入
Cached 缓冲区,用于加快数据读取
w
查看用户登录情况
15:39:53 up 15 min, 1 user, load average: 0.00, 0.05, 0.13
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 15:26 2.00s 0.12s 0.01s w
01 02 03 04 05 06 07
- 1.已登录系统的用户信息
- 2.登录系统方式
- pts/x 远程登录
- ttyx 本地登录
- 3.远程登录主机用户IP地址信息
- 4.用户登陆主机时间
- 5.用户登录主机空闲时间
- 6.用户操作占用系统CPU情况
- 7.用户当前操作内容
- w --执行
w
命令 - -bash --进行基础命令操作
- vim --编辑文件状态
-sh xxx --执行xxx脚本
- w --执行
以上是关于Linux系统重要目录与文件详解的主要内容,如果未能解决你的问题,请参考以下文章