linux的档案权限和文件系统

  • chgrp:改变档案所属群组(change group的缩写)
  • chown:改变档案拥有者(change owner的缩写)
  • chmod:改变档案的权限,SUID,SGID,SBIT等

档案的一般权限rwx

权限的设定有两种方式,可以使用数字或者符号来改变权限。在linux中档案权限分为基本的read读(4),write写(2),execute执行权限(1),分别对应于rwx,使用ls -l可以查看文件权限,属主user(1),群组group(2),其他others(3),就可以用u、g、o来代表三种身份的权限。

档案的特殊权限:SUID(4),SGID(2),SBIT(1)

Set UID
当s这个标志出现在档案拥有者的x权限上时,如(-rwsr-xr-x),此时就被称为Set UID,简称为SUID的特殊权限

  • SUID权限仅对二进制程序(binary program)有效;
  • 执行者对于该程序需要具有x的可执行权限;
  • 本权限仅在执该程序的过程中有效(run-time);
  • 执行者将具有该程序拥有者(owner)的权限。

Set GID
当s标志在档案拥有者的x项目为SUID,那s在群组的x时则称为Set GID,简称SGID。与SUID不同的是,SGID可以针对档案或目录来设定。如果是档案,SGID有如下功能:

  • SGID对二进制程序有用;
  • 程序执行者对于该程序来说,需具备x的权限;
  • 执行者在执行的过程中会获得改程序群组的支持。

如果是目录设定了SGID权限后,具有如下功能:

  • 用户若对于此目录具有r与x的权限时,该用户能够进入此目录;
  • 用户在此目录下的有限群组(effective group)将会变成该目录的群组;
  • 用途:若用户在此目录下具有w的权限(可以新建档案),则使用者多建立的新档案,该新档案的群组与此目录的群组相同。

Sticky Bit
Sticky Bit,简称SBIT,目前只针对目录有效有权删除该档案,对于档案无效。SBIT对于目录的作用:

  • 当用户对于此目录具有wx权限,也就是说具有写入的权限时;
  • 当用户在该目录下建立档案或目录时,仅有自己与root才

因为根目录与开机有关,开机过程中仅有根目录会被挂载, 其他分割槽则是在开机完成之后才会持续的进行挂载的行为。就是因为如此,因此根目录下与开机过程有关的目录, 就不能够与根目录放到不同的分割槽去!那哪些目录不可与根目录分开呢?以下目录:

  • /etc:配置文件
  • /bin:重要执行档
  • /dev:所需要的装置档案
  • /lib:执行档所需的函式库不核心所需的模块
  • /sbin:重要的系统执行文件

几个常见的处理目录的指令:

  • cd:变换目录
  • pwd:显示当前目录
  • mkdir:建立一个新的目录
  • rmdir:删除一个空的目录

档案查阅

  • cat 由第一行开始显示档案内容
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl 显示的时候,顺序输出行号!
  • more 一页一页的显示档案内容

空格键 (space):代表向下翻一页;
Enter :代表向下翻『一行』;
/字符串 :代表在这个显示的内容当中,向下搜寻『字符串』这个关键词;
:f :立刻显示出文件名以及目前显示的行数;
q :代表立刻离开 more ,不再显示该档案内容。
b 或 [ctrl]-b :代表往回翻页,不过这动作只对档案有用,对管线无用。

  • less 不 more 类似,但是比 more 更好癿是,他可以往前翻页!

空格键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字符串 :向下搜寻『字符串』的功能;
?字符串 :向上搜寻『字符串』的功能;
n :重复前一个搜寻 (与 / 或 ? 有关!)
N :反向的重复前一个搜寻 (与 / 或 ? 有关!)
q :离开 less 这个程序;

  • head 叧看头几行(取出前面几行head [-n number] file -n:后面接数字,代表显示几行)
  • tail 查看尾部几行(同上)
  • od 以二进制的方式读取档案内容(具体使用可以使用od --help查看)

umask 的用处与优点:
umask 可以拿掉一些权限,因此,适当的定义 umask 有利于系统的安全, 因为他可以建立默认的目录或档案的权限。

例如:假设umask为003,请问该umask情况下,建立的档案与目录权限为?
umask为003,所以拿掉的权限是——-wx,因此:
档案:(-rw-rw-rw)-(——-wx)=(-rw-rw-r–);
目录:(drwxrwxrwx)-(——-wx)=(drwxrwxr–).

chattr(配置文件案隐藏属性)

chattr [+-=] \[ASacdisu](+增加某一个特定参数;-移除某一个特殊参数;=设定一定,且仅有后面接的参数。具体参数使用可以使用help命令查看)

lsattr(显示隐藏属性)

lsattr [-adR] [file or directory]

-a:将隐藏文件的属性表现出来;
-d:如果接的是目录,仅列出目录本身的属性而非目录内的文件名;
-R: 连同子目录的数据也一并列出来。

磁盘与文件系统管理

EXT2文件系统:
superblock:记录此 filesystem 的整体信息,包括 inode/block 的总量、使用量、剩余量, 以及文件系统的格式与相关信息等;
inode:记录档案的属性,一个档案占用一个inode,同时记录此档案的数据所在的 block 号码;
block:实际记录档案的内容,若档案太大时,会占用多个 block 。

df:列出文件系统的整体磁盘使用量;
df [-akmhiHT] [file or directory](选项与参数使用--help查看即可。)
du:评估文件系统的磁盘使用量(常用在推估目录所占容量)
du [-ahskm] [file or directory]

linux常见的压缩指令:

  • .Z compress 程序压缩的档案;
  • .gz gzip 程序压缩的档案;
  • .bz2 bzip2 程序压缩的档案;
  • .tar tar 程序打包的数据,并没有压缩过;
  • .tar.gz tar 程序打包的档案,其中并且经过 gzip 的压缩
  • .tar.bz2 tar 程序打包的档案,其中并且经过 bzip2 的压缩

压 缩:tar -jcv -f filename.tar.bz2 要被压缩癿档案戒目录名称
查 询:tar -jtv -f filename.tar.bz2
解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩癿目录

完整备份工具:dump
dump在文件备份的时候可以指定不同的备份等级,完整备份(level 0),差异比较(level 1),差异比较(level 2)……
如果想要备份的数据如下时,则有不同的限制情况:

  • 当待备份的资料为单一文件系统;
  • 如果是单一文件系统 (filesystem) ,那么该文件系统可以使用完整的 dump 功能,包括利用0~9 的数个 level 来备份, 同时,备份时可以使用挂载点或者是装置文件名 (例如 /dev/sda5之类的装置文件名) 来进行备份;
  • 待备份的数据只是目录,并非单一文件系统;例如你仅想要备份 /home/someone/ ,但是该目录并非独立的文件系统时。此时备份就有限制,包括:
    • 所有的备份数据都必项要在该目录 (本例为:/home/someone/) 底下;
    • 且仅能使用 level 0 ,亦即仅支持完整备份而已;
    • 不支持 -u 选项,亦即无法建立 /etc/dumpdates 这个各别 level 备份的时间记录文件

dump常用指令:
dump [-Suvj] [-level] [-f备份档案] 带备份资料
dump -W

-S:仅列出后面的待备份数据需要多少磁盘空间才能够备份完毕;
-u:将这次dump的时间记录到/etc/dumpdates档案中;
-v:将dump的档案过程显示出来;
-j:加入bzip2的支持,将数据进行压缩,默认bzip2压缩等级为2;
-level:加入备份等级,从0~9共十个等级;
-f:有点类似tar,后面接产生的档案,例如/dev/st0装置文件名等。
-W:列出在/etc/fstab里面的具有dump设定的partition是否有备份过。

备份复原restore

restore -t [-f dumpfile] [-h]  -----用来察看dump文档
restore -C [-f dumpfile] [-D挂载点]  -----比较dump与实际档案
restore -i [-f dumpfile] ------进入互动模式
restore -r [-f dumpfile] ------还原整个文件系统

选项参数解释:
相关的各种模式,各种模式不可混用,如不可以写-tC
-t :此模式用在察看 dump 的备份文件中含有什么重要数据!类似 tar -t功能;
-C :此模式可以将 dump 内的数据拿来跟实际的文件系统做比较,
最终会列出『在dump档案内有记录的,且目前文件系统不一样』的档案;
-i :进入互动模式,可以仅还原部分档案,用在 dump 目录时还原
-r :将整个 filesystem 还原的一种模式,用在还原针对文件系统的 dump 备份;
其他较常用到的选项功能:
-h :察看完整备份数据中的 inode 不文件系统 label 等信息
-f :后面就接你要处理的那个 dump 档案
-D :与-C进行搭配,可以查出后面接的挂载点与dump内有不同档案

光盘写入工具:mkisofs
文本模式的刻录行为,具体做法:

  • 先将所需要备份的数据建置成为一个镜像文档(iso),利用mkisofs指令来处理;
  • 将该镜像文件刻录至光盘或DVD中,利用cdrecord指令来完成

mkisofs:建立镜像文档
mkisofs [-o 镜像档] [-rv] [-m file] 待备份文件.. [-V vol] -graft-point isodir=systemdir...

选项参数:
-o :后面接你想要产生的那个镜像档档名。
-r :透过 Rock Ridge 产生支持 Unix/Linux 的档案数据,可记录较多的信息;
-v :显示建置 ISO 档案的过程
-m file :-m 为排除档案 (exclude) 的意思,后面的档案不备份到镜像档中
-V vol :建立 Volume,有点像 Windows 在档案总管内看到的CD title的东西
graft-point:graft有转嫁移植的意思。

光盘刻录工具:cdrecord

cdrecord -scanbus dev=ATA    ----侦测刻录机所在位置
cdrecord -v dev=ATA:1,1,0 blank=fast   ----进行CD的刻录动作(0,先抹除原本内容)
cdrecord -v dev=ATA:1,1,0 blank=fast   ----进行DVD-RW的刻录动作

vim

在linux系统下常用的文本编辑器有emacs,pico,nano,joe,vi,vim。但是使用范围最广,最常用的还是vi/vim,所有的unix like系统都会内建vi编辑器,vim具有程序编辑能力,可以主动地根据字体颜色辨别语法的正确性,提高程序设计效率。严格来讲vim是在vi基础功能上扩展而来的,vim是vi的进阶版。
vi的使用
vi共分为一般模式,编辑模式,指令命令模式。

  • 一般模式:使用vi打开一个档案就直接进入一般模式了,在这个模式中可以使用上下左右按键来移动光标,可以使用删除字符或删除整行来处理档案内容,也可以使用复制粘贴来处理文档内容。
  • 编辑模式:进入一般模式之后,需要按下[i,I,o,O,a,A,r,R]等任何一个字母之后才会进入编辑模式。在linux中,按下这些按键时,在画面的左下方会出现[insert 或 replace],此时进行内容编辑。推出编辑模式按下Esc即可。
  • 指令列命令模式:在一般模式中,输入[:/?]中的任何一个字符,就可以将光标移到最底下那一行。在这个模式当中,可以提供搜索功能,读取,存盘,替换字符,退出,显示行号….等都是在此模式中实现的。

linux基础篇读书笔记相关推荐

  1. 嵌入式Linux基础教程-读书笔记

    waiting to be fixed. coming soon. +读书笔记: +linux kernel <Linux内核完全剖析基于0.12内核>.pdf 嵌入式Linux基础教程第 ...

  2. 深入浅出mysql基础篇读书笔记

    版本8.0.25 1.p19 int(2)已经不推荐了 2.p28 无序排列改为按原表顺序排列会更好,无序也没错,但是容易被误解为随机排列(类似HashMap),但其实是按照原表顺序排列 3.p29 ...

  3. 鸟哥的linux私房菜-基础学习篇 读书笔记

    从事linux工作一年多,算是能够熟练运用linux服务器,但仍觉得自己对Linux的原理,理论缺乏空洞,潜下心来认真阅读尘封的鸟哥经典,知识点很全,收获颇多,实践与知识结合,知行合一,对linux开 ...

  4. 鸟哥的LINUX私房菜 基础学习篇 读书笔记 -- 第零章 计算机概论 (一)

    鸟哥的LINUX私房菜 基础学习篇 读书笔记 -- 第零章 计算机概论 (一) 第零章 计算机概论 0.1 电脑:辅助人脑的好工具 0.1.1 计算机硬件五大组成部分 0.1.2 一切设计的起点: C ...

  5. 鸟叔linux私房菜基础篇简体,鸟叔的Linux私房菜基础篇-学习笔记(一)

    鸟叔的Linux私房菜基础篇-学习笔记(一) 开机进入命令行模式: ctrl+alt+[F1-F6]的任意键进入命令行编辑界面 ctrl+alt+F7进入图形界面模式 开始下达指令 [dmtsai@s ...

  6. Java基础篇 学习笔记

    List item Java基础篇 学习笔记 java基础篇 第1章 计算机.程序和java概述 学习笔记 1.1什么是计算机 简单来说:计算机就是 ' 存储 ' 和 ' 处理 ' 数据的电子设备. ...

  7. Linux随笔-鸟哥Linux基础篇学习总结(全)

    Linux随笔-鸟哥Linux基础篇学习总结(全) 修改Linux系统语系:LANG-en_US,如果我们想让系统默认的语系变成英文的话我们可以修改系统配置文件:/etc/sysconfig/i18n ...

  8. linux磁盘符变化autofs,Linux基础教程学习笔记之Autofs自动挂载

    Linux基础教程学习笔记之Autofs自动挂载 Autofs自动挂载: yum -y install autofs vim /etc/auto.master  在文件中添加下面行 /home/gue ...

  9. 网络存储 linux 访问,Linux基础教程学习笔记28——使用Samba访问网络存储

    Linux基础教程学习笔记28--使用Samba访问网络存储 SMB用于Windows和类Linux系统直接的文件共享 安装samba client包: [root@linuxidc~]# yum i ...

  10. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

最新文章

  1. 知乎热帖:Qt 这么强大为什么火不起来?
  2. 比特币现金将出新招,推动比特币现金使用
  3. 市直系统推荐市级以上表彰的_浏阳市召开第六届教育科研成果表彰大会
  4. spring中的quartz调度问题
  5. php变量的引用与计数规则
  6. ES6-12 array/数值拓展、ArrayOf、ArrayFrom
  7. C#进行Visio开发的事件处理
  8. ajax 中$.each(json,function(index,item){ }); 中的2个参数表示什么意思?
  9. socket中使用心跳来检测连接是否断开[ZT]
  10. 阿里云-对象存储 OSS > 开发指南 > 基本概念
  11. java项目部署运行
  12. CCF201403-3 命令行选项(100分)
  13. c语言双人贪吃蛇小游戏代码,关于C 双人贪吃蛇显示的问题
  14. excel随机数_EXCEL随机数函数rand、randbetween
  15. 用axure做产品需求文档
  16. addon@Node.js之新手上路
  17. 图片去除下间隙(图片3像素)的方法
  18. 解决log4j生成的log日志文件读写权限问题
  19. SpringBoot升级所出现的问题:When allowCredentials is true, allowedOrigins cannot contain the specia
  20. 如何防止中国菜刀后门泄露webshell地址

热门文章

  1. win10磁盘管理教程
  2. python图片尺寸大小修改_Python实现更改图片尺寸大小的方法(基于Pillow包)
  3. VMware虚拟机win7安装教程
  4. 阿里云 银行卡 信息 四要素 验证
  5. vue项目pc端和移动端适配
  6. FineReport 参数查询
  7. Java实现一个简单的计算器功能
  8. 抖音JAVA工程师_字节跳动抖音社招后台开发工程师面经
  9. 游戏思考06:游戏核心逻辑设计—战斗系统基础及进阶(未完待续,12/14)
  10. 【学习笔记向】零基础小白快速制作最简陋MMD(VRoid + Unity)