1.FreeBSD下修改安装源的码下方法
2.freebsd安装教程freebsd
3.freebsd是否真的快凉了?
4.å¦ä½ä»ç¡¬çå®è£
FREEBSD
5.FreeBSD下安装J2EE开发环境
6.FreeBSD发展
FreeBSD下修改安装源的方法
说明:FreeBSD中安装软件一般有两种方式:
(一)、使用pk_add -r Package 来安装软件,码下Package安装的码下是已经编译好的二进制软件包,Package默认下载软件包的码下路径是在/var/db/pkg中
(二)、使用Ports方式编译安装,码下Ports是码下chirpstack源码下载源码到本地,再执行编译安装,码下ports软件包的码下路径是在/usr/ports中
以上两种安装方式都需要从网络下载软件包,默认是码下从官方的源下载软件包的,速度比较慢,码下可以修改配置文件指定国内的码下镜像源来快速安装软件
1、修改Pcakage源为的码下镜像源
setenv PACKAGESITE .freebsd.org #安装ports
ee /etc/portsnap.conf #编辑文件
SERVERNAME=portsnap.cn.FreeBSD.org #更改服务器为国内镜像
按esc 回车,再按a保存
portsnap fetch extract #下载ports快照
portsnap update #更新
ee /etc/make.conf #编辑文件,码下添加下面代码
MASTER_SITE_BACKUP?码下=/FreeBSD/distfiles/${ DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?=${ MASTER_SITE_BACKUP}
cd /usr/ports
make search name=nginx #查找ports中是否有nginx这个软件
cd /usr/ports/www/nginx #进入软件包目录
make install clean #安装
make deinstall clean #卸载
make deinstall reinstall clean #升级来源 系统运维 osyunwei.com
freebsd安装教程freebsd
freebsd安装教程,freebsd很多人还不知道,码下现在让我们一起来看看吧!
1、FreeBSD是一个免费的类Unix操作系统,是由BSD、BSD和4.4BSD开发的类Unix操作系统的一个重要分支,FreeBSD拥有超过名活跃开发者和数千名贡献者。
2、FreeBSD被视为免费操作系统中不知名的巨头。它不是Unix,但运行起来像Unix,并且有一个兼容Unix的系统API。作为一个操作系统,FreeBSD被认为是相当稳定可靠的。
3、FreeBSD是作为一个完美的操作系统开发的。它的核心、驱动和所有Userland应用(比如Shell)都由同一个源代码版本控制系统保管(目前使用的是Subversion,兼容CVS)。与另一个知名的操作系统Linux相比,它的核心是由一群开发者设计的,而用户应用是由别人开发的(比如GNU project),最后由其他小组集成打包成Linux包。
4、FreeBSD默认是没有桌面环境的命令行界面。如果要使用桌面环境,必须自己安装或者使用PC-BSD等桌面分发。libevent源码安装启动
5、平台
6、FreeBSD支持的平台根据支持程度分为四个级别。一线平台(Tier 1,全支持平台)目前包括i、Sparc、AMD和PC。第2层(开发平台)包括PowerPC和IA。对于一线和二线平台,FreeBSD将保持维护和稳定性,大多数新功能将需要在这些平台上正常工作。目前三线平台(Tier 3,实验平台)只包括S/,FreeBSD官方不支持。而其他平台则被归为四线平台。
7、对ARM和MIPS架构的支持正在开发中。在正在开发的7.x版本中,已经删除了对DEC Alpha的支持。
8、它支持x兼容性(包括Pentium和Athlon)、amd兼容性(包括Opteron、Athlon 和EMT)、Alpha/AXP、IA-、PC-和具有UltraSPARC架构的计算机。它运行在Intel x系列兼容处理器、DEC Alpha、UltraSPARC、Itanium (IA-)和Sun Microsystems的AMD处理器上。对PowerPC的支持正在开发中。人们普遍认为它相当可靠和健壮。苹果的Mac OS X以Mach为内核,基于FreeBSD驱动和实用程序。FreeBSD源于加州大学伯克利分校开发的BSD-UNIX;版本由来自世界各地的志愿者开发和维护。FreeBSD为不同架构的计算机系统提供了不同程度的支持。
本文讲解到此结束,希望对大家有所帮助。
freebsd是否真的快凉了?
FreeBSD是否真的快凉了?
判断一个项目的活跃度,可以通过查看源码提交频次来大致评估。微信狗 源码相较于mono,提交内容多为无关紧要的更新,如版本升级等,且三年内几乎没有实质性的提交,这表明其活跃度低下,项目可能已经冷却。
相比之下,FreeBSD每天都在更新,显示出其健康活跃的状态,离冷却还有很长的路要走。而且,众多闭源操作系统的改造版都依赖于FreeBSD,如苹果的iOS、iPadOS、macOS以及任天堂、索尼游戏机的操作系统,源头都是FreeBSD。因此,轻易不会让项目冷却。
维护活跃度的标准可以用来评估国外各种项目的健康状况。以Flutter为例,其活跃度相当高。这也解释了为什么现在国外的跨平台移动框架几乎都转向Flutter,因为有人维护是主要原因。谁也不想依赖的工具突然“去世”,如同微软经常将一些项目废弃那样。
如果你对哪些项目是否冷却感兴趣,建议关注微软。微软历史上经常把一些项目冷落,每年都有这样的情况发生,每隔一两个月就会有项目被宣布“死亡”的情况。
å¦ä½ä»ç¡¬çå®è£ FREEBSD
1)isoemu(å¼å¯¼ISOéåç¨)
2)èæå 驱,ç¨DAEMON Tools
å ·ä½æ¥éª¤:
1: åæ:ä½ çç³»ç»å·²ç»å®è£ éwindowsçæä½ç³»ç»ä»¥åå¯ä»¥ä¸ç½
2: ä¸è½½è¾ å©è½¯ä»¶ISOEMU,以åfreebsd5.4ç5.4-RELEASE-i-bootonly åªå å«å¯å¨æ件
5.4-RELEASE-i-disc1 å®è£ ç1 5.4-RELEASE-i-disc2 å®è£ ç2,è¿ä¸ä¸ªå®è£ æ件è¿éå¯
以ä¸è½½ftp: //ftp.freebsdchina.org/pub/FreeBSD/releases/i/ISO-IMAGES/5.4/
3: ç¨èæå 驱ædisc1éåæ件éé¢ç5.4-RELEASEæ件夹(MBå·¦å³)æåå¤å¶å°ä¸»ååº(ä¼°
计é»è¾ååºè¿ä¸æ¯æ,æ好æ¯æ¾å¨ä½ çå¯å¨ååº,æ¯æNTFSæ ¼å¼),disc1çpackagesæååºæ¥æ¾
å°5.4-Release,ç¶åèædisc2éåæ件,å¤å¶éé¢çpackagesæ件夹(MBå·¦å³)å°åæä»
disc1å¤å¶åºæ¥ç5.4-RELEASEæ件夹éé¢,æ示æ件åç¸åæè¦çå°±æ¯.
4: ä¿®æ¹åæå¤å¶è¿æ¥ç5.4-RELEASE\packagesçINDEXæ件,ç¨ååæ¿æå¼,æ¥æ¾æ¿æ¢ç®
æ "||1"æ¿æ¢æ"|"æ¥æ¾"||2"æ¿æ¢æ"|",ä¹åä¿å.
5: æä¸è½½äºçisoemu解åå°æ ¹ååº(ä¸éæ¾å¨æ件夹),å³å«æboot.iniæ件çé£ä¸ªååº(éé¢
å å«äºä¸ä¸ªè¯´ææ件,详ç»è¯´æäºå个æ件çç¨éå使ç¨æ¹æ³),ä¹åç¼è¾isoemu.iniæ¾
å°"isogrub.iso"æ¹ä¸ºä½ çå¯å¨éåæ件å,æè¿éç¨"freebsd.iso",ä¿åéåº.
6: æ5.4-RELEASE-i-bootonlyå¯å¨éåæ件å¤å¶å°å®æ¾äºisoemuçååº,并æ¹å
为"freebsd.iso"ä¸ä¸é¢å¯¹åº
7: ä¿®æ¹boot.iniæ件,å¨ä¸é¢å å ¥ä¸è¡c:\ieldr="Load IsoEmu Final SV"
8: åå¤å夫å®æ,ç°å¨å¯ä»¥éæ°å¯å¨æºå¨,éæ©å¯å¨load IsoEmu Final SV,isoemuå°±å¼å§èªå¨
å è½½freebsd.isoæ件读åå¯å¨ä¿¡æ¯,æ¥çå°±æ¯çæçå¼å¯¼å æ ¸ççé¢.
ä¸æ¥çæ¥éª¤ç¸ä¿¡å¤§å®¶é½çæ,ä¸ç¥éçå¯ä»¥å»ççHANDBOOK .ä½ å¯ä»¥éæ©ä»ç¡¬çå®è£ ,å¦æä¸æ³
å¤å¶ä¸è½½é£ä¹å¤æ件æè ä½ æ¯å±åç½å¯ä»¥éæ©ä»ç½ä¸å®è£ ,å¯ä»¥çç¥æ¥éª¤2,3,åªå¯å¨
SYSINSTALLç³»ç»å®è£ ç¨åºä»å ¶ä»åªä»å®è£ ç³»ç»
ä¸ä¼å®è£ ç,å¯ä»¥ççæ以åçå®è£ æ¹æ³
ååºçæ¶åå¯ä»¥æä¸é¢ç说ææ¥
æç»å¸¸å»ºç«çæ件系ç»ç次åºæ¯Mçrootï¼1Gçswapï¼Mç
/var/tmpï¼3Gç/usrï¼å ¶ä½ç空é´çç»/homeã
å ¸åå°ï¼ä½ åºè¯¥æ交æ¢åºå¤§å°å®ä¸º2åçå å大å°ãå¦æä½ æ²¡æå¾å¤å åï¼é£æ ·çè¯ï¼ä½ å°é
è¦æ´å¤ç交æ¢åºç©ºé´ãä¸å»ºè®®å°äº¤æ¢åºå®å¨å°äºMï¼å½ä½ ç¡®å®äº¤æ¢åºå¤§å°çæ¶åï¼ä½ è¦èè
å°å°æ¥å¯è½è¦æ©å å åãå æ ¸çVM(èæå å)æ¢é¡µç®æ³æ§è½æ¯å对交æ¢åºè³å°æ¯å å大å°2å
çæ¡ä»¶è¿è¡ä¼åçãé 置太å°ç交æ¢åºä¼å¯¼è´VM页é¢æ«æçä½æçï¼å½å åæ©å åï¼éä¹ä¹ä¼
导è´é®é¢ãæåå¨ä¸ä¸ªæå¤ä¸ªSCSI硬çç大系ç»ä¸(æè æå¤ä¸ªIDEç£çå·¥ä½å¨å¤ä¸ªIDE æ§å¶å¨
ä¸)ï¼æ们强ç建议å¨æ¯ä¸ªé©±å¨å¨ä¸é 置交æ¢ååºï¼æ¯ä¸ªäº¤æ¢ååºç大å°åºè¯¥æ¯å ä¹ä¸æ ·çï¼
å æ ¸è½å¤çä»»æ大å°ç交æ¢åºï¼ä½æ¯å é¨æ°æ®ç»ææ¾å¤§å°æ大ååºç4å大å°ãä¿æ交æ¢ååº
åæ ·ç大å°å 许å æ ¸ä¼åå°å°äº¤æ¢ç©ºé´äº¤ååå¸å¨N个ç£çä¸ãä¸è¦æ å¿è¿æ ·åæç¹è¿ä»½ï¼äº¤
æ¢åºæ¯UNIXçææï¼çè³äºä½ è½ç¶é常ä¸ç¨é£ä¹å¤äº¤æ¢åºï¼å¨è¢«è¿«éæ°å¯å¨ä¹åï¼å®ä¹å¯ä»¥ç»
ä½ æ¶é´å»ä»ä¸ä¸ªåºè½¨çç¨åºä¸æç³»ç»æ¢å¤è¿æ¥ã
ææ ·ä¸ºä½ ç/varååºå®å¤§å°ä¸»è¦ä¾èµäºä½ å°ææ ·ä½¿ç¨è¿å°æºå¨ãè¿ä¸ªååºä¸»è¦åæ¾é®ç®±ï¼æå°
ç¼å²åºåæ¥å¿æ件ãæäºäººçè³äºæ/var/logä½ä¸ºä¸ä¸ªç¬ç«çååº(ä½æ¯é¤éæç¹å«çæ åµï¼
è¿æ ·åä¸å¼å¾ï¼åªä¼æµªè´¹ä¸ä¸ªååºID)ãå¦æä½ è¿å°æºå¨ä¸»è¦ç¨åé®ä»¶ææå°æå¡å¨ï¼æè è¿
è¡ä¸ä¸ªå¤§è®¿é®éçWEB æå¡å¨ï¼ä½ åºè¯¥èèæè¿ä¸ªååºå»ºçæ´å¤§ä¸ç¹ï¼å¯è½1Gææ´å¤ãå¾å®¹æ
ä½ä¼°æ¥å¿æ件çåå¨éæ±ã
ç¡®å®/var/tmpç大å°ä¾èµäºä½ å°éè¦ææ ·ä½¿ç¨ä½ ç临æ¶æ件ãMæ¯å»ºè®®çæå°ç尺寸ã注æ
sysinstallå°å»ºç«ä¸ä¸ª/tmpç®å½ï¼ä½æ¯é常æ/tmpä½ä¸º/var/tmpçè¿æ¥æ¯ä¸ªå¥½æ³¨æã为临æ¶æ
件建ç«ä¸ä¸ªååºæ两个éè¦çåå : é¦å ï¼å®åå°äºç³»ç»å´©æºåæ件系ç»æåçå¯è½æ§ï¼åå°±
æ¯åå°ä¸ä¸ªåºè½¨ç¨åºå¡«æ»¡[/var]/tmpæ¶å½±åå ¶ä»éè¦åç³»ç»(mailï¼loggingçç) çæºä¼ãå¡«
满[/var]/tmpæ¯ç»å¸¸åççé®é¢ã
å¨ä»¥å/tmpå/var/tmpæ¯ä¸åçä¸è¥¿ï¼ä½æ¯å¼å ¥/var(å /var/tmp)æ¯è¢«ç¨åºåå¼èµ·ç大迷æ
ï¼ä»å¤©çç¨åºé´æ使ç¨ä¸ä¸ªæå¦ä¸ä¸ªï¼å®ä»¬ä¸¤è åç没æåºå«ãæ以æå®ä»¬åæä¸ä¸ªä¸´æ¶ç®å½
æ¯æéççï¼ç¶èï¼å½ä½ å¤ç/tmpæ¶ï¼æä¸ä»¶äºæ æ¯ä½ ä¸æ³åçï¼å°±æ¯æ/tmpé©»çå¨æ ¹ååºä¸
ï¼å¯¼è´æ ¹ååºè¢«å¡«æ»¡æå´©æºåéå¯æ¶æ件系ç»æåï¼
/usrååºåæ¾å¤§éç¨äºæ¯æç³»ç»çæ件ï¼åç®å½/usr/localåæ¾å¤§éä»ports(7)å®è£ çæ件ï¼
å¦æä½ ä¸é£ä¹å¤ä½¿ç¨portsï¼ä¹ä¸å°ç³»ç»æºä»£ç (/usr/src)åæ¾å¨æºå¨ä¸ï¼ä½ å¯ä»¥ä¸º/usrèç
1Gçç£ç空é´ï¼ç¸åï¼å¦æä½ å®è£ 大éçports(ç¹å«æ¯çªå£ç®¡çåLinux仿ç)å»ºè®®ä½ è³å°2Gç
/usrï¼å¦æä½ è¿è¦å°ç³»ç»æºä»£ç æ¾å¨æºå¨ä¸ï¼æä»¬å»ºè®®ä½ 3Gç/usrï¼ä¸è¦ä½ä¼°æéç空é´ï¼å®
ä¼æ ¢æ ¢ç¬èµ·æ¥ï¼è®©ä½ 大åä¸æï¼
/homeååºåæ¾ç¨æ·èªå·±çæ°æ®ï¼å¯ä»¥æä½ä¸ç空é´çç»è¿ä¸ªååºï¼
为ä»ä¹è¦ååº? 为ä»ä¹ä¸å»ºä¸ä¸ªå¤§ç/ååºå°±è¡äº? é£æ ·æå°±ä¸éè¦èèååºå¤§å°é®é¢ãæå
个åå æ¾ç¤ºè¿ä¸æ¯ä¸ªå¥½æ³¨æãé¦å ï¼æ¯ä¸ªååºé½æä¸åçæä½ç¹å¾ï¼åå¼å®ä»¬æå©äºæ件系ç»
å对è¿äºç¹å¾è°æ´å®èªå·±ï¼ä¾å¦ï¼æ ¹å/usrååºä¸»è¦æ¯è¯»æä½ï¼åªæå°éçåï¼è大éç读å
åå¯ä»¥åçå¨/varå¨/var/tmpãæå°çä½æ¯å ·ææ´ç¹å¿çåæä½çååºåå¼ï¼å°±ä¸ä¼å½±å读æ
ä½å± å¤çååºï¼åå°±æ¯ï¼æåæä½å± å¤çååºé è¿ç£çå¤ä¾§(ä¾å¦ï¼ä¸æ¯å¨ä¸ä¸ªå¤§ååºåï¼è
æ¯ååºè¡¨å)æå©äºå¯¹ä½ ç»å¸¸éè¦çååºå¢å æ§è½ãä½ å¯è½ä¹éè¦å¨å¤§ååºä¸çI/Oæ§è½ï¼ä½æ¯
å®ä»¬æ¯é£æ ·ç大以è³äºæå®ä»¬ç§»å°ç£çå¤ä¾§ä¹ä¸ä¼æ¾èå¢å æ§è½ï¼ä½æ¯æ/var移å°ç£çå¤ä¾§ä¼
ææ¾èçä¸åï¼
5.4é»è®¤ä½¿ç¨xorg,èä¸å®è£ è¿ç¨ä¸ä¼æ示å®è£ å设置æ¡é¢ç¯å¢,å®æå®è£ éå¯ç³»ç»,åè¿è¡
sysinstallç¨åºè¿è¡å®è£ æ¡é¢,ä¹å¯ä»¥éè¿portæ¥å®è£ ,ç±ä½ å欢.å¦å¤è¿è¦è¿è¡xorgcfg -
FreeBSD下安装J2EE开发环境
要装的是环境是 Eclipse 3.1 + jdk1.4.2-p6 + jboss-3.2.5 jboss-3.2.5带了tomcat 5.x
如果要用Eclipse开发J2ee,还需要插 件,IBM有一篇文章写得很好.我就不重新写了. 安装之前人要确定你至少要有1.2G以 上的空间,NND,sun的JDK源码编译完有这么大 命令见下:
cd /usr/ports/java/jdk
make install
/
** 根据提示,在/etc/fs
rw tab 加入一行 linprocfs /co mpat/linux/proc linprocfs * 当然了,你要先装linux的运行库!然后下载以下的文件
* bsd-jdk-patches-6.tar.gz
* j2sdk-1_4_2_-linux-i.bin
* j2sdk-1_4_2-bin-scsl.zip
* j2sdk-1_4_2-src-scsl.zip
* (最好连这个jboss-3.2.5-src.tar
个目录中. .bz2也一并下载来)下载到/usr/ports/distfiles这 */
/* 一个好建议,你最好
快点 :D */ 用网际快车或wget先把这些文件 下载了.这样比make自己去下载更 安装完jdk后.设定一个JAVA_HOME等
我用csh,如果你用bash你就另行更改profile吧
我在~/.cshrc里加入了
setenv JAVA_HOME /usr/local/jdk1.4.2
setenv CLASSPATH $JAVA_HOME/lib
然后在path路径里加入 /usr/local/jdk1.4.2/bin
然后 source ~./cshrc 就可以检查java安装成功了没有.
:D 以前我每安装好一
到配置了.呵 个软件,我就要重登录,呵.原来 用source ~/.cshrc就可以重新得 然后再
cd /usr/ports/java/eclipse
make install
cd /usr/ports/java/jboss3
make install
安装完记得 make clean哦
都安装完了就可以运行 /usr/local/jboss3.2/bin/run. sh来运行jboss 如果你要安装mysql就进入mysql的po rts执行make install就可以了. 反正这个过程真的是很长,慢慢等哦 :D
都安装完了就可以执行eclipse进行
:P
FreeBSD发展
截至年3月,FreeBSD系统活跃的开发者超过人,还有数以万计的贡献者。该项目由志愿者及具有SVN提交权限的开发者共同维护。提交类型包括源代码、DOC提交及ports(第三方应用程序移植或基础程序)。每两年,提交者会选举出9名成员组成FreeBSD核心团队,负责项目方向、c 源码 仿cad规则制定及实施新的“commit bits”。 FreeBSD核心团队、开发团队及安全、发行和端口管理团队被正式分配到特定任务。FreeBSD项目在开源领域已有年的发展历史,参与过美国加州大学的BSD计算机系统研究。项目保持至少两个分支同步发展:在-CURRENT分支代表“流血的边缘”(bleeding edge),而每个主版本号都会创建一个-FreeBSD -STABLE分支,每4-6个月进行一次从-CURRENT分支的削减。如果功能足够稳定成熟,可能会与后续的-STABLE分支合并。 FreeBSD的开发模式在Niklas Saers的文章中有详细介绍。FreeBSD基金会支持项目的开发部分,是一个非营利组织,接受捐赠以资助活动、购买硬件和网络基础设施、提供开发者峰会的旅费补助及法律支持。扩展资料
FreeBSD是一种UNIX操作系统,是由经过BSD、BSD和4.4BSD发展而来的Unix的一个重要分支。FreeBSD 为不同架构的计算机系统提供了不同程度的支持。谁有FreeBSD的使用手册啊?
.4 拨入服务
Contributed by Guy Helmer. Additions by Sean Kelly.
为拨入服务配置FreeBSD系统与连接到终端是非常相似的,除非您正在使用 modem来拨号而不是终端。
.4.1 外置vs.内置modem
外置modem看起来很容易拨号。 因为,外置 modem 可以通过储存在非易失性的RAM中的参数来配置,它们通常提供指示器来显示重要的RS-信号的状态。不停闪光的信号灯能给用户留下比较深刻的印象,而且指示器也可以用来查看modem是否正常地工作。
内置modem通常缺乏非易失性的RAM, 所以对它们的配置可能会限制在通过 DIP 开关来设置。如果您的内置modem有指示灯,您也很难看得到。
.4.1.1 Modem和线缆
如果您使用一个外置的 modem,那您将需要适当的电缆线。一个标准的串口线应当足够长以至普通的信号能够连接上:
表 -4. 信号名称
缩写 全名
RD 收到数据 (Received Data)
TD 传出数据 (Transmitted Data)
DTR 数据终端就绪 (Data Terminal Ready)
DSR 数据集就绪 (Data Set Ready)
DCD 数据载波检测 (Data Carrier Detect) (RS- 的收到线路信号检测器)
SG 信号地 (Signal Ground)
RTS 要求发送数据 (Request to Send)
CTS 允许对方发送数据 (Clear to Send)
FreeBSD 对速度超过 bps 的情形需要通过 RTS 和 CTS 信号来完成流控制, 通过 CD 信号来检测呼叫响应和挂机,并通过 DTR 信号来在会话结束时对调制解调器进行复位。某些电缆在连接时没有提供全部需要的信号, 这会给您带来问题,minecraft源码 下载地址 例如在挂断时登录会话不消失,这就有可能是电缆的问题。
与其它类 UNIX? 操作系统类似, FreeBSD 使用硬件信号来检测呼叫响应, 以及在挂断时挂断并复位调制解调器。 FreeBSD 避免发送命令给调制解调器, 或监视其状态。 如果您熟悉通过调制解调器来连接基于 PC 的 BBS 系统, 这可能看起来有点难用。
.4.2 串口的考虑
FreeBSD支持基于 NS, NS, NS 和 NSA 的EIA RS-C通讯接口。 和设备有单字符缓冲。 设备提供了一个 个字符的缓冲,可以提高更多的系统性能。 因为单字符缓冲设备比 个字符的缓冲需要更多的系统资源来工作,所以基于A的接口卡可能更好。 如果系统没有活动的串口, 或有较大的负载, 字符缓冲的卡对于低错误率的通讯来说更好。
.4.3 快速预览
对于终端, init 会在每个配置串口上为每个拨入连接产生一个 getty 进程。 例如, 如果一个 modem 被附带在 /dev/ttyd0 中,用命令ps ax可以显示下面这些:
? I 0:. /usr/libexec/getty V ttyd0
当用户拨上modem, 并使用它进行连接时, CD 线就会被 modem 认出。 内核注意到载波信号已经被检测到, 需要完成 getty 端口的打开。 getty 发送一个登录:在指定的初始线速度上的命令行。 Getty 会检查合法的字符是否被接收,在典型的配置中, 如果发现 “垃圾”, getty 就会设法调节线速度,直到它接收到合理的字符。
用户在键入他/她的登录名称后, getty执行/usr/bin/login, 这会要求用户输入密码来完成登录,然后启动用户的shell。
.4.4 配置文件
如果希望允许拨入您的 FreeBSD 系统, 在 /etc 目录中有三个系统配置文件需要您关注。 其一是 /etc/gettytab,其中包含用于 /usr/libexec/getty 服务的配置信息。 其二是 /etc/ttys, 它的作用是告诉 /sbin/init 哪些 tty 设备上应该运行 getty。 最后,关于端口的初始化命令, 应放到 /etc/rc.d/serial 脚本中。
关于在 UNIX 上配置拨入调制解调器有两种主要的流派。一种是将本地计算机到调制解调器的 RS- 接口配置为固定速率。 这样做的好处是,远程用户总能立即见到系统的登录提示符, 而其缺点则是,系统并不知道用户真实的数据速率是多少, 因而, 类似 Emacs 这样的程序, 也就无法调整它们绘制屏幕的方式, 以便为慢速连接改善响应时间。
另一种流派将调制解调器的 RS- 接口速率配置为随远程用户的连接速率变化。 例如, 对 V.bis (.4 Kbps) 连接, 调制解调器会让自己的 RS- 接口以 .2 Kbps 的速率运行, 而 bps 连接, 则会使调制解调器的 RS- 接口以 bps 的速率运行。 由于 getty 并不能识别具体的调制解调器的连接速率反馈信息, 因此, getty 会以初始速度给出一个 login: 提示, 并检查用户的响应字符。如果用户看到乱码, 则他们应知道此时应按下 Enter 键,直到看到可以辨认的提示符为止。 如果数据速率不匹配, 则 getty 会将用户输入的任何信息均视为 “乱码”, 并尝试以下一种速率来再次给出 login: 提示符。 这一过程可能需要令人作呕地重复下去, 不过一般而言,用户只要敲一两下键盘就能看到正确的提示符了。 显然, 这种登录过程看起来不如前面所介绍的 “锁定速率” 方法那样简单明了, 但使用低速连接的用户,却可以在运行全屏幕程序时得到更好的交互响应。
这一节将尽可能公平地介绍关于配置的信息,但更着力于介绍调制解调器速率随连接速率变化的配置方法。
.4.4.1 /etc/gettytab
/etc/gettytab是一个用来配置 getty 信息的 termcap 风格的文件。 请看看 gettytab 的联机手册了解完整的文件格式和功能列表。
.4.4.1.1 锁定速度的配置
如果您把您的modem的数据通讯率锁定在一个特殊的速度上, 您不需要对 /etc/gettytab 文件作任何变化。
.4.4.1.2 匹配速度的配置
您将需要在 /etc/gettytab 中设置一个记录来告诉 getty 您希望在 modem 上使用的速度。 如果您的 modem 的速率是 bit/s, 则可以使用现有的 D 的记录。
#
# Fast dialup terminals, // rotary (can start either way)
#
D|d|Fast-Dial-:\
:nx=D:tc=-baud:
3|D|Fast-Dial-:\
:nx=D:tc=-baud:
5|D|Fast-Dial-:\
:nx=D:tc=-baud:
如果您有一个更高速度的 modem, 必须在 /etc/gettytab 中添加一个记录。 下面是一个让您可以以最高 .2 Kbit/s 的用在 .4 Kbit/s的modem上的接口记录:
#
# Additions for a V.bis Modem
#
um|V|High Speed Modem at ,8-bit:\
:nx=V:tc=std.:
un|V|High Speed Modem at ,8-bit:\
:nx=V:tc=std.:
uo|V|High Speed Modem at ,8-bit:\
:nx=V:tc=std.:
up|V|High Speed Modem at ,8-bit:\
:nx=V:tc=std.:
uq|V|High Speed Modem at ,8-bit:\
:nx=V:tc=std.:
这样做的结果是 8-数据位, 没有奇偶校验的连接。
上面使用.2 Kbit/s的连接速度的例子,也可以使用 bit/s (for V.), bit/s, bit/s, bit/s, 直到 .2 Kbit/s。 通讯率的调节使用 nx= (“next table”) 来实现。 每条线使用一个 tc= (“table continuation”) 的记录来加速对于一个特殊传输率的标准设置。
如果您有.8 Kbit/s的modem,或您想使用它的 .4Kbit/s 模式,就需要使用一个更高的超过 .2 Kbit/s 的通讯速度的 modem。 这是一个启动 .6 Kbit/s 的 gettytab 记录的例子:
#
# Additions for a V.bis or V. Modem
# Starting at .6 Kbps
#
vm|VH|Very High Speed Modem at ,8-bit:\
:nx=VH:tc=std.:
vn|VH|Very High Speed Modem at ,8-bit:\
:nx=VH:tc=std.:
vo|VH|Very High Speed Modem at ,8-bit:\
:nx=VH:tc=std.:
vp|VH|Very High Speed Modem at ,8-bit:\
:nx=VH:tc=std.:
vq|VH|Very High Speed Modem at ,8-bit:\
:nx=VH:tc=std.:
如果您的 CPU 速度较低, 或系统的负荷很重, 而且没有 A 的串口,您可能会在.6 Kbit/s 上得到 “sio” “silo”错误。
.4.4.2 /etc/ttys
/etc/ttys文件的配置在 例 -1中介绍过。 配置 modem 是相似的, 但我们必须指定一个不同的终端类型。锁定速度和匹配速度配置的通用格式是:
ttyd0 "/usr/libexec/getty xxx" dialup on
上面的第一条是这个记录的设备特定文件 —— ttyd0 表示 /dev/ttyd0 是这个 getty 将被监视的文件。 第二条 "/usr/libexec/getty xxx" 是将运行在设备上的进程 init。 第三条,dialup,是默认的终端类型。 第四个参数, on, 指出了线路是可操作的 init。也可能会有第五个参数, secure, 但它将只被用作拥有物理安全的终端 (如系统终端)。
默认的终端类型可能依赖于本地参考。 拨号是传统的默认终端类型,以至用户可以定制它们的登录脚本来注意终端什么时候拨号, 和自动调节它们的终端类型。 然而,作者发现它很容易在它的站点上指定 vt 作为默认的终端类型,因为用户刚才在它们的远程系统上使用的是VT模拟器。
您对/etc/ttys作修改之后,您可以发送 init 进程给一个 HUP 信号来重读文件。您可以使用下面的命令来发送信号:
# kill -HUP 1
如果这是您的第一次设置系统, 您可能要在发信号 init 之前等一下,等到您的 modem 正确地配置并连接好。
.4.4.2.1 锁定速度的配置
对于一个锁定速度的配置,您的 ttys 记录必须有一个为 getty 提供固定速度的记录。 对于一个速度被锁定在 .2kbit/s 的 modem, ttys 记录是这样的:
ttyd0 "/usr/libexec/getty std." dialup on
如果您的 modem 被锁定在一个不同的数据速度, 为 std.speed 使用适当的速度来代替 std.。 确信您使用了一个在 /etc/gettytab 中列出的正确的类型。
.4.4.2.2 匹配速度的设置
在一个匹配速度的设置中,您的 ttys 录需要参考在 /etc/gettytab 适当的起始 “auto-baud” 记录。 例如, 如果您为一个以 .2 Kbit/s 开始的可匹配速度的 modem 添加上面建议的记录, 您的 ttys 记录可能是这样的:
ttyd0 "/usr/libexec/getty V" dialup on
.4.4.3 /etc/rc.d/serial
高速调制解调器, 如使用 V.、 V.bis, 以及 V. 的那些, 需要使用硬件 (RTS/CTS) 流控制。 您可以在 /etc/rc.d/serial 中增加 stty 命令来在 FreeBSD 内核中, 为调制解调器设置硬件流控制标志。
例如, 在 1 号串口 (COM2) 拨入和拨出设备上配置 termios 标志 crtscts, 可以通过在 /etc/rc.d/serial 增加下面的设置来实现:
# Serial port initial configuration
stty -f /dev/ttyd1.init crtscts
stty -f /dev/cuad1.init crtscts
.4.5 Modem 设置
如果您有一个 modem, 它的参数能被存储在非易失性的 RAM 中,您将必须使用一个终端程序来设置参数 (比如 MS-DOS? 下的 Telix 或者 FreeBSD 下的 tip)。使用同样的通讯速度来连接 modem 作为初始速度 getty 将使用和配置 modem 的非易失性 RAM 来适应这些要求:
连接时宣告 CD
操作时宣告 DTR; DTR 消失时挂断线路并复位调制解调器
CTS 传输数据流控制
禁用 XON/XOFF 流控制
RTS 接收数据流控制
宁静模式 (无返回码)
无命令回显
请阅读您 modem 的文档找到您需要用什么命令和 DIP 接口设置。
例如,要在一个 U.S. Robotics? Sportster? 的外置 modem 上设置上面的参数,可以用下面这些命令:
ATZ
AT&C1&D2&H1&I0&R2&W
您也可能想要在 modem 上寻找机会调节这个设置, 例如它是否使用 V.bis 和 MNP5 压缩。
外置 modem 也有一些用来设置的 DIP 开关, 也许您可以使用这些设置作为一个例子:
Switch 1: UP —— DTR Normal
Switch 2: N/A (Verbal Result Codes/Numeric Result Codes)
Switch 3: UP —— Suppress Result Codes
Switch 4: DOWN —— No echo, offline commands
Switch 5: UP —— Auto Answer
Switch 6: UP —— Carrier Detect Normal
Switch 7: UP —— Load NVRAM Defaults
Switch 8: N/A (Smart Mode/Dumb Mode)
在拨号 modem 上的结果代码应该被 禁用/抑制, 以避免当 getty 在 modem 处于命令模式并回显输入时错误地给出 login: 提示时可能造成的问题。 这样可能导致 getty 与 modem 之间产生更长的不必要交互。
.4.5.1 锁定速度的配置
对于锁定速度的配置, 您需要配置 modem 来获得一个不依赖于通讯率的稳定的 modem到计算机 的传输率。 在一个 U.S. Robotics Sportster 外置 modem 上, 这些命令将锁定 modem 到计算机的传输率:
ATZ
AT&B1&W
.4.5.2 匹配速度的配置
对于一个变速的配置, 您需要配置 modem 调节它的串口传输率匹配接收的传输率。 在一个 U.S. Robotics Sportster 的外置 modem 上, 这些命令将锁定 modem 的错误修正传输率适合命令要求的速度,但允许串口速度适应没有纠错的连接:
ATZ
AT&B2&W
.4.5.3 检查modem的配置
大多数高速的modem提供了用来查看当前操作参数的命令。 在USR Sportster 外置modem上, 命令 ATI5 显示了存储在非易失性RAM中的设置。要看看正确的 modem 操作参数, 可以使用命令 ATZ 然后是 ATI4。
如果您有一个不同牌子的 modem, 检查 modem 的使用手册看看如何双重检查您的 modem 的配置参数。
.4.6 问题解答
这儿是几个检查拨号modem的步骤。
.4.6.1 检查FreeBSD系统
把您的modem连接到FreeBSD系统, 启动系统, 然后, 如果您的 modem 有一个指示灯,当登录时看看 modem 的 DTR 指示灯是否亮: 会在系统控制台出现命令行——如果它亮, 意味着 FreeBSD 已经在适当的通讯端口启动了一个 getty 进程, 等待 modem 接收一个呼叫。
如果DTR指示灯不亮, 通过控制台登录到 FreeBSD系统,然后执行一个 ps ax 命令来看 FreeBSD 是否正在正确的端口运行 getty进程。您将在进程显示中看到像这样的一行:
? I 0:. /usr/libexec/getty V ttyd0
? I 0:. /usr/libexec/getty V ttyd1
如果您看到是这样的:
d0 I 0:. /usr/libexec/getty V ttyd0
modem 不接收呼叫, 这意味着 getty 已经在通讯端口打开了。这可以指出线缆有问题或 modem 错误配置, 因为 getty 无法打开通讯端口。
如果您没有看到任何 getty 进程等待打开想要的 ttydN 端口, 在 /etc/ttys 中双击您的记录看看那儿是否有错误。 另外,检查日志文件 /var/log/messages 看看是否有一些来自 init 或 getty 的问题日志。 如果有任何信息, 仔细检查配置文件 /etc/ttys 和 /etc/gettytab,还有相应的设备文件 /dev/ttydN,是否有错误,丢失记录,或丢失了设备指定文件。
.4.6.2 尝试接入Try Dialing In
设法拨入系统。 确信使用8位, 没有奇偶检验, 在远程系统上的1阻止位。如果您不能立刻得到一个命令行, 试试每隔一秒按一下 Enter。如果您仍没有看到一个登录: 设法发送一个 BREAK。如果您正使用一个高速的 modem 来拨号, 请在锁定拨号 modem 的接口速度后再试试。
如果您不能得到一个登录:prompt,再检查一下 /etc/gettytab,重复检查:
在/etc/ttys 中指定的初始可用的名称与 /etc/gettytab 的一个可用的相匹配。
每个 nx= 记录与另一个 gettytab 可用名称匹配。
每个 tc= 记录与另一个 gettytab可用名称相匹配。
如果您拨号但 FreeBSD 系统上的 modem 没有回应, 确信 modem 能回应电话。 如果 modem 看起来配置正确了, 通过检查 modem 的指示灯来确认 DTR 线连接正确。
如果您做了好几次,它仍然无法工作,打断一会,等会再试试。 如果还不能工作,也许您应该发一封电子邮件给 FreeBSD 一般问题邮件列表 寻求帮助。