分类: *BSD

学习BSD-UNIX系统

  • 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

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

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

    ee /etc/rc.conf

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

    moused_enable=”YES”

    moused_nodefault_enable=”YES”

    dbus_enable=”YES”

    hald_enable=”YES”

     

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

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

  • 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

  • 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 软件包名直接安装。

  • 使用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服务器就已经完全设置完毕。

  • 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 这个是文件的搜索

  • freebad apache22 httpd: apr_sockaddr_info_get() failed

    解决freebad apache22 启动时提示httpd: apr_sockaddr_info_get() failed

    我新购买的VPS上安装了FREEBSD,配置WEB环境后,apache22启动总是提示 httpd: apr_sockaddr_info_get() failed错误

    解决方法:修改httpd.conf里的servername localhost:80即可

  • FreeBSD6.1学习笔记 很全很初步 收藏

    ++设定网卡

    1)简单点的用sysinstall–>Configure–>networking–>Interfaces

    2)或直接手工配置

    vi /etc/rc.conf #添加如下内容

    ifconfig_lnc0=”inet 192.168.25.37? netmask 255.255.255.0″ #具体网卡名称和IP地址自已调

    defaultrouter=”192.168.25.12″??? #网关

    hostname=”freebsdsrv.zhangjianfeng.com”? #主机名称

    ++多线程下载ports里的包

    cd /usr/ports/ftp/axel

    make

    make install

    make clean

    编辑make.conf文件

    ee /etc/make.conf

    增加以下内容

    FETCH_CMD=axel

    DISABLE_SIZE=yes

    修改配置文件

    ee /usr/local/etc/axelrc

    设置并发线程为10

    num_connections = 10

    默认的设置是4

    ++加速pkg_add 速度

    export? PACKAGEROOT=ftp://ftp.tw.freebsd.org? #bash

    ++设置ports的下载路径

    # added by use.perl 2006-12-21 20:58:26

    PERL_VER=5.8.8

    PERL_VERSION=5.8.8

    MASTER_SITE_OVERRIDE= \

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

    ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

    ftp://ftp10.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

    ftp://ftp13.tw.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

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

    ftp://ftp3.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

    ftp://ftp5.jp.FreeBSD.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

    ftp://ftp.jaist.ac.jp/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR} \

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

    ++配置X11

    Xorg -configure #会在/root/下生成xorg.conf.new

    Xorg -config xorg.conf.new #如果看到黑灰的格子和一个 X 形的指针,那就说明配置成功.退出测试可以按下 Ctrl+Alt+Backspace

    cp /root/xorg.conf.new /etc/X11/xorg.conf #如果测试没问题就把文件放到这里,可以通过startx启动

    ++ 中文gnome环境

    修改/etc/profile文件,在其中添加:LANG=zh_CN.eucCN

    LC_ALL=zh_CN.eucCN

    export LANG LC_ALL? #也可以在启动gnome之前手工运行

    ++安装prozilla

    cd /usr/ports/ftp/prozilla;make;make install

    ++关于 在FreeBSD 下PPPoE拨号上网的方法 以下是一个ppp.conf的例子:

    default:

    set log Phase tun command # you can add more detailed logging if you wish

    set ifaddr 10.0.0.1/0 10.0.0.2/0

    name_of_service_provider:

    set device PPPoE:xl1 # replace xl1 with your Ethernet device

    set authname 你的帐户名

    set authkey 帐户密码

    set dial

    set login

    add default HISADDR

    确认你的 adsl: 后面的代码前面都有缩进,格式必须入上,没有缩进就不可以!

    # ppp -ddial name_of_service_provider

    ++关于 挂载非UFS分区 方法

    1.mount FAT/FAT32分区:(C盘为例)

    mount -t msdos /dev/ad0s5 /mnt

    2.mount NTFS分区:(C盘为例)

    mount_ntfs /dev/ad0s1 /mnt

    mount_msdosfs -L zh_CN.GB18030 /dev/ad0sX /mnt #可以支持FAT32分区上的中文文件名,当然,locale用18030/zh_CN.eucCN/ zh_CN.GBK都可以

    3.mount Linux Ext2fs/Ext3fs:

    在内核里面加入options EXT2FS,编译内核。

    mount 的时候用mount_ext2fs 命令即可,ext3fs的mount也用mount_ext2fs

    4.mount 普通数据光盘:

    mount_cd9660 /dev/acd0 /cdrom? #如果fstab已定义,则 mount /cdrom

    5.mount ISO 文件

    mdconfig -a -t vnode -f abc.iso -u 1

    mount_cd9660 /dev/md1 /cdrom

    umount /mnt

    vnconfig -u /dev/vn0

    6.mount CD、VCD、DVD

    播放CD、VCD、DVD不用先mount上。

    如果你一定要mount上,可以这样:#mount _cd9660 -s 0 /dev/acd0 /cdrom

    7.mount usb

    确保内核中有如下项

    device scbus

    device da

    device cd

    在GENERIC中默认都有,如果没有,请编译内核。

    大多数U盘用的是FAT 文件系统,所以用

    mount -t msdos /dev/da0 /mnt

    ++Packages简单系统

    pkg_add -r lsof

    pkg_delete lsof-version #删除软件包

    pkg_info #显示所有安装的软件包

    pkg_info -L lsof-version| less #查lsof都安装到哪儿了

    pkg_info | grep -i foopackage? #查系统安装了指定包没?

    #找XX软件

    #a)如果你知道软件的准确的名字,比如说wget,则 whereis wget

    #b)如果你不知道准确的名字,那就search一下吧 cd /usr/ports;make search key=???

    ++ADSL拨号

    vim /etc/ppp/ppp.conf

    default:

    set log Phase tun

    enable dns

    adsl:

    set device PPPoE:rl0 #rl0对应网卡名称

    set mru 1492

    set dial

    set login

    set authname 用户名

    set authkey? 密码

    add default HISADDR

    vim /etc/resolv.conf

    nameserver 202.106.196.115

    nameserver 202.106.0.20

    ppp #运行ppp命令

    ppp ON LOCALHOST>dial adsl

    ppp ON LOCALHOST> #注释:假如没设置set mru 1492,系统会有提示的。

    Ppp ON LOCALHOST> #注释:第一个P变大写后又变回小写的话,很可能是你自己的ADSL密码和用户名输入错误

    PPP ON LOCALHOST> #注释:三个p都是大写P后,证明就通了

    ++中文本地化设置

    (1)在/etc/login.conf中加入以下部分

    #Chinese Users Accounts.

    chinese|Chinese Users Accounts:\

    :charset=eucCN:\

    :lang=zh_CN.eucCN:\

    :tc=default:

    (2)执行以下命令

    #cap_mkdb /etc/login.conf

    (3)用vipw修改登入类型,针对相应用用户进行修改,修改格式参照如下内容:

    root1$lOOD78Dm$oSG5u21RGrXoC.TTJ3nCs.:0:0:chinese:0:0:Charlie &:/root:/bin/csh

    关键是在相应位置加入”chinese”,”chinese”是和第1步的设置对应的。

    (4)重新登入后执行startx,进入的Gnome便是全中文的了。

    其实还是英文状态更舒服一些,但习惯了,反正得整出中文桌面来,即使不用,^_^

    ++使用Windows下的Simsun字体进行中文字体美化

    在 /usr/X11R6/lib/X11/fonts/下建立一个”TrueType”目录,将Windows下的simsun.ttc改名为 simsun.ttf后拷贝到 /usr/X11R6/lib/X11/fonts/TrueType下, 然后建立字体缓存 fc-cache -fv

    然后在GNOME中设置字体,在字体细节中调整:“平滑”选无,“微调”选轻微,“次象素顺序”选RGB。

    ++加载声卡

    在文件 /boot/loader.conf 里加入一行,内容如下

    snd_xxx_load=”YES”

    #如果不知道应该使用哪个驱动, 您可以尝试加载 snd_driver module, cat /dev/sndstat

    ++同步时间

    /usr/sbin/ntpdate 210.72.145.44

    ++比较快的cvs服务器

    cvsup5.cn.FreeBSD.org? 50ms以下

    cvsup.tw.FreeBSD.org?? 300ms左右

    http://www.freebsd.org/doc/zh_CN.GB2312/books/handbook/cvsup.html

    ++修改passwd

    vipw? #root

    ++编译内核可以用make kernel KERNEL=configfile来编译,比先build后install而言只要一个命令。

    ++编译内核失败后用老内核启动的命令是在启动内核前的等待时俺一下空格键,然后输入boot /boot/old/kernel

    ###################################基本设置#######################################

    setenv PACKAGEROOT “ftp://ftp.tw.freebsd.org” (在FreeBSD默认的c shell 使用此种方法)

    #设置环境变量使pkg_add –r 源代码安装方式选择较快的服务器下载二进制软件安装

    pkg_add -r cvsup-without-gui

    #下载并安装二进制代码程序cvsup-without-gui(cvsup-without-gui无图形支持在文本方式下工作的软件,用来同步代码及ports用。)

    ++FAQ

    +++默认只有wheel组的成员才可以su

    +++如何是启动使Booting [kernet] in 9 seconds …变成0秒解决办法:

    # vim /boot/defaults/loader.conf

    autoboot_delay=”3″

    ++VI中汉字显示成\xc8\xf0字样

    解决办法:用vim即可正常显示中文

    ++ls无颜色

    解决办法: ls -G #可以做个alias

     

     

    尽快消化

  • Freebsd pkg_delete删除错误安装的php

    本来想升级下php52至php53,结果可能由于操作不当导致53无法正常运行,加上自己不小心删除了/usr/local/lib/php/扩展包里的一些文件,导致再重新安装的时候php也不行,进退两难,尝试过几次通过ports卸载php,然后重装,都不可以,无论是52还是53.

    网上发现一个命令,尝试了下很管用:

    pkg_delete -f php\*
    rm -fr /usr/local/include/php/

    然后再重装,这样问题就解决了,哎,着急了我半天,还是命令不熟悉。

  • freebsd声卡安装

    1、kldload snd_driver #这是个meta 驱动,一次加载了最常见的设备驱动。这会提高搜索正确驱动的速度。

    2、cat /dev/sndstat 查看当前声卡类型。

    3、在/boot/defaults/loader.conf 中修改相关load snd driver为”YES”,将相关类型的声卡选项为”YES”

    vim /boot/defaults/loader.conf,找到这一 Sound modules 小节,

    如果不清楚的话就在最后把All sound drivers选项中的“NO”改为“YES”。(注意:如果在声卡驱动的这个小节,没有发现你的声卡类型,也可以手工自己加入一行,内容为你的声卡类型_load = “YES” )

    重启就OK了..