-
那种非常实用的Linux教程
资源介绍
linux分为:redhat linux系列和debian系列。
X Window是一种协议。
unix图形环境是CDE:common desktop environment通用桌面环境。
linux系统结构:硬件、内核层、shell层、应用层、用户。
在安装linux的时候,会弹出
CD Found
To begin testing the CD media before
installation press OK.
Choose Skip to skip the media test
and start the installation.
OK Skip
选择:"OK"就开始检测CD光盘的完好性,"Skip"则跳过光盘介质的检测,直接开始安装。
说明:下载镜像文件的时候一般会给出MD5值,只要检测MD5值是不是一样就行了,就不必进行检测了。检测过程很长。
安装linux的时候,选择语言为简体中文,并不代表安装完后linux就显示为简体中文,这里选择语言是安装过程的语言。这是安装界面上会提示:What language would you like to use during the installation process?在安装过程中你想使用什么语言?
linux中每一个目录可以单独划分磁盘空间,但这个目录仍在/目录下,例如将tmp目录单独划分磁盘空间为100M,如果/目录在第一块磁盘中,则tmp在第二块磁盘中。但tmp目录仍然在/目录下。在做服务器时应该将web目录单独划分一个磁盘空间。如果sda1表示/分区,则sda2表示tmp分区。sdb表示第二块scsi硬盘,即电脑上有两块硬盘。sda1和sda2相当于windows下的c盘和d盘的关系。
各种接口的磁盘在linux中文件名分别为:
/dev/sd[a-p][1-15]:为SCSI,SATA,USB,Flash等接口的磁盘文件名。第一块硬盘为sda,第二块硬盘为sdb,根据主板上的接口来决定的。将第一块硬盘分两个区,就有sda1和sda2。
/dev/hd[a-p][1-63]:为IDE接口的磁盘文件名。
linux中必须要划分的分区有两个:根分区/、swap分区。
linux中的文件(普通文件或设备文件等)都必须有挂在点,只有挂载到一个目录下才能访问,swap分区是不需要挂载点的,在分区的时候,将文件系统类型选为swap,挂载点自动会变为灰色。一般linux中的swap大小为内存的两倍。swap类似windows下的虚拟内存。
切换用户命令:su - 用户名
vim中的插入命令:
a 在光标后附加文本
A 在本行行末附加文本
i 在光标前插入文本
I 在本行开始处插入文本
o 在光标下一行插入新行附加文本
O 在光标上一行插入新行附加文本
查找时区分大小写使用命令:set noic
查找时忽略大小写使用命令:set ic
退出命令:wq与ZZ命令等价。
导入文件:在末行模式下,输入:r /home/text,即将text文件中的内容导入到当前编辑的文件中,导入到光标处。在gvim中也可以使用此命令。
在末行模式下输入:!命令,如:!ls /home,就会显示ls命令的结果,会提示按enter键或任意键返回。在gvim中也可以执行此命令,如:!dir,就会显示当前目录中的信息。
导入文件命令和!命令以结合起来使用,在末行模式下输入:r !命令。就会将命令的结果导入到当前文件光标处。
bin:binary
usr:user
sbin:super binary
linux中命名规则:除了/之外,所有的字符都合法。大小写敏感,以.开头的文件是隐藏文件。
命令格式:命令 -选项 参数
当有多个选项时,可以写在一起。
..表示当前目录的父目录,cd ..当中一定有个空格。
文件处理命令:ls
命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
执行权限:所有用户
功能描述:显示当前或指定目录中的文件
语法:ls 选项[-ald] [文件或目录]
-a 显示所有文件,包括隐藏文件,a是all的缩写。
-l 详细信息显示,l是long的缩写。
-d 查看目录属性
在一个目录中查看当前目录的详细信息:ls -ld .即可。
在一个目录中查看当前目录的父目录的详细信息:ls -ld ..即可。
root执行的命令一般放在/sbin或/usr/sbin目录中,所有用户都能执行的命令一般放在/bin或/usr/bin目录中。
d 表示目录
- 表示二进制文件
l 软链接文件link
详细分析:drwxr-xr-x 2 root root 4096 12-01 20:52 bin
drwxr-xr-x
r:read
w:write
x:execute执行
-:表示无此权限
所有者:u user
所属组:g group
其他人:o other
2:表示硬链接数。
第一个root:是所有者。
第二个root:是所属组。
4096:目录大小,不是目录中所有文件的大小。
12-01 20:52是创建时间或最后修改的时间
bin 文件名或目录名
Linux中数据块是储存数据的基本数据单元,在linux中可以设置3中数据块大小分别是1024(1kB),2048(2KB),4096(4KB)。数据块大小决定了文件磁盘占有量,如果设置了数据块大小是1024,不管文件有多大,至少要占1KB的空间,所以可以根据存放文件的大小来合理设置数据块大小。
设置数据块:mkfs.ext3 -b 2046 /dev/hda5,格式化并设置数据块为2KB。另外linux在每个分区都有保留块,这是专门留给root用户及其所属组使用,别的用户是无法使用的,一般为总数据块的5%,但是如果你的磁盘大的话,就显的浪费了。 mkfs.ext3 -b 2046 -m 2 /dev/hda5。格式化并设置数据块为2KB,设置保留块为2%。或者用tune2fs -m 2 /dev/hda4 这种方法不用格式化就可设置。 tune2fs -l /dev/hda5,可以查看文件系统的详细信息. tune2fs -j /dev/hda4,可以将ext2转换为ext3而不损坏数据。 文件系统的检查工具:fsck e2fsck e2fsck 用时有危险,不能很好的辨识文件系统,特别是ext2,ext3混用时。 fsck得用法:fsck -t ext3 /dev/hda5 或 fsck.ext3 /dev/hda5。
root用户使用su -用户名切换用户时是不需要密码的,但是普通用户切换账户需要密码。
查看一个文件的信息,ls -l /.../文件名。
查看一个目录的信息,ls -ld 目录名。 查看/目录的详细信息,而不是/目录下目录或文件的详细信息。-d查看目录属性。
ls的-d选项是查看目录属性。
文件处理命令:mkdir
命令名称:mkdir
命令英文原意:make directories
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir [ 目录名]
功能描述:创建新目录
范例:$ mkdir newdir
文件处理命令:touch
命令名称:touch
命令所在路径:/bin/touch
执行权限:所有用户
语法:touch [文件名]
功能描述:创建空文件
范例:$ touch newfile
文件处理命令:cp
命令名称:cp
命令英文原意:copy
命令所在路径:/bin/cp
执行权限:所有用户
语法:cp -R [源文件或目录] [ 目的目录]
-R 复制目录
-p 复制后的文件的时间和原文件时间一样
功能描述:复制文件或目录
范例: $ cp file1 file2 dir1
将文件file1、file2复制到目录dir1
$ cp -R dir1 dir2
将dir1下的所有文件及子目录复制到dir2
文件处理命令:mv
命令名称:mv
命令英文原意:move
命令所在路径:/bin/mv
执行权限:所有用户
语法:mv [源文件或目录] [目的目录]
功能描述:移动文件、更名
范例: $ mv file1 file2
将当前目录下文件file1更名为file2
$ mv /home/zk/text.c /home/text.cpp
将文件text.c移动到目录home下,并更名为text.cpp
文件处理命令:rm
命令名称:rm
命令英文原意:remove
命令所在路径:/bin/rm
执行权限:所有用户
语法:rm -r [文件或目录]
-r 删除目录
功能描述:删除文件
范例: $ rm file3 删除文件file3,删除时会出现提示。
$ rm -r dir1 删除目录dir1,删除目录时会出现提示。
由于linux中的别名机制,使用rm等价与使用rm -i,这样在删除文件或目录时会有提示,如果不想出现提示内容,需要加选项-f。写脚本的时候需要加上-f,因为批量删除文件或目录不需要每次都提示询问。
在unix中rm删除文件是不是出现提示询问的。
文件处理命令:cat
命令名称:cat
命令英文原意:concatenate and display files
命令所在路径:/bin/cat
执行权限:所有用户
语法:cat [文件名]
功能描述:显示文件内容
范例:$ cat /etc/issue
$ cat /etc/services
cat查看文件内容,当文件较长时,无法查看到文件开头的内容,只能看到最后的内容。cat是一次性显示完文件内容。
文件处理命令:more
命令名称:more
命令所在路径:/bin/more
执行权限:所有用户
语法:more [文件名]
(空格) 或f 显示下一页
(Enter) 显示下一行
q或Q 退出
功能描述:分页显示文件内容
范例: $ more /etc/services
文件处理指令:head
指令名称:head
指令所在路径:/bin/head
执行权限:所有用户All User
语法:head -num [文件名]
-num 显示文件的前num行
功能描述:查看文件的前几行
范例:$ head -20 /etc/services
不加选项默认是查看前10行。
文件处理指令:tail
指令名称:tail
指令所在路径:/bin/tail
执行权限:All User
语法:tail -num [文件名]
-num 显示文件的后num行
-f 动态显示文件内容
功能描述:查看文件的后几行
范例:$ tail -30 /etc/services
查看日志文件的时候,日志文件是动态变化的。
文件处理命令:ln
命令名称:ln
命令英文原意:link
命令所在路径:/bin/ln
执行权限:所有用户
语法:ln [源文件][ 目标文件] 创建硬链接
ln -s [源文件][ 目标文件] 创建软链接
功能描述:产生链接文件
范例: $ ln -s /etc/issue /issue.soft
创建文件/etc/issue的软链接/issue.soft
$ ln /etc/issue /issue.hard
创建文件/etc/issue的硬链接/issue.hard
$ln -s /etc/issue /issue.soft
用ls -l查看软链接文件有如下信息
lrwxrwxrwx root root 10 12-01 23:12 /issue.soft ->/etc/issue
软链接文件的权限都是lrwxrwxrwx,信息中有一个箭头指向原文件,且软链接文件的大小很小,时间和原文件也不同。软链接文件类似windows下的快捷方式。
1、不允许给目录创建硬链接;
2、只有在同一文件系统中的文件之间才能创建链接。
生成一个硬链接文件后查看原文件和硬链接文件,除了文件位置或文件名不同外,其余的信息都是相同的。硬链接文件和原文件是同时更新的,因为他们有相同的inode节点。索引节点inode:Linux为每个文件分配一个称为索引节点的号码inode,可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置。系统是通过索引节点(而不是文件名)来定位每一个文件。建立硬连接实际上只是增加了一个目录项,但并没有复制文件数据区,原文件的数据区由两个文件共享。这一方面能够节约大量磁盘空间,同时可以保证两个文件能同步更新。
ls -i或--inode 显示文件和目录的inode编号。
权限管理命令:chmod
命令名称:chmod
命令英文原意:change the permissions权限 mode of a file
命令所在路径:/bin/chmod
执行权限: