Linux目录结构特点
- 一切从根开始 ——"/"
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
- Linux中每个设备(例:磁盘分区 光盘),必须要有一个入口才能使用——Linux
下面的设备必须挂载后才能使用
挂载——相当于给设备开一个入口
设备的入口——相当于挂载点 例:目录/mnt
df -lh 显示磁盘使用情况
- Linux下面每个磁盘分区 可以随意的挂载到Linux目录上面
总结
- 一切从根开始,一切皆文件
- linux下面的设备不挂载无法使用。—挂载 开入口 -挂载点 目录
- 相对路径 不是从根开始 例:etc/hosts
绝对路径 从根开始的 例:/etc/init.d/iptables
- /etc/resolv.conf 配置DNS ——网卡配置文件的DNS优先于/etc/resolv.conf
- Red Hat Enterprise Linux (RHEL)中配置DNS在哪里配置?
① /etc/sysconfig/network-scripts/ifcfg-eth0
② /etc/resolv.conf
- 修改主机名
临时修改的方法:
hostname 查看主机名
永久修改主机名方法:
sed -i 's///g' 生效加 -i
- 查看一个软件是否安装了
[root@learn-k ~]# rpm -qa tree 查看是否安装了tree
[root@learn-k ~]# rpm -ql tree 查看tree里面的安装包内容
linux根下面目录
[root@learn-k ~]# pwd
/root 代表/root用户的家目录为/root
[test@study ~]$ pwd
/home/test 代表普通用户test的家目录为/home/
linux中不同分区的作用
- /etc 配置文件
① 网卡的配置文件
网卡配置文件
[root@learn-k ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 网卡的名字
HWADDR=00:0c:29:45:13:bb MAC地址,硬件物理地址
TYPE=Ethernet 网络类型 以太网
UUID=938c3023-a46c-4bd4-ae15-4f744b0bfe4b 唯一表示码类似以太网
ONBOOT=yes 在开机或者重启网卡时是否开启网卡
NM_CONTROLLED=yes 是否受network程序管理
BOOTPROTO=none 网卡是如何获取IP地址的
# dhcp ==自动获取ip地址 none、static==固定的IP地址
IPADDR=10.0.0.100 网卡的IP地址
NETMASK=255.255.255.0 子网掩码决定这个局域网最多有多少台机器
GATEWAY=10.0.0.2 网关 理解为整个大楼的大门 (一般可以把路由器比喻一个网管)
DNS1=8.8.8.8
USERCTL=no 普通用户是否能控制网卡
PEERDNS=yes 网卡配置文件里面的DNS优先于/etc/resolv.conf
IPV6INIT=no 是否启用IPV6
什么是DNS
- DNS的作用是把域名解析为IP地址 例:www.baidu.com ==119.75.216.20
(域名) (IP地址)
如果没有配置DNS或者配置DNS错误:报错==couldn't reslove host
- linux无法上网排查过程
第一步:
[root@learn-k ~]# ping baidu.com ——ping一个公网域名
ping: unknown host www.baidu.com
第二步:验证DNS是否有故障
可以ping通,说明DNS的配置有问题
如何修改DNS
1)在网卡配置文件中加上
DNS1=223.5.5.5
DNS2=223.6.6.6
[root@learn-k ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 ↑ 网卡配置文件 ↑
HWADDR=00:0c:29:a3:3b:f9
TYPE=Ethernet
UUID=18c5c35a-bab8-449c-a624-473aaaeb41df
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=10.0.0.100
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
USERCTL=no
PEERDNS=yes
IPV6INIT=no
DNS1=223.5.5.5
DNS2=223.6.6.6 #——vim模式下添加DNS地址
2) 重启网卡生效
[root@learn-k ~]# /etc/init.d/network restart ——重启网卡
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: Determining if ip address 10.0.0.100 is already in use for device eth0...
[ OK ]
3) 检查看是否可以ping
[root@learn-k ~]# ping www.baidu.com
PING www.a.shifen.com (111.13.100.92) 56(84) bytes of data.
64 bytes from 111.13.100.92: icmp_seq=1 ttl=128 time=5.61 ms
64 bytes from 111.13.100.92: icmp_seq=2 ttl=128 time=5.05 ms
64 bytes from 111.13.100.92: icmp_seq=3 ttl=128 time=4.97 ms
^C ————这一步证明DNS已经配置成功
/etc/hosts
- /etc/hosts 解析主机名 ip地址与主机名的对应关系
- 主要是用来进行测试
例如: 10.0.0.100 ke good
- 方便大家使用
例如: www.121212.asasa.jingdong.com www.jingdong.com
/etc/fstab
filesystem table 在开机的时候会自动给设备开启入口列表 开机的时候自动挂载列表
UUID=4e8eec06-ce9b-41db-8668-85f8184ae6b3 / ext4 defaults 1 1
UUID=2e505a65-47c2-4f1f-ad5d-816705b4580b /boot ext4 defaults 1 2
UUID=4f04f2db-6383-48d7-aeef-c0b9a51194b7 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
第一列:Device:磁盘设备文件或者该设备的Label或者UUID
1)查看分区的label和uuid
Label就是分区的标签,在最初安装系统时填写的挂载点就是标签的名字。可以通过查看一个分区的superblock中的信息找到UUID和Label name。
例如:我们要查看/dev/sda1这个设备的uuid和label name
第二列:Mount point:设备的挂载点,就是你要挂载到哪个目录下
第三列:filesystem:磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
第四列:parameters:文件系统的参数
Async/sync
设置是否为同步方式运行,默认为async
auto/noauto
当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto
rw/ro
是否以以只读或者读写模式挂载
exec/noexec
限制此文件系统内是否能够进行"执行"的操作
user/nouser
是否允许用户使用mount命令挂载
suid/nosuid
是否允许SUID的存在
Usrquota
启动文件系统支持磁盘配额模式
Grpquota
启动文件系统对群组磁盘配额模式的支持
Defaults
同事具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置
第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1
0
代表不要做dump备份
1
代表要每天进行dump的操作
2
代表不定日期的进行dump操作
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)。
0
不要检验
1
最早检验(一般根目录会选择)
2
1级别检验完成之后进行检验
/etc/rc.local
/etc/rc.local 开机的时候自动运行 自动执行的命令或脚本
让一个软件开机的时候自动运行的两种方法
1) chkconfig管理系统复杂的软件 例:chkconfig iptables off
2) 把这个软件或命令(绝对路径) 放入/etc/rc.local
/etc/inittab——修改系统运行级别
1) 0-6运行级别含义 ——常用的运行级别
0 关机
1 单用户模式
2 没有NFS, 多用户模式
3 命令行模式 文本 完全的多用户模式
4 没有使用
5 桌面模式 图形化界面模式
6 重启
2) 如何查看运行级别
[root@learn-k ~]# runlevel
5 3 —— 其中第一个5为之前用过的运行级别,3为当前使用的运行级别
3) 如何修改运行级别
方法一: init 临时修改
[root@learn-k ~]# init 5 ——init 加运行级别临时修改
[root@olearn-k ~]# runlevel
3 5
方法二:永久修改运行级别
vim 编辑 /etc/inittab 。把id:3:initdefault: id后面的运行别急修改,注意:一般尽量不要修改运行级别
/etc/init.d
/etc/init.d 目录里面存放的是 软件/服务管理命令
/etc/init.d/network restart ——重启网卡
/etc/init.d/iptables start ——开启防火墙
/etc/init.d/iptables stop ——关闭防火墙
/etc/init.d/iptable status ——查看防火墙运行状态
/etc/profile 配置环境变量 别名
/etc/bashrc 一般配置别名的地方
国法——全系统生效: 家规——只有自己家里生效
/etc/profile ~/.bash_profile
/etc/bashrc ~/.bashrc
以.开头的文件或目录都是隐藏的 查看隐藏文件的内容命令——ls -la
/usr/local
Linux里面编译安装软件的默认的目录 windows默认安装软件的位置 c:\program files
Linux下面安装软件的常见方法:
1)yum 替你下载软件、安装 ,解决依赖关系 。
①方便 简单
②没有办法深入修改
yum install -y tree ——默认安装tree软件不提示
2)rpm 自己下载软件包 自己安装 自己解决依赖 。——安装 解决依赖复杂
rpm -ivh treexxxxxxxxxxx.rpm
3)编译 自己下载软件包 自己安装 自己解决依赖
①自定义
②过程复杂
备菜-切菜 炒菜 上菜
./configure make make install
/var/log/
/var/log/messages ——系统默认的日志
/var/log/secure ——用户的登录信息 谁从哪里登录的是否成功
如何查看日志的内容——日志在运维工作中一般都特别大查看一般用以下几种方法。
①head / tail
②grep
③less /more(向下 到最后一行自动退出)
[root@learn-k ~]# ll /var/log/secure*
-rw------- 1 root root 889 Oct 24 12:18 /var/log/secure
-rw-------. 1 root root 11750 Oct 24 08:44 /var/log/secure-20171024
#自动的把日志 切割
#自动的切割日志 日志轮询
/proc 虚拟目录 里面是内存的一些信息
1)/proc/cpuinfo ——cpu信息
physical id : 0 ——— 第几个cpu
core id : 0 ——— 这个cpu中 第几个核心
cat /proc/cpuinfo ==== lscpu (显示cpu的信息)
2)/proc/meminfo —— 内存的信息
[root@learn-k ~]# free -h —— 显示内存的信息
total used free shared buffers cached
Mem: 980M 710M 270M 228K 100M 423M
-/+ buffers/cache: 186M 794M
Swap: 767M 0B 767M
3)/proc/loadavg load average——负载系统的繁忙程度 平均负载
[root@learn-k ~]# w ———显示负载信息
14:13:43 up 2 days, 22:03, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - Mon16 2days 0.82s 0.82s -bash
root pts/0 10.0.0.1 11:22 1:40m 1.55s 1.55s -bash
root pts/1 10.0.0.1 13:55 0.00s 0.60s 0.24s w
如何判断系统比较忙——当系统的负载接近系统所有cpu的核心总数
4)/proc/mounts ——系统的挂载信息