写一个简单的例子:
main.c:
#include <stdio.h>
#include <stdlib.h>
#include <libguile.h>
int main (int argc, char *argv[])
{
SCM func_symbol;
SCM func;
scm_init_guile();
// Load the scheme function definitions
scm_c_primitive_load ("script.scm");
func_symbol = scm_c_lookup("do-hello");
func = scm_variable_ref(func_symbol);
scm_call_0 (func);
exit(EXIT_SUCCESS);
}
Makefile:
CC = gcc
GUILE_CFLAGS = `guile-config compile`
GUILE_LIBS = `guile-config link`
all:
$(CC) $(GUILE_CFLAGS) -c main.c
$(CC) $(GUILE_LIBS) -o main main.o
如果连接有错误的话,把
$(CC) $(GUILE_LIBS) -o main main.o
改成
$(CC) main.o $(GUILE_LIBS)
-o main
注意:因为这里gcc一般都是把-l参数放在最后一个-o参数之前的.
在cygwin/gcc下编译出来的程序,在windows执行必须依赖cygwin1.dll,并且速度有些慢,如果不想依赖这个东西的化,必须在gcc的编译选项中加入-mno-cygwin。
加入这个选项其实gcc编译器就会自动的选择在安装cygwin/gcc时安上的mingw,这个mingw就是gcc的一个交叉编译。
如果要程序没有控制台的话,只加上参数-mwindows就可以了.
IRC命令可以实现一些特殊的功能。目前,亿言堂支持14条IRC命令:
/nick 更改昵称
/join 加入/建立聊天室
/mode +(-)i 锁住聊天室
/mode +(-)o 设定管理员权限
/knock 要求进入私人聊天室
/invite 邀请用户进入私人聊天室
/privmsg 悄悄话
/ignore 忽略
/away 暂时离开
/whois 查询用户信息
/names 列出所有在线用户
/topic 更换聊天室主题
/kick 把用户踢出聊天室
/quit 退出聊天室
IRC命令有二点值得您注意:
所有的IRC命令都是由“/”引导。
在不引起混淆的情况下,IRC命令允许简写。例如,/join 命令可以简写为/j,/jo或者/joi。
/nick
更改昵称的基本方法是:/n(ick) 新的昵称
您的昵称可以包含英文字母,数字,汉字及下划线等。但是,昵称不能超过50个(每个字符和汉字都算一个字),而且不能包含$,+,!和空格。
/nick 命令等价于工具按钮中的“改变别名”。
/join
/join命令的格式是:/j(oin) 聊天室名
如果聊天室已经存在,您就进入该聊天室。此时,/join 命令等价于聊天室列表工具按钮中的“进入”。
如果聊天室不存在,您就建立了一个新的聊天室并进入。此时,/join 命令等价于工具按钮中的“建聊天室”。
聊天室的名字可以包含英文字母,数字,汉字及下划线等。但是,不能超过50个字(每个字符和汉字都算一个字),而且不能包含$,+,!和空格。
/mode +(-)i
/mode +(-)i 命令可以用来锁住(解锁)用户自建的聊天室(私人聊天室)。其命令格式是:/m(ode)
+i 或 /m(ode) -i
只有用户自建的聊天室才能加锁。
未经管理员邀请,其他用户不能进入私人聊天室。
/mode +(-)o
/mode +(-)o 命令可以让聊天室管理员赋予或者剥夺其他用户的管理员身份。其命令格式是:/m(ode)
+o 用户昵称或/m(ode)-o用户昵称只有聊天室管理员才能使用这个命令。
/knock
/knock 命令可以让您询问私人聊天室管理员是否可以进入该私人聊天室。其命令格式是:/k(nock) 房间名
消息]
/invite
/invite 命令可以让聊天室管理员邀请其他用户进入私人聊天室。其命令格式是:/i(nvite) 用户昵称
只有私人聊天室的管理员才能使用这个命令。
/privmsg
/privmsg 命令用来向在同一间聊天室的某个用户发送私人消息(悄悄话)。也就是说,您的消息只送给指定的人,而不会显示给其他用户。
/privmsg 命令的基本格式是: /p(rivmsg) 用户昵称 消息
接受您的私人消息的用户必须和您在同一间聊天室。
“用户昵称”和“消息”这两个参数是不能省略的。
如果某个用户的昵称太长,在不会产生混淆的情况下,您可以只输入用户昵称的头几个字母,系统会进行自动匹配。
例如:聊天室里除了您之外还有两个用户,他们的昵称分别是xiaobao和softman。您若想给softman发送悄悄话,可以在输入框里输入下面的命令:
/p s Have you etanged today?
由于xiaobao和softman的第一个字母就不一样,所以系统会把您输入的昵称“s”自动匹配为“softman”。另外,“/p”是“/privmsg”的缩写。
/ignore
/ignore 命令用来把某个用户加入您的“坏人黑名单”。一旦某个用户进入了您的黑名单,他说的任何话都将不会显示在您的终端上。
/ignore 命令的基本格式是:/ig(nore) 用户昵称
用户昵称所代表的用户必须和您在同一个聊天室。
/ignore 命令等价于用户列表工具按钮中的“忽略”。
如果某个用户的昵称太长,在不会产生混淆的情况下,您可以只输入用户昵称的头几个字母,系统会进行自动匹配。
在您的用户列表中,如果某个用户昵称前有一个#,表示该用户已经被您列入黑名单。
如果一个用户已经在您的黑名单中,您可以用 /ignore 用户昵称 把他从黑名单中去掉。
/away
/away 命令用来把自己设为“暂时离开”状态,并可以留言给其他用户。当其他用户和您说悄悄话时,您预先设置的留言会自动回复给其他用户。
/away 命令的基本格式是:/a(way) [留言]
“留言”这个参数是可选的。如果有这个参数,您的状态会被设置为“暂时离开”。否则,您的状态会被设置为“我回来了”。
当您暂时离开聊天室时,用户列表中您的昵称前会出现一个?,表示您处于“离开”状态。工具按钮中的“暂时离开”也会变为“我回来了”。
当您回来继续聊天时,您可以点击工具按钮中的“我回来了”,或者在输入框里输入 /away 命令,将自己设置为正常状态。
/away 命令等价于工具按钮中的“暂时离开”
/whois
/whois 命令用来查询某个用户的信息,包括用户的亿唐ID,IP地址,目前所在的聊天室和发呆时间。
/whois 命令的基本格式是:/w(hois) 用户昵称
/whois命令等价于用户列表工具按钮中的“查询”。
/names
/names 命令用来查看当前所有(或某个聊天室内)的在线聊天用户。其命令格式是:/na(mes) [聊天室]
/topic
/topic 命令用来设定当前聊天室的主题。
/topic 命令的基本格式是:/t(opic) 聊天室主题
只有当前聊天室的管理员(op)才有权利设定聊天室主题。
聊天室的创建者就是该聊天室的管理员。
管理员权限可以通过 /mode +o 命令转交。
/kick
/kick 命令用来把某个用户踢出当前聊天室。
/kick 命令的基本格式是:/ki(ck) 用户昵称 [消息]
只有当前聊天室的管理员(op)才有权利把其他用户踢出当前聊天室。
聊天室的创建者就是该聊天室的管理员。
管理员权限可以通过/mode +o命令转交。
请诸位网友慎用这个命令。“君子动口不动手”嘛!
/quit
/quit 命令用来退出聊天室。
/quit 命令的基本格式是:/q(uit) [消息]
“消息”这个参数是可选的。如果您指定退出时的消息,该消息会发送给当前聊天室中的其他用户。您可以使用这个消息向其他用户道别。
/quit 命令等价于工具按钮中的“结束聊天”。
所有中国黑客和红客,我的同胞们:
首先声明,我的计算机软件技术、黑客功底,可能不会比你们任何人差:
我通读过 minix,tcp/ip,bsd,linux,
pl1的源码,我拿过中国高级程序员证书,sun
的java证书,精通vc和unix,对缓冲区溢出,病毒,ddk等均有研究,所以我想我有资格对你们说几句话。
(如果我提到的一些计算机名词和人名,你们居然不知道,那只能证明你们的无知,和不配称为黑客。)
如果是真正的黑客,他会知道
1.发明tcp/ip的是美国人 。
2. linux的作者,linus大侠现在也在美国工作 。
3. open source的开创人 stallman
也是美国人,他提倡软件不分国界的自由的精神 。
4. free bsd 的作者是美国人,他的source
让真正的黑客受惠
5.世界级软件科学大师
tanabaom,也是美国的客座教授,他的minix,
ameba和教材教育了全世界几代黑客。
提到这些,不是崇美,不是恐美,只想证明:
1.很多大师级的美国黑客,他们的理念恰恰是自由、开放、无国界;他们的自由软件,开放源码,是与政治无关的,是超越国界的,给全世界人们带来福音。
2.真正的黑客精神,如stallman所说,是要让人类超越计算机,成为计算机的主宰,从而成为自由的。
所有的中国黑客和红客,我的同胞们:
当你们正通过下载美国人写的黑客工具,来攻击美国网络,并且乐此不疲,以为这就是爱国行动的时候,是否想过:
此时此刻,印度的软件人士,正在努力提高软件技术,他们的软件水平、软件产业已经超越了中国;难道我们不应该痛苦地承认这个现实,并且奋起直追吗?
中国发明了火药,但是缺少研究精神,结果是被西方人研究改进了以后打中国,这样的教训还少吗?
中国向来不缺爱国热情,但是我们缺少对科技的认真研究精神,知耻而后勇的追赶精神。难道我们不愿意承认这一点吗?
从战术上来说,过早暴露自己的实力是不聪明的;冒昧地问一句,如果真的战争爆发了,您的黑客技术完全掌握好了吗,您已经为那一天的到来在进行技术储备吗?
您有没有想向那些真正为中国科技做出杰出贡献的科学家如钱学森学习呢?
所有的中国黑客和红客,我的同胞们:
请把你们的聪明才智用到真正提高你们的水平,对国家的强大有帮助的地方吧:
如果您愿意对国家有所贡献:
1.中国的863计划中有一个重点研究项目:
并行计算,分布计算,向量计算。您愿意研究它吗?
2.
作为现代通讯技术的一个根本数学基础,大合数的快速因子分解,还是一个难题。您愿意研究它吗?
如果您想提高技术,对中国的软件技术有所贡献:
1.研究 vc,java
2.研究数据结构,去考高级程序员
3. 研究操作系统,读minix source code
4. 研究tcp/ip, rfc文档
5. 通读linux, 才算达到黑客境界
6. 学习
uml,rose,软件工程,达到系统分析员水平。
如果您对提高中国的科技有兴趣,去研究生物基因,材料技术(纳米技术),计算机技术,航天技术……
我的同胞们,我愿大声呐喊:
一个真正的民族主义者,不是义和团,不是太平天国,不是闭关锁国,不是盲目仇外,不是不敢正视自己民族和文化的丑陋和缺点。
真正的民族主义者是成熟的、清醒的、理智的、务实的民族主义。真正的民族主义者不是种族主义者,不是极端份子,不是战争狂人。
真正的民族主义者以追求本民族——中华民族的利益最大化为目标、准则、信念。判断一个人是不是真正的民族主义者,判断标准很简单:看他是给本民族的整体利益带来
好处,还是损害民族利益。真正的民族主义者最务实,因为他知道坚持原则,同时又懂得策略。让我们成为真正的顶尖黑客!让我们成为真正的民族主义者!
FreeBSD中/etc下的文件可以说是纷繁复杂,对熟悉它的人来讲不算什么,但对于一个新手来说就。。。太乱了,下面是一些经常用到的配置文件的作用和配置方法,但愿能给你一点帮助。
1. aliases
2. crontab
3. csh.cshrc
4. csh.login
5. csh.logout
6. daily
7. defaultdomain
8. exports
9. fbtab
10.fstab
11.ftpusers
12.group
13.host.conf
14.hosts
15.inetd.conf
16.localtime
17.login.conf
18.make.conf
19.monthly
20.motd
21.netstart----新版已改名为/etc/rc.network
22.passwd
23.printcap
24.profile
25.rc
26.rc.conf----代替原来的/etc/sysconfig
27.rc.conf.local----代替原来的/etc/rc.local
28.rc.i386
29.rc.local----新版改名为/etc/rc.conf.local
30.rc.network----代替原来的/etc/netstart
31.resolv.conf
32.services
33.shells
34.sysconfig----新版已改名为/etc/rc.conf
35.syslog.conf
36.termcap
37.ttys
38.weekly
1. aliases
这个档案主要是告诉 sendmail 要将信转寄给哪些使用者, 或是交由哪个程式处理.
如. root: user1,name2,user3
usenet: "|/usr/local/bin/mail-post.pl"
如上范例, sendmail 会将原先寄给的 root 的信分送给 user1 和 name2 和 user3, 而把寄给 usenet 的信交由 mail-post.pl 处理.
在你修改完之後, 要记得执行 "newaliases" 来更新 /etc/aliases.db
关於 aliases 之详细说明, 请 man aliases 查询.
2. crontab
这是给 root 用的 crontab file, 你也可以杀掉这个档案以 "crontab -e" 来替代.
格式如下...
#分 小时 天 月 礼拜几 用谁的身份 命令
*/5 * * * * root /usr/libexec/atrun
minute: 分钟/小时, 范围自 0 至 59
hour: 小时/天, 范围自 0 至 23
mday: 天/月, 范围自 0 至 31
month: 月/年, 范围自 0 至 12
wday: 天/周, 范围自 0 至 7 (0, 7 表示星期天)
who: 表是以谁的身份执行这个 command
(这只对 /etc/crontab 有用, crontab -e 无此栏位)
command: 命令或是 shell script
*/N: 表示每 N 一算, 像小时而言, */3 指的是 0,3,6,9,12
请 man 5 crontab 去看详细说明.
3. csh.cshrc
# 系统内定给 csh shell 用的 .cshrc 档
## 确定 HOME 目录
setenv HOME $HOME
set home=$HOME
cd $HOME
## 档案权限设定
umask 022
## 就是 Aliases 嘛
alias pftp '/usr/local/bin/pftp'
alias free 'pstat -s|grep -v not'
alias talk ytalk
alias ruptime '/usr/bin/ruptime|grep -v down'
alias ftp ncftp
alias rwho '/usr/bin/rwho -a|grep -v LOGIN'
alias more less
alias zmore zless
alias m less
alias pss 'ps auxw|sort -k 2|grep $USER'
alias psm 'ps auxw|sort -k 1,2|more'
alias psl psm
alias psv 'ps auxw|grep -v $USER|sort -k 2|more'
alias d '/usr/local/bin/colorls -G -alFgk \!* | more'
alias dir '/usr/local/bin/colorls -G -alFgk \!*'
alias rd rmdir
alias md mkdir
alias cls clear
alias cd.. 'cd ..'
alias del '/bin/rm -i'
alias xdel '/bin/rm -rf'
alias mv 'mv -i'
alias dir/w '/bin/ls -aFgk'
alias dw '/bin/ls -aFgk'
#alias x '(startx &)>&/dev/console;sleep 300;lo'
#alias lpr 'lpr -m'
alias cp 'cp -i'
alias rm 'rm -i'
alias lo 'clear;exit'
alias bye 'clear;exit'
#alias vi cvi
alias unlo 'unset autologout;unsetenv autologout'
alias q joe
alias .. 'cd ..'
alias ... 'cd ../..'
#alias ku 'ku -W'
alias tin rtin
#alias s 'exec screen'
## 环境设定
set path = (/sbin /usr/sbin /bin /usr/bin /usr/local/sbin /usr/local/bin)
set path = ($path /etc /usr/etc /usr/local/etc)
set path = ($path /usr/X11R6/bin /usr/games)
set path = ($path ~ ~/bin .)
set mail = (10 /var/mail/$USER)
set recexact
set autolist
set matchbeep = ambiguous
set autoexpand
set autocorrect
set ignoreeof
set noclobber
set notify
set correct = all
if ( ! $?WINDOW ) then
# set prompt = "%B%m [%/] [%?] -%n- "
set prompt = "%B%m [%/] -%n- "
else
set prompt = "%B%m [%/] -%n- [W$WINDOW] "
endif
set prompt2 = "(%t %m)%~ #%% "
set prompt3 = "%SDo you mean [%R] (y/n/e) ? "
set history = 500
set savehist = 500
set time=100
#set watch=(1 any any)
set symlinks = ignore
set listlinks
set listjobs
set rmstar
set showdots
#set tperiod = 30
# set autologout = (60 2)
#setenv MANPATH /usr/man:/usr/local/man:/usr/man/preformat:/usr/X11/man:/usr/openwin/man
setenv EDITOR /usr/local/bin/joe
setenv VISUAL /usr/local/bin/joe
setenv EXINIT 'set ai'
setenv LESS "-EsPm-LESS-"
setenv LESSCHARDEF "8bcccbcc18b95.."
setenv PAGER "less -Em"
#setenv PAGER more
setenv LC_CTYPE lt_LN.ISO_8859-1
setenv LANG C
setenv BLOCKSIZE 1k
setenv MACHINE_ARCH i386
setenv MACHINE i386
setenv ORGANIZATION "交大资工 ADONIS"
## X 相关设定
setenv XWINHOME '/usr/X11R6'
setenv X11HOME '/usr/X11R6'
setenv OPENWINHOME '/usr/X11R6'
setenv XKEYSYMDB /usr/X11R6/lib/X11/XKeysymDB
setenv XNLSPATH /usr/X11R6/lib/X11/nls
#setenv LD_LIBRARY_PATH /usr/lib:/usr/X11R6/lib:/usr/local/lib
stty erase '^?'
if ( $?TERM ) then
if ($TERM == "xterm" || $TERM == "xterms") then
stty erase '^H'
endif
endif
## 杂七杂八设定
#set term = vt100
#set TERM = vt100
#setenv term vt100
#setenv TERM vt100
#stty extb
stty 38400
stty crt
stty -tabs
stty -istrip
stty pass8
unlo
#bindkey "[HOME]" beginning-of-line
#bindkey "[ESC]" keyboard-quit
limit coredumpsize 0
# 给 FSP Client 用
setenv FSP_PORT 21
setenv FSP_HOST nctuccca.edu.tw
setenv FSP_DIR /
setenv FSP_TRACE
setenv FSP_DELAY 3000
# Aii.. 就是 fsp aliases :)
alias fcat '(set noglob; exec fcatcmd \!*)'
alias fcd 'setenv FSP_DIR `(set noglob; exec fcdcmd \!*)`;fpwd'
alias fdu \(set noglob\; exec fducmd \!\*\)
alias ffind \(set noglob\; exec ffindcmd \!\*\)
alias fget '(set noglob; exec fgetcmd \!*)'
alias fgrab '(set noglob; exec fgrabcmd \!*)'
alias fls '(set noglob; exec flscmd -F \!*)'
alias fll '(set noglob; exec flscmd -l \!*)'
alias fdir '(set noglob; exec flscmd -l \!*)'
alias fmore \(set noglob\; exec fcatcmd \!\* \| more\)
alias fpro '(set noglob; exec fprocmd \!*)'
alias fpwd 'echo "$FSP_HOST ($FSP_PORT): $FSP_DIR"'
alias frm '(set noglob; exec frmcmd \!*)'
alias frmdir '(set noglob; exec frmdircmd \!*)'
alias fhost 'setenv FSP_HOST \!*;setenv FSP_DIR /'
4. csh.login
# 系统内定的 .login 档.
#stty extb
stty 38400
#stty crt
#stty -tabs
stty -istrip
stty pass8
# Mesg y if not console
mesg y
if ( `tty | cut -c 6-` == console ) then
mesg n
endif
msgs -fp
5. csh.logout
# 系统内定的 .logout
clear
.
6. daily
cron 会依照 /etc/crontab 去做每日例行的工作. 注意一下有些 commands 对你的硬盘造成很大的负荷, 像是最後一
行的 "sh /etc/security", 他会从你的根目录开始查询. 你可以加些每天你想要执行的commands, 像是
"quotacheck -a", "bin/rm/-f /tmp*junk*.
7. defaultdomain
这个档案记载你的 domainname, 你有跑 yp (nis) 时才有用. 当然闲闲填一填也没差啦.
8. exports
这个档案定义哪些目录可经由 NFS 给别人使用.
例如 /cdrom -ro host1,host2
/home -maproot=root host3
Notice: 若你没加 "-ro" 表示可以写入, 所以你应当小心点.
做完修正後, "kill -1 $mountd_pid", 然後用 "showmount -e" 去看看 NFS 是否做的正确. 如果有错, 用 "tail /var/log/messages" 来看错误讯息.
你应该要将 /etc/rc.conf 中的 nfs_client_enable, nfs_server_enable 设为 YES.
详细说明请 man 5 exports.
9. fbtab
/dev/ttyv0 0600 /dev/console
/dev/ttyv1 0600 /dev/console
/dev/ttyv2 0600 /dev/console
/dev/ttyv3 0600 /dev/console
#/dev/ttyv0 0600 /dev/pcaudio:/dev/pcaudioctl
10.fstab
这个档案定义当你开机时, 你想 mount 哪些 partition.
例如.
/dev/sd0a / ufs rw 1 1
/dev/sd0e /dos msdos ro,-gmsdos,-m750 1 1
/dev/sd0g /usr/local ufs rw,userquota 1 1
/dev/sd0h /home ufs rw,userquota,groupquota 1 1
/dev/sd0b none swap sw 0 0
proc /proc procfs rw 0 0
kern /kern kernfs rw 0 0
详情请 man fstab.
如果你的 /usr 没有跟 / 放在一起,要特别注意,/usr 不可以放在使用 LKM 载入的 filesystem 後面。例如,你的 MSDOSFS 是利用 LKM 载入的(也就是说,你没有把 MSDOSFS 编译在 kernel 中),你的 /dos
一定要放在 /usr 後面,不然开机会失败,例如:
modload:exec(/usr/bin/ld):NO such file or directiory
msdos:vfsload(msdos):Operation not permitted
Filessystem mount failed,startup aborted
Enter pathname of shell or RETURN for sh
11.ftpusers
这个档注明的 users 将无法 ftp 这台机器. 只要写 username 即可. 算是禁止 ftp 进来的黑名单吧.
12.group
这个档案主要记载著 group 名称, group id 以及隶属於该 group 的使用者.
要记得在 FreeBSD 中, 只有属於 wheel group 的使用者才能 su 成 root.
在升级时特别注意 /usr/src/etc/group 中是否有新增系统 group, 如 network 这个 group 就是最近新增的 group.
其他详细请用 man group.
13.host.conf
这个档案决定 DNS-name-lookup 的先後顺序. 你最好先 "hosts", 其次 "bind", 最後用 "nis".
hosts: 自 /etc/hosts 查询.
bind: 自 nameserver (参考 /etc/resolv.conf 设定) 查询.
nis: 自 nis server 查询.
14.hosts
这个档案记载了你所需要的 ip 和 hostname, 最少要包括 localhost 和你自己的 hostname, 通常是提供优先於 nameserver 的查询, 或是没有 nameserver 时的查询.
格式如下:
IP-addr full-hostname alias
如. 123.456.789.123 heaven.net.com heaven
请 man hosts 去看详细说明.
15.inetd.conf
这个档案定义由 inetd 所提供的服务, 应该要和 /etc/services 保持一致性.
当你修改这个档案的时候, 记得要 kill -1 $inetd_pid 去知会 inetd 要重新更新资料.
你可以安装 tcp-wrapper (tcpd) 以增加安全性.
16.localtime
这个档记载你所在的时区资料, 你可以从 /usr/share/zoneinfo 中选一个适合的来用.
就台湾而言, 你应该用 /usr/share/zoneinfo/Asia/Taipei, 正常来说, 在 install 时会自动将此档案 copy 到 /etc/localtime.
17.login.conf
此档案可控制系统资源与帐号各方面的限制,亦可设定内定之环境变数。
"man login.conf" for detail.
18.make.conf
当你用 make 时, 这个定义档将被参考.
如果不是以 BSD 格式撰写的 Makefiles, 你应该安装 gmake (GNU)
19.monthly
每月例行的 jobs.
20.motd
Message Of Today, 顾名思义, 就是当你 login 时所出现的画面.
假如你要有自己的 motd, 你必须把 /etc/rc.local 前面几行在开机时会更改 motd 的命令拿掉, 否则你每次开机 motd 会被乱改.
21.netstart----新版已改名为/etc/rc.network
目前此档已由 /etc/rc.network 取代 目前此档只作为 root 在 single user mode 要手动启动网路服务
时使用。 这个档案不要做更动, 应该去修改 /etc/rc.conf
22.passwd
/etc/passwd /etc/master.passwd /etc/spwd.db /etc/pwd.db 都是 由 vipw 所产生的. 关於怎样去建一个帐号, 请参考 HOW-TO-adduser.
你可以 man passwd, vipw, chpass, chfn 查询详细说明.
23.printcap
这个档案定义印表机的设定, 在修改後, 试著用 lpr 去列印一些东西, 假如你觉得很慢, 试著用 lptcontrol -p 去改变
/dev/lpt0 到 poll 模式, 当然, 你可以将 lptcontrol -p 加到 /etc/rc.local 里 以使每次开机都有
效.
man lptcontrol 查询详细说明.
24.profile
这是 /bin/sh 的 default 设定.
25.rc
当系统开机时, kernel 会先去载入 /sbin/init, 然後 /sbin/init 会去执行 /etc/rc, 所以
/etc/rc 相对於 DOS 而言就好像 AUTOEXEC.BAT. 这个档案不要去更改, 假如你不希望每次开机时 /tmp 会被清乾净,
那你可以将跟 /tmp 相关的几行给砍掉. (个人偏好)
26.rc.conf----代替原来的/etc/sysconfig
这主要用来做系统开机时的环境设定. /etc/rc, /etc/rc.i386, /etc/rc.conf.local, /etc/rc.network, /etc/[bla bla] 都会参考这个档案. 所以这个档案可以说非常重要.
大多都有注解, 以下列举一些你该注意的地方...
1) hostname : 你的完整 hostname (FQDN: 像是 freebsd.csie.nctu.edu.tw)
2) network_interfaces : 网路卡的 device name, 像是 "ed0 lnc0".
3) ifconfig_xxx : 定义网路卡及其 ip address.
像是 ifconfig_ed0="inet 140.113.145.1 netmask 0xffffff00"
ifconfig_ed1="inet 140.113.190.1 netmask 0xffffff00"
方法如下...
ifconfig_$device-name="inet $IP netmask $netmask",
netmask 0xffffff00 就是 255.255.255.0 表 Class C 网路.
4) defaultrouter: 内定的 router IP.(比如: 140.113.122.254)
5) routdflags : 通常 NO. 但是假如你想要跑 routed, 则用 "-s" 或 "-q".
详细说明请 man routed.
6) rwhod : YES 执行 rwho daemon. rwho 跟 ruptime 须此 daemon.
7) sendmail_flags : 执行 sendmail daemon, 通常设为 "-db -q30m"
8) nfs_* : 执行 nfs client 或 server
9) check_quotas : enable 档案系统 quotas
10) accountint : enable command accounting, "lastcomm" 须要.
11) firewall_enable : enable firewall 的功能
firewall_type : 指定 firewall 的形态
你应该设定完後再重新开机以测试是否每个改变都合乎你的要求.
27.rc.conf.local----代替原来的/etc/rc.local
在这个档案加入你个人的设定, 你可以将开机时想要执行的动作放在这里. 像 gopherd, lptcontrol, swap-on-file 等.
28.rc.i386
这个档案不要更动.
29.rc.local----新版改名为/etc/rc.conf.local
新版已由/etc/rc.conf.local所取代。
30.rc.network----代替原来的/etc/netstart
有关网路方面各项设定请由 /etc/rc.conf 设定,原则上此档不需更动
31.resolv.conf
这定义 DNS 查询 nameserver 的先後顺序.
1. domain : 将你的 domainname 放这儿.
2. nameserver : 将你的 nameservers 放这儿, 最前面的会被当成主要的nameserver.
3. search : 将 domainnames 放这儿, 当你没有输入完整的 hostname 时, 他会将 domainnames 附加上去. 例如: search csie.NCTU.edu.tw NCTU.edu.tw edu.tw tw
详情请 man resolver.
32.services
定义 service 名字以及 port. 不需要更动。
33.shells
所有的 shell 都应该放在这个档案里, 像是 /bin/sh, /bin/tcsh, /home/bbs/bin/bbsrf 等等.
假如说有某个使用者的 shell 没有列在这个档案中, 有些程式如 ftpd 会拒绝该使用者 ftp, 如 adduser 将会拒绝执行.
man shells 查询详细说明.
34.sysconfig----新版已改名为/etc/rc.conf
参考 rc.conf。
35.syslog.conf
这个档案指出系统的 log 应该储存在哪儿.
36.termcap
这个应该 link 到 /usr/share/misc/termcap.
37.ttys
定义 tty 的形式及某些 tty 允不允许 root login. 假如某些 ttys 後面加有 "secure", 表示 root 可以 login. 你应当多加些, 如 /dev/tty[pqrs][0-9a-v]
详情请 man ttys。
38.weekly
每周例行的工作。