• 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 auxww   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
    我在笔记本上装了双系统,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)
  • 相关阅读:
    day4-1
    day3-1
    day1-3
    day2-1
    day1-2
    day1 1
    对象的高度整合
    类和数据类型
    对象的绑定方法
    python总结
  • 原文地址:https://www.cnblogs.com/studio313/p/1033151.html
Copyright © 2020-2023  润新知