linux文件系统

Linux:Day8(上) 文件系统挂载和管理工具

六眼飞鱼酱① 提交于 2020-02-20 06:08:55
文件系统管理:   将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为称之为挂载;   解除此关联关系的过程称之为卸载;   把设备关联挂载点:Mount Point     mount   卸载时:可使用设备,也可以使用挂载点     umount   注意:挂载点下原有文件在挂载完成后会被临时隐藏;   挂载方法:mount DEVICE MOUNT_POINT     mount:显示当前系统已挂载的所有设备,结果和cat /etc/mtab一样,其实mount就是调用这个命令的。cat /pro/mounts,真正挂载信息。     mount [-fnrsvw] [-t vfstype] [-o options] device dir       device:指明要挂载的设备;可以通过以下几种方式指明。         (1)设备文件; 例如:/dev/sda5         (2)卷标:-L 'LABEL',例如 -L ‘MYDATA'         (3)UUID,-U ’UUID',例如-U "d8c987c5-8e8c-4da0-8b07-786e185881c8"         (4)伪文件系统名称:pro,sysfs,devtmpfs,configfs       dir:挂载点         事先存在

Mount的用法详细解析

有些话、适合烂在心里 提交于 2020-02-20 04:21:29
用法: mount [-lhV] mount -a [选项] mount [选项] [--source] <源> | [--target] <目录> mount [选项] <源> <目录> mount <操作> <挂载点> [<目标>] 选项: -a, --all 挂载 fstab 中的所有文件系统 -c, --no-canonicalize 不对路径规范化 -f, --fake 空运行;跳过 mount(2) 系统调用 -F, --fork 对每个设备禁用 fork(和 -a 选项一起使用) -T, --fstab <路径> /etc/fstab 的替代文件 -h, --help 显示此帮助并退出 -i, --internal-only 不调用 mount.<类型> 助手程序 -l, --show-labels 列出所有带有指定标签的挂载 -n, --no-mtab 不写 /etc/mtab -o, --options <列表> 挂载选项列表,以英文逗号分隔 -O, --test-opts <列表> 限制文件系统集合(和 -a 选项一起使用) -r, --read-only 以只读方式挂载文件系统(同 -o ro) -t, --types <列表> 限制文件系统类型集合 --source <源> 指明源(路径、标签、uuid) --target <目标> 指明挂载点 -v, -

嵌入式根文件系统的移植和制作详解

青春壹個敷衍的年華 提交于 2020-02-19 08:23:33
理论上说一个嵌入式设备如果内核能够运行起来,且不需要运行用户进程的话,是不需要文件系统的,文件系统简单的说就是一种目录结构,由于 linux操作系统的设备在系统中是以文件的形式存在,将这些文件进行分类管理以及提供和内核交互的接口,就形成一定的目录结构也就是文件系统,文件系统是为用户反映系统的一种形式,为用户提供一个检测控制系统的接口。   根文件系统,我认为根文件系统就是一种特殊的文件系统,那么根文件系统和普通的文件系统有什么区别呢?由于根文件系统是内核启动时挂在的第一个文件系统,那么根文件系统就要包括Linux启动时所必须的目录和关键性的文件,例如Linux启动时都需要有init目录下的相关文件,在 Linux挂载分区时Linux一定会找/etc/fstab这个挂载文件等,根文件系统中还包括了许多的应用程序bin目录等,任何包括这些Linux 系统启动所必须的文件都可以成为根文件系统。   Linux支持多种文件系统,包括ext2、ext3、vfat、ntfs、iso9660、jffs、romfs和nfs等,为了对各类文件系统进行统一管理,Linux引入了虚拟文件系统VFS(Virtual File System),为各类文件系统提供一个统一的操作界面和应用编程接口。   Linux启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动

LiveCD及Casper调研

限于喜欢 提交于 2020-02-19 08:22:14
1.LiveCD 原理 LiveCD 本质上是 ISO 9660/El Torito 格式的 CD-ROM 。 下面对 LiveCD 涉及的各种技术做了简单的调研。 1.1. CD-ROM CD-ROM 是一种光盘存储介质。 与磁盘类似, CD-ROM 被划分为多个 track , track 又被划分为多个 sector 。 sector 大小为 2352 字节,随着 sector 所采用的编码方式的不同,其内部结构也不同,见下图。 CD digital audio 格式是 CD 唱片采用的方式, CD-ROM Mode1/2 是 CD-ROM 数据盘 (LiveCD 属于此种情况 ) 采用的方式。 1.2. ISO9660 CD-ROM 中,每个 track 上都可以构建一个独立的文件系统。 ISO 9660 便是一种构建在 CD-ROM 之上的文件系统,专为光盘存储介质而设计,又被称为 CDFS(Compact Disk File System) 。 ISO 9660 考虑了 CD-ROM 的顺序访问及只读的特性,将文件连续存储在 CD-ROM 的 track 上,对文件名的格式、属性、大小、数量、目录的层次等都作了限制。 ISO 9660 文件系统的存储格式如下 在 Data Area 的头部,有多个 Volume Descriptor ,其功能类似于 ext4

Linux基础知识3

吃可爱长大的小学妹 提交于 2020-02-17 14:22:51
原文链接:https://blog.csdn.net/zhouzhaoxiong1227/article/details/6876344 原文链接:https://blog.csdn.net/zhouzhaoxiong1227/article/details/6878477 原文链接:https://blog.csdn.net/zhouzhaoxiong1227/article/details/6882246 Q1. 什么是临界区?什么是竞争状态?什么是同步? A: 临界区(critical regions)就是访问和操作共享数据的代码段,多个内核任务并发访问同一个资源通常是不安全的; 如果两个内核任务可能处于同一个临界区,就是一种错误现象;如果确实发生了这种情况,就称它为竞争状态; 避免并发和防止竞争状态称为同步(synchronization)。 Q2. 简要介绍一下死锁及避免死锁的方法。 A: 死锁包括自死锁和ABBA死锁, 产生死锁有四个原因:互斥使用、不可抢占、请求和保持,以及循环等待; 避免死锁的方法有:破坏“不可剥夺”条件、破坏“请求和保持”条件、破坏“循环等待”条件。 Q3. 内核中造成并发执行的原因是什么? A: “并发”分为“伪并发”和“真并发”两种,内核中造成并发执行的原因有以下几种: 中断:它可能随时打断当前正在执行的代码; 内核抢占

Linux常用命令

限于喜欢 提交于 2020-02-16 22:13:36
系统信息 yum remove package_name 删除一个rpm包 yum list 列出当前系统中安装的所有包 yum search package_name 在rpm仓库中搜寻软件包 yum clean packages 清理rpm缓存删除下载的包 yum clean headers 删除所有头文件 yum clean all 删除所有缓存的包和头文件 YUM 软件包升级器 - (Fedora, RedHat及类似系统) yum install package_name 下载并安装一个rpm包 yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系 yum update package_name.rpm 更新当前系统中所有安装的rpm包 yum update package_name 更新一个rpm包 DEB 包 (Debian, Ubuntu 以及类似系统) dpkg -i package.deb 安装/更新一个 deb 包 dpkg -r package_name 从系统删除一个 deb 包 dpkg -l 显示系统中所有已经安装的 deb 包 dpkg -l | grep httpd 显示所有名称中包含 "httpd" 字样的deb包 dpkg -s package_name

Linux常用命令大全

半世苍凉 提交于 2020-02-15 23:50:35
Linux常用命令大全 【转载自 Boblim 】 原文地址: https://www.cnblogs.com/fnlingnzb-learner/p/5831284.html 最近都在和Linux打交道,这方面基础比较薄弱的我只好买了本鸟哥的书看看,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。为了方便大家查找linux的相关命令,我就将我了解到的命令列举一下,仅供大家参考: 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) 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/swaps 显示哪些swap被使用 cat /proc/version 显示内核的版本 cat /proc/net/dev 显示网络适配器及统计 cat /proc/mounts

linux系统安装与初用

六眼飞鱼酱① 提交于 2020-02-15 05:21:13
----- LINUX入门知识 (1) linux 的发行版本、内核版本;二者区别与联系   Linux内核是计算机操作系统的核心,是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件,它不是一套完整的操作系统,而是linux操作系统的核心组件。   Linux发行版包括了内核与一些其他与文件相关的操作,用户管理系统,和软件包管理器等一系列软件。   机器信息      内核版本      发行版本    (2) linux 中硬盘及分区的表示     最前面是硬盘种类,中间是硬盘序号,最后是该硬盘分区序号,可以通过fdisk查看硬盘情况(注意:需要sudo权限,否则无法访问)     硬盘种类有hd、sd,以及最新的nvme   以本人电脑为例(电脑有两个硬盘,一个hhd,一个ssd):     nvme0是硬盘种类     n1是硬盘序号     p1-p7是分区序号    (3)linux 系统支持的文件系统格式     Linux系统核心可以支持十多种文件系统类型,比如Btrfs、JFS、 ReiserFS、ext、ext2、ext3、ext4、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等。   对于各个版本的区别,可以参考 http://www.jb51.net

根文件系统制作(一)

家住魔仙堡 提交于 2020-02-12 00:49:01
在前面的内核移植中,使用的是开发板上原有的根文件系统,这里就来讨论一下如何自己制作根文件系统。 根文件系统可以由JFFS2、YAFFS2、UBIFS等文件系统支持,这里仍就选择UBIFS文件系统来制作根文件系统。UBIFS是Unsorted Block Image File System(无序区块镜像文件系统)的缩写,是一种较新的文件系统。UBIFS作为JFFS2的后继文件系统之一,在设计与性能上均较YAFFS2、JFFS2更适合于MLC NAND FLASH存储器。Linux内核从2.6.27以后的版本都提供了对它的支持,因此实现起来比较方便。 根文件系统实际上就是Linux根目录树的一个集合,由一些特定的目录、设备节点文件、内核模块文件、库文件、命令集以及其它一些配置文件组成。这个集合最终依赖于某个类型的文件系统来实现,下面就具体来讨论基于UBIFS文件系统的根文件系统制作过程。 首先要建立一个存放根文件集合的目录,这里就在根目录下建立一个名为rootfs的目录,把整个根文件系统都放在这个目录下。接下来进入rootfs目录,并在该目录下建立根目录树的第一层目录,执行“mkdir bin sbin etc dev proc lib sys var mnt usr tmp media home”产生出这些目录。 然后进入dev目录,在该目录下需要制作两个默认的设备节点文件,分别执行

Linux btrfs文件系统

和自甴很熟 提交于 2020-02-11 20:57:37
btrfs,它名字挺多:B-tree fs;Butter fs;Better fs 开源协议是GPL,2007年由Oracle研发 核心特性: 多物理卷支持,btrfs可由多个物理卷组成;支持RAID,可以联机状态下,添加,移除,修改 写时复制(Cow:copy on write):修改前的文件内容还是保留的,只是让指针指向修改后的文件 数据及元数据校验码:checksum 支持子卷:sub_volume 支持快照:而且支持快照的快照 透明压缩:顶层用户感觉不到文件是被压缩了的,当要使用文件时,自动解压缩,但消耗cpu时钟。 btrfs有很多以btrfs开头的命令: # btrfs btrfs btrfs-convert btrfs-find-root btrfs-map-logical btrfstune btrfsck btrfs-debug-tree btrfs-image btrfs-select-super btrfs-zero-log btrfs有许多子命令,每个命令的帮助都可以使用--help获得。 管理子卷:btrfs subvolume btrfs filesystem df 显示已有的btrfs:btrfs filesystem show btrfs filesystem sync 动态调整文件系统的大小:btrfs filesystem resize 添加卷标