Saturday, October 22, 2011

[转]最小化安装FreeBSD8服务器后建议做的事

原文: 最小化安装FreeBSD8服务器后建议做的事

一、使用portsnap生级port的目录树,建议使用;

我没做这步,使用port安装vim系统报错;接着安装平时最基本的应用软件同样报错。唉,不偷懒了,做完这步先。
①配置portsnap:
我们使用portsnap,首先要设置一下它的配置文件,位于/etc/portsnap.conf:
[root@bsd01 /usr/ports]# vi /etc/portsnap.conf

SERVERNAME=portsnap.freebsd.org
修改成:
SERVERNAME=portsnap.cn.FreeBSD.org
#这步可根据你的实际速度,你来判断到底需不需要更新port的生级源
在你的freebsd首次使用portsnap必须执行下面2步:
[root@bsd01 ~]# portsnap fetch
[root@bsd01 ~]# portsnap extract
#这2步可以合成使用:
[root@bsd01 ~]# portsnap fetch extract
#portsnap fecth是从网上获取portsnap快照的最新压缩包,听闻这个压缩包官方每小时更新一次。
#portsnap extract 则是把这个压缩包创立到/usr/ports。哪怕你以前已经手工安装了ports,他也会重新创立一次。
③以后使用portsnap更新ports:
以后更新,只需要执行下面2步:
[root@bsd01 ~]# portsnap fetch
[root@bsd01 ~]# portsnap update
这2步可以合成使用:
[root@bsd01 ~]# portsnap fetch update
portsnap第一次运行extract命令时,可能需要一段时间,以后更新使用update的时候,速度就块很多了。


二、配置make.conf文件

FreeBSD中的ports安装工具默认工具是用fetch,下载时经常出现龟速现象;为了提高ports安装速度,我推荐axel工具,当然具体还得配置下make.conf文件。
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_BACKUP?=\   
ftp://ftp.cn.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp.tw.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\
ftp://ftp.jp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/\

MASTER_SITE_OVERRIDE?=${MASTER_SITE_BACKUP}
 #以上路径是为了用速度比较快的网站代替程序默认的下载源,达到加速的目的;我在家里没配置前大约是20kb/s左右,配置之后是230kb/s,所以强烈推荐。


三、安装vim

工欲善其事,必先利其器,我还是习惯使用Linux下的vim,先安装vim:
安装方法有如下方法
1)如果没安装X Windows,则可安装vim6+ruby,Ruby是一门面向对象的服务器脚步语言,相当与Perl;强大的puppet就是靠Ruby支撑着。
cd /usr/ports/editors/vim7+ruby
make -DWITHOUT_X11 install clean
2)还可采用pkd_add的方式安装
pkg_add -r -v vim-lite
r的意思表示也会安装vim-lite依赖的软件和库,v表示显示详细安装过程;这里也注意下pkg_add和make install clean的区别。


四、如何让FreeBSD的csh像bash那样按tab列出列出无法补齐的候选文件?

答:标准的方法是按Ctrl+D。但因为我们都是用普通用户的身份登陆FreeBSD8,然后编辑我的csh控制文件.cshrc,例如 vim /home/andrewy/.cshrc
代码:
set autolist
让其立即生效的方法
source .cshrc
如果root用户也是csh环境,则可以在/root/.cshrc中同样操作,按如下操作进行
sudo su - 切换到root用户
vim .cshrc
增加 set autolist
source .cshrc


五、新安装的命令无法运行,怎么办?

FreeBSD8.0的cshell会缓存环境变量PATH中指定的目录里的可执行文件,以加快查找速度,这会造成一些新安装的命令无法运行,执行以下命令,然后才能运行新安装的那些命令(最典型的例子就是刚安装的vim居然提示找不到命令),用如下命令解决问题:
rehash


六、记得用vim的模板文件优化下vim,方便以后的编辑工作
vim /home/andrewy/.vimrc
set nobackup
set number
set cindent
set autoindent
set shiftwidth=2
set tabstop=2
set softtabstop=2
set expandtab
set ruler
syntax on
常用设定
下面说说一些常用的设定及其具体含义
set nobackup 不要备份文件,使用backup备份文件(原文件加后缀~)
set number 显示行号
set cindent 设定c风格缩进,使用nocindent取消设置
set autoindent 设定自动缩进,每行缩进与上一行相等,使用noautoindet取消设置
set shiftwidth=2 设定缩进为两个空格
set tabstop=2 设定制表符为两个空格
set softtabstop=2 设定软制表符为两个空格
set expandtab 缩进和(软)制表符使用空格替代,用noexpandtab取消设置
set ruler 显示光标所在行列号
syntax on 启动语法高亮
其中涉及到的名词术语相关解释
cindent
使用C语言的缩进方式,根据特殊字符如“{”、“}”、“:”和语句是否结束等信息自动调整缩进;在编辑 C/C++ 等类型文件时会自动设定;
softtabstop
软制表符宽度,设置为非零数值后使用Tab键和 Backspace时光标移动的格数等于该数值,但实际插入的字符仍受tabstop和 expandtab控制;这样配置vim比以前好用多了。


七、给普通用户增加相应的sudo权限

有个事情大家也不要不做,就是要将我们在安装系统时添加的普通用户增加相应的sudo权限。因为FreeBSD默认是不允许root远程登陆的,大家在用命令visudo时会发现此命令找不到;原来是没有安装的原因
#pkg_add -r -v sudo 或 cd /usr/ports/security/sudo && make install clean
安装完后记得将此用户给予root一样的权限,语法跟root的权限分配一样
# User privilege specification
root ALL=(ALL) ALL
andrewy ALL=(ALL) ALL
这项工作建议在将机器送进机房前完成,不然如果你不小心操作时将FreeBSD的重要文件/usr/local/etc/sudoers文件破坏掉 后,你会发现你的FreeBSD机器会一个不受权限控制的机器,犹如断了线的风筝样在网络的世界飘移;所以此项操作一定要慎重谨慎!


FreeBSD8下安装软件相关

优化后系统就是安装应用软件了,我们可以用pkg_add安装稳定的软件版本,也可以用make install clean有选择性的安装软件。


一、POSTS安装软件有时可能这个包已经安装过了,会有提示,无法继续安装,能够用提示中的参数
#make install clean FORCE_PKG_REGISTER=yes
这样就能够继续安装了,yes不区分大小写。

二、PORTS安装软件时有时能够下载回来的包的md5值不匹配,能够加参数强制安装。
#make install clean NO_CHECKSUM=yes

三、如何查找安装一个ports软件

假如不知道详细文件名,能够用:
#cd /usr/ports
#make search name=php5
我这里兴例说明下,如果我要查找apache22的软件包,但我又不知道它在哪里,这个时候该怎么办呢
可以用命令
#make search name=apache | grep apache22

四、如何查找已完装软件包的信息
#pkg_info
用管道命令过滤定位
#pkg_info grep php
例如 pkg_info | grep vim

五、如何删除一个软件包
#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
如果不能删除掉,则用make deinstall-depends可以删除强制删除,并且删除掉有依赖的软件,执行此项操作时请谨慎。

No comments: