linux磁盘分区以及系统目录结构介绍,系统启动过程2

linux磁盘分区以及系统目录结构介绍,系统启动过程
4.6、文件系统
File System Type的意思是文件系统类型,就像 Windows的fat32ntfs一样,磁
盘分区只有在设置了文件系统类型格式化并挂载上挂载点后,分区才能存放数据。目前
有如下一些文件系统类型。
ext2/ext3/ext4:适合 Linux的文件系统类型。由于ext3文件系统多了日志记录功能,因此系统恢复起来会更快速,ext4是ext3的升级,效率更加高,因此建议使用默认的ext4类型,而不要使用ext2/ext3。
physical volume(LVM):一种弹性调整文件系统大小的机制,可以让文件系统变
大或变小,而不改变原有文件数据的内容,功能不错,但性能会下降。
software RaID:利用 Linux系统的特性,用软件仿真出磁盘阵列的功能。
swap:内存交换空间。由于swap并不会使用到目录树的挂载,因此用swap就不需要指定挂载点。
vfat:同时被 Linux与 Windows所支持的文件系统类型。如果主机硬盘上同时存
在 Windows与Linuκ两种操作系统,有数据交换需求,可以使用该文件系统。
κfs:一个文件系统类型,在 Centos7中将被作为默认的文件系统类型而替换ext4
4.7、目录结构
4.7.1、目录简介
Linux所有目录是一个有层次的倒着树状结构, /为linux所有目录的起点。所以linux所有路径都是以/开始的。 /etc/sysconfig /
注意:
1、目录和磁盘分区是没有关联的
2、/下不同的目录可能对应不同的磁盘分区或不同的磁盘设备
3、所有的目录都是按照一定的类别有规律的组织和命名的。
相对路径:相对于当前路径下的路径
绝对路径:从根为起始点的路径

/bin 系统有很多放置执行档的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般帐号所使用,主要有:cat,chmod(修改权限), chown, date, mv, mkdir, cp, bash等等常用的指令。

/boot ( Static files of the boot loader)linux的内核及系统引导程序所需的文件目录。安装系统分区的时候一般要分一个boot分区。常见分区:boot128m swap内存的1.5倍 以及/
/dev (Device files)设备文件目录,比如声卡、磁盘、光驱。比要重要的设备有/dev/null, /dev/zero, /dev/tty , /dev/lp*, / dev/hd*, /dev/sd*等等
/etc (1) 二进制安装(yum rpm)的配置文件默认路径
(2) 服务启动命令存放目录/etc/init.d。(service sshd start)(service network resart)

/home 这是系统预设的使用者家目录(home directory)。 在你新增一个一般使用者帐号时,预设的使用者家目录都会规范到这里来。比较重要的是,家目录有两种代号:
:代表当前使用者的家目录,而 ~guest:则代表用户名为guest的家目录。

/lib 系统的函式库非常的多,而/lib放置的则是在开机时会用到的函式库,以及在/bin或/sbin底下的指令会呼叫的函式库而已 。 什么是函式库呢?妳可以将他想成是外挂,某些指令必须要有这些外挂才能够顺利完成程式的执行之意。 尤其重要的是/lib/modules/这个目录,因为该目录会放置核心相关的模组(驱动程式)。
/media media是媒体的英文,顾名思义,这个/media底下放置的就是可移除的装置。 包括软碟、光碟、DVD等等装置都暂时挂载于此。 常见的档名有:/media/floppy, /media/cdrom等等。
/mnt 如果你想要暂时挂载某些额外的装置,一般建议妳可以放置到这个目录中。在古早时候,这个目录的用途与/media相同啦。 只是有了/media之后,这个目录就用来暂时挂载用了

/opt 这个是给第三方协力软体放置的目录 。 什么是第三方协力软体啊?举例来说,KDE这个桌面管理系统是一个独立的计画,不过他可以安装到Linux系统中,因此KDE的软体就建议放置到此目录下了。 另外,如果妳想要自行安装额外的软体(非原本的distribution提供的),那么也能够将你的软体安装到这里来。 不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下。
/root 系统管理员(root)的家目录。 之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中。

/sbin Linux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设定系统,其他使用者最多只能用来查询而已。放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令。至于某些伺服器软体程式,一般则放置到/usr/sbin/当中。至于本机自行安装的软体所产生的系统执行档(system binary),则放置到/usr/local/sbin/当中了。常见的指令包括:fdisk, fsck, ifconfig, init, mkfs等等。

/srv srv可以视为service的缩写,是一些网路服务启动之后,这些服务所需要取用的资料目录。 常见的服务例如WWW, FTP等等。 举例来说,WWW伺服器需要的网页资料就可以放置在/srv/www/里面。看来平时我们编写的代码应该放到这里了。

/tmp 这是让一般使用者或者是正在执行的程序暂时放置档案的地方。这个目录是任何人都能够存取的,所以你需要定期的清理一下。当然,重要资料不可放置在此目录啊。 因为FHS甚至建议在开机时,应该要将/tmp下的资料都删除。

/usr 用户程序及数据、帮助文件、二进制命令等的目录

小结:
/dev/设备目录
/etc/系统配置及服务配置文件、启动命令的目录
/proc显示内核及进程信息的虚拟文件系统
/tmp临时文件目录,公共厕所,客厅。
/home普通用户家目录,大臣的家。
/root超级管理员的家目录,皇宫
/var变化的目录,一般是日志文件, cache的目录。
/usr用户程序及数据、帮助文件、二进制命令等的目录
/bin普通用户命令的目录
/sbin和/ usr/sbin/超级用户命令的目录
4.7.2、linux重要子目录
1、/etc重要子目录

/etc/sysconfig/network-scripts/ifcfg-eth0(重要) #配置网络地址及GW等,使得网卡生效
(1) 重启网卡/etc/init.d/network restart或service network restart 都影响所有网卡
(2) Ifdown eth0 && ifup eth0只针对eth0网卡ifdown禁用网卡的指令,ifup启动网卡的指令,这句话的意思是先禁用eth0网卡再启用eth0网卡
用过setup指令,可以通过界面修改网卡,但一般用打开文件修改的方式
DEVICE=eh1 #<==物理设备名,eth1表示第2块网卡
HWADDR=00:0c29ba:8e:8f #<==网卡的MAC地址,48位。
TYPE= Ethernet #<==以太网。
UUID=1636dba-cc88-418d-820c-a06c956dbf77
ONBOOT=yes #<==控制网卡是不是开机启动
NM_CONTROLLED=yes
BOOTPROTO=none #<==其中, proto取下列值之一:none,引导时不使用协议;
static静态分配地址; bootp,使用 BOOTP协议,或dhcp,使用DHCP协议。
IPADDR=10.0.0.7 #<==addr是IP地址。10.0.0.0/24
NETMASK=255.255.255.0 #<==子网掩码,划分网络位和主机
DNS2=202.1060.20 #<==DNS把 baidu. com变成了badu服务器IP。DNS就是域名和IP的解析工具。
GATEWAY=10.0.0.254#=网关地址,路由器的地址
DNS1=8.8.8.8 #<DNS1
USERCTL=no
/etc/resolv.conf(重要) #设置linux本地的客户端DNS的配置文件,DNS可以实现域名和IP的互相解析。
可以通过setup命令配置
Setup -->‘network configuration’ -->‘DNS configuration’
上述设置实际上是修改/ etc/resolv. conf这个文件
负责域名和IP互相解析的服务就是dns( domain name systen)
www. baidu com《
》203.71.88.10
不要在网卡配置文件里配置DNS,而是在/ etc/resolv.conf里配
1、客户端DNS可以在网卡配置文件里设置( ifcfg-etho)
2、客户端DNS也可以在/ etc/resolv. conf里设置
3、网卡里的设置DNS优先于/ etc/resolv. conf。
/etc/sysconfig/
network #可修改机器名及网卡启动、网关等配置。
更改主机名
1、vi /etc/sysconfig/network
sed -i‘s#HOSTNAME=songlsss#HOSTNAME=songls#g’ /etc/sysconfig/network
2、Hostname 主机名
同时修改
/etc/issue 记录用户登录前显示的系统版本信息
[root@bogon /]# cat -n /etc/issue
1 CentOS release 6.10 (Final)
2 Kernel \r on an \m

/etc/motd Linux自定义欢迎页面
[root@bogon /]# echo “welcome to use linux”>/etc/motd

/etc/fstab 实现开机要挂载的文件系统的一个文件
fstab 一旦配置错误,会导致服务器无法启动。如何修复?
[root@bogon /]# blkid
/dev/sda1: UUID=“6712e776-5cdf-41c4-86b5-72201dda7419” TYPE=“ext4”
/dev/sda2: UUID=“707224ee-f8e6-4795-a853-c50e064c3981” TYPE=“ext4”
/dev/sda3: UUID=“b2c2957d-ea8c-46f0-837c-9ae1308c97c4” TYPE=“swap”
第一列挂载的设备,可以是设备名或UUID,或磁盘标签
/etc/hosts 设定用户IP与名字(或域名)的对应解析表,相当于本地LAN局域网内的DNS
#类似C: \WIND0WS\ system32\drivers\ etc\hosts,LAN内IP域名解析文件。
开发、测试时做临时的域名解析常用,英文 hosts- The static tablelookup for host names。
host的解析在机房的服务器互相调用中也会常用,如门户网站的解析

host企业里的作用:
1、开发,产品,测试人员,用于通过正式的域名和测试产品
2、服务器之间的调用可以用域名(内部DNS),方便迁移
/etc/rc.local
(重要) 用于存放开机自启动程序命令的文件( chkconfig常用来管理yum/rpm安装的程序的服务的开机自启动)。自己开发的程序习惯把启动命令放入etc/rc. local,实现开机启动这些程序, linux开机时会把etc/rc. local里的内容执行一遍
企业里如何用: chkconfig和 /etc/rc.local服务器的档案
/etc/inittab
(较重要) #→设定系统启动时init进程将把系统设置成什么样的 runlevel
运行级别及加载相关的级别对应启动文件设置。linux开机启动流程,比如先加载界面,还是
/etc/init.d
(重要) #→这个目录是用来存放系统或服务器以及 System V模式启动的脚本,这在以 SystenⅤ模式启动或初始化的系统中常见。比如Centos/redhat:
/etc/exports #设定NFS网络文件系统用的配置文件。
/etc/redhat-release #<==包括一行声明Red Hat版本号和名称信息
/etc/group
(一般重要) #<==设定用户的组名与相关信息 chattr+i
/etc/passwd
(重要) #<==账号信息文件
/etc/shadow #<密码文件
/etc/gshadow #→组密码信息文件
/etc/sudoers
(较为重要) #→可以执行使用sudo命令的配置文件(权限提升)visudo类似ⅵ i/etc/ sudoers,不建议ⅵ改,因为没有语法检查。
[root @songls ]visudo -c etc/sudoers:解析正确
/etc/secureity #→设定哪些终端可以让root登录
/etc/login.defs #→所有用户登录时的缺省配置
/etc/modprobe.conf #<
内核模块额外参数设定
/etc/syslog.conf #<日志设置文件 限C5.X
/etc/rsyslog.conf #<
日志设置文件 限 C6.X
2、其他的目录
/lib #→系统会使用到的函数库
/lib/modules #→ kernel的相关模块
/var/lib/rpm #→rpm套件安装处
/usr/bin #→这个目录是可执行程序的目录:当我们从系统自带的软件包安装
个程序时,他的可执行文件大多会放在这个目录。相似的目录是
/lib64 库文件存放目录
/usr/sbin 这个目录也是可执行程序的目录,但大多存放涉及系统管理的命
令:相似目录是sbin或 usr/local/sbin或usrx1IR6sbin等;
/usr/local 这个目录一般是用来存放用户自编译安装软件的存放目录:一般是
通过源码包安装的软件,如果没有特别指定安装目录的话,一般是
安装在这个目录中。相当于:c: Program files
/usr/local/bin 用户安装的小的应用程序,和一些在 lust local F录下大应用程序的
符号连接
/usr/local/sbin 系统全局环境目录,可放置一些不需要加路径执行的脚本等
usr/share 系统共用的东两存放地,比如 usr/share/doc和 /usrshare/man帮助文

/usr/src 内核源码存放目录,比如下面有内核源码目录,比如 linux linux-2xxxx目录等。
1、rpm-ih包名rpn(存在rpm包,又无法使用yum的时候)
2、 yum install包名(下载-rpm-解决软件依赖)-简单方便的方法。
(习惯:线上对外的服务器很少安装 apache, nginx; mysql,功能性软
件会用yum)
3、源码( configure,make, make install)),定制。大中小企业重要
服务
门户:源码-定制RPM包–制作yum仓库-m安装。
/usr/bin 使用者可执行的 binary file的目录

3、var目录下的路径知识
/var 日志文件
/var/log 各种系统日志存放的地方
/var/log/messages 系统信息默认日志文件,非常重要。按周自动轮循
/var/log/message*
还有一个查看日志的命令dmseg,用此命令可以进行系统故障分析
但依赖于rsyglog服务开启
上述轮询日志由/etc/logrotate.conf和/etc/logrotate/syslog控制
/var/log/secure 记录登入系统存取信息的文件,按周自动轮循,例如pop3.sh,telnet,ftp等都会记录在此。系统安全的日志文件。依赖于 rsyglogn服务开启。
/var/log/wtmp 记录登陆者信息的文件last: login records lastlog
/etc/logrotate.cont
#no packages own wtmp and btmp–we’ll rotate them here
var log wtm
ap i
/var/spool 定时任务 crontab默认路径,按用户名命名的文件。
/var/spool/mail 系统用户邮件存放目录
/var/spool/clientmqueue sendmail临时邮件文件目录,有很多原因会导致这个目录碎文件很多,比如crontab定时任务命令不加/dev/null等,工作偶尔因为该目录文件太多,导致/var所在的分区inode数量被消耗尽,无法写入文件的情况,C64不会装sendmail,所以不会出现这个问题。
4、proc下的重要路径知识
/proc 虚拟目录,是内存的映射,内核和进程的虚拟文作系统目录
/proc/version 内核版本
/proc/sys/net/ipv4 [root@C58 x86=cat proc/sys/net/ipv4/tep max_tw_ buckets
36000
[root@songls ipv4] cat /proc/sys/net/ipv4/tcp_tw_ reuse
修改proc的配置时临时生效。
/etc/svsctl.cont内核参数里配置才是永久生效。两个路径的修改效果
是一样的。 net.Ipv4.tcp_tw_reuse=1实际上就是修改配置
root@songls]# tail-1/etc/rc. local
echo 1>/proc/sys/net/ipv4/tcp_tw_reuse
/proc/cpuinfo 关于处理器的信息,如类型、厂家、型号和性能等.
top看cpu,sar
/proc/ meminfo 系统内存信息,free-m
/proc/devices 当前运行内核所配置的所有设备清单
/proc/dma 当前正在使用的DMA通道
/proc/filesystems 当前运行内核所配置的文件系统。
/proc/interrupts 正在使用的中断,和曾经有多少个中断。
/proc/ioports 当前正在使用的IO端口
/proc/ladang 系统负载平均值信息(系统的繁忙情况,比较准确,但是不够细致
系统性能指标), uptime的结果※※※※※,负载值不要超过cPU
的核数。看负载top, uptime。
/proc/mounts 设备的挂载信息,dfh类似。
这些目录需要自己去归纳总结,每个目录里边分别放的是什么东西,然后以后针对性的解决问题

你可能感兴趣的:(linux磁盘分区以及系统目录结构介绍,系统启动过程2)