视频链接:

  土豆:http://www.tudou.com/programs/view/yT0PfIWU720

  B站(推荐): http://www.bilibili.com/video/av9877318/ 

  本章的目录如下,重点知识点我会点出来~

1. 目录与路径
1.1 相对路径与绝对路径              (绝对路径从/开始,相对路径是根据当前目录来算的,shell script推荐使用绝对路径)
1.2 目录的相关操作: cd, pwd, mkdir, rmdir     ()
1.3 关于执行文件路径的变量: $PATH          (echo $PATH,所谓的相对路径就是PATH搞出来的)
2. 档案与目录管理
2.1 档案与目录的检视: ls              (ls -ail)
2.2 复制、移动与删除: cp,mv,rm          (cp 文件 目录 or cp 文件 更名,rm -f强制 -r递归删除,mv移动或更名,mv 文件 更名, mv 文件 目录)
2.3 取得路径的文件名称与目录名称         (文件名basename,目录名dirname.用法后面跟上路径就ok)
3. 档案内容查阅:
3.1 直接检视档案内容: cat, tac, nl  (cat 由第一行开始显示档案内容tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!nl 显示的时候,顺道输出行号!)
3.2 可翻页检视: more, less
3.3 资料撷取: head, tail          (head取出前几行默认是10,head -n 20 文件,tail取出后面几行)
3.4 非纯文字文件: od      (/usr/bin/passwd用cat就是乱码,od -t c以ASCII码形式)
3.5 修改档案时间与建置新档: touch
4. 档案与目录的预设权限与隐藏权限
4.1 档案预设权限:umask       (umask很重要,直接打umask看权限,减权限。umask 022这样设置.umask的作用范围是这个用户的范围,换个用户就不行了)
4.2 档案隐藏属性: chattr, lsattr   (chattr 常用-i -a , lsattr -aR)
4.4 档案特殊权限:SUID/SGID/Sticky Bit 
4.3 档案类型:file          (file直接后面跟文件,看看他是什么格式类型的)
5. 档案的搜寻: which, whereis, locate, find     (which寻找执行档,whereis寻找特定档案)

touch修改档案时间:

chattr (设定档案隐藏属性)  + - = 这三个操作符号

lsattr 显示档案隐藏属性

SUID:

会制作出 s 与 t 的权限,是为了让一般使用者在执行某些程序的时候, 能够暂时的具有该程序拥有者的
权限。 举例来说好了,我们知道账号与密码的存放档案其实是 /etc/passwd 与 /etc/shadow 。 而
/etc/shadow 这个档案的权限是什么?是『-r--------』。且他的拥有者是 root 喔!在这个权限中,仅
有 root 可以『强制』储存,其它人是连看都没有办法看的吶!
但是偏偏鸟哥使用 dmtsai 这个一般身份使用者去更新自己的密码时,使用的就是 /usr/bin/passwd 这个
程序, 却是可以更新自己的密码的,也就是说, dmtsai 这个一般身份使用者可以存取 /etc/shadow 这
个密码文件! 但!怎么可能?明明 /etc/shadow 就是没有 dmtsai 可以存取的权限啊!呵呵~这就是 s 这
个权限的帮助啦! 当 s 这个权限在 user 的 x 时,也就是类似上表的 -r-s--x--x ,称为 Set UID ,
简称为 SUID , 这个 UID 代表的是 User 的 ID ,而 User 代表的则是这个程序 (/usr/bin/passwd) 的
拥有者 (root 啊!)。 那么由上面的定义中,我们知道了,当 dmtsai 这个使用者执行 /usr/bin/passwd
时,他就会『暂时』的得到档案拥有人 root 的权限。
SUID 仅可用在『二进制制档案(binary file)』上, SUID 因为是程序在执行的过程中拥有档案拥有者的
权限,因此,他仅可用于 binary file , 不能够用在批次档 (shell script) 上面的!这是因为 shell
script 只是将很多的 binary 执行档叫进来执行而已!所以 SUID 的权限部分,还是得要看 shell script
呼叫进来的程序的设定, 而不是 shell script 本身。当然,SUID 对于目录也是无效的~这点要特别留
意。

SGID

进一步来说,如果 s 的权限是在 group 时,那么就是 Set GID ,简称为 SGID。 SGID 可以用在两个部
分喔!
• 档案:如果 SGID 是设定在 binary file 上面,则不论使用者是谁,在执行该程序的时候, 他
的有效群组 (effective group) 将会变成该程序的群组所有人 (group id)。
• 目录:如果 SGID 是设定在 A 目录上面,则在该 A 目录内所建立的档案或目录的 group ,将会
是 此 A 目录的 group !
一般来说, SGID 应该是比较多用在特定的多人团队的项目开发上, 在系统当中应该会比较少这个设定才
对~

Sticky Bit

目前只对目录有效,在具有
SBit 的目录下,使用者若在该目录下具有 w 及 x 的权限, 则当使用者在该目录下建立档案或目录时,
只有档案拥有者与 root 才有权力删除

which 寻找执行档

whereis寻找特定档案,相对于find来说,find很强大,但是find是搜索硬盘的,如果你的硬盘很老旧那速度就会~~你懂的~,这个时候whereis就显得相当好用

那么 whereis 到底是使用什么咚咚呢?为何搜寻的速度会比 find 快这么多?! 其实那也没有什么!这
是因为 Linux 系统会将系统内的所有档案都记录在一个数据库档案里面, 而当使用 whereis 或者是底下
要说的 locate 时,都会以此数据库档案的内容为准, 因此,有的时后你还会发现使用这两个执行档时,
会找到已经被杀掉的档案! 而且也找不到最新的刚刚建立的档案呢! 这就是因为这两个指令是由数据库
当中的结果去搜寻档案的所在啊!
另外,基本上 Linux 每天会针对 Linux 主机上所有档案的所在进行搜寻数据库的更新, 更新的程序就是
updatedb ,你可以在 FC4 系统的 /etc/cron.daily/slocate.cron 这个档案找到相关的机制呦!当然,
也可以直接使用 /usr/bin/updatedb 来更新数据库档案呢!

locate

find

鸟哥的Linux私房菜——第十一章的更多相关文章

  1. 鸟哥的linux私房菜——第五章学习(Linux的文件权限与目录配置)

    ******************第五章学习****************** 1.[重要的三个概念] 1).文件拥有者(使用者):User,该文件/文件夹只能我来读写: 2).群组:Group, ...

  2. 鸟哥的linux私房菜——第20章 启动流程、模块管理与loader

    20.1 Linux启动流程分析 Linux启动过程: 按下开机电源后计算机硬件主动读取BIOS来加载硬件信息以及硬件系统的自我测试,之后系统会主动读取第一个可启动的设备(由BIOS设置),此时就可以 ...

  3. 鸟哥的Linux私房菜——第十七章:Linux 账号与身份管理

    视频链接:http://www.bilibili.com/video/av10669732/ 1. Linux 的账号与群组1.1 使用者识别: UID 与 GID1.2 使用者账号:/etc/pas ...

  4. 鸟哥的linux私房菜 - 第三章 主机规划与磁盘分区

    各硬件装置在linux中的文件名 在linux系统中,每个装置都被当成一个档案来对待. 常见的装置与其在linux中的档名: 磁盘分区 磁盘链接的方式与装置文件名的关系 个人计算机常见的磁盘接口有两种 ...

  5. 鸟哥的linux私房菜——第十三章学习(Linux 帐号管理与 ACLL 权限设置)

    第十三章.Linux 帐号管理与 ACLL 权限设置 1.0).使用者识别码: UID 与 GID UID :User ID GID :group ID [root@study ~]# ll -d / ...

  6. 鸟哥的linux私房菜——第七章学习(Linux 磁盘与文件系统管理)

    1.1).文件系统特征 我们称呼一个可被挂载的数据为一个文件系统而不是一个分区! 文件系统通常会将这两部份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data ...

  7. 鸟哥的linux私房菜——第六章学习(Linux文件与目录管理)

    ******************第六章学习****************** 1.[文件与目录管理] 在所有目录下面都会存在的两个目录,分别是 "." 与 "..& ...

  8. 鸟哥的linux私房菜——第四章学习

    ******************第四章学习****************** [热键] 1.Tab键:命令补全:文件补全: 2.Ctrl+c:中断目前指令: 3.Ctrl+d:离开当前文本界面: ...

  9. 鸟哥的Linux私房菜第零章

    CPU从主存中读取数据通过微指令集控制和进行计算.主存储器内的数据则是从输入单元所传输进来,而CPU处理完毕的数据也必须要先写回主存储器中, 最后数据才从主存储器传输到输出单元.内存又称主存,是CPU ...

随机推荐

  1. LeetCode Generate Parentheses (DFS)

    题意 Given n pairs of parentheses, write a function to generate all combinations of well-formed parent ...

  2. 访问kubernetes ingress-controller

    ingress-controller可以理解为一套反向代理系统,本身需要暴露端口到集群外部,以便客户端访问. 根据实际使用,给出两种暴露端口的方式,如下: 方案一 拓扑 说明 ingress-cont ...

  3. Cloud Native Weekly | KubeCon首登中国,华为云亮相KubeCon 2018,微软云服务又罢工

    1.KubeCon首登中国,Kubernetes将如何再演进? 11月14日,由CNCF发起的云原生领域全球最大的峰会之一KubeCon+CloudNativeCon首次登陆中国,中国已经成为云原生领 ...

  4. Apache服务器出现Forbidden 403错误提示的解决方法总结

    在配置Linux的 Apache服务时,经常会遇到http403错误,我今天配置测试时也出现了,最后解决了,总结了一下.http 403错误是拒绝访问的意思,有很多原因的.还有,这些问题在win平台的 ...

  5. 1079. Total Sales of Supply Chain (25)-求数的层次和叶子节点

    和下面是同类型的题目,只不过问的不一样罢了: 1090. Highest Price in Supply Chain (25)-dfs求层数 1106. Lowest Price in Supply ...

  6. Redis学习笔记之入门基础知识——简介

    非关系型数据库,存储的数据类型:字符串(STRING).列表(LIST).集合(SET).散列表(HASH).有序集合(ZSET) 持久化:时间点转储(point-in-time-dump)(快照). ...

  7. 第二阶段冲刺——seven

    个人任务: 马佳慧:设计界面背景,统一风格. 王金萱:整体运行测试上传到公网上的程序. 季方:修改优化已上传的代码. 司宇航:整体调试程序继续优化. 站立会议: 任务看板和燃尽图:

  8. 每日scrum(6)

    今天是小组正式冲刺的第六天,软件的各种结尾工作,还有一些模块就已经全部实现了: 遇到的问题主要是对于自己能力的担忧,以前总是想,如果自己努力,就会怎样成功,其实并不是那样,小小的距离就是很远的能力差距 ...

  9. Daily Scrum - 12/01

    Meeting Minutes 今天重阳去和UI设计团队的人去讨论UI方面的事宜了,剩下的人主要还是在讨论文件输入输出的事.目前总算是能实现文件存取了,尽量在明天前把文件的格式内容都弄好. Burnd ...

  10. Daily Scrum 11.1

    今天放假一天,明天又是新的一周,预计开始Alpha版本所有功能的整合和优化,争取在两天内完成各种功能的整合. Member Task on 11.1 Task on 11.2 仇栋民 放假一天 开始T ...