RHCE学习笔记之补缺(一)
主要是把RHCE学习过程中以前没有深入了解的东西整理出来。归纳、重复、直到完全掌握。
1、linux命令行
#command &
command 在子 shell 的 background 运行。后台任务让多成程序能够运行在一个 shell 里面。
------------------------------------------------------------------
#command1 | command2
command1 的标准输出被直接输入到 command2 的标准输入。两个命令都可能并行地运行。这个被称作pipeline。
------------------------------------------------------------------
#command1 ; command2
command1、command2 被有序的执行。
------------------------------------------------------------------
#command1 && command2
command1 如果执行成功的话那么再执行 command2。只有当 command1并且command2 都运行成功的话上面的命令序列才会成功返回。
------------------------------------------------------------------
#command1 || command2
command1 被执行以后,如果不成功的话,command2 也会被执行。当 command1 或者command2 有一个执行成功的话,上面的序列就会返回真值。
2、历史上天数最少的一个月,不要惊讶,是真的!
$ cal 9 1752
九月 1752
日 一 二 三 四 五 六
1 2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
3、man的使用
所以的手册都有特定的部分(sections):
1 用户命令 可由任何人启动的。
2 系统调用 即由内核提供的函数。
3 例程 即库函数。
4 设备 即/dev目录下的特殊文件。
5 文件格式描述 例如/etc/passwd。
6 游戏 不用解释啦!
7 杂项 例如宏命令包、惯例等。
8 系统管理员工具 只能由root启动。
9 其他 用来存放内核例行程序的文档。
n 新文档 可能要移到更适合的领域。
o 老文档 可能会在一段期限内保留。
l 本地文档 与本特定系统有关的。
------------------------------------------------------------------
man -a command 打开所有部分内的同名帮助
man -f command =whatis
man -M command 指定手册的搜索路径
man -w command 指定特定语言的搜索路径
(结合 LANG=语言代号,如果安装了相应的语言包
eg: # LANG=zh
# man -w command
# man -M path
)
man NUM command 直接指定特定部分内手册,NUM指不同部分的序号
------------------------------------------------------------------
man的配置文件:/etc/man.config
.....最好的方式还是 man man看一下

4、unix操作系统层次划分

5、图形驱动通用程序 (安装的时候老师提到的)
许多新显卡一时得不到 XFree86的支持,配置 XWindow一直是个难题。但 Linux 2.2.x的 frame buffer设备可通过 VESA VBE 2.0标准利用显卡的 Super VGA特性,然后配合 XFree86的 frame buffer Server(XF86_FBDev) 就可让你的 XWindow用高分辨率和高/真彩。现在市面上绝大部分新出的显卡都支持VESA 2.0标准。在你的显卡得不到支持之前,这不失为一个好的解决方法。
详细见 http://linux.sheup.com/linux/linux6101.htm
6、创建用户相关的文件
/etc/login.defs
/etc/skel
7、文件默认权限:umask
默认在/etc/bashrc文件设定
规则:
• 建立文件时:(-rw-rw-rw-) – (-----w--w-) ==> -rw-r--r--
• 建立目录时:(drwxrwxrwx) – (d----w--w-) ==> drwxr-xr-x
参考 http://book.51cto.com/art/200709/57189.htm
8、文件隐藏属性
通过chattr、lsattr查看
[root@linux ~]# chattr [+-=][ASacdistu] 文件或目录名
参数:
+ : 增加某个特殊参数,其他原本存在的参数不动。
- : 删除某个特殊参数,其他原本存在的参数不动。
= : 设置一定,且仅有后面接的参数
A : 当设置了A属性时,这个文件(或目录)的存取时间atime(access)
将不可被修改,可避免例如手提电脑有磁盘I/O错误的情况发生。
S : 这个功能有点类似sync。就是将数据同步写入磁盘中。
可以有效地避免数据流失。
a : 设置a之后,这个文件将只能增加数据,而不能删除,只有root
才能设置这个属性。
c : 这个属性设置之后,将会自动将此文件“压缩”,在读取的时候将会自动解压缩,
但在存储的时候,将会先进行压缩后再存储(对于大文件有用)。
d : 当执行dump(备份)程序的时候,设置d属性将可使该文件(或目录)具有转储功效。
i : i的作用很大。它可以让一个文件“不能被删除、改名、设置连接,也无法写入
或新增数据”。对于系统安全性有相当大的帮助。
j : 当使用ext3文件系统格式时,设置j属性将会使文件在写入时先记录在
journal中。但是,当文件系统设置参数为data=journalled时,由于已经设置了
日志了,所以这个属性无效。
s : 当文件设置了s参数时,它将会从这个硬盘空间完全删除。
u : 与s相反,当使用u来设置文件时,则数据内容其实还存在磁盘中,
可以用来还原删除.
注意:这个属性设置上,比较常见的是a与i的设置值,而且很多设置值必须要root才能设置。
参考 http://book.51cto.com/art/200709/57190.htm
9、文件特殊权限:SUID、SGID、Sticky Bit
例子: [root@linux ~]# ls -ld /tmp ; ls -l /usr/bin/passwd
------------------------------------------------------------------
SUID 即Set UID,是为了让一般用户在执行某些程序的时候,能够暂时具有该程序拥有者的权限。仅可用在二进制文件(binary file)中,脚本也是调用binary file。对目录无效。
------------------------------------------------------------------
SGID 可以用在文件和目录上
文件:如果SGID设置在二进制文件上,则不论用户是谁,在执行该程序的时候,它的有效用户组(effective group)将会变成该程序的用户组所有者(group id)。
目录:如果SGID是设置在A目录上,则在该A目录内所建立的文件或目录的用户组,将会是此A目录的用户组。
------------------------------------------------------------------
Sticky Bit
在具有SBit的目录下,用户若在该目录下具有w及x权限,则当用户在该目录下建立文件或目录时,只有文件拥有者与root才有权限删除
------------------------------------------------------------------
示例:
[root@linux ~]# cd /tmp
[root@linux tmp]# touch test
[root@linux tmp]# chmod 4755 test; ls -l test
-rwsr-xr-x 1 root root 0 Jul 20 11:27 test
[root@linux tmp]# chmod 6755 test; ls -l test
-rwsr-sr-x 1 root root 0 Jul 20 11:27 test
[root@linux tmp]# chmod 1755 test; ls -l test
-rwxr-xr-t 1 root root 0 Jul 20 11:27 test
[root@linux tmp]# chmod 7666 test; ls -l test
-rwSrwSrwT 1 root root 0 Jul 20 11:27 test
# 这个例子要特别小心。怎么会出现大写的S与T呢?不都是小写的吗?因为s与t都是取代x参数的,但是,我们是使用7666。也就
# 是说,user、group以及others都没有x这个可执行的标志(因为666)。所以,S、T表示“空的”。
# SUID是表示“该文件在执行时,具有文件拥有者的权限”,但文件拥有者都无法执行了,哪里来的权限给其他人使用呢?当然就
# 是空的。
10、/etc/passwd 、 /etc/shadow各个列的含义
/etc/passwd
用户名:口令:用户标识号:组标识号:注释性描述:主目录: 登录Shell
daemon: x: 2: 2: daemon: /sbin: /sbin/nologin
------------------------------------------------------------------
/etc/shadow
登录名:口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间
xfs :!! :13724 :0 :99999 :7 : :
