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

1.  Linux是多人多任务的操作系统,每个人都会有自己的『工作目录』,这个目录是用户可以完全掌控的, 所以就称为『用户个人家目录』了。一般来说,家目录都在/home底下, 假如你的账号是vbird,那家目录就应该在/home/vbird/。

2.  GNOME的文件管理器称为『鹦鹉螺(Nautilus)』。KDE的文件管理器称为『Konqueror, 征服家』。

3.  文件名开头为小数点『.』的就是隐藏文件。

4.  更多的X window相关的使用技巧可以参考:http://apt.nc.hcc.edu.tw/docs/FC3_X/

5.  如果要重新启动X(不是重新启动Linux):

    1)  直接注销,然后再重新登入

    2)  在X的画面中直接按下[Alt] + [Ctrl] + [Backspace]

6.  Linux默认的情况下会提供六个Terminal (tty1~tty6)来让使用者登入, 切换的方式为使用:[Ctrl] + [Alt] + [F1]~[F6]的组合按键。按下[Ctrl] + [Alt] + [F7]可以回到图形接口桌面。在Linux默认的登入模式中,主要分为两种,一种是仅有纯文本接口(所谓的执行等级run level 3)的登入环境,在这种环境中你可以有tty1~tty6的终端界面,但是没有图形窗口接口的环境。 另一种则是图形接口的登入环境(所谓的执行等级run level 5) 在这个环境中你就具有tty1~tty7了,其中的tty7就是开机完成后的默认等待登入的图形环境。

7.  如果你是以纯文本环境启动Linux的,要启动X窗口画面的话可以执行xstart,要让startx生效至少需要以下几个条件:

    1)  你的tty7并没有其他的窗口软件正在运作(tty7必须是空出来的);

    2)  你必须要已经安装了X Window system,并且X server是能够顺利启动的;

    3)  你最好要有窗口管理器,例如GNOME/KDE或者是阳春的TWM等;

    4)  启动X所必须要的服务,例如字体服务器(X Font Server, xfs)必须要先启动。

8.  Linux默认提供了七个Run level给我们使用,只要修改一下/etc/inittab这个档案的内容,就能够在下次重新启动时生效了。

9.  ~符号代表的是当前用户的家目录的意思。默认root的提示字符为 # ,而一般身份用户的提示字符为 $ 。文本接口登录时显示的系统信息的内容其实是来自于/etc/issue这个文件的。

10.  要注销登入可以执行exit。

11.  文本模式登入后所取得的程序被称为壳(Shell),这是因为这支程序负责最外面跟使用者沟通,所以才被戏称为壳程序。Linux的默认壳程序就是bash。

12.  整个指令下达的方式是:

    command [-options] parameter1 parameter2 ...

    1)  一行指令中第一个输入的部分绝对是『指令名(command)』或『可执行文件』;

    2)  中括号[]并不存在于实际的指令中,此处表示可选项,而加入选项设定时,通常选项前会带 - 号;有时候会使用选项的完整全名,则选项前带有 -- 符号;

    3)  parameter1 parameter2.. 为依附在选项后面的参数,或者是 command 的参数;

    4)  指令, 选项, 参数等这几个中间以空格来分隔,不论空几格 shell 都视为一格;

    5)  按下[Enter]键后,该指令就立即执行。指令太长的时候,可以使用反斜杠 (\) 来转意[Enter]符号,使指令连续到下一行。 反斜杠后就立刻接特殊字符,才能转意。

    6)  在 Linux 系统中,英文大小写是敏感的。

13.  terminal在默认的情况下, 无法支持以中文编码输出的数据。这个时候,我们就得将当前语系改为英文,才能够以英文显示出正确的讯息。以下命令显示当前语系:echo $LANG, 以下命令修改当前语系成为英文语系:LANG=en_US

14.  如果在文字接口中想要知道目前Linux系统的时间,那就直接在指令列模式输入date即可。如果我想要列出目前这个月份的月历可以输入cal。基本上cal这个指令可以接的语法为:cal [month] [year]

15.  bc指令可以进入计算器模式,bc默认仅输出整数,如果要输出小数点下位数,那就必须要执行 scale=numbernumber就是小数点后的位数。输入quit来离开bc的软件环境。

16.  [Tab]按键具有『命令补全』与『文件路径补齐』的功能。[Tab] 接在一串指令的第一个字的后面,则为命令补全,接在一串指令的第二个字以后时,则为『文件路径补齐』。

17.  [Ctrl]-c 按键可以将正在运作中的指令中断。[Ctrl]-d 按键通常代表着: 『键盘输入结束(End Of File, EOF 或 End Of Input)』的意思。另外,他也可以用来取代exit的输入,例如你想要直接离开文字接口,可以直接按下[Ctrl]-d就能够直接离开了(相当于输入exit)。

18.  man command / data 会显示指定 command data 的相关帮助文档。man是manual(操作说明)的简写。进入man指令的功能后,你可以按下『空格键』往下翻页,可以按下『 q 』按键来离开man的环境。也可以使用[Page Up]与[Page Down]来翻页。同时,如果你知道某些关键词的话, 可以在任何时候输入『/word』,来主动向下搜寻关键词。『?word』向上搜寻 word 这个字符串。利用 / 或 ? 来搜寻字符串时,可以用 n 来继续下一个搜寻,可以利用 N 来进行『反向』搜寻。

19.  你下达了『man null』时,会出现的第一行是:『NULL(4)』,对照以下的数字意义可以知道null竟然是一个『装置档案』。

代号 代表内容
1 用户在shell环境中可以操作的指令或可执行文件
2 系统核心可呼叫的函数与工具等
3 一些常用的函数(function)与函数库(library),大部分为C的函数库(libc)
4 装置档案的说明,通常在/dev下的档案
5 配置文件或者是某些档案的格式
6 游戏(games)
7 惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明
8 系统管理员可用的管理指令
9 跟kernel有关的文件

上述的表格内容可以使用『man 7 man』来获得更详细说明。

20.  基本上,man page大致分成以下这几个部分:

代号 内容说明
NAME 简短的指令、数据名称说明
SYNOPSIS 简短的指令下达语法(syntax)简介
DESCRIPTION 较为完整的说明,这部分最好仔细看看。
OPTIONS 针对 SYNOPSIS 部分中,有列举的所有可用的选项说明
COMMANDS 当这个程序(软件)在执行的时候,可以在此程序(软件)中下达的指令
FILES 这个程序或数据所使用或参考或连结到的某些文件
SEE ALSO 可以参考的,跟这个指令或数据有相关的其他说明。
EXAMPLE 一些可以参考的范例
BUGS 是否有相关的漏洞

通常建议在查询某个数据时这样来查阅:

    1)  先察看NAME的项目,约略看一下这个资料的意思;

    2)  再详看一下DESCRIPTION,这个部分会提到很多相关的资料与使用时机;

    3)  而如果这个指令其实很熟悉了,那主要就是查询OPTIONS的部分了。

    4)  最后,可以再看一下,跟这个资料有关的还有哪些东西可以使用的,例如SEE ALSO就告知我们还可以利用『info coreutils date』来进一步查阅数据;

    5)  某些说明内容还会列举有关的档案(FILES 部分)来提供我们参考。

21.  man page的数据在不同的distribution通常可能有点差异性,通常是放在/usr/share/man这个目录里头,然而,我们可以通过修改他的man page搜寻路径来改变这个目录。修改/etc/man.config (有的版本为man.conf或manpath.config)即可。更多的关于man的讯息你可以使用『 man man 』来查询。

22.  使用 -f 这个选项就可以取得更多与要查询的指令或数据相关的信息:

$ man -f man
man (1) - format and display the on-line manual pages
man (7) - macros to format man pages

第二行的『 man (7) 』表示有个man (7)的说明文件存在。其实,你可以指定不同的文件:

$ man 1 man <==这里是用 man(1) 的文件数据 
$ man 7 man <==这里是用 man(7) 的文件数据

 输入『 man man 』时,搜寻的顺序是记录在/etc/man.conf这个配置文件当中, 先搜寻到的那个说明档,就会先被显示出来。一般来说,通常会先找到数字较小的那个。

23.  使用-k这个选项就可以将说明文件里面只要含有指定关键字的(不见得是完整字符串) 取出来。

24.  以下两个指令是man的简略写法:

$ whatis [指令或数据] <==相当亍 man -f [指令或数据]
$ apropos [指令或数据] <==相当亍 man -k [关键字]

 这两个特殊指令要能使用,必须要有建立 whatis 数据库才行。这个数据库的建立需要以 root 的身份下达如下指令:

# makewhatis

25.  在所有的Unix Like系统当中,都可以利用 man 来查询指令或相关文件的用法; 但是,在Linux里面则又额外提供了一种在线求助的方法,那就是利用info。基本上,info与man的用途其实差不多,都是用来查询指令的用法或是文件的格式。但是与man page一口气输出一堆信息不同的是,info page则是将文件数据拆成一个一个的段落,每个段落用自己的页面来撰写, 并且在各个页面中还有类似网页的『超链接』来跳到各不同的页面中,每个独立的页面也被称为一个节点(node)。 所以,你可以将info page想成是文本模式的网页显示数据。不过你要查询的目标数据的说明文件必须要以info的格式来写成才能够使用info的特殊功能(例如超链接)。 而这个支持info指令的文件默认是放置在/usr/share/info/这个目录当中的。非以info page格式写成的说明文件(就是man page),虽然也能够使用info来显示,不过其结果就会跟man相同。

26.  如同下图所示,info的说明文件将内容分成多个node,并且每个node都有定位与连结。 在各连结之间还可以具有类似『超链接』的快速按钮,可以通过[tab]键在一个node中的各个超链接间移动,按[Enter]键进行跳转。 也可以使用U,P,N来在各个阶层中跳转:



 

在info page当中可以使用的快捷键如下:

按键 作用
空格键 或 [Page Down]  向下翻一页
[Page Up] 向上翻一页
[tab] 在页面中的 node链接之间移动,有 node 链接的地方,通常会以 * 显示。
[Enter] 当光标在 node 链接上面时,按下 Enter 可以进入该 node 。
b 移动光标到该 info 画面当中的第一个 node 链接处
e 移动光标到该 info 画面当中的最后一个 node 链接处
n 前往下一个 node 处
p 前往上一个 node 处
u 向上移动一层
s 或 / 在 info page 当中进行搜寻
h 显示求助选单
?   指令一觅表
q 结束这次的 info page

27.  在/usr/share/doc这个目录底下, 就会发现好多好多的说明文件档。

28.  要关机时需要注意底下几件事:

    1)  观察系统的使用状态: 如果要看目前有谁在线,可以下达『who』这个指令,而如果要看网络的联机状态,可以下达 『 netstat -a 』这个指令,而要看后台执行的程序可以执行『 ps -aux 』这个指令。使用这些指令可以让你稍微了解主机目前的使用状态。

    2)  通知在线使用者关机的时刻: 要关机前总得给在线的使用者一些时间来结束他们的工作,所以,这个时候你可以使用 shutdown 的特别指令来达到此一功能。

    3)  正确的关机指令使用: 例如 shutdown 与 reboot 两个指令。(只有root有权力执行)

29.  直接在文字接口下输入sync,那么在内存中尚未被flush的数据,就会被写入硬盘中。所以,这个指令在系统关机或重启前,很重要,最好多执行几次。虽然目前的 shutdown/reboot/halt 等等指令均已经在关机前进行了 sync 这个工具的呼叫,不过,多做几次总是比较放心点。

30.  shutdown可以达成如下的工作:

    1)  可以自由选择关机模式:是要关机、重新启动或进入单人操作模式均可;

    2)  可以设定关机时间: 可以设定成现在立刻关机, 也可以设定某一个特定的时间才关机。

    3)  可以自定义关机讯息:在关机之前,可以将自己设定的讯息传送给在线 user 。

    4)  可以仅发出警告讯息:有时有可能你要进行一些测试,而不想让其他的使用者干扰,或是明白地告诉使用者某段时间要注意一下,这个时候可以使用 shutdown 来吓一吓使用者,但并不是真的要关机。

    5)  可以选择是否要 fsck 检查文件系统 。

shutdown的简单语法如下:

/sbin/shutdown [-t 秒] [-arkhncfF] 时间 [警告讯息]

 选项与参数:

    -t sec-t 后面加秒数,亦即『过几秒后关机』的意思

    -k : 不要真的关机,只是发送警告讯息出去。

    -r : 在将系统的服务停掉之后就重新启动(常用)

    -h : 将系统的服务停掉后,立即关机。 (常用)

    -n : 不经过 init 程序,直接以 shutdown 的功能来关机

    -f :  关机并开机之后,强制略过 fsck 的磁盘检查

    -F : 系统重新启动之后,强制进行 fsck 的磁盘检查

    -c : 取消已经在进行的 shutdown 指令内容。

    时间 : 这是一定要加入的参数,指定系统关机的时间。否则shutdown会自动跳到 run-level 1 (就是单人维护的登入情况)。now代表现在,也就是0,20:25表示下一个紧接的20点25分,10 表示十分钟后

31.  还有三个指令可以进行重启与关机的任务,那就是reboot, halt, poweroff

32.  Linux共有七种执行等级,run level 0代表关机,run level 6代表重启。可以使用init指令来切换各种模式。所以你也可以使用init 0 来关机。

33.  当分区损坏时,可以用fsck 装置名来修复,如果是根目录所在的分区损坏,导致无法启动,你可以前往:『http://knoppix.tnc.edu.tw/』 这个网站来下载Live CD,然后将其刻录成光盘开机,然后使用fsck去修复原本的根目录, 例如: fsck /dev/sda1就能够救回来了。

34.  如果忘记root 密码,以grub为例,先将系统重启,在读秒的时候按下任意键就会出现选单画面,仔细看选单底下的说明, 按下『e』就能够进入grub的编辑模式了。此时你看到的画面有点像底下这样:

root (hd0,0)
kernel /vmlinuz-2.6.18-128.el5 ro root=LABEL=/ rhgb quiet 
initrd /initrd-2.6.18-128.el5.img

 将光标移到kernel那行,再按一次『 e 』进入kernel该行的编辑画面,在最后输入single

kernel /vmlinuz-2.6.18-128.el5 ro root=LABEL=/ rhgb quiet single

 再按下『 Enter 』确定之后,按下 b 就可以开机进入单人维护模式了。在这个模式底下,你会在tty1的地方不需要输入密码即可取得root权限。之后使用passwd命令就可以修改root密码了。

猜你喜欢

转载自seanzhou.iteye.com/blog/2015720