文件系统:
ext2/ext3: Linux适用的文件系统。ext3比ext2多了日志记录
physical volume(LVM): 用来弹性调整文件系统容量的一种机制,可以动态控制文件系统大小而不改变原有文件数据
software RAID: 磁盘阵列
swap: 虚拟内存,大小是物理内存的1.5~2倍,物理内存达到4G,可以不使用
vfat: 同时被Linux和Windows系统支持的文件系统
SELinux: Security Enhanced Linux,Linux系统访问控制(Access Control)的细节设置,控制程序对系统文件访问权限限制
RAID: /dev/md[0-15]
关机/重启系统
数据同步:sync
关机指令:shutdown
重启关机: reboot, halt, poweroff
shutdown -h now
shutdown -h 20:10
shutdown -h +10 # shutdown after 10 minutes
shutdown -r now # reboot immediately
shutdown -r +30 'The system will reboot'
shutdown -k now 'The system will reboot' # frighten you
Linux run level:
init 0: shutdown
init 3: command line mode
init 5: x-window
init 6: reboot
175
ext2/ext3文件系统,文件名长度最大255个字符,完整文件名(带路径)长度最大4096个字符
文件属性和权限控制
chgrp [-R] new_group FILE
chown [-R] new_owner FILE
chown [-R] new_owner:new_group FILE
chmod [-R] u=rwx,g=rx,o=r FILE
Linux文件类型
1. 常规文件(regular file)
纯文本(ASCII)
二进制文件(binary)
数据文件(data),某些程序运行过程中读取的特定格式文件。/var/log/wtmp 可使用last读出
2. 目录 [d]
3. 连接(link) [l]
4. 设备(device)
块设备(block),可随机读写 ls -l /dev/sda [b]
字符设备(character),串口设备,一次性读取,鼠标键盘 [c]
5. 数据接口文件(sockets),网络上数据传输使用。 /var/run [s]
6. 数据传输文件(FIFO,pipe),[p]
FSH: Filesystem Hierarchy Standard
/bin 开机及单人模式下使用的命令
/boot 开机配置文件, vmlinuz, grub
/usr unix software resource
/usr/bin 软件命令
/dev
/etc 配置文件
/etc/init.d/ 所有服务的预设启动,系统开机时执行的脚本
/etc/xinetd.d/ super daemon管理的各项服务的配置文件目录
/etc/X11 X Window
/opt 第三方软件
/sbin 供管理员执行的开机及单人模式下使用的命令
/lost+found ext2/ext3文件系统格式下的目录,当系统发生错误时,将一些遗失片段存入该目录
/proc 虚拟文件系统(virtual filesystem),该目录下的数据都在内存中,不占硬盘空间
/sys 同上
特殊目录标示:
. 当前目录
.. 上级目录
- 前一个工作目录
~ 家目录
~account 用户account的家目录
nl: number lines of files
-b, --body-numbering=STYLE use STYLE for numbering body lines
STYLE is one of:
a number all lines
t number only nonempty lines
n number no lines
eg:
nl -b a myfile <=> cat -n myfile
nl -b t myfile <=> cat -b myfile
-n, --number-format=FORMAT insert line numbers according to FORMAT
FORMAT is one of:
ln left justified, no leading zeros
rn right justified, no leading zeros
rz right justified, leading zeros
-w, --number-width=NUMBER use NUMBER columns for line numbers
eg:
nl -b a -n rz -w 3 /etc/issue
001
002 Welcome to SUSE Linux Enterprise Server 10 SP1 (x86_64) - Kernel \r (\l).
003
004
文件修改时间:
modification time (mtime): 文件内容变更时改变
status time (ctime): 文件状态(即权限)变更时改变
access time (atime): 被读取后变更
touch
-a change only the access time
-c, --no-create do not create any files
-d, --date=STRING parse STRING and use it instead of current time
-m change only the modification time
-r, --reference=FILE use this file's times instead of current time
-t STAMP use [[CC]YY]MMDDhhmm[.ss] instead of current time
eg:
touch -d "3 days ago" myfile # -rw-r----- 1 bmpscp sms 307891 2013-06-17 14:27 myfile
touch -t 0709101347 myfile # -rw-r----- 1 bmpscp sms 307891 2007-09-10 13:47 myfile
chattr change file attributes on a Linux second extended file system
lsattr list file attributes on a Linux second extended file system
# append only
chattr +a myfile
# immutable
chattr +i myfile
SUID、SGID、SBIT
# ls -ld /tmp ; ls -l /usr/bin/passwd
drwxrwxrwt 66 root root 12288 Jun 20 14:55 /tmp
-rwsr-xr-x 1 root shadow 79336 May 4 2007 /usr/bin/passwd
Set UID:
1. 只对二进制执行文件有效
2. 执行者具有执行权限x
3. 本执行权限仅在运行时(run-time)有效
4. 执行者拥有该程序所有者(owner)的权限
Set GID:
1. 只对二进制执行文件有效
2. 执行者具有执行权限x
3. 执行者拥有该程序属组(group)的权限
Sticky Bit:
1. 只对目录有效
2. 当用户对于此目录具有w,x权限,也有了写入权限
3. 当用户在该目录下创建文件或目录,只有所有者或者root用户可删除
# add SUID
chmod 4755 myfile
chmod u+s myfile
# add GUID
chmod 2755 myfile
chmod g+s myfile
# add sticky bit
chmod 1755 myfile
chmod o+t myfile
软链接和硬链接
硬连接指向的是节点(inode), 而软连接指向的是路径(path)
硬链接文件有两个限制:
1、目录不能创建硬链接
2、只有在同一文件系统中的文件才能创建链接
对硬链接文件进行读写和删除操作时候,结果和软链接相同。但如果删除硬链接文件的源文件,硬链接文件仍然存在,且保留了原有的内容。此时,系统将该文件当成一个普通文件。
相关推荐
操作系统实验,用C语言实现自己的文件系统。设有一个容量为2M字节的磁盘,磁盘中扇区(block)的大小为512字节,所有扇区可以视为构成一个线形存储空间,从0开始,顺序给每个扇区分配一个编号,视为物理扇区号,借助...
随着移动设备和嵌入式系统越来越广泛的应用,对于eMMC存储设备文件系统进行优化成为了提升系统整体性能的关键。eMMC(嵌入式多媒体卡)是一种将NAND闪存与闪存控制器集成到单个芯片上的存储解决方案,广泛应用于各种...
操作系统实验四的核心目标是设计和实现一个简单的文件系统,它基于假设的I/O系统,以帮助实验者理解文件系统的基本工作原理。在这个实验中,文件系统通过一系列命令(如create、open、read)与用户交互,而I/O系统则...
在Linux操作系统中,文件系统是核心的重要组成部分,它负责组织和管理存储设备上的数据,使得用户和应用程序可以方便地存取文件。本项目名为“Linux下一个简单的文件系统实现”,其核心是一个名为XORFS(意为“或许...
使用文件来模拟外存,进行数据结构设计和操作算法的设计,实现一个文件系统并实现基本的文件操作(为了简便文件系统,不考虑文件共享,文件系统安全以及管道文件与设备文件等特殊内容)。要求: 1、对程序的每一部分...
《NTFS文件系统扇区存储探秘》主要内容包括:介绍NTFS文件系统优越的性能特征;介绍作者为了探索NTFS文件系统的存储特点编写的21个WIN32工具程序;使用作者编写的WIN32工具程序,探秘NTFS文件系统的扇区存储规律。 ...
《模拟文件系统设计报告》 本报告主要探讨的是如何使用C语言模拟实现操作系统中的文件管理系统。设计的核心目标包括实现文件的创建、查询、删除、修改、更名、拷贝等基本功能,以及采用多级目录机制来管理和操作...
(8) copy …: 拷贝文件,除支持模拟Linux文件系统内部的文件拷贝外,还支持host文件系统与模拟Linux文件系统间的文件拷贝,host文件系统的文件命名为…,如:将windows下D:盘的文件\data\sample\test.txt文件拷贝到...
操作系统课程设计是IT学习中的重要环节,特别是在模拟真实操作系统功能时,如本次的主题——模拟Linux二级文件系统。这个任务旨在让学习者深入理解文件系统的原理和运作方式,从而提升对操作系统核心机制的理解。 ...
7. **文件系统挂载**:在Linux中,不同的物理存储设备可以被挂载到文件系统的某个点,形成虚拟的统一文件系统。挂载点和挂载操作是实验的重要部分。 8. **磁盘管理**:了解磁盘分区、格式化和文件系统类型(如ext4...
通过一个文件或者内存空间来虚拟一块“硬盘”,给这个“硬盘”编写一个虚拟文件系统,虚拟linux/unix文件系统的操作和管理。进一步熟悉操作系统中文件系统部分的原理以及linux/unix文件系统的管理方式。 实现的功能...
本课程设计要求设计一个模拟的多用户多级目录的文件系统。通过具体的文件存储空间的管理、文件的物理结构、目录结构和文件操作的实现,加深对文件系统内部功能和实现过程的理解。 二、课程设计的要求与数据 1. 在...
在内存中模拟一个FAT格式的文件系统,完成文件的创建和索引功能,实现以下命令接口: (1)新建文件,格式:mkfile filename filecontent filename:文件名 filecontent:文件内容(字符) 实现按FAT格式写FAT表...
exFAT(Extended File Allocation Table)是微软推出的一种先进的文件系统,主要设计用于闪存设备,以解决FAT32在大容量存储上的限制。它提供了更好的性能、更高效的存储管理和更大的单个文件大小支持。在本文中,...
关于文件系统的ppt文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件...
在C++中实现一个类UNIX文件系统是一项复杂的任务,它涉及到对操作系统内核级功能的模拟,主要包括文件和目录管理。以下是对这个项目的关键知识点的详细说明: **1. 文件系统基础** 首先,理解文件系统的基本概念至...
虚拟文件系统(Virtual File System,简称VFS)是一种在操作系统中用于实现不同文件系统兼容性的抽象层,它是Linux系统中的一项关键技术,为各种不同的文件系统提供统一的用户接口。Linux通过VFS能够在不同的文件...
在IT领域,深入理解文件系统对于数据恢复、故障排查以及系统维护至关重要。FAT32是一种广泛使用的文件系统,尤其在Windows操作系统中。WinHex是一款强大的十六进制编辑器,适用于磁盘、存储设备和文件的取证分析。...
SPI FLASH移植littleFS文件系统是一项在嵌入式领域中至关重要的技术实践。SPI FLASH作为一种常见的非易失性存储器,广泛应用于各种微控制器(MCU)系统,它以串行方式传输数据,具有低功耗、小体积和低成本的优点。...
操作系统 课程设计 文件系统 代码