FreeBSD笔记┊ 使用ports来管理软件包
freebsd_java _环境
FreeBSD系统配置Java环境简述Java最早于1998年引入 FreeBSD。
通常我们使用的 JDK 是来自 Sun 的 JDK。
由于授权的原因,目前JDK需要手工下载之后才能安装。
在FreeBSD平台上,最新版本的JRE/JDK为:Diablo JRE/JDK 1.5.0-7。
在FreeBSD中你可以使用多种方式来安装JDK:使用Linux模拟环境来运行For Linux版本的Sun/IBM JDK(以下简称Linux JDK)使用freebsdfoundation提供的binaries package来安装JDK(以下简称Binaries JDK)使用ports来安装JDK(以下简称Ports JDK)这里你可以自己选择使用哪种方式:一般而言,由于已经有了 Diablo JDK,现在已经不再推荐在 FreeBSD 上透过Linux 仿真来使用 Linux JDK 了。
以下就JDK在FreeBSD上的安装方法进行分别的说明,希望你能找到适合你的方法安装一个好用的FreeBSD JDK。
通过 ports 来安装 Diablo JDK这是一个非常快速的方法,因为除去下载的时间,你只需要两分钟就完成了一个可以使用的JDK环境。
如果使用 FreeBSD 6.x,则推荐使用这种方法。
注意:Diablo JDK 在 FreeBSD 7.x 上运行时可能会有一些问题,这时,可以用它作为boostrap JDK来编译自己的native JDK。
通常安装 Diablo JDK 时,应使用 ports 来进行安装。
这主要是因为几个原因:有时,需要对 Diablo JDK 进行小幅度的调整,例如更新时区数据等等。
如果只是下载 FreeBSD 基金会提供的 package 直接安装,则没有这方面的好处。
ports会帮你搞定 Diablo JDK 所需的全部依赖关系。
ports安装几乎和直接pkg_add一样快。
freebsd用ports及pkg
freebsd用ports及pkg①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像RedHat那样在ls时显示多种颜色的目录?答:在/etc/csh.cshrc里面加入:setenv LSCOLORS ExGxFxdxCxegedabagExExsetenv CLICOLOR yes然后,执行:#set prompt/g /root/.cshrc并重新登录。
2.问:如何让FreeBSD的csh像bash那样按tab列出列出无法补齐的候选文件?答:标准的方法是按Ctrl+D。
但如果一定要用tab的话,在/etc/csh.cshrc中加入:set autolist3.问:如何让FreeBSD的csh显示类似[delphijspirit] ~这样的提示符?答:在/etc/csh.cshrc中加入:set prompt = ''[%B%n%m%b] %B%~%b%# ''然后,执行:sed -i.bak -E s/set prompt/#set prompt/g /root/.cshrc4.问:如何让普通用户也拥有类似root用户那样的命令行编辑能力?答:在/etc/csh.cshrc中加入:bindkey "^W" backward-delete-wordbindkey -k up history-search-backwardbindkey -k down history-search-forward5.让ctr+del+alt 失效Look into your keymap file (taken from /usr/share/syscons/keymaps) and search for boot in it. If it has not the "boot" string in it, replace the lines #083 and #103 by these083 del ''.'' ''.'' ''.'' ''.'' ''.'' boot boot N103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 OThere was talk to enable/disable it via a sysctl(3) parameter but no one ever got around to do it...6. 环境变量:文件/etc/profile,BLOCKSIZE=K; export BLOCKSIZE(通用)文件~.cshrc BLOCKSIZE Ksetenvmy cshrc代理服务器的使用HTTP 的代理:#setenv HTTP_PROXY http://proxyip:portFTP 的代理: #setenv FTP_PROXY http://proxyip:port7、设定开机画面使用 windows 的人,都知道所谓的开机画面,在 FreeBSD 下是否也有此功能呢?答案是肯定的,而且设定更为简便,请照以下 steps:一. 首先制作一个图型文件,档案格式为 logo.pcx 或 logo.bmp,需注意的是 .bmp 的档案存盘时不用压缩,分辨率需为 640 X 480 以内(含),色阶为 256 色..二. 将此档案 copy 到 /boot/ 这个目录下三. 设定 /boot/loader.conf,加入以下资料splash_bmp_load="YES" -> 如果使用 .bmp 格式,此项需设为 YESsplash_pcx_load="YES" -> 使用 .pcx,请将此项设为 YESvera_load="YES"bitmap_load="YES"bitmap_name="/boot/logo.pcx" -> 请依你的档案格式更改bitmap_type="splash_image_data"8.激活你的 screensaver由于 FreeBSD 大多当为主机使用,都是常期不关机的,因此可将屏幕关掉,或使用ScreenSaver 功能..使用 ScreenSaver 请在 /etc/rc.conf 这个档加入以下两行:blanktime="900"=> 以秒数为单位,如以上为 15 分钟saver="logo"=> logo 是 FreeBSD 的吉祥物(图型接口),另也可使用 "daemon",这是文字型式9. 重复使用先前使用过的指令你可以使用以下的方法来重复使用先前使用过的指令:例如,我们先用 history 显示先前输入的指令:# history......10 clear11 cd /usr/local12 ls13 ls etc14 cd ~15 clear1. 用 up down 可用上下一个指令,或是 ctrl+p ctrl+n 亦然2. 配合 ! 的用法,例如以下(ps: 在<...>内代表要输入的东东)!!# !! => 重复执行上个一个指令!<编号># !11 => 执行 cd /usr/local!<指令> 可输入部份字,但前面部份需符合# !cl执行 15 clear 指令!<?指令?> 输入部份字符,部份吻合# !?etc?执行 13 ls etc以上指令在 tcsh 及 bash 下皆可使用,如此是不是可帮你省下许多时间..10.用 dig 及 host 来取代 nslookup一般我们用来检查网络是否有问题,大多是用以下三个指令..nslookuppingtraceroute其中 nsllokup 是用来检查 dns 的相关设定, ping 用来检查自己和对方网络是否通顺,而traceroute 则是用来检查从自己的计算机到对方的计算机所经过的线路状况..不过以 nslookup 而言,个人觉得不是很实用,有时我们只是想单纯的查一下某台主机或是MX 记录,那使用 nslookup 就有点噜嗦了..在此介绍二个好用的指令 host 及 dig,这二个指令很类似,不过效率较 nslookup 高# host -a <主机名称> 或 <ip>=> 输入主机名称显示 dns 正向解析的部份,输入 ip 则是显示反向(ptr)# dig <主机名称或ip> <any a mx soa txt.. 任选一项>如要显示 MX 记录# dig 主机名称 mx个人是觉得比 nslookup 方便多了,你觉得呢.. ^.^当然功能不只这些,详情请 man dig 或 host..11.加快你的开机速度..严格说起来,FreeBSD 的开机速度算满快的,不过中间会有个 10 秒的延迟时间(以便让你进入 boot 的 command prompt mode),如果你嫌这10秒还是太慢了,那你可将时间?#123;短一些..FreeBSD 激活时会先去参考/boot/defaults/loader.conf 档的设定,然后再参考/boot/loader.conf,一般我们都不去?#123;整 /boot/defaults/loader.conf 这个档,而直接?#123;整 /boot/loader.conf..只要在 /boot/loader.conf 中加上以下这一行即可autoboot_delay="秒数" 即可,如autoboot_delay="7" 代表7秒这样开机是不是更快了..另外建议,有时间可参考一下 /boot/defaults/loader.conf 这个档案的设定,其中有许多实用的设定哦..12.忘了 root 密码如果你忘了 root 的密码怎么办,这在 FreeBSD 中满好解决的,请照以下 steps 来处理..1. 进入单人模式开机后,当出现Hit [Enter] to boot immediately, or any other key for command prompt.Booting [kernel] in 10 seconds...按 space(或除了 enter 以外的键) 键则会进入 command prompt mode,同时出现一个 ok ..这时请输入 boot -s 以进入单人模式2. 选择 sh进入单人模式后,系统会询问你要使用那个 sh,内定是 /bin/sh ,就使用这个吧,直接按enter 跳过3. 将所有的硬盘分割架起来# mount -a4. 更改密码# passwd长度要在 6 个以上,输入二次5. 重新激活# reboot13.介绍一些一些有用的参数(注意大小写)..%B 代表高亮度%n 代表用者名称%m 主机名称%/ 目前的目录一般我们可能比较在意以上几点,如我要管理好几台 FreeBSD 主机,那么以上几个参数就很重要了..举个实例来说,如我想把我的 prompt 改成这样,而且要高亮度显示:使用者名称主机名称[目录名称]>则 prompt 的设定应该是这样的..set prompt = "%B%n%m[%/]> "注意 = 左右都要有一个空白,否则会出错,导致无法登入,另外如果要统一所有使用者的prompt 的话,除了更改 /home/使用者/.cshrc 外,最好也在 /etc/csh.cshrc 中设定这一行,另外如要新增新用者也用这种提示,则请在 /usr/share/skel/dot.cshrc 中也加上(或改成)这一行,这是因为:tcsh 在使用时会先参考 /etc/csh.cshrc 这个档案,再依 user 去抓其 home 目录下的 .cshrc,而设定 /usr/share/skel/dot.cshrc 是让你新使用者时,自动将其 prompt 设定成 set prompt = "%B%n%m[%/]> "这种设法,当你在管理多台主机及切换目录时,就不易搞错而发生一些惨剧14.在提示列秀出 [使用者]目前工作目录 (可以少打很多次pwd)# cd /root编辑 .cshrc# set prompt="''hostname -s''# " ### 找到这一行并 mark 起来set prompt = "[%n]%/# " ### 新增此行并存盘离开# logoutlogin: root ....重新登入ps.其它user id 是否可照办? 我还没试过哩..刚装freebsd而已15.如何防止别人登录到你的计算机有时,我们并不想让别人直接登入到我们的主机或是只想限定某些人可使用,如 telnet、ssh..或者是开放了些服务,如 ftp、smtpd ..等,由于这些都必需在主机端建有帐号,因此防止不相干的人登入到你的主机是非常重要的,也是一个安全上的考量..但一般限定的方式都是使用 ip 或是 domain 的方式,那么有无方法可解决这个问题呢?答案是可从 /etc/login.access 来着手,这个档案就是限定 login 的..一个典型的设定如下,例如我们想限定只有 root 及使用者 john 可登入到主机(含local 及 remote):-:ALL EXCEPT root john:ALL可分为三个项目,每个项目间以 : 分隔,说明如下:1. + 或 - 代表允许或禁止2. 设定的使用者或群组,可用 ALL EXCEPT 来强化限定的范围3. 限定的来源,如 ALL 代表全部、61.219.230. 、LOCAL、console、 ..等适当的设定,可让你的系统更加的安全..详细用法可 man login.access..15. 一个 ./ 的技巧众所周知,在 nix-like 中执行目前目录中的可执行文件时,必需加上 ./ 这二个符号,很多 unix-like 的初学者都会感觉较不习惯,因为在 dos 或 windows 的 dos 窗口中并不是如此..其实在 unix-like 中如此设定是有其安全考量的,在使用指令或执行文件时,一般是建议使用完整的目录,例如要使用 ls,则如下:# /bin/ls当然,你直接输入 ls 亦可正确的执行,这是因为你所使用的 shell 中环境变量 $PATH 的因素..你可键入 echo $PATH,来看目前 $PATH 的设定,当我们执行一个指令时,系统会依照这个环境变量来搜寻这个执行档并加以执行..内定 shell 不会将目前目录 . 加到 $PATH 中,因此如果你想在目前目录执行这个目录下的执行文件而不想加上 ./ 时,可在你的 shell 中将 . 加入..如一般在 FreeBSD 都是使用 tcsh,你可编辑个人 home 目录下的 .cshrc 檔 set path = ( ........ ,在此加入 . 即可..记得重新退出 shell 再登录,以便让你的新设定生效.16.谈谈软件的安装路径..FreeBSD 对于档案目录的观念非常重,什么样的档案要放在那个目录都有规定,这也是有别于其它 unix-like 系统..一般我们将软件安装分成二个部份,在这里来探讨一下软件到底都安装到那去了..在安装软件时,通常会安装诸如执行档、设定档、man file、doc 文件..1. 安装系统时所安装的软件执行档通常装在 /bin、/sbin、/usr/bin、/usr/sbin、/usr/libexec 下设定文件通在在 /etc 目录下man file 通常在 /usr/man 或 /usr/share/mandoc 文件通常在 /usr/share/doc 下2. 经由 package 或 port 安装的软件执行档通常装在 /usr/local/bin、/usr/local/sbin、/usr/local/libexec 下设定文件通在在 /use/local/etc 目录下man file 通常在 /usr/local/man ..doc 文件通常在 /usr/share/doc 下以上并不是绝对的(所以我用通常..^.^),因为有些特殊情况需视软件而定..如此有时可能会造成些许困扰,因为如 ssh 、 bind .. 大多是在系统安统时就安装的,那如果升级新版时怎么办..由于 FreeBSD 找寻执行档时会依照 $PATH 这个环境变量找寻,因为 /bin、/sbin、/usr/bin、/usr/sbin 比 /usr/local/bin 或 /usr/local/sbin 先,所以会先执行..也就是先抓到旧版的执行档..因此在更新时要注意这种情况,以免更新了还是执行旧的程序..那么如何看安时程序时的相关档案的安装路径呢?通常有以下方法1. 看 port 的 pkg-plist 檔2. 有时用 man [执行档名称] 可看到一些重要档案的位置3. 看说明文件,通常在 /usr/local/share/doc 目录下17、如何在 FreeBSD 同一片网硌卡加一个 ip 地址有的时候,需要在同一片网络卡上加 ip 以达到一些特殊的要求..在 FreeBSD 这是非常简单的,假设原先网络卡的 ip 是 211.211.211.211,想加一个211.211.211.212,使用的是 rl0 这片网络卡,则做法如下..1. 在 /etc/rc.conf 加上这一行ifconfig_rl0_alias0="inet 211.211.211.212 netmask 255.255.255.255"其中的 alias0 就是加装的第一个 ip,如要设定多个可在此修正,如 alias1、alias2.. aliasN2. 重新激活网络卡,执行 /etc/netstart# /etc/netstart18.保护你的档案在系统中,有许多档案或一些设定档是非常重要的,加上 FreeBSD (或是一般 unix-like)系统都没有类似 ms 的垃圾回收桶的功能,万一不幸删掉(或修改)某个重要的档案,可能会造成不小的困扰..虽然,FreeBSD 对于档案的权限设定的非常严密,但有些时候,我们以 root 身份工作,仍会有此风险..那要如何避免这种情形发生或是保护某些重要的档案呢?我们可以用 chflags 来达成这个目的,顾名思义, chflags 是由二个字所组成,即 change 和 flags(档案的旗标)..例如我们要保护 /etc/inetd.conf 这个档案,以免误删或被修改,则指令如下:# chflags schg /etc/inetd.conf这样就可以保护这些档案,如要显示这些档案的旗标(flag),可用 ls 来看..# ls -lo /etc/inetd.conf => l 是小写的 L-rw------- 1 root wheel schg 47 Mar 28 21:29 inetd.conf要解除旗标设定,可用 unschg,也就是在 schg 前加 un ,如:# chflags unschg /etc/inetd.conf大部份我们进入主机都是以 root 身份执行,因此稍不小心,可能就..因此建议将一些重要的档案及设定档设定为 schg flags,以保护档案..如 /bin、 /sbin、 /etc/.conf、 /usr/lcaol/etc/*.conf .. 这些档案最好都是定成 schg 旗标..chflags 详细用法请参考 man chflags..19.有关系统的一些激活问题..有时,会修改 FreeBSD 的一些设定,如一些网络参数、软件的 .conf 设定,或是 /etc/r.conf 檔,那么如何让设定值生效,是否一定要重新开机呢?这可分为三方面来说..1. 网络相关设定,如网络适配卡、hostname .. 等,只要执行以下指令就可以重新加载你的网络设定..# sh /etc/netstartnetstart 是一个 script 档案,执行时会去参考 /etc/work。
FreeBSD操作系统 安装软件
实验二FreeBSD 安装应用程序一、 FreeBSD 安装软件的主要方式1、Packages:packages是FreeBSD预编译好的软件包,它记录了二进制软件的内容、安装位置、软件包的描述信息、软件包之间的依赖关系等等,相当于为windows系统下的那些绿色软件,不用安装拷贝过来就能用的。
1:用root权限执行sysinstall,然后选择Configure菜单项中的Packages选项,里面会列出所有的可用软件,可以从里面选择你要安装的软件,至于方法我想大家都会了,就不再赘述了。
2:用Sysinstall来安装、管理软件比较直观,但它需要一个标准的安装介质,适合大量安装软件包时使用,如果只是仅仅添加几个独立的软件包,还是用下面的方法吧:pkg_add安装一个packagepkg_delete删除一个packagepkg_info显示软件包的安装信息和简短描述pkg_version显示软件包的版本信息2、Ports:FreeBSD 的ports 就是別人已经编译过的,安装测试没问题了,他们将安装软件编译时所需的功能设定、编译程序及安裝程序都依固定的格式放在一起,我们只要先将某个软件ports 目录下的档案抓回来,然后轻松的makemake install即可完成软件的编译和安装(也可以用一行make all install 来代替)3、源代码编译安装1:首先把安装文件拷贝到一个目录下例如,如果你是以root身份登录上的,就将软件拷贝至/root中#cp xxx.tar.gz /root2:由于该文件是被压缩并打包的,应对其解压缩。
命令为:#tar xvzf filename.tar.gz3:执行该命令后,安装文件按路径解压缩在当前目录下,一般会生成一个filename目录。
进入该目录用ls命令可以看到解压缩后的文件。
通常在解压缩后产生的文件中,有"Install"的文件。
Freebsd7.2下Ports安装PHP5、MySql5.4、Apache22
<Directory "/usr/local/www/phpMyAdmin">
Options none
AllowOverride Limit
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 #这里可以考虑安全性。
</Directory>
按照上述别名方法,发现在Apache22上并不成功,没有办法,我使用软连接方式实现了,软连接方式相当于将phpmyadmin目录复制到了apache主目录(/usr/local/www/apahce22/data/)中:
$cfg['Servers'][$i]['auth_type'] = 'config';
/* End of servers configuration */
?>
Phpmyadmin的使用:
打开地址http://XXX/phpmyadmin/看是否能使用,登录的用户名和密码是OS的root和密码。
#启动apache
apachectl start
注意这时启动的时候会报一个"No such file or directory: Failed to enable the 'httpready' Accept Filter"错误,经过google后,发现得启动一个内核模块.如下:
cd /usr/local/etc/rc.d/
./mysql-server.sh start
修改mysql的密码:
/usr/local/bin/mysqladmin -u root -p password 'zoux..?'
为FreeNAS安装自己需的软件
这里有两种安装方式,
一,使用FreeNAS提供的web界面进行安装
不需要FreeNAS正常的访问互联网,内网也可以。
打开 http://你的FreeNAS地址/system_packages_edit.php
看到"+"号标志添加一个软件包,然后浏览到你刚刚下载到的wget存放的位置,然后点“安装”就可以了。
附:
删除一个软件包
一:访问http://你的FreeNAS地址/system_packages_edit.php
点要删除的软件包后面的“-”就可以了
二:sheel下删除
运行
pkg_add 你要删除的软件包名+版本号
如果不能确定版本号使用pkg_info 列出所有已经安装的软件包。
例如
由于FreeNAS的体积直接在上面编译是不大现实的了,我们可以借助pkg来安装FreeBSD的二进制软件包。
好了,话不多说了,开始安装软件吧。
首先,确定你FreeBSD的版本号:
确定你的FreeNAS是那个FreeBSD版本,一般在web管理界面都可以看到。
类似FreeBSD 6.3-RELEASE-p4 (revision 199506) 这样的
这种软件安装方式比较直观,但是如果你安装的软件包还依赖其他软件包这样安装就可能出现不能安装的情况。
那就试一试另一种安装方式。
二,通过sheel进行安装。
这种安装方式需要FreeNAS正常的访问互联网。
打开一个shell或者用ssh连接到FreeNAS。
运行
# pkg_add ftp:///pub/FreeBSD/ports/i386/packages-6-stable/All/wget-1.11.2_1.tbz
FreeBSD安装教程
FreeBSD 8.2图文教程,常用命令以及VI 命令启动mvware虚拟机后,在虚拟光驱中加载FreeBSD系统,启动并按Esc将载入FreeBSD 引导画面,如下图:现在,按回车键或数字1键,选择第1项通过方式启动FreeBSD 安装程序。
如果您不进行选择,安装程序会在十秒后自动使用默认方式启动。
盘方向键选择45 China 中国,为我们的国家,回车键确定。
USA ISO,回车确认进入下一步。
正式进入了安装向导,FreeBSD 7.0 的安装程序名叫Sysinstall。
现在你看到的就是Sysinstall 的主菜单,其中有各种安装选项。
使用方向键选择Standard项目,回车确认,进入标准安装。
现在看到的是分区向导,这里会列出你的硬盘信息。
一般情况下,我们按键盘A键,使用自动分区功能,或者手工创建分区。
这里按A键,自动分区完毕。
按键盘Q键,完成分区。
这里是询问你安装何种硬盘引导程序。
第一项是使用FreeBSD 的启动引导程序,第二项是标准引导,第三项是不安装引导程序。
如果我们安装单操作系统,请选择第二项。
如果有多个操作系统,请选择第一项。
第三项是不安装,这指使用目前已经有的其他操作系统的引导程序。
由于我的虚拟机上安装了多个系统,故选择FreeBSD系统的加载方式(BootMgr),确认。
再确认,进入分区向导。
要注意的是FreeBSD 的磁盘分区与Windows 的分区概念不一样,除了硬盘分区之外,还有一个Label 分区。
我们依然按A键,使用自动分区,软件会为我们分配合适的磁盘分区与虚拟内存,按Q键完成。
现在看到的,是比较重要的部分,选择软件安装包。
我们只需要一个全新干净的FreeBSD,这里我们选择倒数第二项Minimal 最小安装模式,按空格键确认。
这里要注意的是,FreeBSD 有一个很方便的软件包管理和安装器,名叫ports,类似Ubunut 的Apt-get,一般我们都是必须安装的。
freebsd命令速记超级大全
FreeBSD Command Tools第一步我如何离线?(exit)我如何停止电脑?(shutdown -h now)我如何重新激活计算机? (shutdown -r now)我如何在单使用者模式下停止系统? (shutdown now)我如何切换终端机? (ALT-F*)文件我如何阅读manual page? (man)使用者管理(1)我该如何增加一个使用者? (adduser)我如何移除使用者? (rmuser)我如何改变我的密码? (passwd)"su" 指令我如何"su" 至root 帐号? (su)我如何"su" 至其它使用者的帐号? (su username)四处观察我在哪? (pwd)我如何观察目录下有什么? (ls)我如何看到以点开始的隐藏档? (ls -a)我如何看到更多的讯息(存取许可,拥有者,群组,大小,日期)? (ls -l) 我如何看出那些档是什么? (ls -F)这些是什么档: ".." 与"."? (ls -aF)四处移动我该如何改变工作目录? (cd)如何回到上一层目录? (cd ..)我如何回到自己的工作目录? (cd, cd ~/)屏幕控制我如何卷回(在终端机中,非X)? (The Scroll Lock Key)我该如何清除屏幕? (clear)文章我如何不使用文书编辑器就可以观看小的档案? (more)最普遍的文书编辑器是? (vi)"vi" 看起来有点难,我可以从"ee" 开始吗? (ee)"visual" 编辑器学习"vi" 最有效的方法为何? (vilearn)"vi" 是如何工作的? (man vi)什么是储存指命? (:w)什么是离开指令? (:q)什么是可以储存与离开的命令? (:wq)如何离开而不使用储存指令? (:q!)我如何移动? (h, j, k, and l)Esc 键有什么用途? (The Esc Key)我如何加入新的文字? (a and i)我如何建立新的一行? (o and O)我如何删除文字? (x and dd)我如何拷贝文章内容? (yy and p)我如何替代文章? ?我如何使用数个指令? (nCommand)我如何搜寻文章? (/text)我如何起动"vi" 于只读模式? (view)使用者管理(2)我如何新增使用者至群组? (vi /etc/group)计算机信息我如何能观看开机记录文件? (dmesg)有什么方法可以让我慢慢地观看开机记录文件吗? (dmesg |more)谁显示谁在系统上? (who)他们正在做什么?? (w)"w" 可以显示出所有的处理吗? (w)何时我如何显示或设定日期时间? (date)我如何显示月历? (cal)有什么方法可以让我慢慢地观看月历吗? (cal | more)Communications我如何显示(或不显示) 其它使用者送来的讯息? (mesg y, mesg n) 我如何传送讯息到其使用者的屏幕? (write)我如何送讯息到每一个人的屏幕? (wall)我如何与他人交谈(chat)? (talk)档案管理我如何建立一个空档案? (touch)我如何删除档案? (rm)我如何建立一个目录? (mkdir)我如何移除一个空的目录? (rmdir)我如何移除一个目录包括里面所有的东西(包括子目录)? (rm -r)我如何移除以"-" 起头的档案? (rm -- -filename)我如何拷贝档案? (cp)我如何拷贝整个目录包括它所有的内容? (cp -R)我该如何搬移档案与目录? (mv)我如何改变档案/目录名称? (mv)我如何执行rm、cp 与mv 时,须要我的许可? (-i)我如何执行rm、cp 与mv 时,不须要我的确认? (-f)档案连结我如何连结一个档案或目录? (ln -s)我如何hard link 一个档案? (ln)档案拥有权/存取许可我如何观察谁是档案拥有者? (ls -l)我如何观察档案/目录的存取许可? (ls -l)我如何改变档案/目录的使用者拥有人? (chown)我如何改变档案/目录的群组拥有人?s group owner? (chgrp)我如何改变档案/目录的使用者与群组拥有人? (chown user:group) 我如何改变存取许可? (chmod)如果我拥有这个目录,我可否修改不是我的档案? (yes)软盘机装置我如何挂上我的软盘? (mount)我如何挂上MS-DOS 格式的软盘机? (mount -t msdos)我如何卸下我的软盘? (umount)应用程序我如何起动应用程序? (./)我如何由文件名称来起动应用程序? (PATH)我如何在背景起动应用程序? (&)我如何知道我的PATH 是? (echo $PATH)所有的应用程序在那? (The FreeBSD Ports Collection)我如何安装一个port? (make install clean)那里有编辑好的二进制文件? (The FreeBSD Packages Collection) 我如何移除应用程序? (pkg_delete)使用者环境使用者的profile 档案在那? (vi ~/.profile)我如何改变我的shell? (chsh)处理管理我如何列出处理? (ps)我如何列找到处理? (ps -waux | grep "name of the process")我如何砍掉处理? (kill)磁盘管理我如何检查可用的磁盘空间? (df)我如何检查每个目录下用了多少磁盘空间? (du)FreeBSD Command Tools第一步我如何离线?(exit)我如何停止电脑?(shutdown -h now)我如何重新激活计算机? (shutdown -r now)我如何在单使用者模式下停止系统? (shutdown now)我如何切换终端机? (ALT-F*)文件我如何阅读manual page? (man)使用者管理(1)我该如何增加一个使用者? (adduser)我如何移除使用者? (rmuser)我如何改变我的密码? (passwd)"su" 指令我如何"su" 至root 帐号? (su)我如何"su" 至其它使用者的帐号? (su username)四处观察我在哪? (pwd)我如何观察目录下有什么? (ls)我如何看到以点开始的隐藏档? (ls -a)我如何看到更多的讯息(存取许可,拥有者,群组,大小,日期)? (ls -l) 我如何看出那些档是什么? (ls -F)这些是什么档: ".." 与"."? (ls -aF)四处移动我该如何改变工作目录? (cd)如何回到上一层目录? (cd ..)我如何回到自己的工作目录? (cd, cd ~/)屏幕控制我如何卷回(在终端机中,非X)? (The Scroll Lock Key)我该如何清除屏幕? (clear)文章我如何不使用文书编辑器就可以观看小的档案? (more)最普遍的文书编辑器是? (vi)"vi" 看起来有点难,我可以从"ee" 开始吗? (ee)"visual" 编辑器学习"vi" 最有效的方法为何? (vilearn)"vi" 是如何工作的? (man vi)什么是储存指命? (:w)什么是离开指令? (:q)什么是可以储存与离开的命令? (:wq)如何离开而不使用储存指令? (:q!)我如何移动? (h, j, k, and l)Esc 键有什么用途? (The Esc Key)我如何加入新的文字? (a and i)我如何建立新的一行? (o and O)我如何删除文字? (x and dd)我如何拷贝文章内容? (yy and p)我如何替代文章? (r)我如何使用数个指令? (nCommand)我如何搜寻文章? (/text)我如何起动"vi" 于只读模式? (view)使用者管理(2)我如何新增使用者至群组? (vi /etc/group)计算机信息我如何能观看开机记录文件? (dmesg)有什么方法可以让我慢慢地观看开机记录文件吗? (dmesg |more)谁显示谁在系统上? (who)他们正在做什么?? (w)"w" 可以显示出所有的处理吗? (w)何时我如何显示或设定日期时间? (date)我如何显示月历? (cal)有什么方法可以让我慢慢地观看月历吗? (cal | more)Communications我如何显示(或不显示) 其它使用者送来的讯息? (mesg y, mesg n) 我如何传送讯息到其使用者的屏幕? (write)我如何送讯息到每一个人的屏幕? (wall)我如何与他人交谈(chat)? (talk)档案管理我如何建立一个空档案? (touch)我如何删除档案? (rm)我如何建立一个目录? (mkdir)我如何移除一个空的目录? (rmdir)我如何移除一个目录包括里面所有的东西(包括子目录)? (rm -r)我如何移除以"-" 起头的档案? (rm -- -filename)我如何拷贝档案? (cp)我如何拷贝整个目录包括它所有的内容? (cp -R)我该如何搬移档案与目录? (mv)我如何改变档案/目录名称? (mv)我如何执行rm、cp 与mv 时,须要我的许可? (-i)我如何执行rm、cp 与mv 时,不须要我的确认? (-f)档案连结我如何连结一个档案或目录? (ln -s)我如何hard link 一个档案? (ln)档案拥有权/存取许可我如何观察谁是档案拥有者? (ls -l)我如何观察档案/目录的存取许可? (ls -l)我如何改变档案/目录的使用者拥有人? (chown)我如何改变档案/目录的群组拥有人?s group owner? (chgrp)我如何改变档案/目录的使用者与群组拥有人? (chown user:group) 我如何改变存取许可? (chmod)如果我拥有这个目录,我可否修改不是我的档案? (yes)软盘机装置我如何挂上我的软盘? (mount)我如何挂上MS-DOS 格式的软盘机? (mount -t msdos)我如何卸下我的软盘? (umount)应用程序我如何起动应用程序? (./)我如何由文件名称来起动应用程序? (PATH)我如何在背景起动应用程序? (&)我如何知道我的PATH 是? (echo $PATH)所有的应用程序在那? (The FreeBSD Ports Collection)我如何安装一个port? (make install clean)那里有编辑好的二进制文件? (The FreeBSD Packages Collection) 我如何移除应用程序? (pkg_delete)使用者环境使用者的profile 档案在那? (vi ~/.profile)我如何改变我的shell? (chsh)处理管理我如何列出处理? (ps)我如何列找到处理? (ps -waux | grep "name of the process")我如何砍掉处理? (kill)磁盘管理我如何检查可用的磁盘空间? (df)我如何检查每个目录下用了多少磁盘空间? (du)工具哪里有计算器? (bc)一、基础篇我如何离线?(exit)我如何停止电脑?(shutdown -h now)我如何重新激活计算机? (shutdown -r now)我如何在单使用者模式下停止系统? (shutdown now)我如何切换终端机? (ALT-Fn) 注:Fn是指F1至F8八个功能键。
002 FreeBSD全能服务器安装手册之基础介绍篇--BSD 的简史
FreeBSD全能效劳器安装手册之根底介绍篇--BSD 的简史有四种主要的BSD变体。
其中有三种(FreeBSD、OpenBSD和NetBSD)是完全免费的。
第四种(Mac OS X)在技术上是一种操作系统的核心,大多数人甚至不认为它是一种BSD的变体。
要了解不同版本之间的区别,让我们先简单回忆一下BSD的历史以便了解这些不同的版本是如何开发出来的。
今天的BSD变体是原来的AT&T Unix操作系统的开源软件版本。
实际上,这些变体都来自于加州大学伯克利分校开发的Unix。
BSD实际上是伯克利分校软件发布版的缩写字。
原来BSD 代码的很大一局部是以免费的AT&T Unix代码为根底的。
在William F. Jolitz等原来的BSD开发小组的关键成员的努力之下,这个代码的最后一局部根据开源软件许可证协议开发出来了,并且制作出了386BSD。
1993年,386BSD分裂为我们目前所知道的两个主要版本:NetBSD和FreeBSD。
这两个版本是根据不同的目的和目标建立起来的。
毫不奇怪,每一个版本都有自己的历史。
第三个版本OpenBSD是在1996年推出的。
这个版本主要是为了解决其它变体中存在的一些平安问题。
Mac OS X操作系统中采用的BSD核心被人们称作Darwin(达尔文)。
它是一个完全独立的组件。
Darwin软件本身来自于NeXT公司开发的NextStep操作系统的BSD层。
NeXT公司是史蒂夫*乔布斯在80年代离开苹果公司之后创立的。
从技术上说,Mac OS X操作系统是以FreeBSD内核为根底的。
是以为根底的。
然而,Mac OS X已经超出了根本的BSD代码,完全是个性化设计的。
Mac OS X的关键优势在于其Aqua GUI(图形用户界面)。
这个图形界面能够让OS X系统像原来的Mac OS X操作系统一样运行,但是同时具有一个高效率的BSD内核的全部优点和灵活性。
通用功能同其它的Unix变体一样,四种BSD发布版提供了同样的根本功能。
FreeBSD的一些命令及FAMP配置安装
FreeBSD的一些命令及AMP配置安装关机命令#halt -p和shutdown -p now重启命令#shutdown -r now挂载和卸载光盘命令#mount /cdrom#unmount /cdrom#cd /cdrom查找文件命令#find /etc -name "*conf*"查看机器情况# uname –rna通过ports安装程序安装上传下载文件插件lrzsz#cd /usr/ports/comms/lrzsz#make clean install clean && rehash要下载就输入lsz ,上传就输入lrz,出现对话框挂载U盘#cd /mnt#mkdir usb#moun -t msdosfd /dev/da0s1 /mnt/usb用ports安装gmake有些程序在安装的时候需要用gmake来编译源码# cd /usr/ports/devel/gmake/# make all然后系统就开始自动下载从gnu官方站点上下载最新的gmake源码:然后系统就开始自动编译然后再重启系统:xinsoftbsd# reboot重启以后,FreeBSD就支持gmake了。
pkg安装gmake挂载第二张光盘,找到gmake-3.81_2.tbz#pkg_add gmake-3.81_2.tbz安装freetype2出错#./configure出现GNU make(> = 3.79.1) or makepp (> = 1.19) is required to build FreeType2.原因:make或gmake版本过低解决办法:#vi configure把GNUMAKE=make改成GNUMAKE=gmake再通过pkg安装gmake在php中编译#./configure --prefix=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-xml --with-png --with-jpeg-dir=/usr/local/jpeg6 --with-zlib --with-freetype-dir --with-gd --with-curl --enable-track-vars --disable-debug --enable-url-includes --enable-sockets --enable-force-cgi-redirect--enable-magic-quotes --enable-ftp --enable-gd-native-ttf --with-ttf --with-gdbm --with-gettext--with-iconv --enable-mbstring=all --enable-memory-limit出现configure: error: DBA: Could not find necessary header file(s).是因为没安装gdbm,在第二张盘里有gdbm-1.8.3_3.tbz#pkg_add gdbm-1.8.3_3.tbz即可通过编译安装完php后启动apache出现httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName解决办法:# vi /usr/local/apache2/conf/httpd.conf添加这么一行:ServerName 127.0.0.1:80AMP配置安装1、下载首先从网上下载以下版本的压缩包 (1) mysql-5.0.41.tar.gz(2) httpd-2.2.8.tar.gz(3) php-5.1.4.tar.gz(4) libxml2-2.6.19.tar.gz(5) zlib-1.2.3.tar.gz(6) libpng-1.2.34.tar.gz(7) jpegsrc.v6b.tar.gz(8) gd-2.0.33.tar.gz(9) freetype-2.1.10.tar.gz(10) curl-7.15.0.tar.(11) gzlibxslt-1.1.15.tar.gz(12) mediawiki-1.9.3cn.zip2、开始安装Mysql-5.0.41.tar.gz#tar –xvf mysql-5.0.41.tar.gz#cd mysql-5.0.41#./configure --prefix=usr/local/mysql# make#make install为mysql加入访问的组与用户#pw group add mysql#pw user add mysql –g mysql#cp support-files/f /etc/f #cd /usr/local/mysql# chown -R mysql .#chgrp -R mysql .# bin/mysql_install_db --user=mysql# chown -R root .#chown -R mysql var#bin/mysqld_safe --user=mysql &#/usr/local/bin/mysqladmin -u root password '123456'#mysql -u root –p设置开机自动运行#vi /usr/local/etc/rc.d/mysql_start.sh添加#! /bin/sh/usr/local/mysql/bin/mysql_safe &编辑完成后保存并将属性更改为可执行#chmod +x mysql_start.sh3. Apache2的安装(httpd-2.2.8.tar.gz)#./configure --prefix=/usr/local/apache2 --enable-shared=max --enable-module=rewrite --enable-so#make#make install建立自动运行执行文件#vi /usr/local/etc/rc.d/apache_start.sh添加#! /bin/sh/usr/local/apache2/bin/httpd –k start保存后修改为可执行#chmod +x /usr/local/etc/rc.d/apache_start.sh4. 为PHP的安装做好准备而安装的各种包安装xml2-2.6.19.tar.gz#tar –xvf xml2-2.6.19.tar.gz#cd xml2-2.6.19#./configure#make#make install安装zlib-1.2.3.tar.gz#tar –xvf zlib-1.2.3.tar.gz#cd zlib-1.2.3#./configure#make#make install安装libpng-1.2.34.tar.gz#tar –xvf libpng-1.2.34.tar.gz#cd png-1.2.8#./configure --prefix=/usr/local/libpng2#make#make install安装jpegsrc.v6b.tar.gz#mkdir –p /usr/local/jpeg6#mkdir –p /usr/local/jpeg6/bin#mkdir –p /usr/local/jpeg6/lib#mkdir –p /usr/local/jpeg6/include#mkdir –p /usr/local/jpeg6/man#mkdir –p /usr/local/jpeg6/man1#mkdir –p /usr/local/jpeg6/man/man1#./configure--prefix=/usr/local/jpeg6--enable-shared--enable-static#make#make install安装freetype-2.1.10.tar.gz这个软件采用gmake来安装,因此首先将configure文件中的make修改为gmake #./configure#gmake#gmake install安装curl-7.15.0.tar#./configure#make#make install安装gzlibxslt-1.1.15.tar.gz#./configure#make#make install5.开始安装PHP5源代码:php-5.1.4.tar.gz#tar-zxvf php-5.1.4.tar.gz#cd php-5.1.4#./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-xml –with-mysql=/usr/local/mysql –with-zlib –with-jpeg-dir=/usr/local/jpeg6 --with-png-dir=/usr/local/libpng2 –with-config-file-path=/usr/local/lib –disable-debug –enable-safe-mode –enable-trans-sid –enable-memory-limit –enable-short-tags –disable-posix –enable-exif –enable-ftp --enable-sockets#make#make install#cp /usr/src/php-5.1.4/php.ini-dist /usr/local/lib/php.ini把php加到apache里去代码:#vi /usr/local/apache2/conf/httpd.conf添加LoadModule php5_module modules/libphp5.soAddType application/x-httpd-php .phpAddType application/x-httpd-php-source .phps然后放个test.php文件上去测试看看成功vi /usr/local/apache2/htdocs/test.phpPHP代码:<?phpinfo();>启动一下apache服务#/usr/local/apache2/bin/apachectl start在浏览器中输入http://127.0.0.1/phpinfo.php这应该会出现一些php的测试信息6.安装MediaWiki 1_9_3上传到/usr/local/apache2/htdocs/目录下#cd /usr/local/apache2/htdocs#chmod a+w config #这样保证Wiki的setup程序可以有执行权利点击set up the wiki然后开始安装前的一些检测信息填入你的一些相关信息后,执行,如果成功会出现类似画面。
MacPorts命令手册
MacPorts命令手册MacPorts是Mac OS X上独立于Application系统的一种在线安装软件控制平台。
MacPorts来源于FreeBSD的port软件,更多的背景资料可以在MacPorts的网站上看。
这里翻译了MacPorts的Document里面的常用命令,如有异议请以原Document中3.1部分为准。
1. 升级MacPorts:%% sudo port selfupdate也可用debug模式进行:%% sudo port -d selpupdate2. 列出可用ports软件:%% sudo port list这个列表会很长,会列出所有可用的软件,大概有3~4万个,可以导入txt文档里面看。
实际上MacPorts的官网上也可以查看。
3. 搜索带有关键词信息的软件列表:%% sudo port search software_name4. 搜索到软件的具体名字,就可以用info命令查询所需软件信息:%% sudo port info software_name5. 用deps命令查看软件依赖性:%% sudo port deps software_name6. 在安装软件前,用variants命令查看本地可用的已安装软件包:%% sudo port variants software_name7. 安装软件software_name:%% sudo port install software_name8. clean命令清理安装过程中的缓存文件,在获取软件失败时也可以使用:%% sudo port clean --all software_name9. 卸载软件9.1. uninstall命令卸载软件:%% sudo port uninstall software_name9.2. 递归卸载要卸载的软件所依赖的软件包:%% sudo port uninstall --follow-dependencies software_name但这一命令不会卸载那些又依赖其他软件包的软件。
portmaster 用法
portmaster 用法`portmaster` 是一个用于管理软件包的工具,它通常用于在类Unix系统(如FreeBSD)上安装、升级和删除软件包。
下面是`portmaster`的基本用法和一些常见选项:### 基本用法1. **安装软件包**```bashportmaster <package-name>```2. **升级软件包**```bashportmaster -u <package-name>```3. **删除软件包**```bashportmaster -r <package-name>```4. **更新系统上的所有软件包**```bashportmaster -a```5. **只升级过时的软件包**```bashportmaster -u```6. **清除软件包构建缓存**```bashportmaster -c <package-name>```### 高级选项* `-d <path>`:指定`/usr/ports`的替代路径。
* `-D <variable=value>`:设置环境变量。
* `-f`:强制执行操作,即使存在未解决的依赖关系。
* `-n`:仅显示将要执行的操作,而不实际执行它们。
* `-p <package-name>`:为特定的软件包执行操作。
* `-v`:显示详细输出。
* `--no-confirm`:在执行操作之前不提示用户确认。
* `--make-jobs=N`:指定并行编译的作业数(默认为1)。
* `--no-reinstall`:在升级过程中跳过已安装的软件包。
* `--no-bin-update`:在升级过程中跳过二进制文件的更新。
* `--no-compile`:跳过编译过程。
* `--no-clean`:在删除软件包后不清理其构建目录。
* `--no-use-bin-only`:在升级过程中不使用仅包含二进制文件的软件包。
linux各个版本的区别
linux各个版本的区别Redhat系列⽬前许多⾼⼿都使⽤它,长相⼀般但却很强悍,⼀般是Linux⾼⼿的⾸选系统,相⽐之下就是桌⾯系统有点不⼤⼀样,拥有强⼤的rpm软件包管理系统,界⾯更加简洁,如果你不喜欢太多花哨的桌⾯系统可以考虑⽤它! Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的RedhatAdvance Server,收费版本)、FedoraCore(由原来的Redhat桌⾯版本发展⽽来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。
Redhat应该说是在国内使⽤⼈群最多的Linux版本,甚⾄有⼈将Redhat等同于Linux,⽽有些⽼鸟更是只⽤这⼀个版本的Linux。
所以这个版本的特点就是使⽤⼈群数量⼤,资料⾮常多,⾔下之意就是如果你有什么不明⽩的地⽅,很容易找到⼈来问,⽽且⽹上的⼀般Linux教程都是以Redhat为例来讲解的。
Redhat系列的包管理⽅式采⽤的是基于RPM包的YUM包管理⽅式,包分发⽅式是编译好的⼆进制⽂件。
稳定性⽅⾯RHEL和CentOS的稳定性⾮常好,适合于服务器使⽤,但是Fedora Core的稳定性较差,最好只⽤于桌⾯应⽤。
Debian系列Debian系列,包括Debian和Ubuntu等。
Debian是社区类Linux的典范,是迄今为⽌最遵循GNU规范的Linux系统。
Debian最早由Ian Murdock于1993年创建,分为三个版本分⽀(branch): stable, testing 和 unstable。
其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌⾯⽤户。
testing的版本都经过unstable中的测试,相对较为稳定,也⽀持了不少新技术(⽐如SMP等)。
⽽stable⼀般只⽤于服务器,上⾯的软件包⼤部分都⽐较过时,但是稳定和安全性都⾮常的⾼。
FreeBSD使用手册2
/usr 分区存储很多用来系统运行所需要的文件例如 ports(7) (建议这样做) 和源代码 (可选的)。 ports 和基本系统的源代码在安装时都是可选的,但我们建议给这个分区至少保留 2GB 的可用空间。
当选择分区大小的时候,记住保留一些空间。用完了一个分区的空间而在另一个分区上还有很多, 可能会导致出现一些错误。
注意: 一些用户会发现 sysinstall(8) 的 Auto-defaults 自动分区有时会分配给 /var 和 / 较小的分区空间。 分区应该精确一些并且大一些。
11.2.1.2 交换分区
一般来讲,交换分区应该大约是系统内存 (RAM) 的两倍。 例如,如果机器有 128M 内存,交换文件应该是 256M。 较小内存的系统可以通过多一点地交换分区来提升性能。 不建议小于 256 兆的交换分区,并且扩充您的内存应该被考虑一下。当交换分区最少是主内存的两倍的时候,内核的 VM (虚拟内存) 页面调度算法可以将性能调整到最好。如果您给机器添加更多内存, 配置太小的交换分区会导致 VM 页面扫描的代码效率低下。
-rw-r--r-- 1 root wheel 7980 May 20 1998 srm.conf
-rw-r--r-- 1 root wheel 7933 May 20 1998 srm.conf.default
文件大小显示了只有 srm.conf 改变了。以后 Apache 的升级就不会改变这个文件。
FreeBSD 包含的大多数服务,例如 cron(8),就是通过系统启动脚本启动的。 这些脚本也许会有些不同, 这取决于 FreeBSD 版本。但是不管怎样, 需要考虑的一个重要方面是他们的启动配置文件要能被基本启动脚本识别捕获。
FreeBSD安装与配置之概述
FreeBSD安装与配置之概述作者:佚名来源:站长之家更新时间:2008-9-13 11:16:04【字体:缩小字体放大字体】FreeBSD是一种运行在Intel平台上、可以自由使用的Unix系统,它可以从In ternet上免费获得。
而它又具备极其优异的性能,使它得到了计算机研究人员和网络专业人士的认可。
因此,不但专业人员把它用作个人使用的Unix工作站,很多企业,特别是ISP (Internet服务提供商)都使用运行FreeBSD的服务器来为他们的众多用户提供网络服务。
BSD Unix使用一个神话中的精灵形象作为其吉祥物,这个吉祥物标志被各BSD发行版本沿用。
1993年12月FreeBSD 1.0版本正式发布。
任何人都可以通过购买光盘或者通过I nternet下载的方法,自由获得FreeBSD系统,使得FreeBSD取得了很大成功。
由于Unix商标属于X/Open组织,而FreeBSD只是一个自由操作系统,从法律角度上看FreeBSD 不能被叫作Unix(不能使用Unix做商标)。
但是基于Unix本身的历史,FreeBS D可以算最原汁原味的Unix。
由于FreeBSD十分关心系统的性能和稳定性,同时FreeBSD的开发又非常活跃并十分开放。
因此在系统开发中支持几个版本的FreeBSD系统并行发展,一些版本用于提供一个最具稳定性的操作系统,另一些版本逐渐融合进各种新特性,使FreeBSD不断发展。
目前Fr eeBSD最新版本是5.3。
那么FreeBSD与Linux有什么区别呢,我想大家也许对这个问题很感兴趣。
FreeBSD是一个自由的,源自AT&T UNIX的操作系统。
目前已经不包含任何AT&T的代码。
可以说它是正统的UNIX后代。
而Linux是由一个芬兰Helsinki大学的学生Linus Torvalds开发的UNIX的克隆。
事实上,FreeBSD和Linux严格意义上不能叫做UNIX,因为UNIX是The Open Group的注册商标。
FreeBSD软件安装卸载工具--Ports和Packages详解doc
摘抄并简体化此文,与初学同仁共享。
==================================FNP:FAQ - Ports and Packages v 1.52004.08.20 Table of Contents1、如何只抓取tarball?2、如何仅做到解开tarball的步骤?3、如何仅做到解开tarball 并补上官方提供的patch?4、如何安装一个新的port?5、如何安装一个新的port,并将打包(package)起来?6、如何打包一个port,并将其所有相依的ports 也打包起来?7、如何对一个已经安装的port 打包?8、如何清理ports 编辑期间所产生的暂存资料?9、如何清理ports 编辑期间所产生的暂存资料,以及其相对应的tarball?10、如何在安装ports 前查询所需依赖/相关的套件?11、如何移除已安装的ports?12、如何一并移除所相依的ports?13、如何重新安装已安装过的ports?14、如何以关键字搜寻ports?15、如何升级已安装的ports?16、如何查询目前系统安装了哪些套件?17、如何查询目前系统有没有安装这个关键字的套件?18、如何查询某个档案是属於哪些套件?19、如何查询某个套件安装了哪些档案?20、如何安装旧版的ports?21、如何更新ports Mk?22、如何解决安装ports 时出现sed -i 的错误?23、如何列出所有可以升级的ports?24、如何得知ports system 对某个ports 所提供的编译叁数?25、如何手动加入编译ports 的叁数?26、如何指定ports 的安装路径?27、安装ports 出现FORCE_PKG_REGISTER 的错误讯息28、安装ports 出现Shared object libintl.so.X not found 的错误讯息29、如何安装packages?30、如何强制安装packages?31、如何查询packages 与其他packages 之间的相依性?32、如何远端安装packages?33、如何更新INDEX 对照表?34、如何更新INDEX HTML?35、如何针对某些ports 不做CVSup?36、如何使用CVSup 同步ports collections?37、安装ports 出现port is outdated 的错误讯息39、安装ports 出现OpenSSL vulnerabilities 的错误讯息40、如何在FreeBSD 上模拟Linux 的环境?41、如何在FreeBSD 上安装Linux rpm?42、安装ports 时,原本应该出现的清单选项不见了43、如何检查是否有安装重覆的ports/packages?`make deinstall' 与`pkg_delete' 有什麽不同?44、安装ports 出现local modification time does not match remote 的错误讯息1、如何只抓取tarball?如果只希望抓取tarball 下来的话,仅需下make fetch 即可。
FreeBSD 6.0 安装、优化、使用详细教程
FreeBSD 6.0 安装、优化、使用详细教程必备知识:熟练安装windows操作系统。
一、安装第一小节FreeBSD版本的选择FreeBSD版本用英文及数字来代表5.3 5.46.0 6.1等,其中奇数结尾代表新功能版本,偶数结尾代表稳定版本。
在数字后面还有RELEASE,BETA,STABLE。
其中我们一般下载RELEASE版本,STABLE版本要升级源码并编译来实现,BETA是测试版本,如果没有需要我们一般不推荐用BETA版本。
下载FreeBSD 6.0安装文件镜像,下载Freebsd 6.0 RELEASE版本ISO.如果只用来做服务器,那么下载6.0-RELEASE-i386-disc1.iso就可以了。
如果要做桌面那就最好也下载第二张6.0-RELEASE-i386-disc2.iso6.0-RELEASE-i386-bootonly.iso一般我们不需要。
如果你能忍受网络安装的速度那么也可以下载这张,大部分从网络上来安装。
I386架构请下载下面,包括你不清楚你的CPU型号即下载I386ftp:///pub/FreeBSD/releases/i386/ISO-IMAGES/如果你的CPU支持64位请下载,并希望用64位版本请下载下面FTP中的ISO 文件,amd64并不是只支持AMD的CPU,它包含AMD64、EM64(包括速龙、散龙、奔腾、赛扬、至强)及目前市场上大部分64位CPUftp:///pub/FreeBSD/releases/amd64/ISO-IMAGES/以下的CPU并不常用所以请谨慎下载如果你是高端IA64位CPU请下载ftp:///pub/FreeBSD/releases/ia64/ISO-IMAGES/如果你是alpha机器请下载ftp:///pub/FreeBSD/releases/alpha/ISO-IMAGES/如果你要在新机器上安装并投入使用请刻录成光盘如果你要在虚拟机运行载入ISO即可,以后的教程我们都将用光盘安装做演式,这之间并没有区别,如果在虚拟机中运行,你要先学会虚拟机使用。
FreeBSD 使用手册-安装篇
FreeBSD 使用手册上一页第2章安装 FreeBSD 下一页2.4 开始安装重要:默认情况下, 安装过程并不会改变任何您硬盘中的数据,除非您看到下面的讯息:Last Chance: Are you SURE you want continue the installation?If you're running this on a disk with data you wish to save then WESTRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS beforeproceeding!We can take no responsibility for lost disk contents!在看到这最后的警告讯息前您都可以随时离开,安装程序界面不会变更您的硬盘。
如果您发现有任何设定错误,这时您可以直接将电源关掉而不会造成任何伤害。
2.4.1 开机启动2.4.1.1 引导i386™ 系统1.从电脑尚未开机开始说起2.将电脑电源打开。
刚开始的时候它应该会显示进入系统设置菜单或BIOS 要按哪个键,常见的是F2、F10、Del或Alt+S。
不论是要按哪个键,请按它进入BIOS 设置画面。
有时您的计算机可能会显示一个图形画面,典型的做法是按Esc将关掉这个图形画面,以使您能够看到必要的设置信息。
3.找到设置开机顺序的选项,它的标记为“Boot Order” 通常会列出一些设备让您选择,例如:Floppy、CDROM、First Hard Disk等等。
如果您要用光盘安装,请选择CDROM。
如果使用USB 盘,或者软盘来引导系统,也应类似地确认选择了正确的引导设备。
如有疑问,请参考您的主板说明手册。
储存设定并离开,系统应该会重新启动。
4.在开机前将其插到计算机上。
如果您是从光盘安装,那么开机后请立即将FreeBSD 光盘放入光驱中。
注意:对于FreeBSD 7.3 和更早的版本,可以使用软盘引导,这些软盘可以根据第2.3.7 节来制作。
FreeBSD通过ports安装MySQL的方法
FreeBSD通过ports安装MySQL的方法推荐最小化安装系统,然后再从光盘安装Packages:ports & src 还有/net/cvsu p 如果安装系统时你没有安装cvsup,则可依照下面的步骤安装cd /usr/ports/net/cvsup-without-guimake install //直接安装cd //回到登陆用户的家目录下ee supfile //建立supfile文件supfile内容如下*default tag=.*default host=*default prefix=/usr*default base=/var/db*default release=cvs delete use-rel-suffix compressports-base release=cvsports-databases release=cvs#ports-ftp release=cvs#ports-www release=cvs#ports-net release=cvs#ports-devel release=cvs在/usr/share/examples/cvsup/ 下也有一些示例文件,你也可以参照修改。
因为暂时只需要安装mysql,所以可以只升级base&databases分支,其它分支注释掉即可。
#cvsup -g -L 2 supfile //开始升级操作#ee /etc/make.conf //修改/etc/make.conf文件设定首先尝试从国内的freebsd镜像站下载软件,在后面加入MASTER_SITE_OVERRIDE=ftp:///pub/FreeBSD/ports/dist files/$完整的make.conf 示例如下# -- use.perl generated deltas -- ## Created: Tue May 31 16:25:51 2005# Setting to use base perl from ports:PERL_VER=5.8.5PERL_VERSION=5.8.5PERL_ARCH=machNOPERL=yoNO_PERL=yoNO_PERL_WRAPPER=yoMASTER_SITE_OVERRIDE=ftp:///pub/FreeBSD/ports/distfiles /$现在可以安装开始mysql了,分别执行下列指令:cd /usr/ports/databases/mysql40-servermake //也可以跳过这个指令直接执行下一个make installmake clean //清除编译文件方便下次编译,可以跳过cd work/mysql-4.0.22 //目前ports上的mysql40版本为4.0.22scripts/mysql_install_db //执行数据库初始化脚本cd /usr/local/share/mysql/usr/local/share/mysql下有好几个配置示例文件,选择一个适合的拷贝到/etc/f>> f # <= 64M>> f # 32M - 64M>> f # memory = 512M>> f # 1G-2G>> f # 4GB按照这个规则选择一个合适的文件,比如:cp f /etc/fee /etc/f在[mysqld]下面加入bind-address = 127.0.0.1 //安全起见,只允许本机连接数据库max_connections = 65535 //最大连接数max_user_connections = 65535 //最大用户连接数,这个设定可以省略/usr/local/etc/rc.d/mysql-server.sh start //使用脚本启动mysql服务/usr/local/bin/mysqld_safe & //也可以直接使用这个指令启动mysql服务另外,如果你需要使用mysqlhotcopy快速备份工具,还需要安装/usr/ports/databases/mysql40-scriptsmysql备份脚本#!/bin/sh#This is a ShellScript For Auto MYSQL DB Backup#Powered by surain#2005-01-23#Setting startDBName=bbsDBUser=rootDBPasswd=yourpasswordBackupPath=/bak/bakup/db/TmpPath=/bak/tmp/LogFile=/bak/surain/admintools/bakupdb.log#Setting EndTime=$(date +%Y%m%d-%H%M%S)NewFile="$BackupPath"xshbbs_sqldb_$Time.tar.gzDumpFile="$TmpPath"xshbbs_sqldb_$Timerm -rf $DumpFilemkdir $DumpFile/usr/local/bin/mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >> $LogFile 2>&1tar -czv -f $NewFile $DumpFile >> $LogFileecho "[$NewFile]Backup Success!" >> $LogFilerm -rf $DumpFileecho "+-------------------------------------------" >> $LogFile。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FreeBSD笔记┊使用ports来管理软件包Linux/unix上的软件包真是五花八门,不太统一。
按软件包有redhat下的rpm,ubu ntu的dpkg管理ded包,还有源码编译,pl,py格式的;网络安装有redhat下的yum,ubuntu下的apt-get,suse听说又是另外一套(这个我没用过),现在freebsd下管理网络软件包主要是ports。
今天主要就来学习一下ports的管理。
1、ports套件的安装和简单介绍[1]. 安装ports安装在"FreeBSD笔记┊FreeBSD7.0安装篇之一:系统安装"第6步讲到了,如果你当时没有选择启用ports的话,那么需要在root下输入"sysinstall"来安装它:输入sysinstall --> 选择Configure --> Distributions --> ports,然后安装即可。
[2]. ports路径ports的默认路径是/usr/ports,这个ports的根目录,下面有很多的文件夹及子文件夹,组成一个树状目录,包含大量ports下的软件这些即是套件的软件分类和名称,比如mail代表邮件服务软件;games则是一些游戏;www里面是一些web服务软件;databases则是数据库软件……[root@bsd01 /usr/ports]# cd www[root@bsd01 /usr/ports/www]# ls -d apache*apache-contrib apache13 apache13-modssl+ipv6apache-forrest apache13+ipv6 apache13-sslapache-jserv apache13-modperl apache20apache-mode.el apache13-modssl apache22如果你你需要安装什么软件,只要进入当前目录,然后“make install clean”即可。
[root@bsd01 ~]# cd /usr/ports/www/apache22[root@bsd01 /usr/ports/www/apache22] make install clean而/usr/ports/distfiles是存放软件包的文件夹,ports就会先检查/usr/ports/distfiles 目录内有没有这个软件包,如果没有它就会自动从网上下载安装。
[3]. 源地址ports从网上下载软件包自动安装,那么从那里下载呢?这就需要一个源地址管理,跟u buntu上的/etc/source.list文件一样,freebsd用的文件是/etc/make.conf,我们来编辑这个文件,加入下列几行,国内比较块的源:[root@bsd01 ~]# ee /etc/make.confMASTER_SITE_OVERRIDE?= \/${DIST_SUBDIR}/ \/${DIST_SUBDIR}/ \ftp:///pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}/ \有新的服务器加入就直接往后面加就可以了,格式就是“源地址+/${DIST_SUBDIR}/ \”。
但是不要同时存在2个“MASTER_SITE_OVERRIDE?”,否则第二个就不起效了。
2、ports管理软件常用命令[1]. 安装软件下面以安装rpm为例:[root@bsd01 ~]# cd /usr/ports/archivers/rpm[root@bsd01 /usr/ports/archivers/rpm]# make install clean如果想清除www内所有的暂存文件,就cd到/usr/ports/www内。
如果想清除所有的暂存文件,就cd到/usr/ports根目录:[root@bsd01 ~]# cd /usr/ports[root@bsd01 /usr/ports]# make cleancmake clean只是清除暂存文件,并不是清除distfiles里面的软件包。
什么是暂存文件?其实主要是编译过程产生的一些临时文件,其实也是软件目录内的work文件夹,而执行make clean会把当前软件目录内的work文件夹删除。
如果想删除distfile连文件夹内软件包怎么做呢?[root@bsd01 ~]# cd /usr/ports/www/apache22[root@bsd01 /usr/ports/www/apache22]# make distclean而make distclean不但会清除软件包,而且包含了make clean命令。
这样就会清除apa che22的软件包,以及apache22目录内的work文件夹。
同理,如果像清除所有www内的软件包及暂存文件,就cd到/usr/ports/www;如果像清除所有的包及暂存文件,就cd到ports根目录。
[2]. 卸载软件卸载软件用make deinstall:[root@bsd01 ~]# cd /usr/ports/www/apache22[root@bsd01 /usr/ports/www/apache22]# make deinstall[3]. 查询可用ports安装的软件我一直想,freebsd的ports直接在系统内占用资源空间组成树目录是好还是不好呢?如果要是从能查询这一点讲就比apt-get好一些了,以前用apt-get安装软件的时候,要是遇到一些稍微不规范一点的软件,就很难知道名字了,经常要用正则表达式来测试软件名是什么。
而现在在freebsd里面可以直接在ports树目录内查询可用的软件了(也许ubuntu的apt-get也有查询,我不会用?)。
[root@bsd01 ~]# cd /usr/ports[root@bsd01 /usr/ports]# make search key=apache不过这种会找出很多,看的眼花,但是我们注意到有一个细节,就是Port和Path2个关键字,一个代表名字,一个代表路径,我们就可以改善+过滤:[root@bsd01 /usr/ports]# make search key=^apache-2 | grep -E "Port:| Path:|Info:"Port: apache-2.0.61_2Path: /usr/ports/www/apache20Info: Version 2 of Apache web server with prefork MPM.Port: apache-2.1.9_7Path: /usr/ports/www/apache21Info: Version 2.1 of Apache web server with prefork MPM.Port: apache-2.2.6_2Path: /usr/ports/www/apache22Info: Version 2.2 of Apache web server with prefork MPM.现在还可以进一步来增强查询,就是在获取一个空行,这样让查询结果更直观一点,Linux的管道真是好东西,可以自己发挥一下:[root@bsd01 ports]# make search key=^apache-2 | grep -E "Port:|Pat h:|Info:|^$"Port: apache-2.0.61_2Path: /usr/ports/www/apache20Info: Version 2 of Apache web server with prefork MPM.Port: apache-2.1.9_7Path: /usr/ports/www/apache21Info: Version 2.1 of Apache web server with prefork MPM.Port: apache-2.2.6_2Path: /usr/ports/www/apache22Info: Version 2.2 of Apache web server with prefork MPM.[4]. 查询已安装的软件怎么像Linux中用“rpm -qa | grep samba”来查询某个软件是否安装了呢(这里以samb a为例)?ports用“pkg_info”:[root@bsd01 ~]# pkg_info | grep sambasamba-3.0.32_1,1 A free SMB and CIFS client and server for UNIXsamba-libsmbclient-3.0.28 Shared libs from the samba package[root@bsd01 ~]# pkg_info | grep nfs3、使用cvsup来更新ports树目录既然ports的树目录全部下载到本地,那么freeBSD有新的软件包了或者添置了新的软件,本地目录树就不会更新。
所以我们在一段时间需要更新本地目录树。
下面来学习使用cvsup来更新本地目录树:[1]. 安装cvsup如果你在命令下输入:cvsup,提示command not found,则说明cvsup没有被安装。
我们就用ports来安装cvsup,cvsup位于/usr/ports/net目录下。
并且有2个软件包,一个叫cvsup,一个叫cvsup-without-gui。
cvsup-without-gui是纯命令模式的cvsup,在终端下一般用这个,那么我们就安装它好了:[root@bsd01 ~] cd /usr/ports/net[root@bsd01 net]# ls -d cvsup*cvsup cvsup-mirror cvsup-without-gui cvsupchk[root@bsd01 net]# cd cvsup-without-gui[root@bsd01 cvsup-without-gui]# make install clean这样就可以安装cvsup了。
[2]. 配置文件:ports-subfilecvsup安装后,可以进/usr/share/examples/cvsup查看相关配置文件:[root@bsd01 ~]# cd /usr/share/examples/cvsup[root@bsd01 cvsup]# lsREADME doc-supfile ports-supfile refuse.README standard-sup filecvs-supfile gnats-supfile refuse stable-supfile www-supfileports-supfile就是cvsup升级目录树用到的配置文件,等会我们更新的时候需要指定配置文件,所以不建议直接在此文件上更改,我们可以先复制一个到其他地方(这里我们复制到/etc),然后修改那个复制文件:[root@bsd01 cvsup]# cp ports-supfile /etc[root@bsd01 cvsup]# ee /etc/ports-supfile# listed at /doc/handbook/mirrors.html.*default host=CHANGE_*default base=/var/db*default prefix=/usr*default release=cvs tag=.*default delete use-rel-suffixports-all# These are the individual collections that make up "ports-all". If you# use these, be sure to comment out "ports-all" above.……(省略若干行注释)#ports-base#ports-accessibility#ports-arabic#ports-archivers#ports-astro#ports-audio#ports-benchmarks……(省略若干行目录注释)1) *default host=就是需要从哪里更新的服务,我们把他改成国内的:*default host=2) 后面的ports-all表示更新/usr/ports内所有的目录树,如果你只想更新一部分目录,那么就把ports-all前面加“#”注释起来,然后把后面“#ports-base”这样需要更新的文件夹前面的“#”注释去掉。