<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>第三章 UNIX 系统入门</title>
<link rel="STYLESHEET" type="text/css" href="freebsd.css" />
</head>
<body>
<p><tt class="chtitle1">第三章 UNIX 系统入门</tt></p>
<p>在开始进阶的 FreeBSD 设定之前,我们先来了解一下 UNIX 系统的架构及基本知识。这些知识对于我们之后管理、使用 FreeBSD
十分重要。如果您是 UNIX 新手,请务必详读本章。</p>
<p>本章将介绍下列主题:</p>
<ul>
<li>如何登入注销系统。</li>
<li>UNIX 的指令用法。</li>
<li>UNIX 中常用的特殊键。</li>
<li>UNIX 的目录结构及路径的使用。</li>
<li>如何管理档案及目录。</li>
<li>重导 I/O 及管道的使用。</li>
<li>ee 及 vi 等文书编辑器的使用。</li>
<li>Shell 的环境设定。</li>
<li>使用者及群组权限设定。</li>
<li>何谓进程 (Process) 及系统服务管理。</li>
<li>如何进行工作排程。</li>
<li>虚拟终端机管理。</li>
</ul>
<p><tt class="chtitle2">3.1 第一次登入系统</tt></p>
<p>安装完 FreeBSD 后,重新开机,要知道的第一件事就是要怎么使用嘛。我第一次使用 FreeBSD 时,一开机看到 login: 时我当场呆在那里,完全不知如何下手。所以我一定要说一下这个,如何登入并更改密码。说了一堆好像很难的样子,其实不会啦,开机后看到
login: 时,打 <tt class="userinput">root</tt> 就可以登入系统了,如图 3-1。</p>
<p>图 3-1</p>
<p><img border="0" src="images/ch03_01.png" width="640" height="100"></p>
<p>这里的 root 就是所谓的超级使用者,这个使用者是 UNIX 系统中的预设管理者名称。root 拥有系统所有权限,我们可以使用这个账号登入系统进行管理。root
这个使用者拥有许多一般使用者所没有的权限,建议您平常使用时最好不要以 root 登入。例如收发 email,程序开发、浏览网页、练习 UNIX 指令等,应该以一般使用者的身份来进行。因为您可能不小心打了某个指令而删除不该被删除的档案、或因为不良的操作而影响系统的稳定。因此,在我们设定完系统后,您应该新增一个一般使用者以减少错误的发生。</p>
<p>由于这是刚装好的系统,所以当我们以 root 登入时,系统不会问我们密码。一个没有密码保护的系统是十分危险的事,所以我们第一件要做的事就是设定 root 的密码。请执行指令
<tt class="userinput">passwd</tt> 来设定您的密码,系统会问您二次新密码,以确认二次输入的密码相同。请不要使用太简单的密码,以免造成安全的漏洞。</p>
<p>如果您要离开系统,只要打
<tt class="userinput">exit</tt> 或是
<tt class="userinput">[Ctrl] + [D]</tt> 即可离开。不过离开系统并不是关机喔,如果您要关机,必须先打指令
<tt class="userinput">shutdown now</tt> 才能关闭电源。</p>
<p><tt class="chtitle2">3.2 认识 UNIX 使用环境</tt></p>
<p>在开始使用之前,我们先说明一些简单的指令用法,以利后续的设定,更详情的指令介绍请参考本书「指令应用」一章中的说明,或使用指令 man 来查询指令的用法。如果您是
UNIX 初学者,先阅读「指令应用」可以让您对 UNIX 指令及系统管理有更多的了解。</p>
<p><tt class="chtitle3">3.2.1 UNIX 指令语法</tt></p>
<p>UNIX 系统预设开机后是跑在命令列模式,就是会有一个命令列提示 (又称为 prompt),登入系统后,我们可以在命令列提示中输入指令。在 FreeBSD
中,一般使用者所看到的命令列提示字符是百分比符号 % 或是金钱符号 $,而超级使用者 root 的提示符号是井字号 #。</p>
<p>我们可以在命令列提示之后输入指令,例如:</p>
<pre class="screen"><tt class="prompt">#</tt> <tt class="userinput">date</tt>
Wed Jun 15 03:20:44 CST 2005</pre>
<p>我们输入指令 date 之后可以看到目前的系统时间。</p>
<p><tt class="chtitle4">指令语法</tt></p>
<p>在 UNIX 系统中的指令大多是下列格式:</p>
<pre class="screen"><tt class="userinput">command [-options] arg1 arg2 ...</tt></pre>
<p>command 的部份就是指令本身,而 [-options] 表示指令的选项,arg1、arg2 则是要给该指令的参数。-option 使用 []
括起来表示指令的选项可有可无,
有的指令可能可以不必加任何选项及参数,如我们刚才输入的指令 date。而在指令之后输入参数会有不同的作用,例如,我们可以使用 date
这个指令来修改目前的系统时间:</p>
<pre class="screen"><tt class="prompt">#</tt> <tt class="userinput">date 200507141730</tt></pre><p>
上述指令即是设定时间为 2005 年 7 月 14 日下午 17 点 30 分。 下面这个范例是有加上选项的指令:</p>
<pre class="screen"><tt class="prompt">#</tt> <tt class="userinput">ls -ld /usr /etc</tt></pre>
<p>ls 这个指令是用来列出档案的信息,选项 -l 表示列出详细信息,选项 -d
表示只列出目录本身而不列出目录下的档案,而最后的二个参数则是我们要列出的档案或目录。</p>
<p>值得注意的是,UNIX 系统中的指令及文件名有区分大小写喔,例如,date 和 DATE 是不一样的东西喔。如果您输入了
DATE,您将会看到命令列出现「<tt class="screen">DATE: Command not found.</tt>」,表示指令不存在。如果您输入指令 ls
来查看一个档案,但该档案不存在,则会出现「<tt class="screen">ls: noexist: No such file or
directory</tt>」,表示档案不存在。所以当我们在输入指令时,如果有发生问题,应该先查看输出的错误讯息是什么,再根据该讯息修正指令。</p>
<p>在 UNIX 系统中,如果您想了解一个指令的用法,例如可以使用哪些参数等,可以使用 <tt class="userinput">man</tt> 这个指令来查询
manual。
例如,您可以使用下列指令来查询 ls 这个指令的用法:</p>
<pre class="screen"><tt class="prompt">#</tt> <tt class="userinput">man ls</tt></pre>
<p>更多关于 <tt class="userinput">man</tt> 的用法,请参考「指令应用」一章的说明。当您对指令用法有问题时,<tt class="userinput">man</tt>
绝对是你是好朋友,懂得善用男人 (man) 可是 UNIX 入门的第一步喔。 </p>
<p><tt class="chtitle4">指令规则</tt></p>
<p>大部份的情况下,UNIX 的指令输入方式都有下列规则:</p>
<ul>
<li>指令通常全部都是小写。</li>
<li>选项 (Options) 可以用来改变指令本身的行为,而选项通常会有一个减号 (-) 做开头。我们可以同时使用多个选项,例如 -ld 表示同时使用
l 和 d 这二个选项。我们也可以将这二个选项分开来写,例如 -l -d 。</li>
<li>在指令、选项、和参数之间必须由空白隔开。</li>
<li>选项通常放在参数之前。例如 ls -l /usr,选项 -l 必须放在文件名 /usr 之前。</li>
<li>我们可以在一行命令列中输入多个指令,但每个指令必须使用分号 (;) 隔开。例如,pwd; ls。</li>
</ul>
<p><tt class="chtitle4">特殊按键</tt></p>
<p>当我们在使用命令列输入指令时,有一些特殊按键可以让我们在命令列中移动。例如,我们可以使用键盘的左右键来移动光标,其它还有一些常用的热键如下:</p>
<ul>
<li>[Backspace]、[Del]、[Ctrl] + [H]:使用键盘的退格键、Delete 键、或是按着 [Ctrl] 键及 H
键,可以删除一个字符。</li>
<li>[Ctrl] + [U]:用以清除整个命令列所输入的数据。</li>
<li>[Ctrl] + [W]:用以清除游标之前的一整个字。</li>
<li>[Ctrl] + [C]:用来中断目前的输入,或是中断一个正在�
评论1