西窗话雨 發表於 2008-9-8 18:48:29

FreeBSD学习指南

<p>FreeBSD 的版本命名规则</p>
<p>A-主要版本编号</p>
<p>B-次要版本编号</p>
<p>C-修正版本编号</p>
<p>TAG-名称标签,如 RELEASE、STABLE、CURRENT</p>
<p>install.iso <a target="_blank" href="#" class="UBBWordLink">安装</a>时用这一片即可!mini.iso 也是可以用来<a target="_blank" href="#" class="UBBWordLink">安装</a>,但里面没有一些常用的 Package ,所以档案比较小。</p>
<p>硬盘分割表的概念</p>
<p>IDE 硬盘在 FreeBSD 中的代号分别是 ad0 、ad1 ,在 FreeBSD 可将主要扇区分割成许多逻辑扇区 logical slice ,a 在传统上是指根目录,b 是指 swap 虚拟内存,c 指整个主要扇区,d 指整个硬盘, efgh 可以任意使用!</p>
<p>改变 inode 的设定</p>
<p>按 N 并输入参数 newfs -i 1024 -b 4096 -f 1024</p>
<p>选<a target="_blank" href="#" class="UBBWordLink">安装</a>套件,除了最后二项 local 和 XFree86 外,全部都选。</p>
<p>在 Configuration Menu 所做的设定都会存放在 /etc/rc.conf 中,可以修改这个档案!</p>
<p><a target="_blank" href="#" class="UBBWordLink">安装</a>完 FreeBSD 要<a target="_blank" href="#" class="UBBWordLink">安装</a>的软件 vim-lite less gnuls pkg_tree elm+ME bash2 unzip nmap wget ncftp3 pstree</p>
<p>FreeBSD 的目录结构</p>
<p>
<table border="1">
    <tbody>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/etc/defaults</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">放置预设的<a target="_blank" href="#" class="UBBWordLink">系统</a>设定文件。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/etc/mtree</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">目录权限的设定文件。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/etc/periodic</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">每天、每周、每月定时要执行的设定。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/usr/ports</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">FreeBSD 移植软件的原始程序目录,我们可以从这个目录中找到自己想要的软件来快速<a target="_blank" href="#" class="UBBWordLink">安装</a>。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/usr/src</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">放置 BSD 或其它软件原始程序代码的目录。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/var/account</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">使用者执行过的指令记录文件。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/var/db</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">重要的<a target="_blank" href="#" class="UBBWordLink">系统</a>数据库。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">/var/quotas</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">档案<a target="_blank" href="#" class="UBBWordLink">系统</a>使用容量限制的记录。</td>
      </tr>
    </tbody>
</table>
</p>
<p> </p>
<p>修改、编译核心</p>
<p>/usr/src/sys/i386/conf 中有二个档案,一个是 GENERIC ,是<a target="_blank" href="#" class="UBBWordLink">安装</a>时用的一般核心,一个是 LINT 则是完整的核心及说明。</p>
<p>编译新的核心</p>
<p>options QUOTA</p>
<p>pseudo-device snp 可以监看使用者</p>
<p>#NAT</p>
<p>一、options IPFIREWALL</p>
<p>#支援 NAT</p>
<p>二、options IPDIVERT</p>
<p>#下面这一行是预设允许所有的封包通过,如果没有这一行,就必须在 /etc/rc.firewall 中设定封包的规则</p>
<p>三、options IPFIREWALL_DEFAULT_TO_ACCEPT</p>
<p>#下面一行是让您可以在 ipfw 中设定要记录哪些封包,如果没有这一行,这算设定了要留下记录也不会有作用</p>
<p>四、options IPFIREWALL_VERBOSE</p>
<p>#防火墙</p>
<p>除了 NAT 的一、三、四外</p>
<p>#这一行是限制每一条规则所要记录的封包数量,因为同样的规则可能有许多的记录,加上这一条可以使同样的记录重复数减少,以避免记录文件爆。</p>
<p>options IPFIREWALL_VERBOSE_LIMIT=10</p>
<p>#下面这一行是用来支持封包转向,当您要使用 fwd 动作时必须要有这一项设定</p>
<p>options IPFIREWALL_FORWARD</p>
<p>#如果要使用 pipe 来限制频宽,必须加入下列选项以支持 dummynet</p>
<p>options DUMMYNET</p>
<p>编译核心第一种<a target="_blank" href="#" class="UBBWordLink">方法</a></p>
<p>config GENERIC</p>
<p>cd ../../compile/GENERIC/</p>
<p>make depend;make;make install</p>
<p>第二种<a target="_blank" href="#" class="UBBWordLink">方法</a></p>
<p>在 FreeBSD 4.2-STABLE 之后可以用的新的<a target="_blank" href="#" class="UBBWordLink">方法</a></p>
<p>cd /usr/src</p>
<p>make buildkernel KERNCONF=GENERIC</p>
<p>make installkernel KERNCONF=GENERIC</p>
<p>cd /;rm -rf /usr/src/sys/compile/GENERIC</p>
<p>sync;sync;sync;reboot</p>
<p>新的核心有问题时</p>
<p>当编译完核心重新开机,无法进入 FreeBSD 时,要在开机时看到倒数计时的时候,按 Enter 以外的键,会出现 boot:,这时候就打 unload 来将已加载的数据移除,再打 /kernel.old 以使用旧的核心。万一连旧的核心也不能开机,就要使用<a target="_blank" href="#" class="UBBWordLink">安装</a>时的核心,/kernel.GENERIC,如果您想删掉坏的核心,由于 kernel 文件有特殊的档案属性,必须先下指令修改属性才能删除。</p>
<p>chflags noschg /kernel</p>
<p> </p>
<p>建立友善的使用者接口</p>
<p>编辑 /etc/csh.cshrc 或 /.cshrc 使用 tcsh 或 csh shell 时</p>
<p>加入 alias ls gnuls --color -F</p>
<p>如果想要新增使用时都能加入,则要修改 /usr/share/skel/dot.cshrc</p>
<p>想改 PATH 及一些设定也是在 /usr/share/skel 下的一些档案修改</p>
<p>常见的环境变量</p>
<p>EDITOR:设定文书编辑器</p>
<p>PAGER:设定分页程序 more 或 less</p>
<p>支持中文的环境,只支持 tcsh csh</p>
<p>编辑 /etc/csh.login</p>
<p>setenv ENABLE_STARTUP_LOCALE zh_TW.Big5</p>
<p># 使用远程登入时才能打出中文</p>
<p>setenv LC_CTYPE is_IS.ISO_8859-1</p>
<p># Console 下用才能打出中文</p>
<p>setenv LANG zh_TW.Big5</p>
<p>如果是 bash 要改用</p>
<p>export ENABLE_STARTUP_LOCALE='zh_TW.Big5'</p>
<p>export LC_CTYPE='is_IS.ISO_8859-1'</p>
<p>export LANG='zh_TW.Big5'</p>
<p>取消登入后,会自动秀出的一段文字 修改 /etc/motd <font color="#ff0000">Message Of The Day</font></p>
<p><font color="#000000">如果不希望 motd 内容出现 FreeBSD 的版本信息,可以在 /etc/rc.conf 中加入</font></p>
<p><font color="#000000">update_motd=&quot;YES&quot;</font></p>
<p>FreeBSD 的账号管理</p>
<p>adduser 新增使用者</p>
<p>pw groupadd newgroup 新增一个群组</p>
<p>pw groupshow newgroup 显示成果</p>
<p>vipw</p>
<p>FreeBSD 使用 shadow passowrd 的方式来保护密码文件,只有 root 才可以读取编码过的密码文件 /etc/master.passwd ,但是这并不是<a target="_blank" href="#" class="UBBWordLink">系统</a>用来验证的档案,为了加快速度,FreeBSD 将该文件做成数据库 /etc/spwd.db 及 /etc/pw.db ,因此修改完 master.passwd 后要下指令 pwd_mkdb 来将 master.passwd 做成数据库,但使用 vipw 就会自动完成这项工作!</p>
<p> </p>
<p>rmuser 删除使用者</p>
<p>FreeBSD 磁盘配额</p>
<p>一、在核心设定中加入 options QUOTA 这一行,并重新编译核心。</p>
<p>二、在 /etc/rc.conf 加入 enable_quotas=&quot;YES&quot;</p>
<p>三、在 /etc/fstab 中加入要启动磁盘限制的分割区中加入参数 userquota</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options 下 rw 的后面加入 rw,userquota</p>
<p>好了之后重新开机,再下 edquota -u username 来限制</p>
<p>在 4.5-RELEASE 中,开机内定会检查所有使用者的 quota ,如果不要检查,就在 /etc/rc.conf 中加入 check_quotas=&quot;NO&quot;。</p>
<p>FreeBSD <a target="_blank" href="#" class="UBBWordLink">网络</a>相关指令</p>
<p>ftp -a 以匿名者自动登入</p>
<p>sockstat 查看主机 internet 或 domain socket 。您可以用来查询有谁连到您的机器中,由哪一个<a target="_blank" href="#" class="UBBWordLink">网络</a><a target="_blank" href="#" class="UBBWordLink">服务</a>接收,该<a target="_blank" href="#" class="UBBWordLink">网络</a><a target="_blank" href="#" class="UBBWordLink">服务</a>的 PID 是多少,还可以查询本机开放了哪些 Port ,提供了哪些<a target="_blank" href="#" class="UBBWordLink">服务</a>。</p>
<p>&nbsp;/etc 下的档案介绍</p>
<p>csh.cshrc 这是 csh tcsh 用的内定 .cshrc 档案,也就是进入该 Shell 时会加载的设定。</p>
<p>csh.login 这是 csh tcsh 用的内定 .login 档案,也就是进入该 Shell 时会加载的设定。</p>
<p>defaults/make.conf 通常会复制一份到 /etc 下,用 port <a target="_blank" href="#" class="UBBWordLink">安装</a>软件时,会参考这个档案,把里面的 FTP 站台改成距离国内比较近的。</p>
<p>login.access 用来设定登入<a target="_blank" href="#" class="UBBWordLink">系统</a>使用者的权限,我们可以在这里设定是否允许使用者从 console 登入、从不同的区域登入的权限等。</p>
<p>login.conf 这个档案用来控制不同账号可以使用的<a target="_blank" href="#" class="UBBWordLink">系统</a>资源,它会依照使用者在密码文件中的 login class 来寻找相对的 class 设定,如果没有分类则使用 default 的默认值。修改完该档后,要执行 cap_mkdb /etc/login.conf 重建<a target="_blank" href="#" class="UBBWordLink">系统</a>数据库。</p>
<p>newsyslog.conf 用来定期检查 /var/log/ 的档案,设定当 log 到一定大小或是定期的将旧的档案压缩备份,并删除太老旧的档案。</p>
<p>语法:logfilename mode count size when </p>
<p> </p>
<p>
<table border="1">
    <tbody>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">logfilename</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">log 文件名称</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320"></td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">log 档拥有人:群组</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">mode</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">该 log 文件的权限[档案属性]</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">count</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">最多计算到多少,例如 cron 是 3 ,表示有 4 个压缩档,从 cron.0.gz 到 cron.3.gz</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">size</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">档案最大到多少即压缩备份,以 KB 计。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">when</td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">什么时候做备份,请 man newsyslog 来看详细说明。以 @ 为首代表用 ISO 8601 结构的时间格式。以 $ 为首代表使用每天、每周、每月。
            <p>$D0 每天半夜十二点</p>
            <p>$D23 每天 23:00 时</p>
            <p>$W0D23 每周日 23:00</p>
            <p>$W5D16 每周五 16:00</p>
            <p>$MLD0 每月最一天半夜十二点</p>
            <p>$M5D6 每月第五天 6:00</p>
            </td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320"></td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">Z 表示要将该档以 gzip 压缩,B 代表该档是 binary 档。</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320"></td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">pid 文件的绝对路径</td>
      </tr>
      <tr>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320"></td>
            <td style="color: rgb(0,0,0); font-family: SimSun" width="320">要送给该 daemon 程的 signal number</td>
      </tr>
    </tbody>
</table>
</p>
<p>FreeBSD 的软件<a target="_blank" href="#" class="UBBWordLink">安装</a></p>

                                             
                       
                                                <div class="cupage"><a href='#'>上一页</a><strong>1</strong><a href='https://www.jb51.net/os/Unix/1480_2.html'>2</a> <a href='https://www.jb51.net/os/Unix/1480_3.html'>3</a> <a href='https://www.jb51.net/os/Unix/1480_2.html'>下一页</a> <a href='https://www.jb51.net/os/Unix/1480_all.html'>阅读全文</a></div>
頁: [1]
查看完整版本: FreeBSD学习指南