Linux文件系统管理

文件特殊权限:

  SUID:运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者。

    chmod u+s FILE:如果FILE本身原来就有执行权限,则SUID显示为s;否则显示为S。

    chmod u-s FILE:

  SGID:运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属属组。

    chmod g+s FILE:

    chmod g-s FILE:

  Sticky:在一个公共目录,每个用户都能创建文件,删除自己的文件,但不能删除别人的文件。

    chmod o+t DIR:

    chmod o-t DIR:

FACL:FileSystem Access Control List

  利用文件扩展保存额外的访问控制权限。

setfacl:

  -m:设定额外的访问控制列表。

    u:UID:perm

    g:GID:perm

    d:u:UID:perm:在目录上设置的默认访问控制列表。

    d:g:GID:perm:在目录上设置的默认访问控制列表。

  -x:取消额外的访问控制列表。

    u:UID

    g:GID

  --mask:

getfacl:

磁盘:

  盘片:

  磁头:

  磁道:

  扇区:

  柱面:

  MBR:Master Boot Record,主引导记录,为512byte。其中446byte存储BootLoader程序,64byte中每16byte标识一个分区,2byte存储Magic Number,用于标记MBR是否有效。

分区:

  主分区:

  扩展分区:

  逻辑分区:

  引导块:boot block。

  日志区:

  块组:  

    超级块:super block。

    块组描述符表:GDT,group description table。

    块位图:block bitmap。

    节点位图:inode bitmap。

    inode table:

    data block:

VFS:Virtual FileSystem

  虚拟文件系统。

文件系统:

  FAT32、NTFS、ISO9660、CIFS、ext2、ext3、ext4、swap、xfs、reiserfs、jfs、nfs、ocfs2、gfs2

挂载:将新的文件系统关联至当前文件系统。

卸载:将某文件系统从当前根文件系统的关联关系移除。

虚拟地址:

swap分区:

链接:

  软连接:可应用于目录;可以跨文件系统;不会增加被链接文件的链接次数;其大小为指定的路径所包含的字符个数。

  硬链接:只能对文件创建,不能应用于目录;不能跨文件系统;创建硬链接会增加文件被硬链接的次数。

ln:

  • 作用

  创建链接。

  • 选项

  -s:soft,创建软链接。

设备文件:

  • 作用

  设备文件是硬件的访问入口。

mknod:

  • 作用

  创建设备文件。mknod [option]... NAME TYPE [MAJOR,MINOR]

  • 选项

  -m:

  --mode=:指定设备文件权限信息。

磁盘管理:

du:

  • 作用

  查看文件或目录的磁盘占用情况。

  • 选项

  -h:

  --human-readable:提高信息可读性。

df:

  • 作用

  查看硬盘使用情况。

  • 选项

  -i:

  --inodes:列出inode信息。

blkid:

  • 作用

  用于查看磁盘设备相关属性。

  • 内容

  LABEL:卷标。

  UUID:唯一标识。

  TYPE:文件系统类型。

  SEC_TYPE:

fdisk:

  • 作用

  查看磁盘分区信息,管理分区信息。

  • 选项

  -l:列出磁盘分区表。

  • 命令

  p:print,显示当前硬件的分区,包括没有保存的改动。

  n:创建新分区。

    e:extended,扩展分区。

    p:primary,主分区。

  d:删除一个分区。

  w:保存退出。

  q:不保存退出。

  t:修改分区类型。

  l:显示所支持的所有类型。

partprobe/partx:

  • 作用

  通知内核重读硬盘分区表。

/proc/partitions:

  • 作用

  存储磁盘及分区信息。

/proc/filesystems:

  • 作用

  存储内核支持的文件系统。

mkfs:make filesystem

  • 作用

  创建文件系统。

  • 选项

  -t:指定文件系统类型。mkfs -t ext2=mkfs.ext2。

mke2fs:

  • 作用

  创建ext系列文件系统。

  • 选项

  -j:创建ext3文件系统。

  -b:指定块大小。

  -L:label,指定分区卷标。

  -m:指定预留给超级用户的块的百分比。

  -i:指定为多少个字节的空间创建一个inode,默认为8192;这里给出的数值应该为块大小的2^n倍。

  -N:指定创建的inode的个数。

  -F:强制创建文件系统。

  -E:用于指定额外的文件系统属性。

    stride:指定RAID的chunk与block size的商。

e2label:

  • 作用

  查看或定义卷标。

tune2fs:

  • 作用

  调整文件系统的相关属性。

  • 选项

  -j:不损害原有数据,将ext2升级为ext3。

  -L:用于设定卷标。

  -m:调整预留百分比。

  -r:指定预留块数。

  -o:设定挂载属性。

  -c:指定挂载次数达到指定次数后进行自检,0或-1表示关闭此功能。

  -i:指定每隔多少天进行自检,0或-1表示关闭此功能。

  -l:显示超级块信息。

dumpe2fs:

  • 作用

  显示文件系统相关信息。

  • 选项

  -h:只显示超级块信息。

fsck:filesystem check

  • 作用

  检查并修复Linux文件系统。

  • 选项

  -t:指定文件系统类型。

  -a:auto,自动修复。

e2fsck:

  • 作用

  检查并修复ext2、ext3文件系统

  • 选项

  -f:force,强制检测。

  -P:自动修复。

mount:

  • 作用

  挂载文件系统至指定目录。

    设备文件:/dev/sda5

    卷标:LABEL=""

    UUID:UUID=""

  挂载点目录:

    此目录没有被其它进程使用。

    目录得事先存在。

    目录中的原有的文件将会暂时隐藏。

  • 选项

  -a:表示挂载/etc/fstab文件中定义的所有文件系统。

  -n:默认情况下,mount命令没挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件;使用-n选项意味着挂载文件系统时,不把信息写入此文件。

  -t:指定正在挂载设备上的文件系统的类型;不使用此选项,mount会调用blkid命令获取对应文件系统的类型。

  -r:挂载文件系统为只读。

  -w:挂载文件系统为读写。

  -o:指定额外的挂载选项,即指定文件系统启用的属性。

    async:异步写入。

    atime:每访问一次均更新时间戳。

    remount:重新挂载当前文件系统。

    ro:挂载为只读。

    rw:挂载为读写。

    loop:挂载本地回环设备。

umount:

  • 作用

  将指定文件系统卸载。

  卸载时:

    挂载的设备没有被进程使用。

fuser:

  • 作用

  验证进程正在使用的文件或套接字。

  • 选项

  -v:查看某文件上正在使用的进程。

  -k:终止正在访问指定文件的所有进程。

  -m:指定已挂载的文件系统。

内存管理:

free:

  • 作用

  查看当前系统物理内存和交换分区使用情况。

  • 选项

  -m:以MB为单位显示。

mkswap:

  • 作用

  创建交换分区。

  • 选项

  -L:指定卷标。

swapon:

  • 作用

  启用交换分区交换空间。

  • 选项

  -a:启用所有的定义在/etc/fstab文件中的交换设备。

swapoff:

  • 作用

  关闭交换分区。

回环设备:loopback,使用软件来模拟实现硬件。

dd:

  • 作用

  复制文件。

  dd if=xxx of=xxx

  /dev/zero

  • 附加参数

  bs:block size。

  count:

  seek:跳过块数。

/etc/fstab:文件系统配置文件

  • 挂载设备
  • 挂载点
  • 文件系统类型
  • 挂载选项
  • 转储频率,每多少天做一次完全备份
  • 文件系统检测次序,只有根为1

你可能感兴趣的:(Linux文件系统管理)