see also jlevy/the-art-of-command-line (multi-language)

Organised 2017 March.
Notes from 2012 April.
多年前(2012)写的“鸟哥的Linux 私房菜”学习笔记。 - Chapters 6~9 -ing
基本的命令应该没什么变化吧。

第6章、Linux文件权限与目录配置

user, group

Linux文件权限概念

Linux文件属性 (ls -al)

*首位类型: 
    d: Dir
    -: 正规文件(regular file )
        ASCII/plain text; binary; data(eg: last 才能读 /ar/log/wtmp)
    l: Link
    b: Block dev, 可供储存的接口设备(可随机存取装置)
    c: Character dev, 串行端口设备,例如键盘、鼠标(一次性读取装置)
    s: Socket, 常见于 /var/run
    p: Pipe, FIFO. see: man fifo. 在解决多程序同时存取一个文件所造成的错误。
*时间: 最后修改时间

中文时间乱码: 用『LANG=en_US』来修改语系. /etc/sysconfig/i18n

改变属性与权限: chgrp, chown, chmod

*chgrp [-R] toGrpName file/folderName
*chown [-R] toOwnName:togrpname file/foldername
*chmod [-R] [a]-x ./foldername
    Owner; Group; Others; All(default).

目录与文件之权限意义. OBS:目录, 即文件名列表. 文件名与目录有强烈的关连

r (read contents in directory) 
#OBS: 不可以了解内部属性 vs=> x
w (modify contents of directory)
#异动该目录结构列表的权限
#eg:删除已经存在的文件与目录(不论该文件的权限为何!)
#OBS:即使他人的某dir在自家dir下, 如果不能清空其列表, 那么也就不能删除此目录了.
x (access directory)
#即, 能否cd进入此目录, 
#OBS: 含各列表项目属性 vs=> r

eg: 如果知道内部文件名, 即使没有目录的r权限, 也可以了解某文件属性 (查看文件属性 只与 目录属性的x权限有关, 与文件的属性的权限无关)

Linux文件种类与扩展名

*基本上,Linux系统上的文件名真的只是让你了解该文件可能的用途而已, 真正的执行与否仍然需要权限的规范才行!
*Ext2/Ext3文件系统时,针对文件的档名长度限制为:
    单一文件或目录的最大容许文件名为 255 个字符;
    包含完整路径名称及目录 (/) 的完整档名为 4096 个字符。

Linux目录配置

很难用纯文本记录, [请看原网站](http://bit.ly/linuxFhs) 

Linux目录配置的依据--FHS:/, /usr, /var

目录树(directory tree)

绝对路径与相对路径

CentOS 的观察: lsb_release

第七章、Linux 文件与目录管理

目录与路径

0. 相对路径与绝对路径
0. 目录的相关操作: cd, pwd, mkdir, rmdir
0. 关於运行档路径的变量: $PATH

文件与目录管理

0. 文件与目录的检视: ls
0. 复制、删除与移动: cp, rm, mv
0. 取得路径的文件名称与目录名称

文件内容查阅:

0. 直接检视文件内容: cat, tac, nl
0. 可翻页检视: more, less
0. 数据撷取: head, tail
0. 非纯文字档: od
0. 修改文件时间与建置新档: touch

文件与目录的默认权限与隐藏权限

文件默认权限:umask

文件隐藏属性: chattr, lsattr

文件特殊权限:SUID, SGID, SBIT, 权限配置

*reSetUserID 
#reSet执行者的 x 权限 (x时候的UID)
    OBS:
        仅对 *二进制* 可执行程序有效, 对于普通可执行(例如bash文本文件)无效
        x文件者在 x 前必须已经拥有 x 权限, x时候UserID才会被reSet
*reSetGroupID
#文件  的reSetGroupID, reSet执行者的 x 权限 
#文件夹的reSetGroupID, reSet进入者的 w 权限 
    OBS:
        常用于专案/项目管理
        x*二进制*文件 者在 x 前必须已经拥有对文件  的 x 权限, x时候UserID才会被reSet
        w 文件夹列表  者在 w 前必须已经拥有对文件夹的 w 权限. // 文件的 owner和grp是 *文件* 属性, 但由w *文件夹列表* 者的属性决定
*sTicky-bit
#限制 w文件夹列表 者的 w 权限(删除权限)

观察文件类型:file

命令与文件的搜寻:

命令档名的搜寻:which

文件档名的搜寻:whereis, locate, find

极重要!权限与命令间的关系:

重点回顾

本章习题

参考数据与延伸阅读

针对本文的建议