正在筛选分类:*BSD 下的文章 清除筛选 ✕
2013
01
09
09:58

FreeBSD桌面笔记

安装FreeBSD

此部分可以参照http://www.freebsd.org/doc/zh_CN/books/handbook/install.html

 

系统配置

 

关于软件源的配置:

FreeBSD的软件源分为两部分,一部分是pkg_add所用的预编译包软件源,一部分是编译安装所用的ports软件源。

关于预编译包软件源的设置,可用root身份运行以下命令(以FreeBSD China的地址为例):

ee ~/.cshrc

添加

setenv PACKAGESITE http://mirrors.163.com/FreeBSD/ports/packages/Latest/

到配置文件中。

关于ports软件源的设置,可用root身份运行以下命令(以我自己的配置文件为例):

ee /etc/make.conf

然后添加如下内容:

DISABLE_SIZE=yes

MASTER_SITE_OVERRIDE=\

 

http://mirrors.163.com/FreeBSD/distfiles/${DIST_SUBDIR}/\

http://ports.hshh.org/${DIST_SUBDIR}/

 

网络设置:

使用系统的sysinstall命令,会出现一个配置界面,里面包含了系统的一些基本设置,根据提示进行设置即可。

 

更新源代码和ports:

cd /usr/share/examples/cvsup

然后用喜欢的编辑器修改standard-supfile,ports-supfile,把其中default host后面的网址改为cvsup.freebsdchina.org,然后运行

cvsup -g -L 2 standard-supfile(其他文件也如此),就可以得到最新的ports和源代码树了。

 

使ports能够多线程下载源代码:

首先要安装wget:

pkg_add -r wget

然后在/etc/make.conf中加入:

FETCH_CMD=/usr/local/bin/wget -c -t 1

这样的话,ports安装时候就能使用wget的多线程下载源代码了。

 

安装基本的xorg环境:

用root身份运行:

pkg_add -r xorg

然后就会自动联网下载所需要的包,自动解决依赖关系。

为了得到一个可用的配置文件,以root身份运行一下

Xorg -configure

然后

mv /root/xorg.conf.new /etc/X11/xorg.conf

 

安装桌面环境,以GNOME为例:

pkg_add -r gnome2 gdm

安装完GNOME以后,为了让开机可以自动运行GDM,把如下配置行加入/etc/rc.conf文件中:

hald_enable=”YES”

dbus_enable=”YES”

gdm_enable=”YES”

另外,还要运行:

echo “/usr/local/bin/gnome-session” > ~/.xinitrc

 

安装Linux兼容层:

 

首先需要加载一次Linux模块,否则无法安装成功:

 

kldload linux

 

然后

 

pkg_add -r linux_base-f10

 

为了让开机加载Linux模块,需要在/boot/loader.conf中加入

linux_load=”YES”

同时,在/etc/rc.conf中加入

linux_enable=”YES”

 

安装显卡驱动,需要Linux兼容层,以我的nVidia显卡为例:

nVidia驱动按照自己的显卡型号,选择适应的驱动。驱动在/usr/ports/x11

nvidia-driver-173/

nvidia-driver-71/

nvidia-driver-96/

nvidia-driver/

我7300 GO所以直接选择了nvidia-driver

cd/usr/ports/x11/nvidia-driver && makeinstall clean

为了让FreeBSD开机加载nVidia驱动,需要在/boot/loader.conf加入

nvidia_load=”YES”

另外,还要编辑/etc/X11/xorg.conf

Driver “nv”

改为

Driver “nvidia”

 

设置GNOME的中文环境:

由于GNOME默认是英文环境,所以需要在/etc/profile中加入如下内容:

export LANG=zh_CN.UTF-8

export LC_TYPE=zh_CN.UTF-8

export LC_ALL=zh_CN.UTF-8

重启一下就可以看到中文化的界面了。

另外,由于默认中文字体很难看,可以安装个文泉驿字体:

cd /usr/ports/x11-fonts/wqy && make install clean

 

安装ibus中文输入法:

pkg_add -r ibus ibus-pinyin

安装完以后,在中文环境下,ibus可以自动启动,无需修改配置。

 

安装火狐浏览器:

pkg_add -r firefox

 

安装Flash插件:

cd /usr/ports/www/linux-f10-flashplugin11 && make install clean

mkdir /usr/local/lib/browser_plugins

ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so /usr/local/lib/browser_plugins/

按照 FreeBSD 版本, 在安装了正确的 Flash port 之后, 插件必须由每个用户运行 nspluginwrapper 安装:

nspluginwrapper -v -a -i把以下这行加入 /etc/fstab

linproc /usr/compat/linux/proc linprocfs rw 0 0

cd /usr/local/lib/firefox/plugins && ln -s /usr/local/lib/browser_plugins/npwrapper.libflashplayer.so npwrapper.libflashplayer.so

 

新版的Flash插件似乎已经不需要拷贝so和做链接了,直接用nspluginwrapper -v -a -i就能识别出来。

 

声卡驱动安装:

首先使用命令加载所有能用声卡驱动

kldload snd_driver

使用命令查看你的声卡型号

cat/dev/sndstat

在出现 kldsnd_*** 字符位置 ***就是你的声卡信息

然后在编辑/boot/loader.conf.加上snd_***_load=”YES”

重启,不出现意外的话你就能听到声音了。

如果是集成AC97声卡,试试:

ee /boot/defaults/loader.conf

修改snd_ich_load=”NO” #Intel ich 把“NO”改为“YES”。

 

安装QQ:

由于FreeBSD的QQ是使用的QQ for Linux,所以需要按照前面的步骤安装并且开启Linux兼容层,然后终端输入命令:

ee/etc/sysctl.conf

然后加入

compat.linux.osrelease=2.6.16

终端输入:

cd /usr/ports/net-im/qq && make install clean

如果QQ不能中文输入,执行:

/compat/linux/usr/bin/localedef-i zh_CN -f UTF-8 zh_CN

 

安装NTFS-3G:

cd /usr/ports/sysutils/fusefs-ntfs && make install clean

加入fuse加载:

ee /etc/rc.conf

加入以下这一行:

fusefs_enable=”YES”

保存退出。

ee /boot/loader.conf

加入以下这一行:

fuse_load=”YES”

保存退出。

注意:这两行一个是fusefs,一个是fuse,千万小心!

2013
01
09
09:55

FreeBSD正确配置中文环境的方法

以前一直以为是直接修改全局的profile或者cshrc来进行locale设置,现在才发现其实完全不用这么麻烦,而且那样是不规范的。

按照官方手册,正确的方法是修改/etc/login.conf,比如我要使用简体中文环境,那么就在/etc/login.conf添加:

chinese|Simplified Chinese Users Account:\

:charset=UTF-8:\

:lang=zh_CN.UTF-8:\

:tc=default:

然后需要重建数据库:

cap_mkdb /etc/login.conf

之后把需要的用户加入中文登录环境即可:

pw usermod YOUR_USER -L chinese

2012
12
18
16:07

FreeBSD常用命令及系统故障处理

01.查看网络流量

a.systat -if 1 (1表示1s刷新屏幕一次)

b.netstat 1

# Traffic 流量 peak 峰值 average 平均值

 

02.查看硬盘信息

diskinfo -vt /dev/ad0

disklable /dev/ad0 (分区信息)

disklable /dev/ad0s2

 

03.查看核心信息

vmstat 1

 

04.查看进程

top

ps -aux

ps -ef |grep xxx

 

05.查看硬盘详细分区信息&读写状况

gstat

 

06.sysctl sysctl -a 查看所有变量(/etc/sysctl.conf)

sysctl kern.maxproc 查看特定变量

sysctl kern.maxfiles=5000 设置变量

 

07.查看磁盘空间使用情形 df 和 du

指令df用来查看整个档案系统的使用情形,

如果您需要知道某个目录的使用情形用指令du。

df -h

du -h /etc

du -sh /etc

-s 参数来省略指定目录下的子目录

-h 表示使用GB、MB等易读的格式

 

08.断电后系统无法启动

a.启动到sing user模式

b.fsck

c.reboot

 

09.升级内核后无法启动

a.重启机器到10秒读秒时按enter以外的任意键(新版bsd按6)

b.unload

c.boot kernel.old 或其他可以启动的内核

另外一种方法

a.使用cd1启动,选择Fixit–>CDROM/DVD

b.Fixit#mount /dev/ad0s2a /mnt mount硬盘上的文件系统

c.cd /mnt/boot

d.rm -rf kernel

e.cp -R kernel.old kernel

f.reboot

修改了/boot/loader.conf以后不能正常引导系统了,当机器开始加载

/boot/defaults/loader.conf的时候(未加载完)机器停止响应,我应该怎么办?

a.使用cd1启动,选择Fixit–>CDROM/DVD

b.Fixit#mount /dev/ad0s2a /mnt mount硬盘上的文件系统

c.cd /mnt/boot

d.vi loader.conf 去掉错误的加载项

e.reboot

 

10.丢失root密码

启动到单用户模式,执行/sbin/mount -a, 然后用passwd更改密码

/sbin/mount -a=挂接/etc/fstab里所有列出的文件系统

如果单用户登录也需要密码

a.使用cd1启动,选择Fixit–>CDROM/DVD

b.Fixit#mount /dev/ad0s2a /mnt mount硬盘上的文件系统

c.cd /mnt/etc

d.vi /ttys 找到when going to single-user mode,更改

console none unknow off insecure为secure

e.reboot,启动到单用户模式/sbin/mount -a,passwd

启动到单用户模式后,ctrl+d进入多用户模式

####让单用户登录也需要密码

a.cd /etc

b.vi /ttys 找到when going to single-user mode,更改

console none unknow off secure为insecure

 

11.用win2000的引导器启动FreeBSD

装完 freebsd后 系统自动设置如下:

f1 dos

f2 freebsd

先起动到dos下,fdisk /mbr,再把FreeBSD光盘上的boot\boot1复制到c:\,

再编辑c:\boot.ini 加一行c:\boot1=”FreeBsd”

 

12.硬盘分区时shift+F –>NO可以使用全部空间

 

13.ctrl+alt+backspace 杀掉xwindows

 

14.alt+F1…F8 或 printscreensysr循环切换控制台

 

15.shutdown now 切换到单用户模式

shutdown -p now

shutdown -hp now 关闭电源

shutdown -r now reboot 重新启动机器

shutdown -p +90 (90分钟后关机)

shutdown 0203122359(0203122359表示2002年3月12日23:59,格式是yymmddhhmm)

 

16.挂载ntfs,fat32分区和u盘

ntfs: mount_ntfs -C eucCN /dev/ad0s5 /mnt/d

fat32:mount_msdos -L zh_CN.eucCN /dev/ad0s6 /mnt/e

u盘(scsi盘): mount_msdos -L zh_CN.eucCN /dev/da0s1 /mnt/u

cdrom: #mount_cd9660 /dev/acd0 /mnt/cdrom

NTFS在FreeBSD中只能读无法写

 

17.卸载分区

umount /dev/ad0s5

umount -f /dev/ad0s5 (强制卸载)

 

18.在/etc/fstab中挂载fat32分区

/dev/ad0s5 /mnt/d msdos rw,-L=zh_CN.eucCN 2 2

 

19.如何在FreeBSD5.X以上加载,卸载ISO文件

mount iso文件:

mdconfig -a -t vnode -f myisofile.iso (屏幕输出md0或者类似的设备名)

mount -t cd9660 /dev/md0 /cdrom

umount:

umount /cdrom

mdconfig -d -u 0 (上面的-u后面的数字和前面的md?中的数字一致)

mdconfig -l 命令可以列出关于配置 md(4) 设备的信息

 

20.声卡

vi /boot/defaults/loader.conf

更改snd_ich_load=”NO”->”YES” #intel ich

检测声卡 kldstat 或 dmesg |grep pcm

 

21.ls 命令详解

ls 显示本目录下的文件及目录

ls -a显示本目录下的所有文件及目录(包括隐藏目录和文件)

ls -l 显示本目录下所有文件的属性

ls -l | grep ^d 只显示目录

ls -l | grep ^- 只显示文件

ls -l | grep ^d | wc –l 统计当能目录下的子目录数

ls -l | grep ^- | wc –l 统计当能目录下的文件数

ls -G 以颜色显示目录名和文件名

 

22.查找程序或文件

which 程序名

whereis 程序名

find 文件名

locate 文件名

locate: database too small: /var/db/locate.database的一种解决方法

a.这个仅仅是因为你开机时间不够长,看看/etc/periodic/weekly/310.locate

b.试试运行/usr/libexec/locate.updatedb看

whatis xxx 要找东西但不知道它是什么

grep bpf /usr/src/sys/i386/conf/GENERIC 在文件中找指定文本

#只能对文本进行grep,如是命令,则

command |grep text

grep text filename

 

23.xmms乱码问题 (要拷贝simsun.ttf和taboma.ttf到/usr/X11R6/lib/X11/fonts/TrueType/)

在用户目录下建立 .gtkrc.mine 文件.代码如下

style “gtk-default-zh-cn” {

fontset = “-*-tahoma-medium-r-normal-*-12-0-0-0-p-0-iso8859-1,

-misc-simsun-medium-r-normal-*-*-120-*-*-p-*-gbk-0,*-r-*” }

class “GtkWidget” style “gtk-default-zh-cn”

修改xmms中的字体设置,将播放清单及主窗口的字体修改为下面的设置

-*-tahoma-medium-r-normal-*-12-0-0-0-p-0-iso8859-1,

-misc-simsun-medium-r-normal-*-*-120-*-*-p-*-gbk-0,*-r-*

xorg6.9+xfce4+xmms

cd /usr/ports/chineses/xmms make install clean

拷贝simsun.ttf到/usr/X11R6/lib/X11/fonts/TTF/,无需要建立.gtkrc.mine

只要修改xmms中的字体设置,字体simsun,size 12就好了。

 

24.停止sendmail

vi /etc/rc.conf 加入

sendmail_enable=”NONE”

 

25.you have mail

mail 回车,输入1看第一封邮件…输入?看帮助

mail 古老的 UNIX 邮件处理程序

如果我们要寄信给非本机的使用者,可以使用的收件人格式如下:

mail -s”hi, my friend” jack@mymail.com

mail -s “hi, my friend” jack@mymail.com < content.txt

执行了 mail 之后,程序会先要求我们输入邮件主旨,输入后就可以开始打本文了。

当完成本文的编辑之后,可以按 Ctrl+D 来将信件送出,或是按二次 Ctrl+C 取消。

 

26.traceroute &ping的整合工具my traceroute /mtr

/usr/ports/net/mtr

使用: mtr www.163.com

 

27.使用gnome2的gdm做桌面管理器

vi /etc/rc.conf 加入

gdm_enable=”YES”

vi /root/.dmrc 更改Language=zh_CN.UTF-8–>zh_CN.eucCN

 

28.远程连接windows终端

rdesktop [-a 16 -f] server’IP[:port]

-a 16表示16位色,-f表示全屏

gui,grdesktop (/usr/ports/net/grdesktop)

 

29.播放APE格式音乐

/usr/ports/chinese/xmms/ /usr/ports/audio/xmms-mac(ape插件)xmms-wma(wma插件)

 

30.看图

/usr/ports/graphics/xnview

 

31.apache22+php5+mysql+postgresql+ZendOptimizer

a,apache22:

cd /usr/ports/www/apache22

make install clean

b,php5:

cd /usr/ports/lang/php5

make install clean

选中APACHE,就可以联编出用于与Apache web服务器配合使用的可动态加载的mod_php5模块.

勿选debug,否则不能装ZendOptimizer

c,php5扩展:

cd /usr/ports/lang/php5-extesions

make install [FORCE_PKG_REGISTER=yes] 强迫安装

make clean

(除预设项目还应选中CTYPE,EXIF,GD,ICONV,IMAP,PCRE,SESSION,ZLIB)

FreeBSD中的PHP支持是高度模块化的,因此基本安装的功能十分有限。增加其他功能非常简单,

只需通过lang/php5-extensions即可完成。这个port提供了一个菜单驱动的界面来帮助完成PHP

扩展的安装。另外也可以通过对应的port来单独安装扩展。例如要将对于MySQL数据库服务器

的支持加入PHP5,只需简单地安装databases/php5-mysql.

d,cp /usr/local/etc/php.ini.recommended /usr/local/etc/php.ini

e,ZendOptimizer

cd /usr/ports/devel/ZendOptimizer

make install clean

f,mysql:

cd /usr/ports/databases/mysql41-server

make WITH_OPENSSL=yes BUILD_OPTIMIZED=yes WITH_CHARSET=gbk WITH_XCHARSET=all SKIP_DNS_CHECK=yes install

./work/mysql-5.0.24/scripts/mysql_install_db

cd /usr/ports/databases/php5-mysql

make install clean

g,postgresql

cd /usr/ports/databases/postgresql81-server

make install clean

/usr/local/etc/rc.d/postgresql initdb

echo ‘postgresql_enable=”YES”‘ >> /etc/rc.conf

cd /usr/ports/databases/php5-pgsql

make install clean

 

32.怎样刷新环境变量值,而不用退出再登陆?

a,比如要重新设置环境变量ABC的值为abcdef

bash$ export ABC=abcdef

csh% setenv ABC abcdef

b,更新了PATH变量指定目录里可执行命令

rehash

c,更新配置文件

比如你编辑了.cshrc等文件,就需要用source命令

source .cshrc

 

33.检视软件间的关联

cd /usr/ports/sysutils/pkg_tree

make install clean

之后我们就可以使用 pkg_tree | more 来看各个软件之间的关系了

 

34.使用 portupgrade 更新软件

cd /usr/ports/sysutils/portupgrade

make install clean

配置文件:/usr/local/etc/pkgtools.conf

如果您只想要升级某一个软件本身,而非所有相依的软件,只要使用

portupgrade “pkgname” 即可。如果您要升级所有和该软件相依的其它软件,

则可以加上参数 -r。如果您要更新包含相依软件的相依软件,则可以使用

参数 -R。另外,您可以使用参数 -m 来要求编译 (make) ports 时多传入

一些参数,还可以使用参数 -f 要求就算版本一样也强制更新。portupgrade

在更新软件时,会保留您原本的设定档。例如,在更新 Apache 时,它会保留

httpd.conf的设定。假设我们更新软件perl-5.8,我们可以用下列指令更新:

# portupgrade -rRf “perl-5.8.*” -m “ENABLE_SUIDPERL=yes”

 

35.ports安装失败提示

stop in /usr/ports/lang/ruby18/work

删除work目录下所有文件&文件夹再次安装即可.(make clean)

 

36.ntop–网络监控软件

cd /usr/ports/net/ntop

make install clean

vi /etc/rc.conf 加入

ntop_enable=”YES”

在地址栏中输入http://x.x.x.x:3000 即出来管理界面.

 

37.修改/etc/rc.conf不重启生效

a.sh /etc/rc

b./etc/netstart

 

38.freebsd启动的时候停到blanktime的解决办法

可以试试 这个参数:blanktime=”NO”

etc/rc.conf 中把 default_router 注释掉

#未验证!!!

 

39.Bsd 下的QQ

eva不错,运行速度飞快。

/usr/ports/net-im/eva

gaim-openq

/usr/ports/net-im/gaim-openq

 

40.一次性把所有安装的ports删除掉

a.pkg_delete -a

以下步骤去掉配置文件,解决一些疑难问题

rm -fr /usr/local/

rm -fr /var/db/ports/

cd /usr/ports && make NOCLEANDEPENDS=yes clean

portsnap fetch update

b.安装pkg_cutleaves它会告诉你,哪些package没有人依赖,并让你决定要不要删除

c.make deinstall与pkg_delete有什麽不同?

简单来说,make deinstall会移除该port,并且不会叁照其相依相关的ports。

pkg_delete在移除该port前,会叁照其相依相关的ports,并且pkg_delete

有支援 wild card,如要移除所有p开头的 ports,则:

cd /var/db/pkg/

pkg_delete p*

要注意的是,如果使用 `make deinstall’,则最好确定系统目前所

安装的版本,与 ports collection 中显示的版本符合,否则有可能会出现非预

期性错误;而pkg_delete是因为直接删除系统中所安装的版本,所以没有此问题。

因此,换句话说,当系统所安装的版本符合ports collections中的版本,则可

以使用make deinstall或pkg_delete,否则的话最好用pkg_delete。

 

41.pure-ftp安装

cd /usr/ports/ftp/pure-ftpd/

make WITH_LANG=simplified-chinese install clean

[X] BANNER Show pure-ftpd welcome upon session start

cd /usr/local/etc/

cp pure-ftpd.conf.sample pure-ftpd.conf

vi /etc/rc.conf –>加入pureftpd_enable=”YES”

关于pureftpd的编码问题

在win下登陆ftp然后建立中文文件夹,传中文文件然后用FlashFXP登陆看到这些

中文文件和文件夹名字全部是乱码.pure-ftpd.conf中强制用gbk就可以了.

FileSystemCharset gbk

ClientCharset gbk

 

42.开机自动校准时间

vi /etc/rc.conf—>加入

ntpdate_enable=”YES” # Run ntpdate to sync time on boot (or NO).

ntpdate_flags=”218.75.4.130″ # cn.pool.ntp.org

 

43.将/usr/ports/distfiles/目录放到/data/disktfiles

cd /usr/ports

mv distfiles /data/distfiles [移动]

ln -s /data/distfiles distfiles [链接][要在/usr/ports目录下做]

ln -s source_file[_dir] target_file[_dir]

 

44.FreeBSD下面通过串口连接到路由器

使用cu -s speed -l line,就可以连接到COM口或者家猫的线路上,我用的是COM1口,

连接Cisco2924XL,使用cu -s 9600 -l ttyd0,即可连接上交换机配置界面。

 

45.电子书:CHM、PDF的查看

chmsee,kchmviewer,xpdf,xchm,Acrobat Reader…chmsee对中文支持比较好

/usr/ports/print/acroread7

 

46.使用axel或者prozilla加速你的port下载

a.axel(据说能搞定文件夹钳套,不错!推荐使用 )

cd /usr/ports/ftp/axel

make install clean

vi /etc/make.conf 加入

FETCH_CMD=axel -a

DISABLE_SIZE=yes

vi /usr/local/etc/axelrc 修改代码

#num_connections = 4

num_connections = 10

4改为10,num_connections前面不留空格,否则出错.

(-a 交互的进步指示器,num_connections = 10 10线程下载)

SIZE参数用来在取得文件之前检查文件的大小.而DISABLE_SIZE则是是否开启这项功能

b.prozilla(速度快,遇到欠套的文件夹会出问题)

cd /port/ftp/prozilla

make install clean

vi /etc/make.conf 加入

FETCH_CMD=proz -s -k=10 -r –no-curses

DISABLE_SIZE=yes

(-s 查找最快的境像,-k=10 10个线程下载,-r 重新开始一个被打断的下载)

c.wget(未测试)

cd /usr/ports/ftp/wget/

make install clean

vi /etc/make.conf 加入

FETCH_CMD=wget -c -t 1

DISABLE_SIZE=yes #这行是必要的

d.在其它机器上fetch

make fetch-recursive (fetch:取得recursive:递归的)

然后将/usr/ports/distfiles拿走。

###make install设置是/etc/make.conf

###pkg_add是在~/.cshrc或~/.profile

e.vi /etc/csh.cshrc

加上以下一行可以在让pkg_add先从更快的站点下载

setenv PACKAGEROOT ftp://ftp.cn.freebsd.org

你可以先设定 PACKAGEROOT,这是用来抓取套件的位置,笔者通常设定

setenv PACKAGEROOT ftp://ftp.tw.freebsd.org

因为这是我认为最稳定的机器,然后就可以透过pkg_add -r 套件名来安装套件,

他会自动的到pub/FreeBSD/ports/i386/packages-4.9-release/Latest/底下

寻找套件,而且你不需要知道版本,只要知道套件名称即可,他会自动安 装

当时的最新版,中文的部分只要加上 zh-,像是 zh-xcin。

你也可以直接指定 PACKAGESITE 来指向特定的位置。像是你希望安装的套件是

最新的,而不是 release 时的版本。

setenv PACKAGESITE ftp://ftp.tw.freebsd.org/pub/Fre … ages-stable/Latest/

f.vi /etc/make.conf

加上以下一行可以在让make先从更快的站点下载ports Distfiles

MASTER_SITE_OVERRIDE?=http://ports.cn.freebsd.org/${DIST_SUBDIR}/

####http://ports.cn.freebsd.org/

Welcome to use FreeBSD Ports Distfiles Mirror.

This mirror is running on China Telecom 100Mbit network.

How to use? Set your /etc/make.conf like this:

MASTER_SITE_OVERRIDE?=http://ports.cn.freebsd.org/${DIST_SUBDIR}/

or like this:

MASTER_SITE_OVERRIDE?=http://ports.hshh.org/${DIST_SUBDIR}/

 

47.星际译王

辞典程序: /usr/ports/textproc/stardict2/

简体中文辞典:/usr/ports/chinese/stardict2-dict-zh_CN/

 

48.控制台调音量

mixer

 

49.How to build openoffice

cd /usr/ports/editors/openoffice.org-2.0

Building/installing/packaging a localized language package (Japanese version for example)

make LOCALIZED_LANG=ja install

去这里ftp://ooopackages.good-day.net/pub/OpenOffice.org/FreeBSD/里面的tbz文件,

可以直接pkg_add

 

50.OPERA,支持Flash浏览器

cd /usr/ports/www/linux-opera

(注意是www/linux-opera,www/opera是不支持Flash的。)

cd /usr/ports/www/opera

make config

选中[X]SHARED Use a shared Qt library(instead of static)[解决在opera中输入汉字的问题]

make install clean

安装后的美化:

A.Tools->Preference->Advanced->Fonts,把所有的字体都改成Simsun,字体大小设成12。

B.最小字体大小(像素)改为12.[解决一些网站看不清楚的问题]

 

51.bt客户端

/usr/ports/net-p2p/py-bittorrent 安装完成后执行bittorrent

/usr/ports/net-p2p/rtorrent 功能多,速度快,还完美支持中文编码!

 

52.emule客户端

/usr/ports/net-p2p/amule2

 

53.ipguard解决arp攻击

ipguard->Tool designed to protect LAN IP adress space by ARP spoofing

/usr/ports/security/ipguard

make install (不要clean参数,否则无ethers.sample文件)

补充:

A.以/usr/ports/security/ipguard/work/ipguard-0.04/doc/ethers.sample

文件为实例,建立/etc/ethers文件。

B.And then start ipguard:

cd /usr/local/etc/rc.d

mv ipguard.sh.sample ipguard.sh

/usr/local/etc/rc.d/ipguard.sh start

ipguard.sh启动脚本里默认有iface=fxp0,这里应该替换为你做NAT的内网网卡名称。

 

54.一些安装参数

make fetch 只抓取tarball

make fetch-recursive 抓取安装ports所有须要的其他ports的tarball

make fetch-list 列出port所需的文件

make clean Ports里面make clean,会附带着make clean依赖的软件的

make -DBATCH install不需要用户输入任何东西

make -DINTERACTIVE install 继续上一步

make configure

make distclean,删除不想要的distfiles

 

55.pkg_info

pkg_info |grep zh-fcitx (查软件版本)

#ls /var/db/pkg也可以查软件版本

pkg_info -L zh-fcitx-3.4 (查看软件安装目录和安装的文件)

pkg_info -xL zh-fcitx (加x了不需要加软件版本号)

pkg_info -r zh-fcitx-3.4 (查看软件依赖情况)

pkg_info -W fcitx (查看fcitx属于哪个软件)

 

56.Ports如何清除安装参数

cd /usr/ports/www/opera

make distclean移除不是port collections所期望下载的文件

make rmconfig清除用户配置的参数

make showconfig查看当前配置的参数

make config更改参数

 

57.一款好用的网络性能测试工具iperf

/usr/ports/benchmarks/iperf

 

58.FreeBSD用户帐户锁定

a.用vipw把他的shell修改成/sbin/nologin就可以了.

b.pw lock useri 解锁用pw unlock userid 59.中文locale

zh_CN.eucCN zh_CN.GBK zh_CN.GB18030 zh_CN.euc zh_CN.UTF-8

#语言代码_国家代码.字符编码

#查看环境变量:locale

#目前还是zh_CN.eucCN(使用GB2312编码)locale最为正式,也最为成熟。

 

60.本地化设置,以系统默认的csh为例

vi /etc/csh.cshrc 加入

setenv LANG zh_CN.eucCN (语言设为中文)

setenv LC_ALL zh_CN.eucCN (所有本地子集设为中文)

setenv XMODIFIERS @im=fcitx (X下的中文输入法)

set prompt = “%B%m<%/>”(个性化控制台%B颜色%m主机%/目录)

set autolist (自动补齐扩展)

set nobeep (告诉应用程式避免发出哔哔声)

set filec (使档案名称在命令列被完成)

alias ls ls -FG (彩色化ls)61.fcitx小企鹅输入法(有关步骤见60)

/usr/ports/chineses/fcitx

vi /root/.xinitrc 添加

exec fcitx& 到最前一行

 

62.安装X Server xorg-6.9.0

1.cp freebsddisk1 disk2 PKG to /data/pkg61目录

2.cd /data/pkg61

3.pkg_add xorg-6.9.0.tbz

4.rehash

5.X[Xorg] -configure (生成/root/xorg.conf.new)

6.X[Xorg] -config /root/xorg.conf.new (测试xorg.conf.new配置是否正确)

7.cp /root/xorg.conf.new /etc/x11/xorg.conf

 

63.安装桌面环境gnome2 and xfce4 and kde3.5.1

gnome2-2.12.3

1.cd /data/pkg61

2.pkg_add gnome2-2.12.3.tbz

3.rehash

4.vi /root/.xinitrc 加入 exec gnome-session

#gnome2提示vi /etc/sysctl.conf,加入

kern.ipc.shmmax=67108864

kern.ipc.shmall=32768

kern.maxfiles=25000

xfce4

1.cd /usr/ports/x11-wm/xfce4

2.make install clean

3.rehash

4.vi /root/.xinitrc 加入 exec xfce4-session

kde-3.5.1

1.cd /data/pkg61

2.pkg_add kde-3.5.1.tbz

3.rehash

4.cd /usr/ports/chineses/kde3-i18n-zh_CN

5.make install clean (kde3汉化)

6.vi /root/.xinitrc 加入 exec startkde

pkg_add -r kde

pkg_add -r zh_CN-kde-i18n

pkg_add -r zh_CN-koffice-i18n

###more /root/.xinitrc

exec fcitx&

exec gnome-session

#exec xfce4-session

#exec startkde

#exec /usr/X11R6/bin/gnome-session

#exec /usr/local/bin/xfce4-session

#exec /usr/local/bin/startkde

 

64.在Xwindow中使用TrueType字体(simsun宋体,msyh雅黑,tahoma)

1.cp simsun.ttc /usr/X11R6/lib/X11/fonts/TTF/simsun.ttf

2.cp msyh.ttf tahoma.ttf /usr/X11R6/lib/X11/fonts/TTF/

3.cd /usr/X11R6/lib/X11/fonts/TTF

#下面4,5步骤更新字体信息,6重建字体缓存.

4.mkfontscale (生成fonts.scale)否则xorg报错如下:

Could not init font path element/usr/X11R6/lib/X11/fonts/TTF/,removing from list!

5.mkfontdir (生成fonts.dir)否则xorg报错如下:

(WW) `fonts.dir’ not found (or not valid) in “/usr/X11R6/lib/X11/fonts/TTF/”.

Entry deleted from font path.

(Run ‘mkfontdir’ on “/usr/X11R6/lib/X11/fonts/TTF/”.

6.fc-cache -f -v (生成fonts.cache-1)

7.vi /etc/X11/xorg.conf 确认8

8.Load “freetype” (启用支持TrueType字体)

#现在X应用程序已经记住已安装的TrueType字体.

9.在gnome和其他X程序中把字体设置为宋体或雅黑.

 

65.xlsfonts显示系统中安装的字体

 

66.FreeBSD中3D加速功能的启用

a.DRI。

这是实现3D功能最重要的部分。DRI是Direct Rendering Infrastructure,

可以简单的把它理解为X和硬件间的接口.但它包含很多独立的模块,负责

从X到硬件的各个环节,包括内核。它最主要的工作就是将Mesa或OpenGL的

函数调用转换为硬件的指令,从而指挥硬件进行渲染等工作。

b.测试你的显卡是不是能实现3D功能,可以采取以下办法:

1.dmesg | grep agp,如果出现:

agp0: <VIA 82C691 (Apollo Pro) host to PCI bridge> mem

0xe0000000-0xe3ffffff at device 0.0 on pci0

的字样,那么你的显卡就有可能实现3D功能.如果什么也没有的话,那么

恭喜你,你再也不用为3D功能而费心了.

2.kldload drm,如果没报错的话,那么你的显卡基本上就可以实现3D功能了。

c.3D功能的确认

运行:glxinfo。在第二行或第三行,如果出现”Direct Rendering: YES“字样,

那就说明已经启用3D加速了。

more /var/log/Xorg.0.log | grep “direct rendering”如果出现下面的字样,

(II) I810(0): direct rendering: Enabled那么你的3D就启用的。如果没有,

那么你要仔细读/var/log/Xorg.0.log。它会在某一行告诉你没启用的原因的。

d.nvidia显卡驱动安装 cd /usr/ports/x11/nvidia-driver/

 

67.刷新率的问题,

将xorg.conf里的Modes行改成:Modes “1024×768″(小写的X)

选择默认的分辨率和色深。 这是在 “Screen” 小节中定义的:

Section “Screen”

Identifier “Screen0”

Device “Card0”

Monitor “Monitor0”

DefaultDepth 24

SubSection “Display”

Viewport 0 0

Depth 24

Modes “1024×768”

EndSubSection

EndSection

 

68.make world

cvsup -g -L 2 -h cvsup.freebsdchina.org standard-supfile (升级源码树)

cp /usr/share/examples/etc/make.conf /etc/make.conf

vi /etc/make.conf,保留如下内容

CFLAGS= -O -pipe

COPTFLAGS= -O -pipe

cd /usr/src/sys/i386/conf (更改内核配置文件)

cp GENERIC TDS

vi TDS (按需要修改其内容)

shutdown now (重启到单用户模式)

adjkerntz -i (确定本地时间设置)

cd /usr/src

make -j4 buildworld (编译基本系统)

make buildkernel KERNCONF=TDS (编译新内核)

make installkernel KERNCONF=TDS (安装新内核)

reboot (重新启动)

shutdown now (重启到单用户模式)

cd /usr/src

mergemaster -p (更新/etc目录里的文件,-p预建模式)

make installworld (安装新的二进制)

mergemaster -Ui (更新makeinstallworld不更新的文件,-U进了6-STABLE了,这功能很赞,

就是他会看哪些/etc 的档案,你没有改过的,就会自动 merge,这样子可以省下很多时间跟力气。

shutdown -r now (重新启动)

uname -a (查看系统信息)

cd /usr/src

make cleanworld (清除升级过程产生的临时文件)

#############################################

中断的 build 可以被恢复吗

cd /usr/src

make -DNOCLEAN all

这样就不会取消先前的 make buildworld 所做的工作。

##############################################

如果出现了错误我该怎么办?

删除以往的系统更新树

cd /usr/obj

chflags -R noschg *

rm -rf *

cd /usr/src

make cleandir

make cleandir

不错,make cleandir 真的要执行两次。

然后重新开始整个过程,使用 make buildworld 开始。

mergemaster -p的说明

mergemaster -p的作用是建立一个临时的根环境,把新的配置文件映射到这个环境当中,

然后和系统的配置文件进行比较和处理,目的是保证系统配置文件的更新,这一点很重要!

在执行”mergemaster -p”的过程中,主要是进行以下处理:

检测系统是否存在临时的根环境,如果存在,让用户选择是利用现有的还是删除它,然后新建!

*** The directory specified for the temporary root environment,

/var/tmp/temproot, exists. This can be a security risk if untrusted

users have access to the system.

Use ‘d’ to delete the old /var/tmp/temproot and continue 删除旧的/var/tmp/temproot

Use ‘t’ to select a new temporary root directory 为temproot选择新的目录

Use ‘e’ to exit mergemaster 退出mergemaster

Default is to use /var/tmp/temproot as is

How should I deal with this? [Use the existing /var/tmp/temproot]

一般的处理是选 “d” ,删除原有的目录,系统开始重新建立这个临时的根环境。

只要进行的不是大跨度的 FreeBSD 版本升级,可以简单地跳过这一步.

mergemaster的说明

重新编译整个系统不会使用新的或改过的配置文件更新某些目录(尤其像 /etc,/var和/usr)

更新这些文件最简单的方式就是使用 mergemaster,手工去做也是可以的,只要您愿意。

不管您选择哪一种,一定记得备份/etc 以防出错。

mergemaster操作中可能会遇到以下操作提示:

Use ‘d’ to delete the temporary 删除文件,不更新相应的系统配置文件

Use ‘i’ to install the temporary 安装文件,使用新的配置文件覆盖旧文件

Use ‘m’ to merge the temporary and installed versions 对旧的配置文件进行合并处理,并安装

Use ‘v’ to view the diff results again 察看新文件与旧文件的差异

###跟踪多台机器,以A.B2个机器为例。A要启动nfs_server,B要启动nfs_client

A:/etc/rc.conf

rpcbind_enable=”YES”

nfs_server_enable=”YES”

/etc/exports

/usr/src /usr/obj /usr/ports -maproot=0 192.168.0.61(B-ip)

B:/etc/rc.conf

nfs_client_enable=”YES”

A.cd /usr/src

make -j4 buildworld (编译基本系统)

make buildkernel KERNCONF=TDS (编译新内核)

B。mount b-ip:/usr/src /usr/src

mount b-ip:/usr/obj /usr/obj

cd /usr/src

make installkernel KERNCONF=TDS (安装新内核)

reboot (重新启动)

shutdown now (重启到单用户模式)

cd /usr/src

mergemaster -p (更新/etc目录里的文件,-p预建模式)

make installworld (安装新的二进制)

mergemaster -U (更新makeinstallworld不更新的文件,-U进了6-STABLE了,这功能很赞,

 

69.freebsd上下的jdk的安装方法(FreeBSD基金会提供的diablo-jdk)

cd /usr/ports/java/diablo-jdk15

最好是通过port的diablo-jdk安装,而不是直接pkg_add,因为后者可能会出现依赖关系不对的问题。

JDK与JRE的关系

JAVA DEVELOPMENT KIT 与JAVA RUNTIME ENVIROMENT之间是什么关系?

JRE只是Java的运行环境,而JDK是Java的开发、运行和调试一体的环境。

JAVA环境变量的设置

csh 就在/etc/csh.cshrc

setenv JAVA_HOME /usr/local/diablo-jdk1.5.0

setenv CLASS_PATH .:/usr/local/diablo-jdk1.5.0/lib/dt.jar

bash就在/etc/profile

export JAVA_HOME=/usr/local/diablo-jdk1.5.0

#export CATALINA_HOME=/usr/local/jakarta-tomcat5

export CLASSPATH=.JAVA_HOME/jre/lib/rt.jarJAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jar

 

70.查找最快的cvsup站点

cd /usr/ports/sysutils/fastest-cvsup

make install clean

fastest-cvsup -c jp,cn,hk,us

 

71.chmod 命令概解:chmod命令用于改变文件的运行级别(读=4写=2执行=1)

chmod 400 files 给某文件以只读权限

chmod 600 files 给某文件以只读、写权限

chmod 700 files 给某文件以只读、写、执行权限

chmod -R 400 directory 改变某目录下所有文件的运行权限为只读权限

chmod -R 600 directory 改变某目录下所有文件的运行权限为以只读、写权限

chmod -R 700 directory 改变某目录下所有文件的运行权限为只读、写、执行权限

 

72.chown概解:改变文件及文件夹的用户所属

chown root:wheel files 改变文件的用户为root用户组为wheel组

chown -R root:wheel directory 改变目录的用户为root用户组为wheel组

 

73.crontab 指令语法

crontab [ -u user ] file

crontab [ -u user ] { -l | -r | -e }

crontab 提供我们在固定的间隔时间执行自订的程序、系统指令或 shell secrip。时间间隔的单位可以是分钟、

小时、日、周、月及以上的任意组合。允许使用者离线执行,并且可以将执行结果以 email 通知使用者。因此,

非常设合对周期性的管理分析或数据备份等工作。

基本上,crontab 的指令格式分为六个部分,前五个为时间间隔,最后则是执行的指令。每一个部分用空格来区隔。

crontab -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定

VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)

crontab -r : 删除目前的时程表

crontab -l : 列出目前的时程表

crontab file [-u user]-用指定的文件替代目前的crontab。

时程表的格式如下:

f1 f2 f3 f4 f5 program

分 时 天 月 星期几 要执行的程序

当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推

当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推

当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推

当 f1 为 a, b, c,… 时表示第 a, b, c,… 分钟要执行,f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行,其馀类推

使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。

先前曾提到,crontab 的格式分成六个部分,前五个是时间参数。在上例中你会发现除了数字与英文名称,

有使用到符号”*”,这个符号代表每一单位的意思,譬如30 3 * * *既代表30分3点每日每月星期的每天。

时间的指定,可以是单一的数字,或几个数字用逗号来连接。看下例

30 3,12 * * * /root/fbin/bak-web

其中的第二项为 3,12,这代表 3 以及 12 小时的意思。再来看下例

30 */6 * * * /root/fbin/bak-web

我把第二项改成 */6 这代表每 6 小时,也相当于 6,12,18,24 的作用。此外还有一个区段的做法

30 8-18/2 * * * /root/fbin/bak-web

我把第二项改成 8-18/2 这代表在 8 小时到 18 小时之间每 2 小时,也相当于 8,10,12,14,16,18 的作用

 

74.使用portsnap更新系统ports

portsnap从6.0开始引进系统,给与用户方便的更新系统ports

portsnap的命令比较少,fetch 获取数据,extract 释放全部ports,update 更新ports

第一次使用可以portsnap fetch extract,以后使用可以portsnap fetch update

国内镜像站

portsnap.hshh.org

portsnap2.hshh.org

portsnap3.hshh.org (网通)

使用方法:

/etc/portsnap.conf 里面更改

SERVERNAME=portsnap.hshh.org

使用portupgrade 更新已安装的软件

 

75.清屏

clear或ctrl+L

 

76.freebsd 怎么安装GF4 MX 440的显卡

首先更新ports和src,到/usr/ports/x11/nvidia-driver下make install clean,要选中linux的支持。

然后到/usr/ports/x11/nvidia-xconfig下make install clean,还可以到/usr/ports/x11/nvidia-settings下安装控制面板。

运行nvidia-xconfig会自动生成xorg.conf文件,然后根据需要自行更改。

 

77.如何知道一个文件属于哪个port,比如libplds4.so.1

pkg_info -W filename

 

78.mplayer

cd /usr/ports/multimedia/mplayer

make install clean

问题:如何让mplayer支持srt格式的字幕?

解答:首先复制一个中文ttf字体文件到 ~/.mplayer/ 目录下,并改名为 subfont.ttf ;然后在gmplayer的选项

(Preferences)->Subtitle & OSD 中将 Encoding 项选为“Simplified Chinese charset (CP936)”。如果你还

使用命令行播放电影,还需要在 ~/.mplayer/config 文件中加上这么一行:subcp=cp936 。如果仍然不能

显示字幕,请看看字幕文件名和电影文件名是否相配:如果avi文件是movie.avi的话,字幕文件名应该是movie.srt。

问题:怎么mplayer不能显示.idx+.rar格式的字幕?

解答:先将rar文件中的sub文件解压出来 。

问题:如何让mplayer的播放窗口保持在最前面?

解答:修改 ~/.mplayer/config 文件,加上这么一行:ontop=yes 。

问题:如何让mplayer的画面随窗口大小自动缩放呢?

解答:修改 ~/.mplayer/config 文件,加上这么一行:zoom=yes。

测试通过by tds 061119。fb61+xorg6.9+xfce4+gmplayer

 

79.设置控制台高分辩率

1.在内核配制文件里加入下面的编译内核

options VESA

options SC_PIXEL_MODE

第一行选项让内核支持VESA 2,第二行让内核支持控制台图形模式。

2.vidcontrol -i mode 查询出所有模式

……

279 (0x117) 0x0000000f G 1024x768x16 1 8×16 0xa0000 64k 64k 0xd8000000 65536k

280 (0x11 0x0000000f G 1024x768x32 1 8×16 0xa0000 64k 64k 0xd8000000 65536k

……

3.测试模式

vidcontrol MODE_280

4.vi /etc/rc.conf加入下面这条

allscreens_flags=”MODE_280″

5.把console改成黑底绿字的

vidcontrol green

 

80.设置FreeBSD console下的字体大小

vidcontrol -f …

 

81.锁住终端

lock -np

-n 永不超时,-p 使用系统密码作为开启终端的密匙

 

82.刻录CD ISO映像文件

burncd -f /dev/acd0 -s max data imagefile.iso fixate

刻录一个文件到CD上而不创建ISO9660文件系统

burncd -f /dev/acd1 -s 12 data archive.tar.gz fixate

生成ISO文件

mkisofs -o imagefile.iso /path/to/tree

把数据CD复制成一个与之等价的镜像文件

dd if=/dev/acd0 of=file.iso bs=2048

 

83.类似flashget的东东download for X,d4x

/usr/ports/ftp/downloader

 

84.使用watch监视终端

1.编辑核心加入pseudo-device snp或者kldload snp

2.cd /dev ./MAKEDEV snp0 snp1

3.watch ttyp1

去换终端ctrl-x

退出watch ctrl-g

 

85.kldload xxx 加载xxx模块

kldstat 查看已加载的模块

kldunload xxx 从核心中移除

 

86.让程序读取新的配置文件

kill -HUP 199 (进称号)

killall -HUP sshd (进程名)

上述指令中的参数 -HUP 也可以使用 -1 来取代

 

87.登入后的讯息Message Of The Day(motd)

编辑 /etc/motd 来制作自己的画面

登入前的讯息

修改 /etc/gettytab 及 /etc/issue

编辑 /etc/gettytab,找到 default的地方。

default:\:cb:ce:ck:lc:fd#1000:im=\r\n%s/%m (%h) (%t)\r\n\r\n:sp#1200:\

:if=/etc/issue:

其中的%s %m %h %t分别对应到FreeBSD i386 example.com ttyp0,如果你不想显示FreeBSD,

就把%s拿掉。最后一行if=/etc/issue就是表如果没有issue这个档的话,就执行default。

 

88.变更自己所使用的Shell

chsh -s /bin/tcsh

上述指令将Shell变更成/bin/tcsh。注意!输入的shell名称一定要存在于/etc/shells中

 

89.Shell 的环境变量

tcsh可以使用setenv看目前所有的环境变量,也可以使用setenv来改变一个环境变量的值

setenv EDITOR ee

如果您使用的是 Bourne Shell:

export EDITOR=”ee”

 

90./etc/master.passwd 介绍

FreeBSD使用shadow password的方式来保护密码文件,只有root才可以读取编码后的密码文件

/etc/master.passwd。但是这并不是系统用来验证的档案,为了加快速度,FreeBSD将该文件

做成数据库/etc/spwd.db及/etc/pwd.db,因此在修改完master.passwd后,必须使用指令

pwd_mkdb来将master.passwd做成数据库档案。不过一般而言,我会使用vipw这个指令来修改

master.passwd,vipw会先将master.passwd以预设的文书编辑软件打开,修改完存盘后,

它会视需要自动更新数据库。

pwd_mkdb -p -d /etc /etc/master.passwd

master.passwd这个档案内容中,每个使用者都是独立的一行,每个字段使用冒号分开,格式是:

name:password:UID:GID:class:change:expire:fullname:home:shell

pwd_mkdb介绍

如果我们直接以文书编辑软件来修改/etc/master.passwd,在修改完后,必须执行pwd_mkdb

来将更新的数据做成系统可以读取的数据库文件。pwd_mkdb还会自动建立/etc/passwd。

 

91.将使用者目录拥有者更改为所属的使用者

chown -R user:group /home/user

使用参数-R将目录user及其下所有档案及子目录的拥有人改变成user

 

92.记录使用者指令

修改 /etc/rc.conf,加上下列一行设定:

accounting_enable=”YES”

系统会将使用者的历程记录在/var/account/acct*中,最新的记录是acct

当下达指令lastcomm时,则系统会以/var/account/acct为参考,印出所记录的数据。

也可以使用lastcomm -f acct1来查看前一天的资料。

 

93.sudo

如果你希望它能将执行sudo的log记下来的话,必须先编辑/usr/ports/security/sudo/Makefile,

将CONFIGURE_ARGS中的参数 –disable-log-wrap 拿掉。

cd /usr/ports/security/sudo

make install clean

安装完后,我们要先执行/usr/local/sbin/visudo以设定sudo的设定档(/usr/loca/etc/sudoers)

设定完后,使用者即可执行sudo <允许的指令>,使用者只要输入自己的密码即可,不必知道root密码,

而且5分钟内再次执行sudo时不需再输入密码。如果你有打开log记录功能,sudo执行成功或失败的log

都将被记录到/var/log/sudo.log中。

 

94./usr/ports/dns/ddclient动态dns更新软件

 

95.SCSI工具camcontrol

camcontrol devlist 查看目前所有USB装置

ATA工具

atacontrol list 查看目前所有ATA装置

 

96.如果我们只知道一个关键词,却不知要使用哪一个指令,我们可以使用参数k来查询。

例如我们要查询 firewall 相关的指令:man -k firewall

 

97.bg

将指定的程序放入背景中执行。当我们下达一个指令后,必须要等待该程序结束后才能输入下一个命令。

如果该程序必须执行一段很长的时间,我们不想等程序结束,可以把它放到背景中执行。在下达指令后,

按 Ctrl+Z 来暂停程序,接着再执行 bg 即可将程序放到背景中执行。

$ sleep 1000

^Z

Suspended

$ bg

[1] sleep 1000 &

我们也可以在所要执行的指令后面加上符号 “&”,就可以将该程序放到背景执行:

$ sleep 1000 &

[2] 46461

 

98.jobs

jobs 指令可以让我们查询目前有哪些程序在背景执行。如果加入参数 -l 可以得到 PID 的信息。

jobs -l

[1] + 46459 Running sleep 1000

[2] – 46461 Running sleep 1500

 

99.fg

将指定的程序放到前景中执行。我们使用jobs看到目前在背景执行的程序之后,可以使用fg把它叫回前景。

例如要叫回第一个在背景中执行的程序:

fg %1

sleep 1000

 

100.sync

让系统暂存的数据强制存回硬盘

 

101.cp -Rp sourdir tardir

-R完成递归复制(即可以复制目录以下的所有内容),-p保留文件的时间、所属等等

 

102.ssh username@hostname

从远程拷贝 scp user@host:/path/to/files local_file_name

拷贝到远程 scp local_file_name user@host:/path/to/files

 

103.使用Portaudit监视第三方安全问题

cd /usr/ports/security/portaudit && make install clean

安装完成之后更新数据库

portaudit -Fda

使用下面的命令对通过Ports Collection安装的第三方软件工具进行审计

portaudit -a

 

104.我要怎么从 X 切换到 virtual consoles?

请用Ctrl+Alt+Fn以切回至console。Ctrl+Alt+F1可以切回至第一个console。

当你切回至文字console后,你就可以使用一般的Alt+Fn组合键在各console之间切换了。

要回到X的话,你就可以使用Alt+F9以返回至X中。

 

105.FB下Free的杀毒软件

clamav (security/clamav)

man clamscan 扫描

man freshclam 更新病毒库

man clamd

man clamdscan

man sigtool

配置文件

/use/local/etc/freshclam.conf

/usr/local/etc/clamd.conf

把conf里的#Example去掉

# Comment or remove the line below.

#Example

/etc/rc.conf加入

clamav_clamd_enable=”YES”

clamav_freshclam_enable=”YES”

 

106.软件默认配置示例文件的一般存放位置

/usr/share/examples

/usr/local/share/examples

 

107.安装文泉驿字体

cd /usr/ports/x11-fonts/wqy/

make install clean

 

108.把/data/tftp打包成pxeinstfb62.tgz

cd /data/

tar zcvf pxeinstfb62.tgz tftp

解压

tar zxvf pxeinstfb62.tgz

 

109.ports下有没有xxx这个软件?在哪个目录下?

回答:有两种办法来查找,一是通过软件名:

make fetchindex

cd /usr/ports

make search name=xxx | grep ^Path

另一种是通过关键字,也就是在软件名和说明中只要包括这个单词的都会查找出来:

cd /usr/ports

make search key=xxx | grep ^Path

 

110.FreeBSD如何获得硬件信息?

sysctl -a | grep “^dev\.”

pciconf -lv

 

 

 

1.axel加速下载

 

#cd /usr/ports/ftp/axel

#make install

#修改/et/make.conf

#vi /etc/make.conf

##加入以下内容

FETCH_CMD=axel

FETCH_BEFORE_ARGS= -n 10 -a

FETCH_AFTER_ARGS=

DISABLE_SIZE=yes

MASTER_SITE_OVERRIDE?=\

http://ports.hshh.org/${DIST_SUBDIR}/\

http://ports.cn.freebsd.org/${DIST_SUBDIR}/\

ftp://ftp.freeBSDchina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/

MASTER_SITE_OVERRIDE?=${MASTER_SITE_BACKUP}

 

2.安装vim

 

cd /usr/ports/editor/vim

 

make install clean

 

配置

 

# #echo “syntax on”>>/root/.vimrc

# #echo “alias vi vim” >>/root/.cshrc

 

3.像linux一样显示颜色

 

#vim /etc/csh.cshrc

 

#加入如下

 

setenv LSCOLORS ExGxFxdxCxegedabagExEx

 

setenv CLICOLOR yes

 

source /etc/csh.cshrc

 

4.命令行补齐功能

 

在/etc/csh.cshrc中加入:

 

set autolist

 

 

 

5.内核优化

 

 

 

# vim /boot/loader.conf加入如下文本

kern.dfldsiz=”2147483648″

kern.maxdsiz=”2147483648″

kern.ipc.nmbclusters=”0″

kern.ipc.nsfbufs=”66560″

 

解释:

 

a、第一、二行主要是为了突破1G内存设置的。

 

b、第三行其实是bsd的一个bug,当系统并发达到一个数量级的时候,系统会crash,这个是非常糟糕的事情。所幸更改了这个参数后,在高并发的时候,基本可以没有类似情况,当然非常bt的情况,还得进一步想办法。

 

c、第四行是读取的文件数,如果你下载的文件比较大,且比较多,加大这个参数,是非常爽的。

 

Sysctl修改方法如下:

 

#vi /etc/rc.local

sysctl kern.ipc.maxsockets=100000 ##增加并发的socket,对于ddos很有用

sysctl kern.ipc.somaxconn=65535 ##打开文件数

sysctl net.inet.tcp.msl=2500 ##timeout时间

 

6.使用修改网络配置立即生效

 

sh /etc/rc

 

7.查看基本配置信息

 

①查看CPU:

 

sysctl hw.model hw.ncpu

dmesg | grep “CPU:”

 

②查看内存:

 

dmesg | grep “real memory” | awk -F ‘[( )]’ ‘{print $2,$4,$7,$8}’

 

查看swap:

 

top | grep “Swap:” | awk ‘{print $1,$2}’

 

③查看硬盘:

 

diskinfo -vt /dev/ad0

 

④看硬盘大小及硬件使用情况:

 

dmesg | grep “sector” | awk ‘{print $1,$2}’

df -h

 

⑤查看服务器品牌:

 

dmesg | grep “ACPI APIC”

 

⑥查看系统内核,命令跟Linux下一样:

 

uname -a

mail# uname -a

FreeBSD mail.cn7788.com 8.0-RELEASE FreeBSD 8.0-RELEASE #0:

2012
12
18
14:05

FreeBSD系统root密码解决方法

忘记FreeBSD系统root密码解决方法

一、 开机进入 single mode

二、然后输入fsck

三、mount -a

四、passwd root

下边新设root密码即可。

2012
11
28
14:14

FreeBSD桌面笔记Xfce

网络校时

#ntpdate time.windows.com

(time服务器地址time.nist.gov 、chime.utoronto.ca 、ntp.pipex.net 、time.windows.com)

 

安装、更新源代码

#csup -L 2 -h cvsup.freebsdchina.org /usr/share/examples/cvsup/standard-supfile

 

安装、更新doc文档

#csup -L 2 -h cvsup.freebsdchina.org /usr/share/examples/cvsup/doc-sufile

 

安装、更新Ports Collection

#portsnap fetch extract

给bsd打补丁(自动打补丁只能用于默认内核)

#freebsd-update

#freebsd-install

 

设置本地化(中文)

登录分类法(管理员级设置)

在/etc/login.conf加入:

chinese:Chinese Users Account:\

:charset=UTF-8:\

:lang=zh_CN.UTF-8:\

:tc=default:

然后执行:

#cap_mkdb /etc/login.conf

然后:

#pw 用户名 -L chinese (我习惯在安装系统的时候就建立一个用户所以这里之修改用户的登录类型就可以了。)

查看

#pw user show 用户名

XX:*:1001:1001:chinese:0:0:用户名:/home/用户名目录:/bin/sh

 

su -用户名

$ locale

LANG=zh_CN.UTF-8

LC_CTYPE=”zh_CN.UTF-8″

LC_COLLATE=”zh_CN.UTF-8″

LC_TIME=”zh_CN.UTF-8″

LC_NUMERIC=”zh_CN.UTF-8″

LC_MONETARY=”zh_CN.UTF-8″

LC_MESSAGES=”zh_CN.UTF-8″

LC_ALL=

设置成功

 

登录分类(用户级设置)

在用户根目录文件.login_conf加入:

me:\

:charset=zh_CN.UTF-8:\

:lang=zh_CN.UTF-8:\

:setenv=LC_ALL=zh_CN.UTF-8:\

:setenv=LC_COLLATE=zh_CN.UTF-8:\

:setenv=LC_CTYPE=zh_CN.UTF-8:

 

安装axel(多线程下载工具)

#cd /usr/ports/ftp/axel && make install clean

在/etc/make.conf中加入FETCH_CMD=axel -a -n 2

#echo ‘FETCH_CMD=axel -a -n 2

详细配置参见man手册

我只是在安装非常大的软件,像xorg、gnome、openoffice的时候才使用。(如果你用脚本自动安装最好还是用FreeBSD默认的fetch。)

 

加载声卡驱动(我的声卡是板载alc883)

在/boot/loader.conf 加入 snd_hda_load=”YES”

#echo ‘snd_hda_load=”YES”‘>> /boot/loader.conf

(更详细的说明参见http://cnsnap.cn.freebsd.org/doc … ok/sound-setup.html)

 

安装配置xorg

#cd /usr/ports/x11/xorg && make BATCH=YES install clean

生成xorg.conf.new配置文件并移动到/etc/X11/下

#Xorg -configure

#mv xorg.conf.new /etc/X11/xorg.conf

在/etc/rc.conf内加入hald_enable=”YES” 和 dbus_enable=”YES”

#echo ‘hald_enable=”YES”‘>> /etc/rc.conf

#echo ‘dbus_enable=”YES”‘>> /etc/rc.conf

详细说明参见HandBook 配置X11 地址:http://cnsnap.cn.freebsd.org/doc … dbook/x-config.html

 

安装文泉驿字库

#cd /usr/ports/x11-fonts/wqy &&make install clean

在/etc/X11/xorg.conf里面的Section “Files”小节加入:

FontPath “/usr/ports/lib/X11/fonts/wqy”

 

安装Linux二进制兼容模式 (安装nvidia显卡驱动所必须的)

#kldloadlinux

#cd /usr/ports/emulators/linux_base-f10 && make BATCH=YES install distclean

在/etc/rc.conf中增加 linux_enable=”YES”

#echo ‘linux_enable=”YES”‘>> /etc/rc.conf

参见http://cnsnap.cn.freebsd.org/doc … mu-lbc-install.html

 

安装nvidia显卡驱动(我的是7600gs)

#cd /usr/ports/x11/nvidia-driver && make BATCH=YES install clean

在/boot/loader.conf中加入nvidia_load=”YES”

#echo ‘nvidia_load=”YES”‘>> /boot/loader.conf

 

安装nvidia显卡驱动自动配置工具

#cd /usr/ports/x11/nvidia-xconfig/ && make install clean

执行

#rehash

#nvidia-xconfig –add-argb-glx-visuals

#nvidia-xconfig –composite

#nvidia-xconfig –depth=24

上面三行是为了compiz-fusion所设置的,如果不装compiz-fusion执行nvidia-xconfig就可以了。

(会在/etc/X11下生成新的xorg.conf文件并把旧的xorg.conf备份为org.conf.backup)

 

安装xfce4

(小巧玲珑的桌面速度快)

#cd /usr/ports/x11-wm/xfce4 && make BATCH=YES install clean (如果需要GDM就不要加BATCH=YES这句,装的时候吧GDM前面的X打上就行了。)

如果你想允许用户关闭或重启(指在xfce4下)计算机那么在/usr/local/etc/PolicyKit/PolicyKit.conf中加入:

<match action=”org.freedesktop.hal.power-management.shutdown”>

<return result=”yes”/>

</match>

 

<match action=”org.freedesktop.hal.power-management.reboot”>

<return result=”yes”/>

</match>

上面几行不加也可以反正也关不了机,只能退出Xfce4。

再普通用户下执行

% echo “/usr/local/bin/startxfce4″ >> ~/.xinitrc

以后startx就可以进桌面了。我有时候需要在非X下所以我没有装GDM。如果需要开机直接进入桌面就吧GDM装上就可以。

 

安装scim 拼音输入法

#cd /usr/ports/chinese/scim-pinyin/ && make install clean

在.xinitrc里加入(我用的是sh)

%echo ‘export XMODIFIERS=’@im=SCIM”>> ~/.xinitrc

%echo ‘scim -d’>> ~/.xinitrc

 

安装firefox

#cd /usr/ports/www/firefox/

#make BATCH=YES install clean

在/boot/loader.conf中加入sem_load=”YES”

echo ‘sem_load=”YES”‘>> /boot/loader.conf

 

安装firefox中文包

#cd /usr/ports/www/firefox-i18n/

#make install clean

 

让firefox支持flash

安装nspluginwrapper

#cd /usr/ports/www/nspluginwrapper

#make install clean

 

安装linux-f10-flashplugin10

#cd /usr/ports/www/linux-f10-flashplugin10

#make install clean

建一个符号链接

# ln -s /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so \/usr/local/lib/browser_plugins/

然后在用户下执行

% nspluginwrapper -v -a -i

在/etc/fstab中加入:

linproc /usr/compat/linux/proc linprocfs rw 0 0

参见handbook:http://cnsnap.cn.freebsd.org/doc … sktop-browsers.html

如果平时不用flash还是建议不要装了。现在的这个版本占用资源还是有点高,有时候firefox会卡。

 

安装Ristretto

Xfce项目。一个轻巧的图像查看器。

#cd /usr/ports/graphics/ristretto

#make install clean

 

安装Xfburn

Xfce项目。Xfburn是一个使用cdrtools(cdrecord、cdrdao、mkisofs)来烧制CD和DVD的前端烧录程序。

#cd /usr/ports/sysutils/xfburn

#make install clean

 

安装xfce4-media

Xfce项目。Xfmedia 是一个简单易用的媒体播放器,基于 xine 引擎。GTK+ GUI 旨在播放与管理音频文件,但是,由于它是基于 xine 的,所以同样支持视频文件。

#xfce4-media: /usr/ports/multimedia/xfce4-media

#make install clean

 

安装audacious(音频播放器。如果你觉得xfce4-media不太适合你也可以装这个。)

#cd /usr/ports/multimedia/audacious

#make install clean

安装audacious-plugins(音频播放器插件。必须安装)

#cd /usr/ports/multimedia/audacious-plugins

#make install clean

 

安装mplayer

(这不用介绍了吧。全公能播放器几乎支持所有的视频格式。)

cd /usr/ports/multimedia/mplayer

make WITH_LANG=zh_CN install clean

 

安装galculator(计算器)

#cd /usr/ports/math/galculator

#make install clean

 

安装Thunderbird(邮件客户端)

#cd /usr/ports/mail/thunderbird

#make BATCH=YES install clean

 

安装Thunderbire语言包

#cd /usr/ports/mail/thunderbird-i18n

#make install clean

 

安装MLDonkey(电驴、BT)

#cd /usr/ports/net-p2p/mldonkey

#make WITHOUT_GUI=yes WITHOUT_X11=”YES” WITHOUT_TK=”YES” install clean

%ln -s ~/.mldonkey/incoming ~

在/etc/rc.conf加入mlnet_enable=”YES” 和 mlnet_user=”用户名非root“

%/usr/local/etc/rc.d/mlnet start (注意是%)

1.%telnet 127.0.0.1 4000

2.>auth admin “”

3.>passwd 键入你想设置的密码

4.>set allowed_ips “127.0.0.1 192.168.0.0/24” (根据你自己的情况设置)

5.>save

6.>exit

(mldonkey需要一个非root用户来运行。我习惯在装系统的时候就建立一个wheel组的用户,所以这里我就不用在建立用户了。)

具体情况可以参考http://forums.freebsd.org/showthread.php?t=227

现在就可以在浏览器里输入:localhost:4080来设置和下载文件了。

默认mldonkey的文件夹是隐藏的,在用户目录下。找下载好的电影有点不方便,把incoming连接到你的用户目录下就好了。当然你也可以自己修改默认下载路径。

 

mldonkey简单设置:

enable_kademlia的选项为true――打开kad减少对服务器的依赖。

max_hard_upload_rate默认是10 (全局最大上传,根据自己情况设置)

max_hard_download_rate默认是50 (全局最大下载,根据自己情况设置)

mldonkey有两组两组带宽控制模式,通过点击Bandwidth toggle来更改带宽控制模式。

 

添加服务器列表:

点击servers>Import Server.met输入http://ed2k.im/server.met(放心都是安全服务器列表)

或者下载下来手工导入:servers “/home/username/server.met”

 

添加overnet启动用户列表:

ov_load “/home/username/contact.dat”

 

添加kad节点信息

下载地址:http://emulefans.com/emule-kad-node-dat/

kad_load “/home/username/nodes.dat”

 

添加firefox for mldonkey插件:

下载地址:http://www.informatik.uni-oldenburg.de/~dyna/mldonkey/

 

OpenOffice.org

#cd /usr/ports/editors/openoffice.org-3 && make LOCALIZED_LANG=zh-CN install clean

注意:在安装的时候会提示让你手工下载几个文件放在/usr/ports/distfiles/下。

JDK US DST Timezone Update Tool这个文件需要在网站(http://java.sun.com/javase/downloads/index.jsp)注册才能下载。

关键是版本和Makefile里的对不上,我下载的时候Makefile里的是tzupdater-1_3_29-2010f.zip可是网站上给的已经是JDK DST Timezone Update Tool – 1.3.31了,没办法有点小崩溃。

freebsd.org的论坛上发现也有几个哥们儿遇到了这问题,他们给出的解决办法是取消TZUPDATE的默认选项。cd /usr/ports/java/diablo-jdk16 && make config 取消TZUPDATE前面的X。

 

安装compiz-fusion(桌面3D效果)

cd /usr/ports/x11-wm/compiz-fusion

make BATCH=YES install clean

创建个启动脚本start-compiz名并加入:

#! /bin/sh

compiz –replace –sm-disable –ignore-desktop-hints ccp &

emerald –replace &

给这个脚本执行权限

%chmod +x start-compiz

把这个脚本加入Session和启动以后进入Xfce4就自动启动compiz了。

简单设置

点开CompizConfig设置管理器>首选项>在后端选择GConf Configuration Backed (这样你以后选择的效果就可以即时生效了。)

另外在CompizConfig里吧 最小化效果、窗口装饰、震颤窗口、移动窗口、调整窗口大小、应用程序切换条都起用了,这样基本的3d桌面就好了。还有很多效果看自己喜好吧。

说明参见http://www.freebsd.org/doc/en/articles/compiz-fusion/article.html

 

-------------------------------------------------------------------------------------------------

以下是简单的自动安装脚本

#!/bin/sh

#make DEPENDS_TARGET=package package 这个命令的意思是 打包一个ports并将依赖也一起打包

#make BATCH=YES 这个命令的意思是 使用默认选项

#把用ports安装的软件都打包到下面的目录

#mkdir -p /usr/ports/packages/All/

#安装并打包

#make BATCH=YES DEPENDS_TARGET=package package install clean

 

#安装xorg

cd /usr/ports/x11/xorg &&make BATCH=YES install clean

echo ‘hald_enable=”YES”‘>> /etc/rc.conf

echo ‘dbus_enable=”YES”‘>> /etc/rc.conf

 

#安装wqy

cd /usr/ports/x11-fonts/wqy/ && make BATCH=YES install clean

 

#安装Linux二进制兼容模式

kldload linux

cd /usr/ports/emulators/linux_base-f10/ && make BATCH=YES install distclean

echo ‘linux_enable=”YES”‘>> /etc/rc.conf

 

#安装nvidia显卡驱动

cd /usr/ports/x11/nvidia-driver/ && make BATCH=YES install clean

echo ‘nvidia_load=”YES”‘>> /boot/loader.conf

 

#安装nvidia显卡自动配置工具

cd /usr/ports/x11/nvidia-xconfig/ && make install clean

 

#安装Xfce4

cd /usr/ports/x11-wm/xfce4/ && make BATCH=YES install clean

 

#安装scim

#cd /usr/ports/chinese/scim-pinyin/ && make BATCH=YES install clean

 

#安装firefox

cd /usr/ports/www/firefox/ && make BATCH=YES install clean

echo ‘sem_load=”YES”‘>> /boot/loader.conf

 

#安装firefox中文包

cd /usr/ports/www/firefox-i18n/ && make BATCH=YES install clean

2012
11
28
14:11

freebsd进入图形界面后,键盘和鼠标不能用的解决办法

首先在命令行界面,使用如下命令 打开配置文件

ee /etc/rc.conf

查看文件中是否有如下信息

moused_enable=”YES”

moused_nodefault_enable=”YES”

dbus_enable=”YES”

hald_enable=”YES”

 

你的rc.conf文件里是否有这些内容,如果没有,添加上,如果有,看是否一样,

注意:后面的值,一定要大写 如“YES”不能写“yes”

2012
11
28
14:09

FreeBSD 8.1桌面安装Gnome2.3, 并使用ibus中文输入法

光盘安装FreeBSD 8.1, Xorg, 和Gnome 2.3:

 

FreeBSD 8.1 DVD, 安装.

distribution选的all.

pakages选的Xorg meta port, 和 Gnome 2 meta port

50分钟左右安装完成

 

———————————————-

设置网卡

 

1. ifconfig 找到网卡

2. 在/etc/rc.conf里面加

ifconfig_re0=”inet 本机地址 netmask 掩码地址” #用你的网卡代替re0

defaultrouter=” 网关地址”

3. 在/etc/resolv.conf里面加

nameserver DNS的地址

 

重启动, 网络ok

 

—————————————————

设置Xorg和Gnome

 

1./etc/rc.conf里面加

hald_enable=”YES”

dbus_enable=”YES”

这样X11可以找到键盘鼠标

2. 运行

Xorg -configure

$home里面生成一个xorg.conf.new文件

3.测试Xorg -config xorg.conf.new -retro

会看到一个黑白格的桌面和中央一个X

用Ctrl-Alt- F1调出tty0, 按Ctrl-C退出X测试

4. 编辑xorg.conf.new文件, 在”Section Screen”区里, 加上DefaultDepth 24; 在SubSection Display区里, 加上Modes 屏幕宽x屏幕高. 像下面这样:

Section “Screen”

Identifier “Screen0”

Device “Card0”

Monitor “Monitor0”

DefaultDepth 24

SubSection “Display”

Viewport 0 0

Depth 24

Modes “1024×768”

EndSubSection

EndSection

5. copy编辑好的conf文件到指定位置:

cp xorg.conf.new /etc/X11/xorg.conf

 

X11 设置完成, 下面是Gnome设置

 

6. 如果之前没有使用其他的display manager, 这一步很简单:

在~/.xinitrc文件里加入:

/usr/local/bin/gnome-session

startx

gnome桌面就启动了

 

————————————————

安装文泉驿中文字体:

# whereis wqy

wqy: /usr/ports/x11-fonts/wqy

# cd /usr/ports/x11-fonts/wqy

# make install clean

15分钟左右ok

 

让X系统启动时载入字体。

编辑/etc/X11/xorg.conf

在Section “Files”里面加一行,FontPath “/usr/local/lib/X11/fonts/wqy”像下面这样

Section “Files”

ModulePath “/usr/local/lib/xorg/modules”

FontPath “/usr/local/lib/X11/fonts/misc/”

FontPath “/usr/local/lib/X11/fonts/TTF/”

FontPath “/usr/local/lib/X11/fonts/OTF”

FontPath “/usr/local/lib/X11/fonts/Type1/”

FontPath “/usr/local/lib/X11/fonts/100dpi/”

FontPath “/usr/local/lib/X11/fonts/75dpi/”

FontPath “/usr/local/lib/X11/fonts/wqy”

EndSection

 

————————————————————–

安装ibus输入法

 

方法一:

pkg_add -r zh-ibus-pinyin

自动安装ibus和拼音输入法

 

方法二:

1 # pkg_add -r ibus 安装ibus

2 如下安装拼音输入法

# whereis ibus-pinyin

# ibus-pinyin: /usr/ports/chinese/ibus-pinyin

# cd /usr/ports/chinese/ibus-pinyin

# make install clean

需时约30分钟

 

设置启用ibus:

1.设置locale为UTF-8字符集

如果用csh或者tcsh, .cshrc 中增加

setenv LANG zh_CN.UTF-8

#桌面界面语言为中文 [如果remark掉,则桌面菜单等仍为英文]

setenv LC_CTYPE zh_CN.UTF-8

#locale的character type为UTF-8中文. [如果remark掉,将无法调出中文输入法]

setenv LC_ALL zh_CN.UTF-8

#暂不清楚,推测是locale各项设置改为中文 [remark掉无影响]

 

如果用sh, .shrc中增加 [如果用bash, .bashrc中增加]

export LANG=zh_CN.UTF-8

#桌面界面语言为中文 [如果remark掉,则桌面菜单等仍为英文]

export LC_ALL=zh_CN.UTF-8

#locale的character type为UTF-8中文. [如果remark掉,将无法调出中文输入法]

export LC_ALL=zh_CN.UTF-8

#暂不清楚,推测是locale各项设置改为中文 [remark掉无影响]

 

2.让ibus daemon随X一起启动

.xinitrc中增加

XIM=ibus

GTK_IM_MODULE=ibus

QT_IM_MODULE=xim

XMODIFIERS=’@im=ibus’

XIM_PROGRAM=”ibus-daemon”

XIM_ARGS=”–daemonize –xim”

 

[参考一里有下面的说明, 这部分干啥用的?没照做也ok了]

.profile中添加

export LC_ALL=zh_CN.UTF-8

 

重启, startx, 在panel右击ibus图标->preferences->input method->select an input method->Chinese->pinyin, 点击Add, 点close.

 

ibus设置ok了.

 

参考一: http://alexshots.blog.163.com/blog/static/112112020108284599116/ [freebsd 8.1 如何安装中文拼音输入法ibus-pinyin]

 

参考二: ibus安装后的提示信息[after pkd_add -r ibus]:

 

ibus installation finished. To use ibus, please do the following:

 

If you are using bash, please add following lines to your $HOME/.bashrc:

 

export XIM=ibus

export GTK_IM_MODULE=ibus

export QT_IM_MODULE=xim

export XMODIFIERS=@im=ibus

export XIM_PROGRAM=”ibus-daemon”

export XIM_ARGS=”–daemonize –xim”

 

If you are using tcsh, please add following lines to your $HOME/.cshrc:

 

setenv XIM ibus

setenv GTK_IM_MODULE ibus

setenv QT_IM_MODULE xim

setenv XMODIFIERS @im=ibus

setenv XIM_PROGRAM ibus-daemon

setenv XIM_ARGS “–daemonize –xim”

 

If you are using KDE4, you may create a shell script in $HOME/.kde4/env,

and add following lines:

 

#!/bin/sh

export XIM=ibus

export GTK_IM_MODULE=ibus

export QT_IM_MODULE=xim

export XMODIFIERS=@im=ibus

export XIM_PROGRAM=”ibus-daemon”

export XIM_ARGS=”–daemonize –xim”

 

Following input methods/engines are available in ports:

 

chinese/ibus-chewing Chewing engine for IBus

chinese/ibus-pinyin The PinYin input method

japanese/ibus-anthy Anthy engine for IBus

japanese/ibus-skk SKK engine for IBus

textproc/ibus-kmfl KMFL IMEngine for IBus framework

textproc/ibus-m17n The m17n IMEngine for IBus framework

textproc/ibus-table Table based IM framework for IBus

 

and QT4 input method module, textproc/ibus-qt.

 

If ibus cannot start or the panel does not appear, please ensure

that you are using up-to-date python.

There’s a bug in python 2.5, which may prevent the panel from appearing.

 

————————————

声卡驱动安装

 

1.先安装meta驱动试验:

# kldload snd_driver

 

检查是否有声音

# cat anyfile > /dev/dsp 有声音

 

然后查看驱动加载情况:

#cat /dev/sndstat

FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386)

Installed devices:

pcm0: <HDA Realtek ALC889 PCM #0 Analog> (play/rec) default

pcm1: <HDA Realtek ALC889 PCM #1 Analog> (play/rec)

pcm2: <HDA Realtek ALC889 PCM #2 Digital> (play)

pcm3: <HDA Realtek ALC889 PCM #3 Digital> (play)

pcm4: <HDA ATI RS690/780 HDMI PCM #0 HDMI> (play)

 

一般会显示出driver名字, 例如snd_ich. 但这里没有,好在根据HDA猜到了时snd_hda, 并且在FreeBSD说明里找到了snd_hda支持此Realtek ALC889

2. 修改 /boot/loader.conf

snd_hda_load=”YES”

 

重启动无声, 然后

#cat /dev/sndstat

FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386)

Installed devices:

pcm0: <HDA ATI RS690/780 HDMI PCM #0 HDMI> (play) default

pcm1: <HDA Realtek ALC889 PCM #0 Analog> (play/rec)

pcm2: <HDA Realtek ALC889 PCM #1 Analog> (play/rec)

pcm3: <HDA Realtek ALC889 PCM #2 Digital> (play)

pcm4: <HDA Realtek ALC889 PCM #3 Digital> (play)

发现此时的pcm0跟Generic driver时不同了,变成了HDMI输出,由于音箱不在HDMI上,因此判断应该将default输出指定到现在的pcm1上

 

# sysctl hw.snd.default_unit=1

hw.snd.default_unit: 0 -> 1

 

检查是否有声音

# cat anyfile > /dev/dsp 有声音

 

3. 将此设置放到 /etc/sysctl.conf

hw.snd.default_unit=1

重启动ok

2012
11
28
14:05

freebsd用ports及pkg_add在FreeBSD安装软件

①ports的目录在/usr/ports。

 

②POSTS安装软件有时可能这个包已经安装过了,会有提示,无法继续安装,能够用提示中的参数

 

#make install clean FORCE_PKG_REGISTER=yes

这样就能够继续安装了,yes不区分大小写。

 

③PORTS安装软件时有时能够下载回来的包的md5值不匹配,能够加参数强制安装。

 

#make install clean NO_CHECKSUM=yes

④如何查找安装一个ports软件

 

假如知道文件的详细名字,能够直接用whereis

 

#whereis php5

假如不知道细致文件名,能够用:

 

#cd /usr/ports

#make search name=php

假如只知晓描述性主要字,能够用:

 

#cd /usr/ports/

#make search key=php

⑤如何查找已完装软件包的信息

 

#pkg_info

用管道命令过滤定位

 

#pkg_info grep php

⑥如何删除一个软件包

 

#pkg_delete 软件包细致名,细致名称能够用pkg_info grep 管道命令查出。

 

加上-f 参数,能够删除一人别的软件对其有依靠联系的软件包

 

#pkg_delete -f 软件包细致名

 

⑦PORTS安装软件后,如何修改配置

 

有些POST包安装时会有蓝色配置挑选页,通常选过一次后就不会再显示了

 

#make rmconfig 删除配置,须要有root权限

 

#make reconfig 重新配置,须要有root权限

 

⑧重新安装已安装ports软件包

 

#make reinstall

⑨删险已安装ports软件包

 

#make deinstall

#make clean

⑩如果系统默认的下载地址失效了,你可尝试手动下载tbz软件包,然后用pkg_add 软件包名直接安装。

2012
11
24
15:04

使用FreeBSD组建控制流量的网关

FreeBSD在网络服务器的领域里占有一席之地,不管是在高端应用,还是小型企业里,使用FreeBSD做服务器都是不错的选择。

 

首先我们来安装Gateway,Gateway要使用的Internet的IP为x.x.x.x网卡为vr1,内部 IP为 192.168.1.1网卡为vr0,由于Gateway起到网关的作用,所以为了安全性,在该服务器上做安全是非常重要的,FreeBSD有自带了一个 ipfirewall防火墙,既然有,我们当然要利用上了,首先编译内核:

 

cd /usr/src/sys/i386/conf

 

cp GENERIC ./kernel_IPFW

 

用编辑器打开kernel_IPFW这个文本文件,在该文件里加入以下内容:

 

options QUOTA #添加磁盘限额

 

options IPDIVERT #启用由ipfw divert使用的转向IP套接字。

options IPSTEALTH #隐藏防火墙

 

#以缺省的、拒绝所有数据包方式启动IPFW

options IPFIREWALL

options IPFIREWALL_VERBOSE #向系统的注册程序发送注册信息包。

options IPFIREWALL_VERBOSE_LIMIT=100 #限制一台机器注册的次数。

 

# 接受过滤器中的静态连接

options ACCEPT_FILTER_DATA

options ACCEPT_FILTER_HTTP

 

options DUMMYNET #启用流量功能

 

把以上参数加入以后保存kernel_IPFW文件。

 

# cd /usr/src

# make buildkernel KERNCONF=kernel_IPFW

 

….

 

# make installkernel KERNCONF=kernel_IPFW

 

# reboot

 

这种编译方法将保留原来的kernel为kernel.old,这样如果你做错了什么,就有机会通过boot:出现时输入kernel.old来恢复。

 

以上完成以后,你就可以重新启动系统使用新的内核了。

 

使用新内核以后,如果该系统本来是连在网络上的,那么这时他的网络部分已经完全丧失,这表示系统新的内核已经起作用了,防火墙也起作用了,但由于 FreeBSD的防火墙默认情况下是不允许任何机器访问,所以该机器的任何网络功能都暂时丧失。不过不要着急,接着往下看,你就会觉得非常有意思了。

 

既然该服务器担当是的网关,那么让网关启动起来是必须的。我们现在再:

 

cd /etc

 

 

用编译器编辑rc.conf

 

加入如下参数:

 

gateway_enable=”YES” //启动网关

 

##########IP-firewall#################

 

firewall_enable=”YES” //激活firewall防火墙

 

firewall_script=”/etc/ipfw.conf” //firewall防火墙的规则脚本

 

firewall_type=”open”

 

firewall_quiet=”NO” //起用脚本时,是否显示规则信息。

 

firewall_logging_enable=”YES” //启用firewall的log记录。

 

##########NATD#######################

 

natd_interface=”vr1″ //NATD服务启用在哪块网卡。

 

natd_enable=”YES” //激活NATD服务

 

natd_flags=”-config /etc/natd.conf” //NATD服务参数设置文件。

 

firewall_type说明::

open-不限制IP访问;

closed-禁止除通过lo0进行的之外的所有IP服务;

client-对工作站的基本保护;

simple-对LAN的基本保护;

如果给的是一个指定的文件名,则必须使用全路径名firewall_script=”/etc/ipfw.conf”。

 

设置完成后我们再编译/etc/syslog.conf文件。

 

加入以下行:

 

!ipfw

 

*.* /var/log/ipfw.log

 

好了rc.conf文件设置完毕,然后就是其他文件了。

 

上面我们设置了firewall_type=”open”

这个是让防火墙完全开放,现在我们来具体设置防火墙的规则:

# ee /etc/ipfw.conf

填写下面内容:

 

#!/bin/sh

cmd=”ipfw -q add”

iif=”vr0″

lif=”vr1″

 

ipfw -q -f flush

 

ipfw pipe 100 config mask dst-ip 0x000000ff bw 8Kbit/s delay 0ms

ipfw pipe 101 config mask src-ip 0x000000ff bw 8Kbit/s delay 0ms

 

ipfw pipe 200 config mask dst-ip 0x000000ff bw 256Kbit/s delay 0ms

ipfw pipe 201 config mask src-ip 0x000000ff bw 256Kbit/s delay 0ms

 

ipfw pipe 300 config mask dst-ip 0x000000ff bw 2Mbit/s delay 0ms

ipfw pipe 301 config mask src-ip 0x000000ff bw 2Mbit/s delay 0ms

 

ipfw pipe 400 config mask dst-ip 0x000000ff bw 100Mbit/s delay 0ms

ipfw pipe 401 config mask src-ip 0x000000ff bw 100Mbit/s delay 0ms

 

$cmd pipe 400 all from any to me in

$cmd pipe 401 all from me to any out

 

$cmd pipe 400 all from any to 192.168.1.80 in

$cmd pipe 401 all from 192.168.1.80 to any out

 

$cmd pipe 100 all from any to 192.168.1.88 in

$cmd pipe 101 all from 192.168.1.88 to any out

 

$cmd pipe 300 all from any to 192.168.1.147 in

$cmd pipe 301 all from 192.168.1.147 to any out

 

$cmd pipe 200 all from any to 192.168.1.0/23 in

$cmd pipe 201 all from 192.168.1.0/23 to any out

$cmd allow all from any to any

好了,重新启动一下系统让防火墙生效,到此整个Gateway服务器就已经完全设置完毕。

2012
11
05
16:20

Freebsd命令速记大全

1: man 在线查询 man ls

2: ls 查看目录与档案 ls -la

3: ln 建立链接文件 ln -fs /usr/local/apache/etc/httpd.conf /etc/httpd.conf

4: more 分页显示 more 文件名称

5: cd 切换目录 cd /usr/local/apache

6: mkdir 建立新的目录 mkdir /usr/temp

7: rmdir 删除目录 rmdir /usr/temp

8: rm 删除目录或档案 rm -f 文件名称 (如果要删除目录.需要加 -r )

9: cp 复制目录或档案 cp 来源档案 目标档案

10: pwd 显示目前的工作目录

11: mv 目录或档案更名或搬移 mv 来源档案 目标档案

12: find 寻找目录或档案 find /etc -name 文件名称

13 fetch FTP取得档案 fetch ftp://ftp.center.kl.edu.tw/pub/FreeBSD/test.tgz

14 chmod 变更档案使用权限 chmod -R 755 /usr/local/etc

15 chown 变更档案所有者 chown -R lin.wheel /usr/local/etc

16 fsck 修理档案系统 fsck -y

17 gzip/tar 压缩或解压缩档案或目录 tar -czvf 压缩档名.tar.gz 目录名称

18 mount 挂上档案系统或是设备 mount /cdrom

19 umount 卸下档案系统或是设备 umount /cdrom

20 df 查询系统的可使用档案空间 df

21 du 显示目录或档案所占的磁盘空间 du -a 檔名 (du -sh 可以获取当前文件夹下的磁盘使用空间)

22 ps 查询系统process状态 ps -aux|grep apach*

23 kill 砍除一个process kill pid

24 su 变换身份 su – root

25 adduser 新增使用者

26 rmuser 删除使用者

27 vipw 编辑使用者账户

28 passwd 变更密码

29 ping 侦测计算机之联机状态 ping 210.240.6.9

30 ifconfig 网络接口的设定与管理 ifconfig -a

31 route 可以设定routing table

32 traceroute 列出所经过的route traceroute 210.240.8.1

33 netstat 可以查询网络的使用及联机情形

34 pkg_add 安装package pkg_add bash-2.04.tgz

35 pkg_delete 移除已安装的package pkg_delete bash-2.04

36 pkg_info 查询安装纪录

37 sync 强迫系统将快取数据写回硬盘

38 reboot重新启动系统

39 halt 关闭系统

40 shutdown 通知使用者系统将关闭

41 init 0 直接关机

chown chown -R 所有者.群组 档案或目录

-R:表该目录下之所有档案之所有者与群组跟着便变更

 

chmod

drwxrwxrwx

lr–rwxr-x

1 2 3 4

d:表目录

r:表read

w:表write

x:表可执行

-:表关闭功能

 

l:表链接的档案

2:该档案或目录所有人之读取权限

3:该档案或目录所有人之相同群组的读取权限

4:网络上的人的读取权限

-R:表该目录下之所有档案之读取权限跟着便变更

 

gzip/tar

tar czvf 压缩档名.tar.gz 目录名称

z:采用gzip压缩

c:建立新的压缩档

v:采用verbose方式,观看压缩过程

f:强制进行

 

tar zxvf 压缩档名.tar.gz

z:采用gzip解压缩

x:解压缩

v:采用verbose方式,观看压缩过程

f:强制进行

 

ifconfig

查询所有网络接口的情形

ifconfig -a

 

设定网络接口的参数

ifconfig de0 192.168.1.10 netmask 255.255.255.0

 

停止网络接口

ifconfig de0 down

 

启动网络接口

ifconfig de0 up

 

route

改变 routing path 之gateway

route change default 192.168.1.254

 

netstat

查询 routing table

netstat -rn

 

查询网络接口流量统计

netstat -I

查询 TCP网络联机情形

netstat -t

查询所有网络联机情形

netstat -a

 

shutdown

通知使用者多久后关机,管理者需下reboot或halt

shutdown -k 时间 讯息

通知使用者多久后重新启动系统

shutdown -r 时间 讯息

通知使用者多久后关闭系统

shutdown -h 时间 讯息

 

时间:now或+3表三分钟后或yymmddhhmm

讯息:用双引号括起来或用-号开头

 

一些常用的其它组合命令:

shift+g 同win下的END键,让光标处在文档末尾.

:/ 功能是在文档内进行文本搜索

:find 这个是文件的搜索