linux知识点整理

Linux实用教程

第一章... 1

第二章... 2

第三章... 3

第四章... 3

第五章... 7

第六章... 8

第七章... 11

第八章... 15

第九章... 17

第十章... 20

第十一章... 24

第十二章... 26

额外知识点... 29

第一章... 29

第二章... 29

第三章... 30

第八章... 30

第十章... 30

第十一章... 31

第十二章... 31

第一章

Linux是在GPL(General Public License,通用公共许可证)版权协议下发行的操作系统,是一种类Unix的操作系统,其版权属于Linus Torvalds.

n  GNU是“GNU's Not Unix”的递归缩写。Stallman宣布GNU应当发音为Guh-NOO以避免与new这个单词混淆(注:Gnu在英文中原意为非洲牛羚,发音与new相同)。UNIX是一种广泛使用的商业操作系统的名称。由于GNU将要实现UNIX系统的接口标准,因此GNU计划可以分别开发不同的操作系统部件。GNU计划采用了部分当时已经可自由使用的软件,例如TeX排版系统和X Window视窗系统等。不过GNU计划也开发了大批其他的自由软件。

Linux的应用主要有4个方面:服务器、嵌入式、软件开发、桌面应用。

Linux的长处主要在于服务器端和嵌入式两个领域。

n  Linux系统的特点:

1.开放性

  2.多用户

  3.多任务

  4.良好的用户界面

  5.设备独立性

  6.丰富的网络功能

  7.可靠的系统安全

  8.良好的可移植性

n  Linux系统一般有4个主要部分:

  内核、Shell、文件系统、应用程序。

n  Linux与Windows的区别:

    

n   Linux版本主要指内核版本和发行版本,通常安装在服务器上的版本是发行版本。

内核版本是在Linus领导下的开发小组开发出的系统内核版本号,由三个数字组成r.x.y

r: kernel的主版本号
       x:
次版本号,偶数:表示稳定版本;奇数:开发中版本
       y:
修正号,表示错误修补次数。
如:稳定版本 2.4.4 ; 测试版本:2.1.11

什么是发行版本:

   答:一些组织和厂家,将Linux系统的内核、应用软件和文档包装起来,并提供安装界面、系统配置管理工具等,就构成了Linux发行版本。

第二章

Linux通过字母和数字的组合来标识硬盘分区,如“hda1”,其具体含义是:
      
前两个字母表明分区所在设备的类型,例如hdIDE硬盘,sdSCSI硬盘;
      
第三个字母表示分区所在的设备,如/dev/hda表示第1IDE硬盘,/dev/sdb表示第2SCSI硬盘。
      
最后的数字表示在该设备上的分区顺序,前四个分区(主分区或扩展分区)用数字14表示, 逻辑分区从5开始, 例如: hda3表示第一个IDE硬盘上的第三个主分区或扩展分区。

例:第1块IDE硬盘想分3个分区,有哪些分区策略,分区名分别叫什么?

策略1:

策略2:

策略3:

答:1:hda1,hda2,hda3(三个主分区)

2:hda1,hda2,hda5(两个主分区)

3:hda1,hda5,hda6(一个主分区)

(3)SWAP分区:起虚拟内存作用,由操作系统管理,用户不能使用,其大小一般取
min(物理内存×2,2GB)。

(4)在Linux、BSD或其它Unix类的操作系统中GRUB(GRand Unified Bootloader,启动/引导加载程序)和LILO(Linux Loader)最为常用。

MBR( Master Boot Record,主引导扇区)

执行下面命令删除MBR中的GRUBLILO引导程序
        fdisk /mbr    例如: c:\> fdisk /mbr  (在C盘根目录下执行该命令)

第三章

Ø  为了使得X Window更加易于使用,各个公司与组织做了许多集成桌面环境,在Linux下主要是GNOME与KDE。(其中GNOME最常用。)Fedora默认使用的是GNOMEGNOMEGNU Network Object Model Environment

KDEK Desktop Environment

Ø  什么是工作区:虚拟桌面又叫工作区,能够扩大桌面空间,使用户可以方便的组织窗口,例如把相关的窗口放到同一个虚拟桌面上。

工作区切换:在同一时间只能看到一个桌面,可以通过鼠标点击或快捷键(Ctrl+Alt+上下箭头)进行切换。如果在同一工作区打开了多个窗口,按super键使这些窗口平铺,以便选择其中某个。

第四章

(1)如果希望系统引导后自动进入字符界面,需要修改 /etc/inittab 文件,保存文件后重启生效。

使用gedit打开/etc/inittab文件(配置文件)

(2)Linux系统用户登录分两步:第一步输入用户的用户名,系统根据该用户名识别用户;第二步输入用户的口令。

登录字符界面之后,也可以通过输入“startx”命令启动Linux图形化界面。超级用户登陆后提示符是“#”,其他用户登陆后提示符是“$”。

(3)runlevel命令:查看系统当前的运行级别。

#runlevel

显示上一次的运行级别和当前系统运行级别。(显示N:表示没有上一次运行级别)

(4)在Linux系统下常用的关闭和重启系统的命令有”shutdown” ,”halt”,”reboot”和”init”.

shutdown命令的语法规则:
shutdown [-cfFhknr(
参数)] [-t 秒数] [时间] [警告信息]

halt就是调用shutdown –h执行关闭系统。

halt 命令
相当于 shutdown -h now

reboot 命令
相当于 shutdown -r now

Linux的关机命令只有超级用户能使用。

init定义了7种运行级别,如

       “init 0”命令为关闭系统;

       “init 3”为进入完整多用户模式的字符界面;

       “init 5”为进入完整多用户模式的图形界面;

       “init 6”为重新引导计算机。

Linux运行级别有如下7种:

    0:停止运行,所有进程中止,关闭系统。

    1:单用户模式,用于维护系统,只有少数进程运行。

    2:多用户模式,除了NFS服务没有启动外,其他和运行级别3一样。

    3:完整的多用户模式,进入Linux系统的字符界面。

    4:没有使用(可由用户定义)。

   5:完整的多用户模式(带有基于X Window的图形界面)。

   6:重新引导计算机。

如果是字符界面,所在的运行级别为3。如果是图形界面,所在的运行级别就是5

(5) 

如果想得到命令的帮助信息,可以使用helpmaninfo命令。以得到mkdir命令的帮助信息为例,它们的使用方法为:

#mkdir --help

#man mkdir

#info mkdir

help得到的帮助最简洁,info描述较为详细,最常用的是man

(6)使用whereis命令可以查找命令所在的位置

#whereis ls
查找ls命令在什么目录下。

(7)Fedora 的标准提示符包括用户登录名、登入的主机名、当前工作目录、提示符。

以普通用户zhangsan登入名为PC-LINUX的主机,当前工作目录是/home/zhangsan,如下所示:

              [zhangsan@PC-LINUX ]$

root用户登录系统的提示符如下所示:

        [root@PC-LINUX ~]  #

(8)Linux系统由以下3个重要的部分组成:

     内核;

     Shell;

     应用程序。

(9)命令可分为如下两大类:bash内置的命令和应用程序。

怎样知道哪些命令是bash内置命令,哪些是应用程序呢?

用which命令查看。

功能:在环境变量$PATH设置的目录里查找符合条件的文件 。

   如:which ls  显示可执行命令ls的路径和它的别名

bash中使用的通配符

   注:创建文件时不能使用通配符。

 

常用控制组合键

Ø  如果输入了一个不完整的命令或文件名,按一下 Tab 键,bash会自动补全命令。

Ø  通过按向上方向键,可以向后遍历最近在该控制台下输入的命令。用向下方向键可以向前遍历命令。

Ø  如果希望一次执行多个命令,Shell允许在不同的命令之间,放上特殊的排列字符。

常用的有两种方法:使用“;” 与 使用“&&”号。

    使用“;”

       格式:命令1 ; 命令2

       功能:先执行命令1,不管命令1是否出错,接下来执行命令2。

    使用“&&”

       格式:命令1 && 命令2

       功能:只有命令1正确执行完后才执行命令2。

命令替换符号。

格式:命令1  $(命令2)  

命令1  `命令2`

功能:将命令2的输出作为命令1的参数

如:

       # kill `pidof gedit`(注:“`”与“~”在同一键上)

Ø  命令别名

       经常使用的一些较长的命令可以为其定义别名,以简化输入。

       格式:alias [别名]=[需要定义别名的命令]注:“=” 两边不能有空格

       如:# alias ok=“ls -l /boot”

              # ok

用unalias命令取消别名。

Ø  管道可以将某个命令的输出信息当作某个命令的输入,有管道符号:“|”来表示

命令语法:[命令1]|[命令2]|[命令3]

管道可以把一系列命令连接起来,

第一个命令的输出会作为第二个命令的输入,

第二个命令的输出又会作为第三个命令的输入,以此类推。

显示在屏幕上的是管道行中最后一个命令的输出。

Ø  重定向有5种方式,分别是:
输出重定向:将命令的输出保存到文件中,如果存在相同的文件,则覆盖file文件中的内容。

格式:command > file

使用输出重定向将目录/boot的内容保存到文件/root/abc。

              # ls /boot > /root/abc

              # cat /root/abc

输入重定向:即将文件file的内容作为命令的输入。

格式:command < file
错误重定向:将命令执行的出错信息输出到文件file中。

格式:command 2> file

追加重定向:将command命令执行的输出添加到已存在的文件file中。

格式:command >> file

同时实现输出和错误的重定向:可以同时实现输出重定向和错误重定向的功能。

格式:command &> file

程序 & 表示在后台执行该程序。

如:

       # gedit &

单引号内的文字都是原样输出。

如:

       # echo ‘today is `date`’

双引号内的字符可以进行变量置换。

如:

# echo “today is `date`”

进行特殊处理的三个符号:

        ①美元符号②反引号③反斜杠

反斜杠被用作转义字符或命令换行符。

echo命令显示字符串时,要使转义字符生效,需要使用选项“-e”,如:

       # echo –e “Hello\nHow are you”

Ø  vi 的两种模式:

指令模式:该模式下的按键做为指令处理。

输入模式:把按键当作插入的字符处理。

从输入模式切换到指令模式,按ESC键。

从指令模式切换到输入模式,可用i, a或o,
i:从光标前输入资料
a:从光标后输入资料
o:在光标所在行下新增一行并进入输入模式

存盘退出:在指令模式下输入ZZ 或:x或:wq

不存盘退出:在指令模式下输入ZQ或:q!

存盘(不退出)在指令模式下输入:w

删除命令:

x       删除光标下的字符

dd     删除当前行

ndd   删除从当前行开始的n行

dw    删除光标后的单词剩余部分

dG     删除当前光标到文件尾

:20,30d    删除20到30行

被删除的内容自动复制到剪贴板,用p粘贴

复制命令:

v  进入/退出块选择模式,选好后用 y复制,用p粘贴。

yy 复制当前行

nyy 复制从当前行开始的n行

yG 从当前行复制到文件尾

查找命令(末行模式)

/字符串   查找字符串(n   继续查找)

?字符串  是由下向上查找(n   继续查找)

第五章

1.         可以用file命令查看该文件的类型。

              # file it

              it: ASCII text

2.         Linux文件类型常见的有:

n  普通文件、目录文件、字符设备文件、块设备文件、管道文件和(符号)链接文件等。管道文件不属于用户直接命名的普通文件,它是由系统创建的。

3.         Linux系统下链接有两种方式:软链接 和 硬链接。

软链接也叫符号链接,包含了另一个文件的路径名,可以是任意文件或目录。

在对符号文件进行读或写操作的时候,系统会自动把该操作转换为对源文件的操作。

在删除链接文件时,系统仅仅删除链接文件,而不删除源文件本身。

和硬链接有所不同,软链接文件只是其源文件的一个标记。当我们删除了源文件后,链接文件虽然存在,却不能查看软链接文件的内容了。

硬链接是已存在文件的另一个文件,对硬链接文件进行读写和删除操作时,结果和软链接相同。但如果删除硬链接文件的源文件,硬链接文件仍然存在,而且保留了原有的内容。

inode值相同的文件,他们的关系是互为硬链接的关系。当我们修改其中一个文件的内容时,互为硬链接的文件的内容也会跟着变化。如果我们删除互为硬链接关系的某个文件时,其它的文件并不受影响。 

硬链接文件有以下两个限制

       ①不允许给目录创建硬链接

       ②只有在同一文件系统中的文件之间才能创建链接。

ln  [选项源文件名  [链接文件名]

-s 选项:用于创建符号链接,默认情况下是创建硬链接。

ln  –s  hello.txt  a1
cat  a1

ln  –s  ~/dir1   a  为目录创建链接。

4.         pwd:显示工作目录的绝对路径。

5.         cd [目录]:改变工作目录,不带参数则回到用户主目录。

~ 表示用户主目录。

.. 表示工作目录的上一级目录。

. 表示工作目录。

6.         ls [选项] [目录或文件]:列出子目录的和文件信息。

-a :以 “.” 开头的文件被系统视为隐藏文件,用ls -a 显示所有文件。

-d :如果参数是目录,显示该目录的信息而不是该目录下的文件。

- l :使用长格式显示,可察看更详细的文件资料。

7.         touch命令:可以创建空文件,更新文件时间信息。

# touch file1

将文件file1的访问/修改/状态改变时间改为当前时间,如果file1不存在,则创建新文件。

# touch file2 file3

同时创建两个空文件file2file3

8.         mkdir命令:建立目录。mkdir  [选项目录名

    -p : 要建立的目录是一个路径,用该选项可以建立该路径上的所有目录。

9.         rmdir:删除空目录。

10.     cp命令用于复制文件或目录,其命令格式如下:
  cp [选项]  源文件 目标文件
  cp [选项]  源文件组  目标目录

 -a : 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录。

-r : 是指连同源文件夹中的子目录一同拷贝。

n   cp  a.txt  b.txt  (换名复制)

n   cp  a.txt  /   (a.txt复制到根目录下)

n   cp  a.txt  /b.txt  (a.txt换名复制到根目录下)

11.     mv 命令用于移动文件和目录,兼有改名的功能。

 mv  [-f] [-i]  文件1  文件2
 mv  [-f] [-i]  目录1  目录2
 mv  [-f] [-i]  文件列表  目录

mv a.txt ../   a.txt文件移动到上层目录

mv a.txt  b.txt 将a.txt改名为b.txt

mv dir2   ../  dir2目录上移一层

12.     rm命令可以删除文件及整个目录。rm [选项] 文件列表。

注:rmdir命令用于删除空目录。

第六章

1.         cat命令:主要用于显示文件内容,还能连接两个或多个文件,形成新文件。

-n:由1开始对所有输出的行数编号。

cat  a1.txt  a2.txt > a3.txt   将文件a1.txta2.txt中的内容合并输入到a3.txt

cat  a1.txt > a2.txt

cat  a1.txt a2.txt >> a3.txt将文件a1.txt a2.txt中的内容追加输入到a3.txt

cat > my.txt  从键盘输入,存储到文件my.txt,用 ctrl + d 结束输入。(>不是输出重定向吗?)

2.         more命令可以让画面在显示满一页时暂停,此时可按空格键继续显示下一页,按回车继续显示下一行,按q键退出,按b键显示上一页内容。

-num:一次显示的行数。

+num:从第num行开始显示。

ls -l /bin | more

分屏显示ls -l /bin”命令的执行结果。

more +3 -5 b.txt   从第3行开始显示文件b.txt,一次显示5

more  a.txt   分页显示文件a.txt

3.         less命令的用法与more命令类似,也可以用来浏览超过一页的文件。

less命令除了可以按空格键向下显示文件外,还可以利用上下箭头键及pgup, pgdn来卷动文件。按q键结束浏览。

4.         head命令:用于显示文件前几行的内容。

-n:显示文件的前n行,默认为10

5.         tail命令:用于显示文件后几行的内容。

-num:从距文件末尾num行处开始显示文件内容,默认为10.

6.         cut命令

功能:显示每行中的指定字段。

-d:指定定界符。

-f:指定要显示的字段列表。

       #cut –f 1,5 -d : /etc/passwd

       root:root

       bin:bin

       daemon:daemon

       adp:adm

       …

       上面命令显示passwd文件中的第1个和第5个字段,字段间的分隔符为“:”

7.         grep 命令

grep [参数] <要找的字串> <要找字串的源文件>

功能:在文件内容中搜索匹配的字符串。

grep ‘linux’ a.txt

a.txt中查找linux字符串

grep  ‘linux’ *.txt

在所有.txt文件中查找linux字符串

ls | grep ‘txt’

ls命令的输出结果中查找txt字符串。

8.         find 命令:按文件名或属性查找文件

格式:find [<路径>] [匹配条件]

find / -name abc.txt

       /及其子目录下查找名为abc.txt的文件。

find -name “*.txt”

       在当前目录及其子目录下查找以txt为扩展名的文件。(使用通配符时要加引号)

find /home -user tom

       /home及其子目录下查找用户tom的所有文件。

9.         locate命令:使用locate命令可以用于查找文件,find命令的搜索速度快,它需要一个数据库,这个数据库由每天的例行工作程序(crontab来建立。

10.     whereis命令:使用whereis命令可以查找指定文件、命令和手册页的位置。whereis命令也是在数据库中查找。

命令语法:

whereis [选项] [文件名]

11.     whatis命令

功能:查询指定命令的命令功能。

命令语法:whatis [命令]

#whatis ls

查询ls命令的功能。

12.     uname命令

功能:显示计算机以及操作系统的相关信息。

命令语法:

       uname [-amnrsv]

r(--release):显示操作系统内核版本。

13.     hostname命令

功能:显示或修改计算机的主机名。

语法: hostname [计算机名]

hostname

       显示当前计算机主机名。

hostname LINUX

       修改计算机主机名为LINUX

14.     date命令:显示设置计算机系统的日期和时间(超级用户才可以设置)

–s:设置描述的日期

#date

显示当前计算机上的日期和时间

15.     echo命令

格式:echo [-n] 字符串

功能:主要用于在屏幕上显示一串字符,“-n”表示输出后不换行。

# echo hello linux

       输出字符串时可以用引号也可以不用

# echo hello linux > file.txt

       将字符串写入到文件file.txt中。

# echo $变量名

       显示变量内容。

16.     wall命令

格式:wall [消息]

功能:向所有用户发送消息。

# wall “close computer”

       发送指定的字符串。

# wall

       输入消息,以 ctrl+d 结束。

17.     write命令

格式:write 用户名 [终端号]

功能:向指定用户发送信息。

# write root tty1

       tty1终端上的用户root发送信息,以 ctrl+d 结束输入。

18.     clear

清除计算机屏幕上信息。

第七章

1.         一个简单Shell程序的创建过程(1->2->31->4

1、文件/root/date的内容为:

       #! /bin/bash

       # filename:date

       echo “Mr. $USER, Today is:”

       echo `date`

2、使文件具备执行权限:

       chmod u+x /root/date

3、执行Shell程序

       # /root/date

       如果date文件在当前目录下,还可这样执行:

       # ./date

4、用bash命令执行程序

如果文件不具备可执行权限,那么可以用bash命令来执行该文件:

       # bash /root/date  

       # bash < /root/date

2.         Shell程序中用“$var”的形式来引用名为var的变量的值。如:

# echo $PATH

3.         预定义变量:环境变量不同的是,用户只能根据Shell的定义来使用这些变量,常见的有:

$#  存储命令行参数的个数

       $?  存储前一命令返回的状态值

       $0  存储shell程序自己的名称

       $[1-n]  存储第[1-n]个命令行参数

       $*  存储shell脚本的所有参数(不包含$0

       $$  存储shell脚本的进程号(pid

       $!  存储上一个后台执行命令的进程号(pid

4.         字符串比较

比较字符串是否相同,相同为真。

!= 比较字符串是否不同,不同为真。

-n 判断字符串的长度是否大于0,大于0为真。

-z 判断字符串的长度是否等于0,等于0为真。

例:

# test “abc” = “abc”  //等号两边要有空格

# echo $?  //值为0表示前一命令结果为真,为1表示假

# str=“abc”

# test $str = “ab”

# echo $?

# test –n str

# echo $?

5.         数字比较

-eq  相等

-ne  不等于

-ge  大于等于

-le   小于等于

-gt   大于

-lt    小于

例:

# test 2 -eq 3

# echo $?

# num=3

# test $num –gt 2

# echo $?

6.         逻辑测试

Ø  -a 

Ø  -o 

Ø  !   

例:

# test -f file1 -a -w file1

       file1是文件并且 file1可写。

# echo $?

7.         文件测试

-d 对象存在且为目录,则返回值为“是”。

-f  对象存在且为文件,则返回值为“是”。

-L 对象存在且为符号连接,则返回值为“是”。

-r  对象存在且可读,则返回值为“是”。

-s 对象存在且长度非0,则返回值为“是”。

-w 对象存在且可写,则返回值为“是”。

-x  对象存在且可执行,则返回值为“是”。

!    测试条件的否定。

8.         条件判断

从键盘输入两个数,按由小到大的顺序输出。

例:从键盘输入三个数,按由小到大输出。

9.         循环控制

例:求1加到100的和

编写shell程序add10,一次性添加10个用户user0~user9

第八章

1.         Linux下的三类用户

超级用户root)具有操作系统的一切权限,UID值为0

普通用户具有操作系统有限的权限,UID>=1000

虚拟用户/伪用户/假用户(系统用户)是为了方便系统管理,満足相应的系统进程对文件属主的的要求而设置的。伪用户不能登录,UID1~999

2.         /etc/passwd文件是系统安全的关键文件,用于在用户登录时校验用户名、口令等信息。

只有root用户对该文件具有修改权限。

该文件每行保存一个用户的资料,各数据项间用“ : ”分隔。修改passwd文件时尽量不要改root与伪用户。

3.         用户名与UID是一一对应的,只有UID0时例外,任何UID0的用户都有root的权限。

4.         shadow文件

为了增强安全性,Linux将加密的口令存放到/etc/shadow文件里从而使口令与用户的其他信息分离。/etc/passwd中的密文域显示为一个x /etc/shadow文件是 /etc/passwd影子文件,这个文件并不由产生,这两个文件应该是对应互补的。

该文件只有超级用户可读。

5.         useradd命令  功能:添加用户

格式: useradd  [选项用户名

useradd  user1   添加新用户user1

useradd  user3 –u 1200 –g user2

       创建新用户user3UID1200,属于组user2

6.         usermod命令功能:修改用户信息

格式: usermod  [选项用户名

说明:该命令的参数与useradd的基本一致

7.         userdel命令  功能:删除用户

格式:userdel  [-r]  用户名

-r  删除用户的同时删除用户主目录。

8.         group文件

在文件 /etc/group 中列出了所有的用户组,每行一个记录,记录的各个域之间用冒号分隔

每行的四个域依次是:

       组名;组口令; GID组成员清单

9.         gshadow文件

/etc/gshadow文件也是为了加强安全性而采取的将组口令与组的其它信息分离的安全机制。

每行记录的格式为:

       组名 : 加密的口令: 组管理员: 成员列表

10.     groupadd命令 功能:新建组

格式:groupadd  [选项组名

11.     groupmod命令

功能:修改组属性

格式:groupmod  [选项组名

groupmod  -n  grp22  grp2

       将组2改名为grp22

-n  更改组名

groupmod  -g  1300  grp22

       grp22GID改为1300

-g  更改组ID

12.     groupdel命令 

功能:删除指定的组,若组中仍有用户,则必须先删除用户后,方能删除组。

格式:groupdel  组名

13.     passwd命令

功能:修改用户口令。

passwd   修改当前用户口令。

root 用户执行
passwd 
用户名  修改指定用户的口令,不必输入原口令。

14.     chsh命令   功能:更改用户的登录shell

格式: chsh [账号]

说明:省略账号表示修改自己的

15.     su命令  功能:切换其他用户账户进行登录。

格式:su [选项] [用户]

说明:单独的su表示切换到root用户。

16.     finger命令

可以查看用户的相关信息,包括用户的主目录、启动shell、用户名等。

格式:finger  [选项] 账号即用户名

finger  user1

17.     groups命令  功能:查看指定用户的属组

格式:groups [用户名]

说明:省略用户名表示查看当前用户属于哪些组群的成员。

18.     id命令  功能:查看用户的UIDGID属组信息。

格式:id  [选项用户名

Ø  -g  显示用户起始组的GID

Ø  -G  显示用户所有属组的GID

Ø  -u  只显示UID

19.     who命令:

功能:查看登录到本机的用户的简单信息,包括:用户其登录终端号、登录时间等。

20.     w命令:

功能:who命令的增强版,能显示更多的信息。

第九章

1.         分区和格式化

Linux系统下的常用分区命令是fdisk

fdisk, cfdisk, parted 三个分区命令用法类似。

分区只是对硬盘上的磁盘空间进行了保留,不能产生文件系统,分区要进行格式化后才能使用,Linux下的格式化命令是mkfs

2.         使用fdisk进行硬盘分区

fdisk -l

       查看所有磁盘的分区信息。

fdisk -l /dev/sda

       查看磁盘/dev/sda的分区信息。

3.         使用文件系统存放数据需要经过的步骤

1)        使用fdisk命令创建分区。

2)        使用mkfs命令创建文件系统。

3)        使用mount命令挂载文件系统。

4)        使用umount命令卸载文件系统。

4.         使用mkfs命令可以在分区上建立各种文件系统

mkfs –t [文件系统类型] [磁盘设备名]

-t:指定要建立的文件系统类型,有ext3,ext4,reiserfs,ext2,fat,fat32,vfatmodos等。

格式化并创建文件系统

查看/dev/sda的分区情况:

       # fdisk –l /dev/sda

/dev/sda5格式化并创建ext4文件系统。

       # mkfs –t ext4 /dev/sda5

5.         用mount命令挂载文件系统

功能:将硬盘分区、光盘U挂载到某目录下。

格式:mount [参数] [设备名称] [挂载点]

Ø  -t:指定设备的文件系统类型,如vfat表示fat文件系统;auto表示自动检测文件系统。

Ø  -o:指定挂载文件系统时的选项。

²  ro:以只读方式挂载

²  rw:以读写方式挂载

²  iocharset:指定字符集

n  将/dev/sda5挂载到/mnt/kk中

    # mkdir /mnt/kk

    # mount /dev/sda5 /mnt/kk

n  以只读方式将/dev/sda5挂载到/mnt/kk中

    # mount -o ro /dev/sda5 /mnt/kk

    # mkdir /mnt/kk/abc

6.         挂载光盘

       # mount /dev/cdrom

       会自动挂载到/run/media的某子目录下。

或者:

       # mkdir /mnt/cdrom

       # mount /dev/cdrom /mnt/cdrom

       会挂载到指定的目录下。

7.         挂载U

U盘被Linux系统作为SCSI设备,插上U盘后会被自动挂载到/run/media的子目录下。也可指定其它目录

       # mkdir /mnt/usb

       # mount /dev/sdb /mnt/usb

       # ls /mnt/usb

说明:

在挂载时如果出现中文显示问题,可以用iocharset 选项指定字符集。如:

       # mount /dev/hda5 /mnt/diskd –o iocharset=gb2312

有时需指定设备的文件系统类型,如:

       # mount /dev/sdb1 /mnt/usb –t vfat

同一设备可同时挂载到不同的目录中,可分别卸载。

8.         卸载文件系统使用umount命令,卸载分区参数可以是文件系统、设备名或目录名,

卸载光盘或U盘时参数可以是设备名或挂载目录。

# umount /dev/sdb

# umount /mnt/usb

9.         查看分区挂载情况

一、mount –s 命令

二、查看 /etc/mtab 文件(输入命令cat /etc/mtab)

三、df 命令(第十章)

四、fdisk –l [设备名]

10.     文件和目录的访问权限

文件或目录的访问权限有可读、可写、可执行三种。

有三种不同类型的用户可以对文件或目录进行访问:所有者、同组用户、其他用户。

每一个文件或目录的访问权限都有三组,每组三位,分别表示所有者、同组用户和其他用户的读(r)、写(w)、执行(x)权限。

ll (ls -l)命令查看文件的详细信息时,列出的信息从左到右依次是:
文件类型与权限;硬链接数;文件属主;文件属组;大小;修改时间;文件名。

类型有:
:普通文件
d
:目录
l
:符号链接

权限从左到右依次是所有者、同组用户、其他用户的 r , w , x 权限。
-”表示不具备这种权限

11.     使用chmod改变访问权限

该命令有两种用法:文字设定与数字设定。

文字设定法:

格式:chmod [who] [+|-|=] [mode] 文件名

其中who可以是u(user:所有者)g(group:同组用户)o(other:其他用户)a(all:所有用户)

+:增加某权限;-:取消某权限;=:赋予某权限并取消本用户的其它权限。

mode 表示的权限可用下述字母的任意组合:
r
:可读
w
:可写
x
:可执行
u
:与所有者权限一样
g
:与所有者的同组用户权限一样
o
:与其他用户权限一样

chmod  a+x  abc 使文件abc的所有用户都拥有执行权限。

chmod  ug+w,o+x  abc 使abc的所有者与同组用户具有写权限,其他用户具有执行权限。

数字设定法:

4 表示可读
2
表示可写
1
表示可执行
0
表示没有权限

所以数字是三个0~7之间的数字,从左到右的顺序依次是:ugo

chmod  644  a.txt  u读写;g读;o

12.     使用chown改变所有权

chown  [选项用户.  文件|目录

-R:改变指定目录及其下所有内容的所有者。

-v:显示chown命令所做的工作。

chown wang a.txt

chown –R wang.users  /dir dir及其下的所有内容,属主改为wang,属组改为users

chown –R  wang:users  /dir
ll  /dir  -d

13.     使用chgrp改变文件属组

chgrp [选项  文件

-R:递归地改变指定目录及其下子目录和文件的属组。

将文件a的属组改为newgrp

# chgrp newgrp a

# ll a

第十章

1.         安装软件包

rpm –ivh file.rpm     安装指定的软件包

Ø  -i   表示安装软件包。

Ø  -v  显示附加信息。

Ø  -h  安装时输出#号(进度条)。

2.         卸载软件包

rpm  –e  软件名称    卸载指定软件。

       注意此处是软件名称,不是软件包的文件名。(版本号左边的部分)

3.         升级安装

rpm –Uvh  file.rpm 

       升级安装。事实上,用户总能通过-U来安装软件包。

rpm  –ivh  file.rpm  --replacepkgs

       强制重新安装已经安装的软件包。

4.         查询软件包

rpm –q 软件包名

查询指定软件包是否被安装,如:

       # rpm –q httpd

       httpd-2.2.8-3.i386

rpm  –qa

       列出系统中所有已安装的rpm软件包。

n  rpm  -ql  软件包名

       查询已安装软件包所包含的文件列表,如

       # rpm –ql bind

n  rpm  -qpl  filename.rpm  
查询指定rpm文件包含的文件列表。

rpm  –qf  /usr/bin/vim

查询指定文件属于哪个软件包

5.          tar包管理

tar [主选项+辅选项] {压缩文件名}(可选项)文件或目录

Ø  -v  显示处理文件的详细信息

Ø  -f  创建档案文件,通常是必选项

Ø  -x  从档案文件中释放文件

Ø  -c  创建一个新的tar文件

tar  xvf  ok.tar
ok.tar解包到当前文件夹下

tar  cvf  ok.tar  *
将当前目录下的所有内容打包成ok.tar

6.         tar 调用gzip

以.gz结尾的文件就是与gzip相对应的解压程序是gunzip。

tar  zcvf  ok .tar.gz  *
打包并压缩

Ø  -z  对生成的档案文件用gzip压缩/解压。

tar  zxvf  ok.tar.gz
解压缩并解包到当前文件夹。

7.         tar 调用bzip2

 以.bz2结尾的文件是用bzip2压缩

tar  jcvf  ok.tar.bz2  *
打包并压缩。

tar  jxvf  ok.tar.bz2
解压缩并解包到当前文件夹。

Ø  -j  对生成的档案文件用bzip2压缩/解压。

8.         ps命令

功能:查看进程状态

ps
列出与当前shell有关的进程基本信息。

ttyn(Teletype) 文本模式下的控制台,n代表第几个控制台,可以用CTRL+ALT+F1...F6或者用chvt n来切换。

pts/n(Pseudo Terminal Slave) 是在图形模式下的虚拟终端,n代表第几个虚拟终端,新开一个n增加1

ps  -ef
显示系统中所有进程的全面信息
-e 
显示所有进程信息
-f  
显示进程所有信息

9.         top命令

功能:按照cpu的使用情况动态显示各进程的状态。占用cpu多的显示在前。

ls  /  -R
top
(在另一终端中执行)

10.     kill命令

功能:终止进程,可终止前台和后台进程。

Ctrl+C只能终止前台进程。

kill  PID
终止指定进程,可用pstop得到进程的PID

ls  /  -R  &
top
kill  PID

11.     进程的启动方式

启动一个进程有两种途径:

手工启动
由用户输入命令,直接启动一个进程。分为前台启动和后台启动 (在命令后加&)

调度启动
管理员根据系统资源和进程占用资源的情况,事先指定任务运行的时间,到时系统会自动完成任务。
常用调度命令有:atbatchcrontab

12.     进程的挂起与恢复

前台进程的挂起用  Ctrl+Z
/后台进程的挂起  kill –stop PID

jobs    // 查看由当前shell启动作业的状态

fg    // 将最近停止的作业带回前台执行

bg   // 将最近停止的作业带回后台执行

13.     任务计划

即在固定时间触发某个作业,在Linux系统中常用atbatchcrontab实现该功能。

1at命令

功能:用于在指定的时刻执行指定的命令序列。

at  时间
在指定时间执行指定的命令序列,命令序列从标准输入读取。用Ctrl+D结束输入。

at命令可以只指定时间,也可以时间和日期一起指定。

时间表示:
hh:mm
midnight
noon
teatime (
下午四点)

日期表示:
//
today
tomorrow

at 10:30 today

相对计时法

now + count 时间单位
now 当前时间
时间单位是:
minutes
hours
days
weeks

at  now + 1 minutes

at  –f  file  时间

在指定时间执行文件file中包含的命令

at  -f  job  now+1 minutes
一分钟后执行文件job中包含的命令

atq
相当于 at –l ,显示待执行队列中的作业。

atrm 作业编号
相当于 at –d 作业编号,将待执行队列中的指定作业删除。

atq
atrm 
编号
atq

说明:at作业执行后的输出信息不显示在终端上,通过mail方式提供。

2)batch命令

功能:用低优先级运行作业,在系统负载较低,资源比较空闲的时候运行,由系统决定何时运行。

用法:类似at命令

batch
at>ls
Ctrl+d结束输入,执行后会收到邮件通知。

batch  <  a.txt

3)croncrontab命令

at batch命令指定的任务只能执行一次,如果要重复做某些工作,就要用cron命令。

cron 会随着系统启动,每分钟检查一次是否有需要运行的命令。

cron 执行的命令存放在crontab文件里,该文件位于/var/spool/cron目录下,以用户的名字为文件名。

crontab 文件有六个域,前五个表示时间,最后一个表示要执行的命令,用空格隔开:

min   hour   day-of-month  month
day-of-week   command

通配符 * 表示任意时间。

1   *   *   *   *   date
每小时的1分钟执行date命令

00  15  *  *  1,3,5   reboot
每周一三五的15点重启系统

00  16,17   *   *   *   df
每天的16,17点执行df命令

crontab 文件的创建过程:

vi  job    // job为任意文本文件,名字任意

内容为:
00   18   23   4    *   ls ~

crontab  job  // 安装文件,使其成为当前用户的 crontab 文件。

crontab  -u  ok   /root/job
生成用户okcrontab文件。
-u 
指定用户,省略表当前用户。

crontab  -l
显示当前的 crontab文件。

crontab  -r
删除当前的crontab文件。

crontab  -u  ok  -r

14.     free命令

功能:显示内存容量与使用情况。

格式:free [选项] [-s 秒数]

-b:以Byte为单位显示。

-k:以KB为单位显示。

-m:以MB为单位显示。

-t:显示内存总容量。

-s:持续观察内存使用情况。

# free –m –s 10  (间隔10秒)

15.     df命令(第九章)

功能:查看磁盘空间的使用情况。

格式:df [选项]

-h:以可读性较高的方式显示。

-t:只显示指定文件系统类型的磁盘信息。

-T:显示文件系统类型。

# df -h

# df -hT –t ext3

第十一章

1.         Linux网络配置文件

1)        11.4.1  /etc/sysconfig/network-scripts/ifcfg-###

基本网络配置信息存放文件,存放如IPmaskgateway等信息。

例如:/etc/sysconfig/network-scripts/ifcfg-eth0

2)        11.4.2   /etc/resolv.conf 文件

是由域名解析器使用的文件,包含了主机的域名搜索顺序和DNS服务器的地址。

3)        11.4.3  /etc/host.conf

该文件用来指定域名解析方法的顺序,如:order hosts, bind

它表示,首先通过/etc/hosts文件解析,如果在该文件中解析不到,再通过域名服务器bind解析。

4)        11.4.5  /etc/hosts文件

存放的是一组IP地址与主机名的列表,如果在该列表中有某台主机的IP,那么访问该主机时不进行DNS解析

5)        11.4.4  /etc/sysconfig/network文件

用来指定服务器上的网络配置信息,例如:

NETWORKING=yes/no  网络是否被配置
HOSTNAME=machine1  主机名 GATEWAY=192.168.1.1  网关IP

6)        11.4.6  /etc/services 文件

包含了服务名和端口号的映射。

左边一列是服务名,中间一列是端口号/端口类型(TCP或UDP)。后面的列是前面服务的别名。

2.         traceroute命令

功能:路由跟踪命令,该命令给出了从源主机到达目的主机间的路由器,同时也给出了每个路由器的往返时间。

traceroute  www.edu.cno  跟踪从本地计算机到www.edu.cno网站的路径。

输出中的 * 表示某路由器没有在规定的时间内作出响应。

3.         ifconfig命令

功能:用于查看更改网络接口的地址和参数。

ifconfig
显示网络接口的IP地址、子网掩码、接口状态(updown)等。

还有一个以lo为首的部分。lo是look-back网络接口,从地址127.0.0.1可以看出,它代表“本机”。

ifconfig  eth0
显示网络接口eth0的相关信息。

ifconfig  eth0  192.168.1.2
指定网络接口eth0IP192.168.1.2

l  ifconfig  eth0  192.168.1.2  netmask  255.255.255.0
指定网络接口eth0的IP和子网掩码

ifconfig  eth0 down
暂停eth0网络接口的工作(ifdown)

ifconfig  eth0  up
激活eth0网络接口(ifup)

l  ifconfig  eth0  192.168.1.2  up
指定IP地址的同时激活接口

4.         ping命令

ping通过向目的主机发送ICMP数据报并收取回应数据报,来测试当前主机与目的主机是否可达

在Linux中,ping默认会不间断地发送ICMP数据报直到用户用“Ctr+C” 来终止。

用“-c”可指定发送ICMP数据报的数目。

ping  127.0.0.1

ping  –c 4  www.baidu.com

5.         netstat命令

netstat用来显示网络状态,如:网络连接状态、接口配置信息、统计信息等。

常见的状态有:ESTABLISHED、LISTENING、TIME-WAIT,分别表示处于连接状态、等待连接、关闭连接。

l  netstat  –a
显示所有连接。

l  netstat  –i
显示所有网络接口信息

-n 显示时以IP地址代替名称

-t  显示tcp协议的连接情况

-u  显示udp协议的连接情况

-s  显示统计信息

6.         arp命令

功能:显示arp缓存、并可删除或增加条目。静态绑定。

# arp

       查看系统arp缓存。

# arp s IP地址 MAC地址

       添加静态arp记录

# arp d IP

       删除arp缓存中的一个条目。

7.         service命令

命令执行后会立即生效。

service [服务名] [start|restart|stop] 启动/重新启动/停止服务

第十二章

1.         SSH的作用和基本用法

SSH用加密的方式连接到远程服务器,以提高数据传输的安全性,这种方法可以替代telnet技术。

SSHSecure Shell,把数据加密传输,较以明文传输的telnet有更高的安全性。SSH还将数据压缩后传输,速度更快。

SSH提供了两种级别的安全验证:

第一种:基于口令的安全验证

第二种:基于密钥的安全验证,更安全。

OpenSSH是SSH的替代软件,应用广泛。

SSH的启动方法:service  sshd  start

SSH的停止方法:service  sshd  stop

要想随系统启动:chkconfig  sshd  on

默认是随系统启动的。

测试SSH:基于口令的验证

如果客户是Linux环境,可用命令

ssh remote-host   或

ssh –l user remote-host   或

ssh user@remote-host

测试SSH:基于密钥的验证

使用密钥验证方式,用户必须先为自己创建一对密钥。OpenSSH支持的密码体制有:RSA、DSA。使用密钥的步骤为(以创建RSA密钥为例):

ssh-keygen  –t  rsa

用DSA: ssh-keygen –t dsa或ssh-keygen -d

按回车接受默认的密钥存放文件,之后输入使用密钥时的口令,便生成了公钥 ~/.ssh/id_rsa.pub 和 私钥 ~/.ssh/id_rsa

将公钥 ~/.ssh/id_rsa.pub 复制到服务器的~/.ssh 目录下,并将文件改名为 authorized_keys

至此,便可使用密钥验证方式登录服务器:
ssh  [ip 或 主机名],如 ssh  root@localhost

基于密钥的验证更加安全,并且可以实现免口令自动登录。默认情况下,如果基于密钥的验证不成功,会自动使用基于口令的验证。

禁止使用基于口令验证的方法:修改服务器上的 /etc/ssh/sshd_config 文件,将PasswordAuthentication yes 改为 PasswordAuthentication no。

2.         ssh命令

登录到一台IP地址为192.168.0.100的远程机器上: ssh 192.168.0.100

3.         scp命令

scpsftpOpenSSH提供的在网络中保密的传输文件的工具。可以从服务器复制,也可以复制到服务器。

将服务器上的文件复制到本地:

scp  root@localhost:a  .
将服务器上用户主目录中的文件a复制到当前目录。

scp  ok@127.0.0.1:/a  /abc/a.txt
换名复制,同时指明了文件的路径。

将本地文件复制到服务器上:

scp /a  root@127.0.0.1:/a.txt
将本地根目录下的文件a复制到服务器根目录下,并改名为a.txt

scp  a.txt  root@localhost:.
将本地当前目录下的a.txt复制到服务器上用户主目录下。

4.         sftp命令

sftp用来打开一个安全的FTP会话,它除了使用一个加密的连接以外,其它方面与通常的FTP命令十分相似。

sftp  localhost

sftp  ok@localhost

sftp>ls 

sftp>get  a  /a.txt  下载文件a并换名

sftp>put  a.txt  .   上传文件a.txt

5.         Windows本身并没有提供SSH客户端程序,要想从Windows使用SSH登录到Linux服务器,需要用第三方软件。

常用的是 putty,与putty.exe一起提供的还有pscp.exepsftp.exe等,分别与Linux下的scpsftp相对应。

6.         虚拟网络计算(Virtual Network ComputingVNC是一个远程控制程序,允许用户通过网络和一个特定的计算机(服务器)进行交互。

VNC是一款优秀的远程控制软件,由两部分组成:一部分是客户端程序(vncviewer);另一部分是服务器端程序(vncserver)。

安装了客户端程序的计算机可以很方便地访问安装了服务器端程序的计算机。

启动vncserver的方法是使用命令:

#vncserver

从客户端连接服务器端时,要指明服务器的IP地址和桌面号。

第一次运行vncserver会提示输入密码,此密码是从客户端登录时需要的密码,可用vncpasswd命令修改。

# vncpasswd

同一用户的不同桌面号使用相同的密码。

不同用户分别设置自己的远程连接密码。

Linux客户端连接VNC服务器

# vncviewer

# vncviewer 192.168.0.100:1

连接后看到服务器端桌面。

注:服务器端要关闭防火墙或修改规则。

7.         网上邻居使Windows主机之间共享资源。

Samba使得Windows主机和Linux主机之间实现资源共享。

NFS能使类Unix主机之间实现资源共享。

NFS Network File System的缩写,即网络文件系统,由Sun公司开发。

功能是通过网络让不同的机器能够分享各自的数据,客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。

NFS服务器的主要配置文件是 /etc/exports

注意/etc/exports文件中的空格:

如果主机名和括号之间没有空格,表示选项只应用于这个主机。

如果主机名和括号之间有空格,表示选项是全局的,指定的主机有默认权限。

如:

/it 192.168.0.2(rw) 表示该主机有读写权限,禁止其他主机访问。

/it 192.168.0.2  (rw) 表示该主机有默认的权限,其他所有用户有读写权限。

/etc/exports文件的格式:   [目录] [主机] [选项]

选项:

Ø  ro                只读

Ø  rw               读写

Ø  sync              服务器在请求所做的更改写入磁盘前不予回复

Ø  root_squash        root用户映射成如匿名用户一样的权限(默认)

启动和停止NFS服务

#service nfs start/stop

要想系统引导时自动启动,可用ntsysv命令。

要使用NFS服务器上的共享目录,可将其挂载到本机的某目录下,方法为:

mount  主机:共享目录  本地目录

如:

       # mount  192.168.0.2:/it  /mnt/it

卸载方法为:# umount  /mnt/it

查看磁盘挂载情况:# mount | grep nfs

8.         Apache的启动/停止  service httpd start/stop

Apache 的主配置文件为
 /etc/httpd/conf/httpd.conf

9.         Fedora19下防火墙的打开/关闭/禁止命令:

       service firewalld start/stop/disable

       systemctl start/stop/disable firewalld.service

如果不关闭防火墙,也可用下面命令清除所有防火墙规则:

       iptables -F

10.     虚拟主机就是指将一台机器虚拟成多台WEB服务器。虽然所有的WEB服务由一台服务器提供,但访问者感觉是在不同的服务器上获得WEB服务。

Apache实现虚拟主机有两种方案:
基于IP的虚拟主机和基于名字的虚拟主机。

基于IP的虚拟主机的缺点是浪费IP资源,因为每增加一个虚拟主机就增加一个IP

基于名字的虚拟主机不需要更多的IP地址,因此应用更广。

11.     FTP用于在客户与服务器间传送文件。

FTP需要两个端口:控制连接端口(默认21)与数据传输端口(默认20)。

FTP服务器监听21端口等待连接建立请求。

vsftpdLinux下广泛使用的FTP服务器。

查看是否已安装:

       rpm –qa | grep vsftpd  或

       rpm –q vsftpd

vsftpd 的主配置文件是 /etc/vsftpd/vsftpd.conf

以 “#” 开始的行是注释。

选项格式为: 选项=值
并且 “=” 两边不能有空格。

服务启动方法:

service  vsftpd  start/stop/restart

ftp服务器的访问方法

1)ftp命令访问:
ftp IP  
    ftp  IP 端口

2)用浏览器或资源管理器访问:
ftp://IP  
   ftp://IP:端口

3)用客户端软件访问:
Linux下的gftpWindows下的CuteFTP

注:Windows下的ftp命令指定端口的方法为:在ftp>提示符下执行open IP 端口

额外知识点

第一章

Linux是一个免费的、多用户、多任务的操作系统,其运行方式、功能和UNIX系统很相似。

Linux系统的稳定性、安全性与网络功能是许多商业操作系统所无法比拟的。

软件按其提供方式和是否赢利可分为三种:

n    商业软件(Commercial Software)

n    共享软件(Shareware)

n    自由软件(Freeware)

第二章

n  Linux中的每个分区都是通过挂载来实现的。

n  挂载是将分区关联到某一目录的过程。

n  安装Linux至少需要两种分区:一个是swap分区,另一个是安装Linux文件系统根分区(/)。

n  自动分区:分成SWAP与/分区。

n  磁盘的一个分区(或光盘)对应Linux下的一个目录,该目录就叫做该分区的挂载点(mount point)。

Linux使用标准的目录结构——树型结构,无论操作系统管理几个磁盘分区,这样的目录树只有一个。

第三章

n  默认Alt+F1或super可打开“活动”;
Alt+F2打开运行窗口;
ctrl + alt + L锁定屏幕;
F9打开文件管理器左边的目录树

第八章

1.         主组与次组

如果一个用户属于多个组,那么该用户拥有各个组权限的并集。

当给用户的某个文件赋予组相关的权限时,文件本身只能属于一个组,这个组就是主组。

第十章

1.         基于源代码的安装

1)解压

2) 执行 ./configure 命令,配置系统,实现硬件无关性。如果不出错将产生一个Makefile文件。

3) 执行 make 命令进行软件编译,产生目标文件。

4)执行 make install 完成安装。

2.         进程概述

进程是资源分配的基本单位,是在操作系统中执行特定任务的动态实体。在Linux操作系统中可同时运行多个进程。

Linux下有三种不同类型的进程:

交互进程:
shell启动的进程,既可以在前台运行,也可以在后台运行。

批处理进程:
不通过终端提交,一般将它们放在任务队列中顺序执行。如通过at crontab提交的任务。

守护进程:
守护进程(Daemon)是运行在后台的一种进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些事件。Linux的大多数服务器就是用守护进程实现的。

第十一章

1.          

n   Fedora提供了一个图形界面的网络配置工具,使用该配置工具,可以配置以下主要参数:

n   IP地址:

n   子网掩码:

n   默认网关:

n   DNS服务器:

网络重新配置后要用命令 service network restart 重启网络。

Vmware网络连接中“Host-only”表示与宿主机共享一个私有网络,需要主机配置网络连接中的VMnet1

Vmware网络连接中的“NAT”表示虚拟主机通过宿主机连接到Internet,需配置VMnet8

第十二章

1.             防火墙的开启和关闭

重启后生效:
开启:chkconfig iptables on
关闭:chkconfig iptables off

即时生效,重启后失效:
开启:service iptables start
关闭:service iptables stop

注:chkconfig --list 可以查看服务列表及其运行情况。

2.         配置Apache服务器,实现基于名字的虚拟主机。写出从服务器安装一直到测试配置结果的全过程。

1)        修改配置文件httpd.conf后重启httpd服务。

2)        设置Web主目录

3)        设置默认首页文件名为Web服务指定端口号

4)        禁止某个IP访问Web服务器

5)        为用户开辟个人主页空间

6)        设置基于名字的虚拟主机

vi  httpd.conf, ;加以下内容:

NameVirtualHost  192.168.0.4

<VirtualHost  192.168.0.4>
  DocumentRoot  /var/www/html1
  ServerName  www.abc.com
</VirtualHost>

<VirtualHost  192.168.0.4>
  DocumentRoot  /var/www/html2
  ServerName  www.123.com
</VirtualHost>

7)        由于域名未在DNS中注册,所以可通过修改 /etc/hosts 文件的方式来验证实验效果。

hosts 文件中使两个域名指向同一IP

相关推荐