linux文件系统

构建根文件系统

这一生的挚爱 提交于 2019-11-28 17:25:25
构建根文件系统 根文件系统的基本概念 在Linux中,是以树状结构管理所有目录、文件,其他分区挂接在某个目录上,这个目录被称为挂接点或者安装点,然后就可以通过这个目录来访问这个分区上的文件了; 在一个分区上存储文件时需要遵循一定的格式,这种格式称为文件系统类型,比如fat16、fat32、ext2、ext3、jffs2、yaffs等,除了这些实实在在的存储分区的文件系统类型外,Linux还有几种虚拟的文件系统类型,比如proc、sysfs等,它们的文件并不存储在实际的设备上,而是在访问它们 时由内核临时生成,比如proc文件系统下的uptime文件,读取它时可以得到两个时间值(用来表示系统启动后运行的秒数、空闲的秒数),每次读取都是由内核实时生成,每次读取到的结果都不一样; init进程和用户程序启动过程 内核启动的最后一步就是启动init进程,代码在init/main.c文件中,会调用init_post()函数; init进程是由内核启动的第一个(也是唯一的一个)用户进程(进程ID为1),它根据配置文件决定启动哪些程序,比如执行某些脚本、启动shell或者运行用户指定的程序等; init进程的执行程序通常是/sbin/init,也可以自己编写/sbin/init程序,或者通过bootloader传入命令行参数"init=xxxxx"指定某个程序作为init进程运行;

Linux(常用)命令

て烟熏妆下的殇ゞ 提交于 2019-11-28 17:24:03
目录 Linux(常用)命令 系统信息 关机 (系统的关机、重启以及登出 ) 文件和目录 文件搜索 挂载一个文件系统 磁盘空间 用户和群组 文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消 打包和压缩文件 RPM 包 - (Fedora, Redhat及类似系统) YUM 软件包升级器 - (Fedora, RedHat及类似系统) DEB 包 (Debian, Ubuntu 以及类似系统) APT 软件工具 (Debian, Ubuntu 以及类似系统) 查看文件内容 文本处理 字符设置和文件格式转换 文件系统分析 初始化一个文件系统 SWAP文件系统 备份 光盘 网络 - (以太网和WIFI无线) JPS工具 比较常用的参数: Linux(常用)命令 系统信息 arch 显示机器的处理器架构 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpuinfo 显示CPU info的信息 cat /proc/interrupts 显示中断 cat /proc/meminfo 校验内存使用 cat /proc

linux文件系统的处理函数

徘徊边缘 提交于 2019-11-28 16:20:52
文件系统 通用 :rename(原路径名,新路径名); 修改文件名 remove(路径名); 删除文件或路径 symlink(原路径名,符号链接名); 建立文件或路径的软链接 access(路径名,权限); 权限:F_OK(是否存在) R_OK W_OK X_OK 的任意组合 lstat/stat/fstat(路径名,struct stat *buf); 取得文件详细信息 xxx_t 一般是tepedef起的类型别名,绝大多数是整数类型的数据,目的是见面知意。一般在<sys/type.h>中定义 chmod(路径名,权限); 修改文件或目录的权限 getpwuid(uid)/getpwnam(用户名) 获取用户的信息 struct tm* localtime(time_t time); //UTC 转换为时分秒格式 time_t mktime(struct tm*); 本地时间转换成UTC 目录 : DIR* opendir(目录路径); //打开指定目录,返回一个指针代表这个目录打开,失败返回NULL。 struct dirent* readdir(DIR*); //一次从目录中读取一项(一个文件或目录)信息。返回一个结构体指针,指向包含目录入口信息的结构变量。 struct dirent的定义没有规定统一,但一定有一个d_name的成员保存文件或目录名,没有路径

mount 挂载命令

风流意气都作罢 提交于 2019-11-28 13:55:39
1:mount 所有命令必须挂载使用 linux 所有存储设备都必须挂载使用 ,包括硬盘 命令名称:mount 命令所在路径:/bin/mount 执行权限:所有用户 命令的具体格式如下: mount [-t 文件系统] [-L 卷标名] [-o 特殊选项] \ 设备文件名 挂载点 #\代表这一行没有写完,换行 选项: -t 文件系统: 加入文件系统类型来指定挂载的类型,可以 ext3、ext4、iso9660等文件系统。 -L 卷标名: 挂载指定卷标的分区,而不是安装设备文件名挂载 -o 特殊选项: 可以指定挂载的额外选项,比如读写权限、同步异步等,如果不指定默认. 例 1:挂载分区 [root@localhost ~]# mkdir /mnt/disk1 #建立挂载点目录 [root@localhost ~]# mount /dev/sdb1 /mnt/disk1 #挂载分区 atime/noatime 更新访问时间/不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新 async/sync 异步/同步,默认为异步 auto/noauto 自动/手动,mount –a 命令执行时,是否会自动安装/etc/fstab 文件内容挂载,默认为自动. defaults 定义默认值,rw,suid,dev,exec,auto,nouser,async 这七个选项 exec

存储管理2

怎甘沉沦 提交于 2019-11-28 13:20:58
磁盘分区与格式化 fdisk命令 作用:fdisk命令用于管理磁盘分区,它提供了集添加、删除、转换分区等功能于一身的"一站式分区服务"。不过与前面讲解的直接写到命令后面的参数不同,这条命令的参数(见表6-5)是交互式的,因此在管理硬盘设备时特别方便,可以根据需求动态调整。 格式:fdisk 磁盘名 内部选项: 参数 作用 m 查看全部可用的参数 n 添加新的分区 d 删除某个分区信息 l 列出所有可用的分区类型 t 改变某个分区的类型 p 查看分区表信息 w 保存并退出 q 不保存直接退出 mkfs命令 作用:对磁盘分区进行格式化操作。 格式:mkfs.文件类型 磁盘分区 挂载磁盘 当用户需要使用硬盘设备或分区中的数据时,需要先将其与一个已存在的目录文件进行关联,而这个关联动作就是"挂载"。 mount命令 作用:用于挂载文件系统。 格式:mount 文件系统 挂载目录。 选项: 参数 作用 -a 挂载所有在/etc/fstab中定义的文件系统 -t 指定文件系统的类型 备注: 对于比较新的Linux系统来讲,一般不需要使用-t参数来指定文件系统的类型,Linux系统会自动进行判断。而mount 中的-a参数则厉害了,它会在执行后自动检查/etc/fstab文件中有无疏漏被挂载的设备文件,如果有,则进行自动挂载操作。 2、/etc/fstab自动挂载文件

存储管理1

喜欢而已 提交于 2019-11-28 13:17:26
一、物理存储设备 在Linux系统中一切都是文件,硬件设备也不例外。 1、常见的硬件设备及其文件名称: 硬件设备 文件名称 IDE设备 /dev/hd[a-d] SCSI/SATA/U盘 /dev/sd[a-p] 软驱 /dev/fd[0-1] 打印机 /dev/lp[0-15] 光驱 /dev/cdrom 鼠标 /dev/mouse 磁带机 /dev/st0或/dev/ht0 由于现在的IDE设备已经很少见了,所以一般的硬盘设备都会是以"/dev/sd"开头的。而一台主机上可以有多块硬盘,因此系统采用a~p来代表16块不同的硬盘(默认从a开始分配),而且硬盘的分区编号也很有讲究: 主分区或扩展分区的编号从1开始,到4结束;逻辑分区从编号5开始。 注 : 1、/dev目录中sda设备之所以是a,并不是由插槽决定的,而是由系统内核的识别顺序来决定的; 2、分区的数字编码不一定是强制顺延下来的,也有可能是手工指定的。 2、举例解读磁盘分区含义 以/dev/sda5为例解读其含义: 首先,/dev/目录中保存的应当是硬件设备文件; 其次,sd表示是存储设备; 然后,a表示系统中同类接口中第一个被识别到的设备; 最后,5表示这个设备是一个逻辑分区。 一言以蔽之,"/dev/sda5"表示的就是"这是系统中第一块被识别到的硬件设备中分区编号为5的逻辑分区的设备文件"。 3、磁盘分区

linux系统调优-存储(内存、硬盘)

旧城冷巷雨未停 提交于 2019-11-28 12:15:50
首先一个基本概念: ‍ 存储系统存储速度的快->慢: 内存->闪存->磁盘 因为内存的价格限制以及操作系统支持的限制,我们只能从磁盘这块来看,可见磁盘正是存储系统的最大瓶颈所在。 **下面具体提出我们的优化方案 优化方案1.缓存机制: 我们在磁盘里嵌入一小块高速的内存,用以保持常用的数据,我们称它为缓存。这样既可以使用磁盘,也能提高性能 缓存分为3类 Filestem cache、Diskcache、Disk controller cache。这里从磁盘部分来看,它包括了缓存数据。预读。回写。 缓存尝试用LRU算法、即近最少使用算法顾名思义。 写入缓存,即IO命令并不立刻的去执行,而是先在缓存中合并,相同的合为一个连续的合为一体,把随机写IO变成连续写。这样做的直接作用减少了寻址浪费时间从而有效提高效率 缓存的大小设置问题:不能太大了因为成本!!硬伤所在。。 小了呢他相对于大的存储系统就显的不够看,而且你要找一个东西他不在缓存里系统还要去缓存寻址一次。这样做的太多自然降低了效率。 [#1#root@localhost ~]#free -m Total// used free shared buffers cache 物理内存总量 已使用内存量 空闲内存 多个进程的共享内存 元数据缓存 块数据缓存 Mem: 490 132 357 0 7 38 -/+ buffers/cache:

Linux磁盘管理及LVM讲解(1)

血红的双手。 提交于 2019-11-28 10:13:43
硬盘接口 从整体的角度上,硬盘接口分为IDE、SATA、SCSI和SAS四种,IDE接口硬盘多用于家用产品中,也部分应用于服务器,SCSI接口的硬盘则主要应用于服务器市场,而SAS只在高端服务器上,价格昂贵。 硬盘种类 SATA硬盘:用SATA接口的硬盘又叫串口硬盘,是以后PC机的主流发展方向,因为其有较强的纠错能力,错误一经发现能自动纠正,这样就大大的提高了数据传输的安全性。新的SATA 使用了差动信号系统”differential-signal-amplified-system”。这种系统能有效的将噪声从正常讯号中滤除,良好的噪声滤除能力使得SATA只要使用低电压操作即可,和 Parallel ATA 高达5V的传输电压相比,SATA 只要0.5V(500mv) 的峰对峰值电压即可操作于更高的速度之上。”比较正确的说法是:峰对峰值’差模电压'”。一般转速可达7200转/分。 SCSI硬盘:SCSI硬盘即采用SCSI接口的硬盘。 优点:SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等。它由于性能好、稳定性高,因此在服务器上得到广泛应用。缺点:由于SCSI硬盘价格非常昂贵,所以一般的PC是不会使用SCSI硬盘。 一般转速可达10000转/分。 SAS硬盘:SAS(Serial Attached SCSI)即串行连接SCSI,是新一代的SCSI技术

Linux磁盘管理及LVM讲解

一曲冷凌霜 提交于 2019-11-28 10:12:51
硬盘接口 从整体的角度上,硬盘接口分为IDE、SATA、SCSI和SAS四种,IDE接口硬盘多用于家用产品中,也部分应用于服务器,SCSI接口的硬盘则主要应用于服务器市场,而SAS只在高端服务器上,价格昂贵。 硬盘种类 SATA硬盘:用SATA接口的硬盘又叫串口硬盘,是以后PC机的主流发展方向,因为其有较强的纠错能力,错误一经发现能自动纠正,这样就大大的提高了数据传输的安全性。新的SATA 使用了差动信号系统”differential-signal-amplified-system”。这种系统能有效的将噪声从正常讯号中滤除,良好的噪声滤除能力使得SATA只要使用低电压操作即可,和 Parallel ATA 高达5V的传输电压相比,SATA 只要0.5V(500mv) 的峰对峰值电压即可操作于更高的速度之上。”比较正确的说法是:峰对峰值’差模电压'”。一般转速可达7200转/分。 SCSI硬盘:SCSI硬盘即采用SCSI接口的硬盘。 优点:SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等。它由于性能好、稳定性高,因此在服务器上得到广泛应用。缺点:由于SCSI硬盘价格非常昂贵,所以一般的PC是不会使用SCSI硬盘。 一般转速可达10000转/分。 SAS硬盘:SAS(Serial Attached SCSI)即串行连接SCSI,是新一代的SCSI技术

Linux 磁盘与文件系统管理

丶灬走出姿态 提交于 2019-11-28 10:08:38
1.Linux的文件系统 一个分区槽就是一个文件系统,随着LVM的应用,一个分区槽可以变为多个文件系统,也可以组合多个分区槽为一个文件系统。所以现在讲一个可被挂载的数据为一个文件系统。 文件系统通常会将这两部份的数据分别存放在不同的区块,权限与属性放置到inode 中,至于实际数据则放置到data block 区块中。另外,还有一个超级区块 (superblock) 会记录整个文件系统的整体信息,包括inode 与block 的总量、使用量、剩余量等。  superblock:记录此filesystem 的整体信息,包括inode/block 的总量、使用量、剩余量, 以及文件系统的 格式与相关信息等;  inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的block 号码;(索引式文件系统)  block:实际记录文件的内容,若文件太大时,会占用多个block 。 非索引式的文件系统需要经常进行碎片整理,比如FAT型文件系统。 来源: CSDN 作者: 国服程咬金 链接: https://blog.csdn.net/weixin_40548480/article/details/103242747