鸟哥的Linux私房菜基础学习篇笔记精华版

学习Linux,鸟哥的两本书啃完就够了,以后还可以当工具书用,网上有第三版的PDF版,两本书加起来有接近2000页!不要害怕,有些章节可以先跳过;

第1章到第4章是讲一些计算机相关的知识以及如何安装CentOS5.5系统,这里就略过这部分的笔记了。

--第5章 首次登入与在线求助man page

@可以在图形界面和终端界面切换:Ctrl+Alt+F1~F6:登录tty1~tty6终端机,Ctrl+Alt+F7:图形界面

两种登入环境分别称为run level 3和run level 5,假如使用Ctrl+Alt+F7还是终端界面的话可以登录账户后执行startx命令启动XWindow

@在Shell中下达指令的一般格式为,command [-options] para1 para2 ...即指令+选项+参数,而且指令都是大小写敏感的!

@在输入命令后紧跟着按两次Tab键,会进行命令或档案补齐;在命令执行的过程中按Ctrl+C键,将中断命令的执行;另外Ctrl+D键,相当于输入exit;

@使用shutdown或reboot命令执行关机或重启前,先执行sync命令将数据同步写入磁盘;

--第6章 Linux 的档案权限与目录配置

@Linux中任何一个档案都具有User/Group/Others三种身份的个别权限;默认情况下,系统上的账号与一般身份使用者,包括root用户相关信息都记录在/etc/passwd档案内,个人密码记录在/etc/shadow档案内,组名记录在/etc/group内;

@使用ls -al命令执行后,每一行会有7项内容,例如“drwxr-xr-x 9 root root   4096 Sep 28 14:35 ..”,具体解释如下:

  1. drwxr-xr-x:档案类型与权限
  2. 9:连结数
  3. root:前一个为档案拥有者
  4. root:后一个为档案所属群组
  5. 4096:为档案容量
  6. Sep 28 14:35:为档案最后修改时间
  7. ..:档案名称

其中第1点一共有十个字符,第1个字符,代表档案类型,具体有如下类型:

  1. d:目录
  2. -:档案(文件)
  3. l:链接文档
  4. b:可存储接口设备(随机存取设备)
  5. c:串行端口设备,如键盘鼠标等(一次性读取设备)

接下来有9位,每3位为一组分隔后分别代表拥有者、群组、其他的权限,每组中r代表可读,w代表可写,x代表可执行,-代表没有权限,要注意进入目录的权限是r-x,如果仅有r没有x目录是不可进入的,没有w表示不可修改;

@改变文件属性与权限,常用的指令有如下三个:

  1. chgrp:改变档案所属群组;
  2. chown:改变档案拥有者;
  3. chmod:改变档案的权限,SUID,SGID,SBIT等特性;

改变档案所属群组或拥有者一般是用在使用cp命令复制文件给其他用户时;

chmod执行有两种方式:

数字类型,命令格式为"chmod xyz filepath",其中r/w/x分别对应数字4/2/1,例如-rwxr-xr-x每3位一组累加后即为755,此时执行chmod 755 filepath即可;

符号类型,命令格式为"chmod [u|g|o|a][+|-|=][r|w|x] filepath",其中u/g/o/a分别对应user/group/others/all,+/-/=分别代表增加/去除/设定,例如-rwxr-xr-x执行chmod u=rwx,g=rx,o=rx filepath即可,另外还可以在原来权限的基础上进行执行,例如chmod a-x filepath即去除所有人可执行权限;

@权限对档案的重要性:档案是指包含有数据的地方,包括文本文件、二进制可执行文件等

  1. r:read,可读取档案的实际内容
  2. w:write,可以编辑、新增或修改档案的内容,但不能删除档案
  3. x:execute,档案具有被系统执行的权利

权限对目录的重要性:目录是记录和存储文件名列表的

  1. r:可读取目录结构列表的权限,可以查询该目录下的文件名数据,例如使用ls命令;
  2. w:可修改目录结构列表的权限,包括新建和删除档案和目录,重命名,移动位置;
  3. x:目录不可被执行,这里代表是否可进入该目录使成为当前工作目录;

注意档案如果有x权限代表其而可以执行,但是能不能执行成功则不一定,要根据其具体内容而定;

@一般来说档案长度有如下限制(在Ext2/Ext3文件系统):

  1. 单一档案或目录允许的文件名为255个字符;
  2. 包含完整路径名称及目录(/)的完整档案名为4096个字符;
  3. 命名时要避免*?<>;&![]|\'"`(){}等特殊字符,因为其在字符接口环境下有特殊意义;
  4. 由于以.开头的文件为隐藏文档,也尽量不要使用-/+符号开头来命名档案;

@路径path有两种写法,一种是绝对路径,即以根目录(/)开头的写法,一种是相对路径,即以当前目录(./)或上一层目录(../)开头的写法;

--第7章 Linux 的档案与目录管理

@Linux系统中有如下特殊目录,需要记住的:

  1. .:代表此层目录
  2. ..:代表上一层目录
  3. -:代表前一个工作目录
  4. ~:代表当前用户所在home目录
  5. ~username:代表username这个用户的home目录

@常用目录处理指令:

  1. cd:变换目录
  2. pwd:显示当前目录
  3. mkdir:建立一个新的目录
  4. rmdir:删除一个空的目录,仅能删除空目录

@之所以不建议将.当前目录加入到PATH环境变量中是为了安全考虑,例如你在/tmp中使用了ls命令,如果你将.加入了PATH环境,尤其是加在最前面时,那么如果/tmp目录下刚好有一个别人写的ls可执行文件,那么由于命令相同时先执行先搜索匹配到的命令,因此ls命令将会被他人的命令替换,尤其以root用户执行ls命令时危害更大!

因此:不建议将.当前目录加入到PATH环境变量中!!!

@档案与目录管理包括两点:档案与目录查看,即查看档案与目录列表以及拷贝、移动、删除档案与目录;涉及的命令包括ls/cp/mv/rm,具体查看Linux命令集合博文;

其中cp复制命令要注意的是,是否保留源档案完整信息,源档案是否为链接档案,来源档案是否是目录等,否则不加任何选项的复杂将导致意料之外的结果;

@档案的时间有如下三种,使用touch命令可以修改这三种时间:

  1. mtime:当档案内容数据变更时更新这个时间;
  2. ctime:当档案状态变更时更新这个时间,即权限属性被改变时;
  3. atime:当内容被读取时更新这个时间;

@Linux创建档案时的默认权限与umask有关,一般来说文档的权限一个不包含执行x权限,即-rw-rw-rw-,目录则为-rwxrwxrwx,当umask为0022时,其中后三位分别代表需要被减去的权限,即最终创建文档的权限为-rw-r--r--,而创建目录的权限为-rwx-r-xr-x;

umask这个概念在Linux搭建文件服务器时比较重要;

@档案隐藏属性(p225)特殊权限(p227)指令与档案搜索(p230)未整理

@--

--第14章 Linux 账号管理与ACL权限设定

@








你可能感兴趣的:(linux,笔记,鸟哥,私房菜)