• [精华] FreeBSD-FAQ集锦(三)


    24:我怎么才能让Netmeeting通过我的FreeBSD防火墙呢? 

    http://www.chinaunix.net/forum/viewtopic.php?t=16320

    25:使用adduser为freebsd添加用户需要注意什么呢?

    我在创建用户时遇到这样的一个问题,请那位大侠指点!!!下面是我做的步骤请问这样做对不对。
    dell2650b# adduser
    Use option ``-silent'' if you don't want to see all warnings and questions.

    Check /etc/shells
    Shell: /usr/local/bin/bash not executable!
    Check /etc/master.passwd
    Check /etc/group
    User ``/wheel/tony'' has gid 1002 but a group with this gid does not exist.
    Usernames must match regular expression: [lydong]: 
    Enter your default shell: csh date no sh tcsh [tcsh]: 
    Your default shell is: tcsh ->; /bin/tcsh
    Enter your default HOME partition: [/home/lydong]: 
    Create /home/lydong
    Copy dotfiles from: /usr/share/skel no [/usr/share/skel]: 
    Send message from file: /etc/adduser.message no y [y]: n
    Use passwords (y/n) [y]: y

    Write your changes to /etc/adduser.conf? (y/n) [n]: y

    Ok, let's go.
    Don't worry about mistakes. I will give you the chance later to correct any input.
    Enter username [lydong]: luoyaodong
    Username doesn't match the regexp /lydong/
    Enter username [lydong]: lydong
    Please enter a username
    Enter username [lydong]: oeheonse
    Username doesn't match the regexp /lydong/
    Enter username [lydong]: ^C

    在adduser.conf里usernameregexp指定了用来验证新用户名是否合乎规范的正则表达式,你可以修改这个值来强制用户名符合你的规定。
    默认的情况下应该是:
    usernameregexp = '^[a-z0-9_][a-z0-9_-]*$'
    这是说用户名必须以a-z、0-9以及'_'开头,后边可以跟多个a-z、0-9、'_'、'-'字符,当你加新用户的时候,adduser就会拿这个正则表达式来效验你的用户名是否规范。

    看了你输出结果:
    Usernames must match regular expression: [lydong]: 
    这说明你把正则表达式给设置成了lydong,后边应用这个正则表达式来效验你的新用户名自然是通不过了(除非你输入lydong)。

    修改也很简单,修改为usernameregexp = '^[a-z0-9_][a-z0-9_-]*$'就可以了。


    26:怎样才能调优我的FreeBSD系统呢?
    http://www.chinaunix.net/forum/viewtopic.php?t=98645 
    这个链接是man tuning的中文版


    27:如何察看已经安装ports的make参数
    例子察看php4-extensions的make install 参数
    cat /var/db/ports/php4-extensions/options


    把/var/db/ports/php4-extensions/下文件拷贝到另一台服务器上相同位置可以省去手动指定make 参数的痛苦


    28:为什么我用PQ调整了分区还是装不上FreeBSD?

    因为FreeBSD不能安装在FAT32或NTFS文件系统中!

    FreeBSD的安装问题:

    首先应该提出几个术语:

    可用空间:即是“分区”里的未使用到的部分
    自由空间:windows里未被划分逻辑驱动器的扩展分区
    未分配空间:当你新买一块硬盘后未经格式化的空间


    很多朋友说他们曾使用PQ之类的软件对磁盘进行过分区的调整(对于PQ能不能调整出“未分配空间内”我就不得而知了,我个人不喜欢那种软 件)来安装FB。但各位忽略了一点:UNIX不能安装在windows的扩展分区中,当然也包括各个逻辑驱动器,只能是安装在“未分配空间内”。而大家常 犯的错误就是使用PQ将现有的WINDOWS逻辑驱动器进行调整,使得有一个比较大的逻辑驱动器,但FreeBSD在进行分“片”的时候只认win的主分 区和扩展分区,具体该扩展分区中包含几个逻辑驱动器BSD并不关心,这也就导致了大家花费大量心血调整出来的XX盘不能安装BSD的原因。

    对于想通过VM来把BSD安装到真实硬盘上的朋友来说,也应该要注意这点,该硬盘上也只能使用的是“未分配空间”,并且选择整个磁盘来安装而不是选 择分区来安装。相对来说,选择使用整个磁盘来安装的话,和我们安装双系统时的情况一致,更容易保证大家在安装过程中不会丢失数据。


    FreeBSD系统中的“片(Slice)”和“分区”

    这个问题说来会比较麻烦,我们需要与WIN来进行对照说明。

    在windows中,我们都知道系统把硬盘分为各个逻辑驱动器来进行管理,我们可以把windows中的这种管理方式这样理解:整个硬盘是一栋 楼,C、D、E等各盘变成了栋中的一楼、二楼、三楼。。。。每个楼层的房间相当于驱动器中的各个文件夹;而FreeBSD则把这样一栋楼分成一个片 (Slice),每个楼层对应一个挂载点:/、/root、/var、/usr......然后每个文件夹对应于该层楼中的各个房间。如果各位还是不理解 的话,那么把一个硬盘想像成一个矩形的框,假设该块硬盘分为四部分,对windows来说,那么就有四个逻辑驱动器C、D、E、F,而对FB就变成了/、 swap(这个分区也需要手工划分,并且是必须的,具体需要多大要看你的FB的用途,如果是仅供学习研究,那么一般分512MB左右,我是40G的硬盘, 空间相对充足,就划分了1G的空间 )、/var(或是其他什么)、/usr (通常情况下建议单独划分出此分区)。

    [ 本帖最后由 剑心通明 于 2005-11-11 15:40 编辑 ]


    29:如何在安装ports时缩短下载时间

    [color=Green]方法A: 使用代理。

    [color=Blue]在/etc/make.conf中设置:
    FETCH_ENV= "HTTP_PROXY=IP[:端口]"
    如果需要,在FETCH_ENV值后面加入空格,
    HTTP_PROXY_AUTH=basic:*:user:password

    [color=Green]方法B: 在其它机器上fetch

    [color=Navy]make fetch-recursive
    ...
    然后将/usr/ports/distfiles拿走。


    [color=Green]方法c:使用wget/axel/proz加速你的port下载

    [color=Navy]
    以下所述功能均通过修改make.conf实现 

    对于wget 
    ======== 
    FETCH_CMD= wget 
    FETCH_BEFORE_ARGS= -c -t 1 
    FETCH_AFTER_ARGS= 
    DISABLE_SIZE=yes #这行是必要的,否则... 

    前面3行也可以换成 
    FETCH_CMD=wget -c -t 1 

    如果你要wget穿透代理服务器,请加上下面两行 
    FETCH_ENV=http_proxy=http://proxy2.zsu.edu.cn:3128 
    FETCH_ENV=ftp_proxy=http://proxy2.zsu.edu.cn:3128 

    或者使用其他的穿越代理工具例如proxychains 或者socks5(runsocks) 
    则FETCH_CMD=proxychains wget或者runsocks wget 

    什么?不知道wget是什么?那就先 
    cd /usr/ports/ftp/wget/ 
    make install clean 

    对于axel 
    ======== 
    同样,也可以使用axel来替换fetch来进行多线程下载 
    FETCH_CMD=axel 
    FETCH_BEFORE_ARGS= -a 
    FETCH_AFTER_ARGS= 
    DISABLE_SIZE=yes 
    或者只写一行 
    FETCH_CMD=axel -a 

    axel 穿透代理服务器的方法与wget一致 

    axel在/usr/ports/ftp/axel位置 


    对于proz 
    ======== 
    同样,也可以使用proz来替换fetch来进行多线程下载 
    FETCH_CMD=proz -r 
    DISABLE_SIZE=yes

    proz 穿透代理服务器的方法与wget一致 

    proz在/usr/ports/ftp/proz位置


    添加更快的port下载站点 
    ==================== 
    另外,加上以下两行可以在让make先从更快的站点下载port 

    MASTER_SITE_OVERRIDE= / 
    ftp://ftp2.tsinghua.edu.cn/mirror/FreeBSD/ports/distfiles/
    ftp://freebsd.csie.nctu.edu.tw/pub/FreeBSD/ports/distfiles/
    ftp://ftp.hk.freebsd.org/pub/FreeBSD/ports/distfiles/
    ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/ 
    这个是教育网的设置,公网的兄弟可以看着办啦

    [ 本帖最后由 vcynosure 于 2006-1-3 09:24 编辑 ]

    30.如何在旧版本ports基础上强行安装新版本ports?

    # make install -D "FORCE_PKG_REGISTER" clean

    好像只在一些不是很重要的ports才有效,我原有glib-2.6.x,强行安装glib-2.8.5成功,不过强行安装linux_base-8貌似失败)


    31、如何使ports在安装时不检查下载软件的MD5和SHA256

    有时我们从ports安装软件的时候会出一些问题,比如VSFTPD我就喜欢改动一些东西然后在安装。这时,我们可以使用
    # make NO_CHECKSUM=yes 
    来跳过MD5和SHA256的检验,除非逼不得已或对自己的修改很有信心,否则建议make是不要使用此参数。

  • 相关阅读:
    Python面试题目--汇总
    MySQL索引背后的数据结构及算法原理
    Python中的str与unicode处理方法
    消息队列 RabbitMQ
    python采用pika库使用rabbitmq总结,多篇笔记和示例
    SQL总结(一)基本查询
    【IT笔试面试题整理】判断一个树是否是另一个的子树
    【IT笔试面试题整理】有序数组生成最小高度二叉树
    【IT笔试面试题整理】给定二叉树,给每层生成一个链表
    【IT笔试面试题整理】位操作
  • 原文地址:https://www.cnblogs.com/fengyv/p/2484678.html
Copyright © 2020-2023  润新知