鸟哥的Linux私房菜 基础学习篇 读书笔记(一)

一.什么是Linux
核心就是”Kernel”。一般来说,核心为了实现用户所需要的正确运算结果,必须要管理的事项有以下几项:系统调用接口(System Call Interface),进程控制(Process Control),内存管理(Memory Management),文件系统管理(File System Management),设备驱动程序(Device Drivers)
1996年完成了2.0版本,同时应商业版本的需要,开始将核心版本同时开发测试版及稳定版,次版本偶数为稳定版,奇数为开发中的测试版。

五.启动关机、在线求助与执行命令的方式
切换X Window与命令行模式
[Ctrl] + [Alt] + [F1] ~ [F6]:命令行登入tty1 ~ tty6终端。
[Ctrl] + [Alt] + [F7]:图形界面桌面。
[root@linux ~] #   最左边的root显示当前用户的账号,而@之后接的Linux主机名称,最右边的~则指当前所在的目录,#是我们常常讲的“提示符”。
~符号表示“用户的主文件夹”,它是一个“变量”。举例来说,root的主文件夹在/root,所以~就表示/root,dmtsai的主文件夹在/homt/mtsai,所以如果以dmtsai登入时,看到的~就会等于/home/dmtsai。在Linux中,默认root的提示符为#,一般身份用户的提示符为$。
注销Linux   exit
重要的热键
[Tab] 按键:它具有“命令补全”与“文件补齐”的功能。[Tab] 接在一串命令的第一个字的后面,则为“命令补全”。接在一串命令的第二个字以后时,则为“文件补齐”。
[Ctrl]-C 按键:终端当前程序。
showdown –h now:立刻关机。showdown –r now:系统立刻重新启动。

六.Linux的文件属性与目录配置
在Linux系统中,默认情况下,所有系统账号与一般身份用户,以及root的相关信息,都记录在etc/passwd文件内。密码记录在etc/shadow文件中。Linux所有的用户组名称都记录在/etc/group内。这3个文件可以说是Linux系统中账号、密码、用户组信息的集中地,不要随便删除这3个文件。

-rwxrwxrwx   1           root               root                          293            Oct 19 21:24            test
文件属性     连接数   文件拥有者 文件所属用户组  文件大小   文件最新修改时间  文件名
1. 第一列表示这个文件的属性,表示这个文件是“目录、文件或连接文件等”
[d]目录,[-]文件,[l]连接文件,[ b ]设备文件中可供存储的接口设备,[c]设备文件中的串行端口设备。
第一组为拥有者的权限,第二组为通用户组的权限,第三组为其他非本用户组的权限。在Linux中,文件是否能执行,这是通过是否具有x属性来决定的。
2. 第二列表示连接占用的节点(i-node)。如果是目录的话,那么就与该目录下还有多少目录有关。
3. 第三列表示这个文件(或目录)的拥有者。
4. 第四列表示拥有者的用户组。
5. 第五列为这个文件的大小。
6. 第六列为这个文件的创建日期或者是最近的修改日期。
7. 第七列为这个文件的文件的文件名。如果文件名之前有”.”,则表示这个文件为“隐藏文件”。

目录属性的意义
r(read contents in directory):表示具有读取目录结构清单的权限,所以当您拥有读取(r)目录的权限时,就可以利用ls命令将该目录的内容列出来。
w(modify contents of directory):表示将拥有更改该目录结构清单的权限:建立新的文件或目录;删除已经存在的文件与目录(不论该文件是属于谁的);将已存在的文件或目录进行重命名;移动该目录内的文件、目录的位置。
x(access directory):与能否进入该目录有关。

Linux目录配置标准FHS
/:根目录root(/),一般建议在根目录下面只有目录,不要直接有文件。
/bin, /user/bin, /user/local/bin:放置用户可执行的二进制文件的目录。
/boot:放置Linux系统启动时用到的文件。这个目录下面的文件vmlinuz就是Linux的核心。
/dev:在Linux系统上,任何设备都以文件类型存放在这个目录中。
/etc:系统主要的设置文件几乎都放在这个目录内。
/home:系统默认的用户家目录。
/lib, /user/lib, /user/local/lib:系统使用的函数库的目录。
/opt:只是给主机额外安装软件所放的目录。
/proc:这个目录本身是一个“虚拟文件系统”。它放置的数据都在内存中,例如系统核心、形成信息、外部设备的状态及网络状态等。
/root:系统管理员(root)的家目录。
/sbin, /user/sbin, /user/local/sbin:放一些系统管理员才会用到的执行命令。与/bin不大一样的是,这几个目录是给root系统管理用的。
/user:包含系统的主要程序、图形界面所需要的文件、额外的函数库、本机自行安装的软件、以及共享的目录与文件。
/var:它主要放置系统执行过程中国了经常变化的文件。举例来说,例如缓存(cache)或者随时更改的登录文件(log file)。

chgrp:更改所属用户组,要更改的用户组名称,必须在/ect/group里存在。-r 进行递归的持续更改,及联通子目录下的所有文件、目录都更新。常常用在更改一个目录的情况。
chgrp users install.log
chwon:更改文件拥有者的名测过了,在/ect/passwd这个文件中有记录的用户名称才可以改变。
chmod:更改9个属性。Chmod7778 .bashrc
安装软件要有好习惯,不要随便安装,统一放在/user/local或者是/opt下面。

七.Linux文件和目录管理
对于文件的正确性来说,绝对路径比较好。一般来说,笔者建议,如果是在编写程序(shell scripts),务必使用绝对路径。
特殊的目录
.:表示此层目录;..:表示上一层目录;-:表示前一个工作目录;~:表示当前用户身份所在的家目录;~account:表示account用户的家目录。
cd:切换目录 change directory。
pwd:显示当前所在的目录 print working directory。
mkdir:建立新目录 make directory。-p按顺序建立多层目录。
rmdir:删除目录
$PATH:在执行命令时,系统会按照PATH的设置,去每个PATH定义的路径下搜索执行文件,先搜索到的命令先执行。查看$PATH echo $PATH。设置$PATH PATH=”$APTH”:/root
ls查看文件和目录。蓝色显示目录,白色显示普通文件。-l显示长数据内容,-a显示隐藏文件。
cp:复制文件或目录。
rm:删除文件或目录。
mv:移动文件与目录,或重命名。
cat:查看文件内容 concatenat。
less:一页一页翻动。
touch:建立一个空文件,将某个文件日期修改为当前时间。
搜索文件,通常我们先使用whereis或者是locate来检查,如果真的找不到,才以find来搜索。因为whereis与locate是使用数据库来搜索数据,所以相当快,而且并没有实际搜索硬盘。

八.Linux磁盘与文件系统管理
在标准的ext2文件系统中,将每个文件的内容分为两个部分来存储,一个是文件的属性,另一个是文件的内容跟了。考虑到这两方面的因素,ext2规划出inode与块来分别存储文件的属性(存放在inode中)与文件的内容(放置在块区域中)。块是数据存储的最小单位。块是记录文件内容数据的区域,inode则是记录该文件的相关属性,以及文件内容放置在哪一个块内的信息。简单而言,inode除了记录文件的属性外,同时还必须要具有指针的功能,即指向文件内容跟了放置的块之中,让操作系统可以正确获取文件的内容。要注意,inode本身并不记录文件名,而是记录文件的相关属性,文件名则在目录所属的块区域。
磁盘和目录的容量。df –h,du –h /etc

九.文件的压缩与打包
tar程序可以将很多文件打包为一个文件。单纯的tar功能仅是打包而已,并没有提供压缩。gzip通常只能针对一个文件来压缩或者解压缩。后来,GNU计划中,将整个tar与压缩的功能整合在一起,提供给用户更方便且更强大的压缩与打包功能。
压缩:tar –zcvf  /tmp/etc.tar.gz /etc
解压缩:tar –zxvf /tmp/etc.tar.gz /etc

猜你喜欢

转载自jja1982.iteye.com/blog/768883
今日推荐