开源,自由,平等,共享,包容,沟通

2008年8月24日星期日

Windows XP 下的 MySQL+Apache+PHP 运行环境架设

 
一、概述

 本文详细描述了如何在 Windows 系统上手工架设 PHP 服务器运行环境。
 分别按步骤讲解了 PHP 服务器环境所需要的 4 种软件的安装过程及必要的知识提示。

二、平台

 CPU:Intel(R) Core(TM) 2 Duo T7100 @1.80GHz 双核;
 内存:DDR2 333MHz 1GB;
 硬盘:ST 120GB 5400rpm;
 系统:Windows XP Professional Service Pack 3。

三、准备

 MySQL:mysql-essential-6.0.6-alpha-win32.msi
  官方http://www.mysql.com/
  下载http://dev.mysql.com/downloads/mysql/6.0.html#win32

 Apache:apache_2.2.9-win32-x86-no_ssl-r2.msi
  官方http://www.apache.org/
  下载http://httpd.apache.org/download.cgi

 PHP:php-5.2.6-Win32.zip
  官方http://www.php.net/
  下载http://cn.php.net/get/php-5.2.6-Win32.zip/from/a/mirror

 Zend Optimizer:ZendOptimizer-3.3.3-Windows-i386.exe
  官方http://www.zend.com/
  下载http://www.zend.com/en/downloads/

 完全卸载 IIS5.1(若已安装)及其相关组件,关闭防火墙(也可以在安装过程中例外一些必要的端口)。

四、安装

 注意:除了以下步骤中明确指定需要更改的设置,或重点提示注意的地方,其余的均可使用默认值。

 第一步:安装 MySQL 数据库

  01. 运行 mysql-essential-6.0.6-alpha-win32.msi 安装文件;
  02. 在“Setup Type”(安装类型)选择“Custom”(自定义);

   另外,“Typical”表示典型安装,“Complete”表示完全安装;
  03. 在“Custom Setup”(自定义安装)为“MySQL Server”和“MySQL Server Datafiles”选择安装路径,最好都是非系统盘:
   我的“MySQL Server”目录为:D:\Environment\MySQL\MySQL Server 6.0\;

   我的“MySQL Server Datafiles”目录为:D:\Environment\Application Data\MySQL\MySQL Server 6.0\;

  04. 点击“Install”完成 MySQL 数据库安装,下一步进入 MySQL 配置向导;
  05. 在“Wizard Completed”(向导完成)选择“Configure the MySQL Server now”(现在配置 MySQL 服务器)进行数据库服务器配置,进入“MySQL Server Instance Configuration”(MySQL 服务器实例配置)界面;

   选择“Register the MySQL Server now”选项会弹出 MySQL 官方注册页面邀请你注册;
  06. 选择“Detailed Configuration”(详细配置)选项;

   选择“Standard Configuration”选项,系统会按照通常的配置协助手工安装;
  07. 选择“Developer Machine”(开发模式)选项;

   其实,这里是选择 MySQL 服务实例运行的模式:“Developer Machine”是开发模式,在本地做测试开发时选择此项,占用内存资源会比较小;“Server Machine”是产品模式,即已经作为非独占方式的数据库服务运行,同时该机器上还可能有其它的应用程序;“Dedicated MySQL Server Machine”是专有数据库服务器模式,即整个服务器主要运行一个 MySQL 服务;
  08. 选择“Multifunctional Database”(多功能数据库)模式;

   这里是选择 MySQL 服务器的实例配置,根据需要,一般要兼容速度与性能,就选择第一种,即支持 MyISAM 和 InnoDB 等多种类型库都支持的数据库系统;
  09. 在“InnoDB Tablespace Settings”(数据库表空间设置)使用默认的“Installation Path”,即把 MySQL 数据库文件存放在刚才自定义安装 MySQL 服务器文件的目录(不过对于小硬盘的机器要注意空间是否充足);

  10. 选择“Decision Support(DSS)/OLAP”(决策支持系统/联机分析处理)选项;

   这里是选择最大连接数:“Decision Support(DSS)/OLAP”是作为本地测试使用;“Online Transaction Processing(OLAP)”最大连接数为 500;“Manual Setting”为自定义最大连接数;
  11. 选择“Enable TCP/IP Networking”(启用 TCP/IP 网络)并指定 MySQL 开放的端口(默认 3306),同时选择“Enable Strict Mode”(启用严格检查)选项;

   “Enable Strict Mode”表示对 SQL 执行时严格检查,当发现移植过来的应用程序出现 SQL 错误,只需要再次运行向导,把该项取消即可;
   当然,也可以选中“Add firewall exception for this port”以使系统自动在防火墙上例外该端口,

成功后可以查看防火墙设置;

  12. 选择“Manual Selected Default Character Set/Collation”(手动选择默认字符集/排序规则),并指定“Character Set”为“utf8”;

   MySQL 服务器的默认字符集是 latin1;
   也可以更改 MySQL 配置文件来改变默认字符集;
  13. 选择“Include Bin Directory in Windows PATH”选项;

   该“Include Bin Directory in Windows PATH”选项包含二进制文件执行路径,选中后即在任何目录下都可以执行 MySQL 命令行程序;
   另外,“Install As Windows Service”表示像 Windows 服务那样安装 MySQL,同时你可以自定义该服务的名称,并且指定“Launch the MySQL Server automatically”即可在开机时自动运行;
  14. 在“Modify Security Settings”中两次输入“root”用户密码;

   选择“Enable root access from remote machines”表示允许 root 用户远程登录服务器;
   建议不要选择“Create An Anonymous Account”选项,因为它会建立匿名用户;
  15. 点击“Execute”执行配置,直到处理完成,点击“Finish”;

   到此,每次计算机开机之后会自动运行 MySQL 服务,它的连接端口在 3306,MySQL 管理员的用户是 root,密码刚才已经自定义过了;
  16. 点击“开始”-“运行”-“cmd”,输入“mysql -u root -p”,接着输入 root 用户的密码,如果出现了 MySQL Server 的相关信息,表示MySQL 数据库服务器安装成功。

  17. 当然,也可以使用“MySQL Command Line Client”工具完成与 步骤 16 相同的操作。


 第二步:安装 Apache Web 服务器

  01. 运行 apache_2.2.9-win32-x86-no_ssl-r2.msi 安装文件;
  02. 在“License Agreement”选择“I accept the terms in the license agreement”,同意安装和 Apache 软件授权协议;

  03. 在“Read This First”可以仔细阅读 Apache 的来源以及发展历史和更新日志;

  04. 在“Server Information”填写当前安装服务器上的域名(Network Domain)和主机名(Server Name)以及管理员的电子邮件地址(Administrator's Email Address):测试环境可以任意填写;如果是实际的服务器环境,最好是 DNS 服务器已经指向好的域名和主机名,而管理员的电子邮件地址为真实有效的地址;

  05. 在“Setup Type”选择“Typical”以典型模式安装服务器;

  06. 在“Destination Folder”使用默认的安装目录,当然也可以自定义;

  07. 点击“Install”完成 Apache 服务器的安装(在没有禁用防火墙的情况下,系统会给出提示“有名为 Apache 的程序要试图进行网络连接”,点击“解除锁定”以继续顺利安装);
  08. 打开浏览器,在地址栏中输入“http://localhost/”或“http://127.0.0.1/”,若浏览器输出“It Works!”,表示安装成功;

  09. 此时,Apache 服务器已经支持 HTML 静态页面了;
  10. 在系统右下角的“系统钩子区域”,可以找到 Apache 服务器的实用管理工具;
  11. 右击图标,选中“Open Apache Monitor”,

   弹出“Apache Service Monitor”(Apache 服务监视器)窗口,

   用以管理 Apache 服务。

 第三步:安装和配置 PHP5 环境

  01. 到目前为止,MySQL 数据库服务器和 Apache Web 服务器已经安装和配置完毕,但是,Apache 只支持了 HTML 静态页面,还没有支持 PHP 脚本的运行;
  02. 将 php-5.2.6-Win32.zip 压缩包解压到目录“D:\Environment\PHP5\”下;

  03. 这里是 PHP5 解压后的根目录结构;

  04. 下面简要写出了“D:\Environment\PHP5\”目录中主要的文件和文件夹的功能描述;
┌dev\
│ ─php5ts.lib
├ext\ --------------- PHP 的扩展库文件,在 Win32 下扩展名为 .dll,Unix 环境为 .so
│ ┌php_bz2.dll
│ ├php_mysql.dll
│ ├php_mysqli.dll
│ ├...
├extras\
│ ┌mibs\ --------------- SNMP 支持文件
│ ├openssl\ --------------- Open SSL 支持文件,用以使用 HTTPS 加密方式连接
│ ├pdf-related\ --------------- PDF 相关支持文件
│ └mime.magic
├PEAR\ --------------- PEAR 类库的初始目录
├fdftk.dll
├go-pear.bat --------------- PEAR 外部扩展类库的安装脚本
├php-cgi.exe --------------- PHP5 CGI 模块解释程序
├php-win.exe --------------- PHP5 Win32 脚本解释程序
├php.exe --------------- PHP CLI 模式可执行程序,命令行脚本解释程序
├php.ini-dist --------------- 默认的 php.ini 设置
├php.ini-recommended --------------- 推荐 php.ini 设置
├php5activescript.dll
├php5apache.dll
├php5apache2.dll
├php5ts.dll --------------- 核心 PHP DLL 文件
├...
  05. 然后将 PHP5 解压安装目录下的“php.ini-recommended”文件重命名为“php.ini”,并复制到“C:\Windows\”目录下;这样做的好处是:如果以后升级 PHP5,只需要把新版本的 PHP5 文件原样覆盖到“D:\Environment\PHP5\”目录中即可;
  06. 要对 PHP5 环境进行配置,首先定位 PHP 的扩展库,在先前复制的“C:\Windows\php.ini”文件中找到“extension_dir = "./"”(这表示在当前目录查找),将其替换为“extension_dir="D:/Environment/PHP5/ext/"”(告诉 PHP 扩展库的目录在 D:\Environment\PHP5\ext\ 下,同时注意反斜线);

  07. 为了与 MySQL 数据库建立驱动连接,需要将“D:\Environment\PHP5\”目录中的 libmysql.dll 复制到“C:\Windows\system32\”目录中;该操作很重要,否则可能不能连接到 MySQL 数据库;
  08. 然后需要修改 Apache2 配置文件,增加 PHP 模块,以解释 PHP 脚本;此配置文件在 Apache 安装目录的 conf\ 目录下名为 httpd.conf 的文本文件;
  09. 打开 conf\httpd.conf 文件进行编辑,找到“LoadModule”一节,将 PHP5 的 Apache 模块文件加载到 Apache2 运行中,添加内容如下:
   LoadModule php5_module "D:/Environment/PHP5/php5apache2_2.dll"

  10. 然后,告诉 Apache 遇到什么样的扩展名文件,使用刚才加入的 PHP 模块文件进行解析,在“AddType application/x-gzip .gz .tgz”段落下增加内容如下:
   AddType application/x-httpd-php .php

  11. 接着,修改 Apache 的网站根目录,将如下配置
   DocumentRoot "D:/Environment/Apache Software Foundation/Apache2.2/htdocs"
   替换为
   DocumentRoot "D:/WebSite-PHP"

   注意:需要修改的是“DocumentRoot”(文档根目录)而不是“ServerRoot”(服务器根目录);本人设置“D:\WebSite-PHP\”目录为 PHP 程序的根文档目录(即 PHP Web 站点的根目录);
  12. 再在 conf\httpd.conf 文件中找到如下配置
   <Directory "D:/Environment/Apache Software Foundation/Apache2.2/htdocs">
   修改为
   <Directory "D:/WebSite-PHP">

  13. 点击“开始”-“设置”-“控制面板”-“管理工具”-“服务”,在“服务”操作台中右击“Apache2.2”服务并“重新启动”,使刚才的配置修改生效;

  14. 在 PHP Web 站点的根目录即 D:\WebSite-PHP\ 目录下建立一个 UTF-8 格式的文本文件“phpinfo.php”,输入以下 PHP 程序段:
<?php
// 显示 PHP 信息
phpinfo();
// 显示 PHP 认证信息
phpcredits();
// 显示当前安装的 PHP 版本号
echo "我的 PHP 版本:".phpversion();
?>
   保存该文件后,在浏览器地址栏输入 http://localhost/phpinfo.php,如果显示如下截图页面,表示 Apache Web 服务器已经支持 PHP 脚本了;

  15. 现在可以测试 PHP 与 MySQL 数据库是否建立驱动连接,在网站根目录下重新建立一个 UTF-8 的文本文件“connect.php”,输入以下 PHP 程序段:
<?php
$connection=mysql_connect("127.0.0.1","root","******") or die("不能连接到 MySQL Server:".mysql_error());
echo "已经成功连接 MySQL 数据库<br />";
mysql_select_db("test",$connection) or die("不能选择数据库");
echo "连接 test 数据库已经成功";
?>
   保存文件后,在浏览器地址栏输入 http://localhost/connect.php,若出现如下截图页面,表示 PHP 已经成功连接到 MySQL 数据库;

  16. 如果没有出现如上图 MySQL 数据库连接成功的提示,那么返回到 C:\Windows\php.ini 配置文件中,还需要修改
   ;extension=php_mysql.dll
   替换为
   extension=php_mysql.dll
   注意:前面的分号(;)表示将本句关闭了,因为连接不上数据库,所以去掉前面的分号,以启用 php_mysql.dll 扩展库;

   最后,还需要重新启动一下 Apache2.2 服务。

 第四步:安装 Zend Optimizer 组件

  Zend Optimizer 是 Zend 公司提供的 PHP 脚本优化加速工具。

  01. 运行 ZendOptimizer-3.3.3-Windows-i386.exe 安装文件;
  02. 在“License Agreement”选择“I accept the terms of the license agreement”;

  03. 在“Choose Destination Folder”使用默认的安装路径(当然也可以自定义);

  04. 在“Choosing Web server”选择“Apache 2.x”,因为目前使用的是 Apache 2.2 Web 服务器;

  05. 在“Choose the php.ini folder”选择“C:\Windows\”目录,前面拷贝的 php.ini 配置文件就是在这个目录;

  06. 在“Choose the Web server's root folder”选择“D:\Environment\Apache Software Foundation\Apache2.2\”目录;

  07. 点击“Install”进行安装,这时会给出如下提示

   意思是:“Web 服务器在安装进程完成之前将是不可利用的。你同意吗?在继续进行之前,你必须关闭掉所有其它正在运行的 Web 服务器。首先,请将它们关闭,然后点击"是"。”
   接着,会弹出如下提示

   意思是:“你的 Apache Web 服务器没有像 Windows 服务一样被安装。你可能需要手动关闭它。注意:在你点击"OK"按钮之前,请手动关闭 Apache。”
   然后,程序进行安装,并给出如下提示

   意思是:“你的 Apache Web 服务器没有像 Windows 服务一样被安装。你可能需要手动开启它。注意:在你点击"OK"按钮之前,请手动开启 Apache。”
  08. 这样,Zend Optimizer 就被成功的安装在系统上;
  09. 现在,你可以打开浏览器并输入“http://localhost/phpinfo.php”,未安装 Zend Optimizer 工具之前是这样的

   安装后是这样的


五、后记

  整个 PHP 服务器环境已经成功被架设在 Windows XP 系统上了,注意在安装过程中,很多步骤都提及到使用 UTF-8 编码环境,这样做能够在最小出现乱码的范围内有所控制,使得无论在程序 I/O 操作或是数据库编码上都保持一致,去除系统对编码格式的转换操作,提高系统性能。

  有关 UTF-8 的知识文档请参阅这里
 

2008年8月13日星期三

抗日地雷战

 
英文名称:AntiJapan
中文名称:抗日地雷战
开发制作:金山软件公司西山居工作室
代理发行:北京正普科技有限公司
上市时间:1998 年 03 月
游戏类型:战棋类
配置要求操作系统:Windows 95/98/Me/2000/XP
     CPU:486 以上
     硬盘:200MB
     内存:16MB 以上
     操作:鼠标
游戏截图

游戏类型
  《抗日地雷战》是一款回合制战略游戏,运行平台为 Windows95、640×480 的分辨率、256色,用鼠标操作。除开窗口操作方式外,还设计了全屏幕操作方式。窗口方式和全屏方式可随意切换。在窗口方式中,系统功能通过图标按钮操作;在全屏方式中,系统功能通过菜单操作。和普通回合制战略游戏不同的是,《抗日地雷战》的战斗除开普通攻击与战术(策略)外,地雷也是游戏的一个主体部分,为了突出这一主体,对战术和物品等还作了某种程度的淡化。
游戏进程
  游戏的进程由两个大的组成部分循环推进,即战斗关和休息关。休息关里接受新的战斗任务并进行其它准备工作,其中最重要的事情就是制造地雷。地雷有不同的品种,同一品种又有各种属性,不同品种不同属性的地雷在制造时材料的配方和资金的消耗是各不相同的。
  战斗中,对地雷的使用状况直接影响战斗的成败,当玩家具有足够的技术力能够制造各种地雷并熟悉它们的性能后,地雷将变成一种克敌制胜的法宝:可连环引爆,可定时引爆,可遥控引爆,甚至可以牺牲自己强制引爆,可分别消耗敌人的体力,士气……
  一场战斗结束后,利用自己实拍的电影片段安排下一关的任务。每关过后都会出现一个战绩统计的画面,对玩家的作战过程和战果作一个统计,并进行评估。此外,爆机后也会有一个总的战况报告,并以此评估玩家的作战水平。
  整个游戏有完整的剧情,前后连贯,首尾呼应。任务也不是单一的消灭敌人,每关的任务各不相同,地图绝不重复,或村庄,或城池,或深山,或平原,或火车上,或地道里,完成指定任务后即可过关。
地雷的制造与使用
  《抗日地雷战》中一共设计了十种地雷,有杀伤敌人体力(相当于生命)的土雷、石雷、铁雷、彻地雷、轰天雷,还有消耗敌人的士气的伪装雷、蝎子雷、瘴气雷等。每种地雷又有四类属性,分别为:
    普通,踏上即炸;
    引发,必须由其它地雷爆炸后引爆;
    定时,埋设后需经过设定的回合数后方会爆炸;
    遥控,手动控制爆炸时间。
  不同的地雷种类由不同的材料按照一定的比例制造而成,材料可从杂货铺购买,购买材料和其它物品的资金来源于在战场上缴获的敌人的武器装备,上缴后即可得到相应的活动资金。地雷的制造在专门的作坊里完成,制造时一并确定它的属性,地雷本身的制造只消耗材料,但属性的添加通常还要消耗额外的资金。
  战斗中,埋设地雷的技巧对战斗的顺利与否至关重要:因为敌人有一系列对付地雷的方法,其主要手段是利用工兵起出地雷。此外,敌人还可能逼迫老百姓踏雷,派出小股部队开路等,使我方布下的雷阵不能奏效,甚至伤害自己人。地雷爆炸后波及的范围内所有的队伍都将受到伤害,包括我方部队。如果炸死炸伤平民,也会影响我方的成绩。
  虽然地雷可以大面积杀伤敌人,起到使战斗速战速决效果,但光使用地雷也有不利的一面:被炸死的敌人没有武器装备留下,而敌人的武器装备是我方资金的主要来源。
兵种
  《抗日地雷战》中,我方有二十多个兵种,而敌方则有四十多个兵种,此外还有作为友军的国民党正规部队以及土匪等地方武装的一些兵种。
  各兵种的攻击手段有两类,即普通攻击和战术攻击。普通攻击的效果决定于兵种本身的属性及使用者的武力、攻击水平和佩带的武器装备等。通常敌方在武器方面是占有优势的,敌方的许多很厉害的兵种也是我方没有的,如装甲车,坦克等。
  不同的兵种具有不同的战术,不同的战术影响的参数也不一样。如伤害的可能是体力,士气,也可能是攻击力或防御力。另外,某些战术会有一些意想不到的效果,如我方儿童团或童子军的掠夺战术,不仅可以从敌人身上得到武器或装备,而且会使敌人因武器装备的丢失而导致攻击力、防御力的下降。当然,敌方也有大大的厉害的战术,如特务的暗杀可使我方一招致命,鬼子施毒后我方会大面积受伤,攻击力、防御力都将下降,而鬼子高级军官的空袭战术甚至会调动飞机来对我方进行大面积轰炸……
  攻击水平和战术水平不会因为部队等级的提升而自动提升 - 用的多则提升得快,不操练则不提升。此外还和人物本身的属性有关。
  我方兵种可以升职和转职,升职后能力会得到大幅度提升。从一个兵种转职为另一个兵种后,原有的战术及等级将会保留。
剧情
  1942 年日军“五一”大扫荡后,我根据地大幅度减少,八路军损失严重,日伪气焰嚣张。为了改变这种局面,八路军改变战术,化整为零,将部分主力部队分解为比较小的战斗单位,组织成武装工作队进入敌占区进行游击活动。
  在八路军晋察冀军区司令部。晋察冀军区吕正操司令员和政委向你交代任务:进入敌占区平阳县,组建一支抗日游击队,截断经过平阳的日军铁路补给线,开辟一片新的抗日根据地。
  接受任务后,你只身一人进入平阳县,开始游击队的创建工作。
  游击队员的来源有:
    原来的革命同志,如朱老忠、赵虎、张嘎、史更新、肖飞等;
    投身抗日的热血志士,如柳忻、兰姑、吴海、杨铁山、周亮等;
    上级派来协助工作的,如李向阳、刘洪、鲁汉等。
    各自为王的地方武装,如李霜泗、金花婆、向天虎、向天豹等;
    反正的伪军,如郑之光,康伯充、田大山、黄成杰等;
    相互联手的友军,如方仲雄、陈怀忠、唐联西等;
  后面几类人物通常要满足一定的条件才能加入队伍,如玩家的等级或属性值较高,或和某些特定人物对话等。
  整个游戏过程共有 36 关,每关的任务各不相同,打据点,杀汉奸,救同志,抢粮食,下地道,上火车,过铁路,搞机枪,凡是那时候用到的战略战术,游戏里面应有尽有。关与关之间环环相扣,剧情紧凑严密,扣人心弦,玩起来欲罢不能。
人物篇

顺序姓名加入兵种武力排名智力排名合计总排名加入等级攻击策略等级加入关数条件
01朱老忠大刀队84675141594212和主角交谈
02赵虎民兵队7224741514624313开场加入
03张嘎儿童团712579615015313开场加入
04李向阳手枪队8298051622514和主角交谈
05史更新手枪队863682315410826和主角交谈
06兰姑妇救会6631722013829826与史更新同时加入
07柳忻骑兵队702686115661027第 7 关结束
08肖飞手枪队7814761115410927开场加入
09李霜泗骑兵队801184216411539第 9 关结束
10张长庚土炮队73235231125311339第 9 关结束
11九爷土炮队8297415156613310开场加入
12雷石柱民兵队742266241402618411进入地图中部或下部的村庄
13林嫂妇救会682772201402619412第 12 关结束
14雨来童子军682776111442520413第 13 关结束
15赵勇刚武工队801174151541021414第 9 回合加入
16魏强武工队7617833159421414第 9 回合加入
17刘洪飞虎队80117611156623416开场加入
18鲁汉飞虎队90158291482323416开场加入
19康伯充机枪队682762271303027517和主角交谈
20吴海武术队76177871541028518和主角交谈
21郑之光双枪队68278241501530619和主角交谈
22金花婆骠骑队86364261501532620先干掉 3 个敌人
23方仲雄机枪队76177871541032621和主角交谈
24向天虎武术队88262271501540723获胜后选择收编
25向天豹机枪队86354301402640723获胜后选择收编
26黄成杰机枪队781472201501542825击退田大山
27田大山机枪队761774151501542825击退田大山
28杨铁山野战队84666241501542826第 9 回合加入
29周亮武术队7814787156642826第 9 回合加入
30陈怀忠机枪队761774151501553929和主角交谈且主角智力达到 90,本关结束后加入
31唐联西骠骑队8467871622601032和兰姑交谈

物品篇

物品代码名称价格作用效果,范围适用兵种
01蟠桃10000恢复体力和士气体 5000,士 10025
02核桃40恢复体力体 601
03山楂60恢复体力体 901
04苹果80恢复体力体 1201
05桃子100恢复体力体 1501
06红枣50恢复体力体 1001
07柿子120恢复体力体 2001
08山药200恢复体力和士气体 200,士 105
09土豆240恢复体力和士气体 240,士 155
0A红薯360恢复体力和士气体 360,士 205
0B高梁300恢复体力和士气体 400,士 255
0C大米600恢复体力和士气体 700,士 3013
0D小米400恢复体力和士气体 500,士 3513
0E玉米800恢复体力和士气体 960,士 4013
0F干粮480恢复体力体 80025
10饼干600恢复体力体 90025
11罐头800恢复体力体 80025
12香菇600恢复体力体 80013
13银耳1000恢复体力和士气体 1000,士 5013
14人参2000恢复体力和士气体 1200,士 5013
15灵芝2400恢复体力和士气体 1500,士 5013
16米酒60恢复士气士 201
17黄酒80恢复士气士 301
18甜酒120恢复士气士 405
19白酒150恢复士气士 505
1A杏花酒200恢复士气士 6013
1B麝香酒240恢复士气士 8013
1C虎骨酒300恢复士气士 10013
1D五粮液1200恢复士气士 10025
1E竹叶青1800恢复士气士 10025
1F茅台2400恢复士气士 10025
20论持久战12000每回合恢复体力和士气体力 25%,士气 10%
21少林真经8000每回合恢复体力体力 15%
22太极拳谱4000增加武力武 2
23武当剑谱4000增加武力武 2
24杨家枪谱2000增加武力武 1
25成吉思汗刀谱2000增加武力武 1
26诸葛兵法4000增加智力智 2
27岳飞兵法2000增加智力智 1
28孙子兵法4000增加智力智 2
29孙膑兵法2000增加智力智 1
2A手榴弹80伤害体力体 805
2B手雷100伤害体力体 1205
2C炸弹160伤害体力体 2009
2D蜂窝40伤害体力和士气体 60,士 105
2E蜂巢60伤害体力和士气体 100,士 209
2F蜂桶80伤害体力和士气体 160,士 309
30毒虫40伤害体力和士气体 80,士 105
31大毒虫60伤害体力和士气体 120,士 209
32毒蛇60伤害体力和士气体 160,士 201
33巨毒蛇100伤害体力和士气体 240,士 401
34荨麻草20伤害士气士 309
35荨麻花40伤害士气士 509
36柳叶镖80伤害体力体 601
37梅花镖100伤害体力体 901
38打狗棒600伤害体力体 3609
39原子弹8000伤害体力和士气体 9999,士 8045
3E武术指南1200兵种转换转换为大刀队除兰姑、林嫂、柳忻、金花婆和自身为该兵种系列的所有兵种
3F野战指南1200兵种转换转换为民兵队
40战术指南1200兵种转换转换为双枪队
41枪械指南1200兵种转换转换为步枪队
42马术指南1200兵种转换转换为骑兵队
43火器指南1200兵种转换转换为土炮队
44游击指南1200兵种转换转换为武工队
45武功心法900兵种升级升级为武术队大刀队
46野战心法900兵种升级升级为野战队民兵队
47游击心法900兵种升级升级为飞虎队武工队
48战术基础800兵种升级升级为双枪队手枪队
49枪械基础800兵种升级升级为机枪队步枪队
4A马术基础800兵种升级升级为轻骑队骑兵队
4B火器基础800兵种升级升级为大炮队土炮队
4C战术经典1000兵种升级升级为冲锋队双枪队
4D枪械经典1000兵种升级升级为重机枪队机枪队
4E马术经典1000兵种升级升级为骠骑队轻骑队
4F火器经典1000兵种升级升级为重炮队大炮队
50红巾600兵种升级升级为童子军儿童团
51军旗600兵种升级升级为娘子军妇救会
52钢刀240装备品攻 4,防 4大刀系,骑兵系
53大刀320装备品攻 8,防 6大刀系,骑兵系
54战刀400装备品攻 16,防 8大刀系,骑兵系
55宝刀800装备品攻 32,防 12大刀系,骑兵系
56青木棍400装备品攻 8,防 16武术队
57混铁棍600装备品攻 16,防 16武术队
58熟铜棍800装备品攻 32,防 16武术队
59镔铁棍1600装备品攻 64,防 24武术队
5A鸟枪400装备品攻 8,防 4民兵系
5B火枪800装备品攻 16,防 8民兵系
5C火铳1000装备品攻 32,防 16野战队
5D大铳1400装备品攻 64,防 32野战队
5E木弹弓80装备品攻 4,防 4儿童系
5F铁弹弓120装备品攻 8,防 6儿童系
60长弓240装备品攻 16,防 8儿童系
61小弩400装备品攻 32,防 16童子军
62大弩800装备品攻 64,防 32童子军
63强弩1200装备品攻 128,防 48童子军
64转轮式手枪300装备品攻 8,防 10手枪系,轻骑队,骠骑队,武工系,妇救系
65勃郎宁手枪400装备品攻 12,防 16手枪系,轻骑队,骠骑队,武工系,妇救系
66王八盒子手枪600装备品攻 16,防 32手枪系,轻骑队,骠骑队,武工系,妇救系
67驳壳枪800装备品攻 24,防 48双枪队,冲锋队,轻骑队,骠骑队,武工系,娘子军
68盒子炮1000装备品攻 32,防 64双枪队,冲锋队,轻骑队,骠骑队,武工系,娘子军
69柏克门冲锋枪1200装备品攻 24,防 20冲锋队,骠骑队
6A汤姆逊冲锋枪1400装备品攻 32,防 20冲锋队,骠骑队
6B三六式冲锋枪1600装备品攻 48,防 20冲锋队,骠骑队
6C三七式冲锋枪1800装备品攻 64,防 20冲锋队,骠骑队
6D老套筒400装备品攻 8,防 8步枪队
6E汉阳造八八式600装备品攻 16,防 12步枪队
6F村田式步枪800装备品攻 32,防 14步枪队
70金钩式步枪1000装备品攻 48,防 16步枪队
71三八大盖1200装备品攻 64,防 18步枪队
72九六式轻机枪1400装备品攻 16,防 18机枪队,重机枪队
73九一年式机枪1600装备品攻 32,防 18机枪队,重机枪队
74九九式轻机枪1800装备品攻 48,防 18机枪队,重机枪队
75歪把子机枪2400装备品攻 64,防 18机枪队,重机枪队
76三八式重机枪2400装备品攻 64,防 48重机枪队
77三年式重机枪4200装备品攻 96,防 48重机枪队
78九二式重机枪6000装备品攻 128,防 48重机枪队
79松树炮200装备品攻 4,防 4土炮系
7A土炮400装备品攻 8,防 6土炮系
7B小炮800装备品攻 16,防 8土炮系
7C迫击炮1200装备品攻 24,防 12土炮系
7D火炮2400装备品攻 36,防 18大炮队,重炮队
7E大炮3200装备品攻 48,防 24大炮队,重炮队
7F重炮4800装备品攻 64,防 32重炮队
80野战炮6400装备品攻 96,防 48重炮队
81山炮8000装备品攻 128,防 64重炮队
84皮靴400装备品移 1,防 4大刀系,步枪系
85长靴800装备品移 1,防 8大刀系,步枪系
86野战靴1200装备品移 1,防 16武术队,机枪队,重机枪队
87枣红马800装备品移 2,防 6骑兵系
88大白马1200装备品移 2,防 12轻骑队,骠骑队
89雪青马1600装备品移 3,防 12骠骑队
8A脚踏车600装备品移 2,防 8武工系
8B山地车1200装备品移 2,防 16武工系
8C越野车1600装备品移 2,防 24武工系
8D摩托车2000装备品移 2,攻 12,防 32飞虎队
8E三轮摩托车3200装备品移 3,攻 16,防 48飞虎队
8F木轱辘600装备品移 1,防 12土炮系
90铁轱辘1200装备品移 1,防 24大炮队,重炮队
98汽车4800敌装备移 3,攻 8,防 8
99运兵车6400敌装备移 3,攻 10,防 16
9A野战车9600敌装备移 3,攻 12,防 32
9B装甲车12800敌装备移 2,攻 18,防 64
9C坦克16000敌装备移 1,攻 24,防 96

备注(以下物品是商店里买不到的):蟠桃、人参、灵芝、竹叶青、茅台、论持久战、少林真经、武当剑谱、杨家枪谱、成吉思汗刀谱、孙子兵法、孙膑兵法、打狗棒、原子弹、战刀、三轮摩托车、铁轱辘、汽车、运兵车、野战车、装甲车、坦克。
  其中一些是缴获敌人的装备,一些是战场获得的宝箱,一些是剧情获得的(竹叶青),也有休闲关的战利品(原子弹),因为这个游戏偶还没通关的说,以上有部分物品还无法具体给出获得方法,希望大家补充。
游戏攻略
一、初出茅庐
在这里你可以任选一张你喜欢的头像,选择兵种,游戏难易度以及你的名字(点击“更改”)。
其中,兵种所属性如下:
  手枪队:攻击距离较近,防御力较强,战术较多,移动力一般;
  大刀队:攻击距离较近,防御力一般,战术较少,移动力较强;
  步枪队:攻击距离较远,防御力一般,战术较少,移动力较差;
  骑兵队:攻击距离较近,防御力一般,战术较少,移动力强;
难易度的设置是:
  容易:每关开始时保留既得的等级和经验;队员撤退你不会降级;
  普通:每关开始时保留既得的等级和经验;队员撤退你要降级,最多降三次;
  困难:每关开始时不保留既得的等级和经验;队员撤退一名降级一次。
二、攻关提示
01. 穿越桃花岭
  6 个回合后碉堡附近的两个伪军会撤走,然后从右边的山口过去,遇见的三个敌人容易消灭;从左边走会碰上两个伪军。如果先消灭掉他们,这里将不会遇到敌人。注意两点:穿过碉堡时要躲开探照灯;取宝物。
02. 营救朱老忠
  注意先消灭自卫队,否则他们会先杀害朱老忠。
03. 赵村惊变
  赵虎和张嘎一个埋雷,一个诱敌;你和朱老忠上前攻击。
04. 接应李向阳
  在敌人追击的路上多埋几个地雷;你迅速和李向阳接触,使李向阳加入队伍。
05. 突袭高家大院
  9 回合后敌人援兵出现。在大院门口预先埋下大量地雷,全歼敌人。
06. 铁金刚露面
  你已经有石雷可用,再加上史更新和兰姑的加入,你如鱼得水。运用地雷,争取高分。
07. 路遇“单打一”
  关键是肖飞在桥头用“疑兵”之计。
08. 土桥激战
  把土桥对面的鬼子诱过来,逐个歼灭。
09. 李霜泗和白洋淀
  肖飞在桥头布雷,柳忻负责救护。你要拦住增援的敌人。
10. 初遇松井
  九爷远距离攻击。在右下角入口以及水边处多多布雷。
11. 解救村民
  占领敌人守卫的三个民房即可完成任务。20 回合后有鬼子增援。消灭援敌,你的分数会更高。
12. 智求林嫂
  出战之前最后两个队员选择李霜泗和柳忻,他们移动快,可预先埋下地雷。
13. 抢夺粮食
  11 回合雨来会在碉堡点火,敌人士气降低。
14. 二遇松井
  狼狗队和摩托队会从田里走(直级),汽车队走大路。
15. 打火车
  前 9 回合在铁路及其两侧布雷。
16. 过铁路
  康伯充会投诚。注意给专家让位。
17. 飞虎神兵
  注意搜索。
18. 智擒郑之光
  8回合,西方出现援兵。注意先埋地雷。建议劝降郑之光,他有“暗杀”计,可一招致敌于死地。
19. 义收金花婆
  建议派郑之光,配置野战靴,升级成冲锋队(或转职骑兵队,目的是增加移动力),使用“暗杀”计。
20. 增援鸡公山
  打好南方桥头阻击战。桥头及路边多布地雷。
21. 汉奸的末日
  调集火力强的重机枪队打碉堡。
22. 攻打黑风寨
  这里地形险要,发挥远距离攻击的兵种威力。建议对二向收编。
23. 朋友,彼德中尉
  正面敌人凶猛,善用地雷。尽快消灭敌人(建议此时存盘),分兵几路,直奔各个路口......其实彼德就在左下角的山上。
24. 突袭长湾
  打掉田大山后,黄成杰随之投诚。
25. 攻打施南镇
  攻打中间堡垒时小心轰炸机。魏强等可原地待命。
26. 孤胆英雄
  建议带上足够的玉米。
27. 施南镇保卫战
  注意保护群众,哪怕牺牲队员。先消灭工兵队。
28. 红岩国宝
  不要和阻击敌人做过多纠缠,快追山田。
29. 再见,川岛芳子
  迅速在下方草地上沿埋下 3 至 4 个轰天雷。
30. 夹击桥本
  注意国军的伤亡(影响你的分数)。桥本龟缩的院有轰炸机。
31. 袭击军火库
  关键是前面的几辆坦克和运兵车。坦克难打,至少要同时引爆两颗轰天雷才能炸掉。如果郑之光"暗杀"成功,则又当别论。注意从此关起连续三关你没有弹药补充,战前一定要带够地雷和精良的装备。
32. 抢占军营
  如果你在西北方的队员有三个重机枪手,再加上有兰姑救护,你可以打掉大部分运兵车和上方的鬼子,和你带领的大部队胜利会师。
33. 攻打县城
  如果你的上方攻击力小,可以先把队员撤回一步,只留一名队员在前,这时也将只有一名敌人攻击,你可以各个歼灭。下方的关键消灭敌人的车队。
34. 大决战
  你一定有了充足的准备,那就把鬼子打个落花流水吧!注意桥本群的院落有空袭。
三、高分策略
  多使用地雷:尽可能多地消灭敌人而不损伤队员;多用睛些有用的计策,如疑兵、骚扰、破坏。

需要《抗日地雷战》的朋友请联系我,网上不好找。
 

2008年8月11日星期一

远离国足,珍惜生命

 
国奥和比利时的比赛确实强奸我们的眼睛,比利时队员的伤势传说很严重,看看这里

网络上有很多人在呼吁巴西队“珍惜生命,远离国奥”。

下面是一首网民的歌,把《北京欢迎您》恶搞成了《国足欢迎你》,有意思。

我家球门常打开
开怀容纳天地
一个两个不算稀奇
再多也输得起

天大地大都是朋友
请不用客气
场上梦游是惯例
场下才牛气

国足欢迎你
用净剩球感动你
你们捞足积分
我们来出局

国足欢迎你
遇到中国就是福气
业余联队一样能晋级

我家球门常打开
要进几个随你
交锋过后就有了底
你会爱上这里

不管远近都是客人
请不用客气
进的少了别在意
下次补给你

国足欢迎你
为你敞开球门
再不济的实力
也能找信心

国足欢迎你
遇上了您就随便赢
有我们就会有奇迹





不但广大网民如此,就连央视名嘴白岩松也在节目里语出惊人炮轰国奥:“今天中国又夺得了四枚金牌,一片喜庆与笑脸,为了不影响人们看奥运的心情,中国男子国奥队决定更迅速地退出,郑智与谭望嵩得到两张红牌并 0:2 输给比利时,这一下,郑智可以全身心地投入到自己是转会还是不转会的思考中。虽然大家都知道,还有一场对巴西的比赛,但其实已可以提前告别,接下来,让我们看一下这场比赛的片段,是告别,同时,我相信,没人想对他们说再见吧!”



回顾近年来的中国足球“血案”累累:

1999 年 05 月 20 日晚,张玉宁、隋东亮和李彦三位当时的国奥队主力队员在广州备战 2000 年奥运会预选赛小组赛期间,在酒吧玩到 21 日凌晨 3 时。22 日,他们分别被罚款 5 万元人民币。
2000 年 03 月 25 日,深圳平安队主教练塔瓦雷斯发现 6 名队员夜不归宿,个别队员宿舍甚至有不明身份的妖艳女郎。这就是震动全国的平安“六君子”事件。
2001 年 05 月 30 日晚,中国足坛终于闹出人命,沈阳金德的 4 个年轻人因为小事与人发生口角,杀死了烧烤摊的主人。
2002 年 06 月 19 日晚,前申花球员施华杀害了和自己交往两年的女友鲍显俊,法院以故意杀人罪判处施华死刑,并立即执行。
2002 年 05 月 24 日山东鲁能俱乐部队员王超殴打其岳母崔女士,被法院依法判处拘役 6 个月,缓刑 6 个月。
2005 年 03 月 29 日晚上,在上海襄阳路上,范志毅驾驶一辆白色“宝马”几次想要超一辆出租车未果。汽车驶到巨鹿路、陕西路路口时,遇到红灯,范志毅乘机超车并拦下出租车,接着把出租车司机拉出来打了一顿。
2005 年 06 月 11 日凌晨,深证健力宝球员陈永强外出宵夜,在与一伙人闹出不愉快后被砍成重伤。
2005 年 08 月 13 日晚上的中甲联赛第 17 轮比赛结束后,安琦与该队体能教练孙日鹏以及队友一行5人赶到南京某夜总会喝酒。凌晨 3 点多,安琦带着两名坐台小姐返回所住宾馆,之后一名小姐便报警称,“安琦要强奸她”。
2005 年 09 月 11 日凌晨三时许,武汉黄鹤楼队球员王小诗从酒吧出来后被一群身份不明的人员手持刀具殴打并被砍伤。
2006 年 02 月 11 日凌晨 2 点左右,原辽宁主力门将刘建生因涉嫌贩毒被警方逮捕。
2006 年 09 月 04 日晚,原深足俱乐部主力球员陆博飞路过天桥突遭歹徒抢劫并被砍成重伤。
2006 年 10 月 05 日下午,权磊在在训练结束后驱车回家。就在他还没有到家的时候,被人一顿猛砍。由于失血过多、刀伤严重,进手术室后不久,权磊在手术室里出现休克现象。
2007 年 03 月 16 日,前中国国家男子足球队守门员刘云飞,吸毒被警方治安。

呵呵,真是四肢发达了头脑就变得简单,奚落一下。更多信息请到这里

上联:“试问中国男足有多愁”
下联:“恰似一群太监逛青楼”
横批:“没人会射”

真期盼新局面呀,还是要加油。
 

2008年8月10日星期日

让网页中的 Flash 背景透明

 
很老的知识点了,目前支持 Internet ExplorerFirefox 浏览器。
OperaSafari 暂未做过测试,有兴趣的朋友可以尝试一下。

虽然本人极不喜欢在网页中加入 Flash、Applet 等元素(违背了 W3C 的初衷),不过也存在必要的时候。

以下是全部代码(可放置在设置了背景图片的容器中):

<object height="100%" width="100%" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
<param value="*.swf" name="movie" />
<param value="transparent" name="wmode" />
<param value="high" name="quality" />
<embed height="100%" width="100%" src="*.swf" menu="false" wmode="transparent" quality="high" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

你可以修改上面代码中的 *、weight、height 等信息,以满足自己的需求。
 

2008年8月7日星期四

ttylinux User Guide(用户指南)Version 7.0

 
  本人按照 ttylinux 官方的指南做了简单翻译,帮助那些需要中文说明的朋友。
  核心的内容基本上翻译到位,不过还有许多不足的地方,请指导并帮助联系

┌ttylinux User Guide,Version 7.0,Pascal Schmidt,March 9, 2008
└ttylinux 用户指南
┌介绍
│   ─本章节给出 ttylinux 的概览:它是什么,谁在使用,它为什么存在。
│ ┌什么是 ttylinux
│ │ ┌ttylinux 是一个尽可能小的 Linux 发行版。
│ │ ├它可以被手动安装,或者使用包含了安装脚本的可启动 CD。
│ │ ├自定义手动安装,前提条件是已经安装其它的 Linux 系统并运行。
│ │ ├ttylinux 的目标是:尽可能安装在尽可能小的空间内。
│ │ ├它在少于 8MB 的操作系统空间的大小内提供了多任务、多用户和网络功能。
│ │ ├ttylinux 的一个主要用途是准备了通过调制解调器或 ISDN 拨号到网络服务提供商的功能;此时只能使用文本模式的 Web 浏览器。
│ │ ├它包含了一个有能力安装和移除二进制软件包的包管理脚本;该功能尽可能使 ttylinux 适应特别的需求。
│ │ ├ttylinux 可以被安装在硬盘、CD-ROM、或者任何其它你能够靠它启动的媒体上。
│ │ ├自定义模式下的可启动 CD-ROM 仅仅需要 4MB 的空间就足够了。
│ │ ├基本的文件系统(包含内核)大约 8MB 大小。
│ │ ├如果你使用可启动 CD-ROM 版本的 ttylinux 提供的安装文件,2MB 左右大小的内核将同时被安装。
│ │ ├安装 ttylinux 到硬盘分区上的最小的可工作空间大约为 10MB-20MB。
│ │ ├你可以将 ttylinux 作为一个基础系统使用,并且可以装配一个更加完整的尽可能小的系统。
│ │ └ttylinux 使用与完整的 Linux 系统相同的 C 库,因此在其它 Linux 机器上编译的程序,拷贝在 ttylinux 系统下同样能够通过程序运行出结果。
│ ├ttylinux 不是什么
│ │ ┌ttylinux 不是一个完整的 Linux 发行版,主要是因为它限制了大小。
│ │ └例如,它不包含开发工具和图形用户接口(GUI)。
│ ├ttylinux 的目标人群是哪些?
│ │ ┌ttylinux 现在被使用在机器上似乎已经过时,例如,486SX 类的 PCs。
│ │ ├它提供给那些希望使用最小的 Linux 发行版并运行在很小的可利用空间上的人们。
│ │ ├它的目标是那些已经有过 Linux 经验的人。
│ │ ├它没有很强大的用户手册去描述怎么使用该系统,因此,对有一点 Unix/Linux 经验并且当尝试使用该系统的人来说是非常有用的。
│ │ ├当前大部分普通的 Unix 功能的程序是更小的版本,相关的文档可以在互联网上许多地方被找到。
│ │ ├ttylinux 能够融入一个 Eltorito 镜像并有益于可启动的 CD-ROMs;它可以被用来通过 CD 安装磁盘或是拯救系统。
│ │ ├ttylinux 从启动镜像可提供一个 Linux 工作环境,并且通过一个脚本安装 CD 上其余的内容,以提供一个完整的系统。
│ │ ├注意:ttylinux 的真正目的并不在于 Linux 新手;它假设你拥有编译内核的知识和属于你自己的使用 Linux 系统的方式。
│ │ └基本的 ttylinux 文件系统没有带有预编译的内核以允许最大限度的灵活性;然而 CD-ROM 版本提供了预编译的内核。
│ └许可证
│   ┌ttylinux 下的软件包遵循了几个不同的开源许可协议。
│   ├(001.open source licenses)
│   ├所有脚本的发行版都遵循 GNU General Public License。
│   ├文件 COPYING 中包含了许可证的一个拷贝。
│   └任何更多许可证信息,请访问 opensource.org 网站。
├安装指南
│   ─本章描写了 ttylinux 的系统要求,和在哪儿下载,以及如何自定义系统并安装它。
│ ┌需求
│ │   ┌ttylinux 发行版的最低需求是 486SX 处理器。
│ │   ├内存需求的多少依靠你如何运行该系统。
│ │   ├随机存储器上运行该系统大约需要 14-16MB 内存,依赖被使用的精确的内核版本。
│ │   ├可启动 CD-ROM 版本使用相当大的内核镜像来支持更大范围的硬件。
│ │   ├它也加载整个系统到随机存储器上。
│ │   ├它意味着可启动的 CD-ROM 版本需要大约 16-18MB 的内存才能运行。
│ │   ├一旦系统被安装到硬盘上,内存的需求被减少到大约 8-10MB。
│ │   ├这只发生在使用 CD-ROM 安装程序的安装默认内核的时候。
│ │   ├这种需求的减少也可以发生在手动安装常规内核的情况下。
│ │   └例如,配置最小的 2.4.x 版本的内核,ttylinux 可以被运行在 5-6MB 内存下。
│ │ ─自定义内核需求
│ │   ┌如果不使用可启动的 CD-ROM 而选择手动安装,你将获得一个 8MB 大小的文件系统镜像,并且只包含发行版文件。
│ │   ├你将需要添加一个 Linux 内核来完善该系统。
│ │   ├显而易见,如果你希望使用该系统,你需要使用一个支持所有硬件的内核,并且为 ttylinux 本身附加一些额外的需求。
│ │   ├运行 ttylinux 系统的内核需要随机存储器的支持、初始化随机存储器的支持、和默认至少 8192 字节的随机存储器。
│ │   ├注意:标准的内核配置将使用 4096 字节的随机存储器,这是不够的。
│ │   ├如果你想使用 ttylinux 基础防火墙脚本,你的内核也需要支持 IP 表。
│ │   ├如果你想在 ttylinux 中使用 telnet 服务器,你的内核将需要 Unix98 伪终端和 devpts 文件系统的支持。
│ │   ├ttylinux 从根本上说是被设计用来工作在任何 2.4.4 版本内核以上的。
│ │   ├你可能有能力运行系统在 2.2.x 版本的内核下,但这并不是官方支持的,也没有通过测试。
│ │   ├ttylinux 防火墙脚本在权威情况不能运行在 2.2.x 内核。
│ │   ├系统里的 Linux 内核在 ext2 文件系统和环回设备的支持下,被用来安装 ttylinux。
│ │   ├如果没有环回设备的支持,你将无法自定义你的 ttylinux 系统。
│ │   ├如果默认情况下很完美地适合你,那将没有问题;但这往往是相当不大可能的。
│ │   ├在默认安装程序的描述下,系统被要求是基于 glibc(即通常所说的 libc6)来安装 ttylinux 的。
│ │   ├自定义处理程序要求你的只有一点,即在 ttylinux 下运行的程序相对于 glibc 是有联系的。
│ │   └这听起来对制备系统有很多的要求,但几乎任何最近的带有默认内核的 Linux 发行版都是这样做的。
│ ├下载
│ │ ┌你可以从官方主页上下载 ttylinux,当前的地址是:http://www.minimallinux.org/ttylinux/。
│ │ ├如果你想将 ttylinux 烧制在可启动 CD-ROM 上,到下载页面获取 ISO 镜像版本。
│ │ ├该 ttylinux 版本能够从 CD-ROM 驱动器启动在任何 PC 上。
│ │ ├你能够利用它救援系统或试验 ttylinux。
│ │ ├你也可以在 CD-ROM 启动以后,使用安装脚本来安装系统到硬盘上。
│ │ ├如果你希望手动安装,你可以在下载页面找到二进制压缩档的发行版;获取它。
│ │ ├在档案里你可以找到相关的用户指南和一个叫作 rootfd.gz 的文件(被压缩过的 ttylinux 文件系统镜像)。
│ │ ├发行版安装后包含了一个 ext2 文件系统。
│ │ ├单独的二进制包提供现成的下载,它被用来建立文件系统镜像。
│ │ ├如果使用包管理器从 ttylinux 系统移除一个包,并且以后又需要重新安装它,你可能应该下载它。
│ │ ├你也可以下载源码包,它包含了一个可建造的系统,通过它你自己能够建立一个二进制的 ttylinux 包。
│ │ └可建造系统包包含了一个 README 文件来描述过程。
│ ├引导 CD-ROM 版本
│ │ ┌从 CD-ROM 启动 ttylinux,需要简单的在空白光盘上刻录已下载的 ISO 镜像。
│ │ ├然后重启电脑并插入刻录好的 ttylinux 光盘到 CD-ROM 驱动器。
│ │ ├ttylinux 能够自动地启动。
│ │ ├注意:电脑的 BIOS 设置可能没有允许从 CD-ROM 盘启动。
│ │ ├在这个时候,需要进入 BIOS 设置界面去改变它。
│ │ ├如果你的电脑是老式的 BIOS 并且不知道怎样设置从 CD-ROM 启动,这里有个软件叫做“Smart Boot Manager”能够帮助你。
│ │ ├目前能够在下面的地址被找到:http://btmgr.sourceforge.net/about.html。
│ │ ├一旦 ttylinux 被启动,你可以看到登录提示符。
│ │ ├你可以使用帐号“root”(管理员帐号)和密码“root”来登录。
│ │ └阅读其余的用户指南,它能够指引你如何使用该系统。
│ ├从 CD-ROM 安装
│ │   ┌警告:运行安装程序可能很容易地破坏目标机器上当前所有的操作系统的安装信息;在安装 ttylinux 之前请谨慎进行并备份所有重要的数据;这可不是演习。
│ │   ├从可启动的 CD-ROM 安装 ttylinux 到硬盘,你首先需要根据前一章节的描述,刻录 ISO 镜像到空白光盘并开机进入。
│ │   ├一旦使用“root”用户登录,你可以开始进行安装。
│ │   ├在使用安装程序时你需要注意 3 件事:你的 CD-ROM 设备是什么;你需要安装 ttylinux 到硬盘的哪个分区;你希望启动加载器被放置在什么位置。
│ │   └在阅读完接下来的说明后,如果你依然不知道这三个问题的答案,那么可以有把握地断定你将无法继续安装下去 - 对不起,ttylinux 安装程序对你来说还不够自动化和用户友好化。
│ │ ┌CD-ROM 设备的来源
│ │ │ ┌你的 CD-ROM 设备的名称取决于驱动器连接在你的 IDE 还是 SATA 控制器上。
│ │ │ ├如果你的系统使用 IDE,设备名称可能是以下内容。
│ │ │ ├(002.device on IDE controller)
│ │ │ ├在以上内容中,/dev/hda 不大可能成为你的 CD-ROM 设备(这通常是你的硬盘设备名称)。
│ │ │ ├更多的可能是 /dev/hdc。
│ │ │ ├如果你的系统使用 SATA(Serial ATA),使用下面的表。
│ │ │ ├(003.SATA CD-ROM device)
│ │ │ └大多数时间,你的 SATA CD-ROM 设备将会是 /dev/scd0。
│ │ ├目标分区设备
│ │ │ ┌你必须找出你要安装 ttylinux 系统的硬盘分区的设备名称。
│ │ │ ├分区的设备名称由相应的硬盘设备名称后面附加数字形成。
│ │ │ ├例如,如果你的硬盘设备是 /dev/hda,那么设备 /dev/hda3 就是该块硬盘的第三个分区。
│ │ │ ├数字 1-4 是主要分区,扩展分区从数字 5 开始。
│ │ │ ├因为组合了 8MB ttylinux 系统和 2MB 内核的空间需求,所以你安装 ttylinux 系统并让它正常工作的最小分区大约为 10-12MB。
│ │ │ ├IDE 硬盘使用与上面给出的 IDE CD-ROM 设备相同的设备名称。
│ │ │ ├而 SATA,名称使用如下。
│ │ │ ├(004.SATA hard disk device)
│ │ │ ├注意:如果稍后你想在同一块硬盘上安装 Windows 和 ttylinux 以建立双重启动,你不能使用 /dev/hda1 或者 /dev/sda1 作为你的目标分区,因为这是 Windows 系统被安装和工作的地方。
│ │ │ ├这里有一些例子作为你的分区可能的设备名称。
│ │ │ ├(005.a dual-boot setup with Windows and ttylinux)
│ │ │ ├注意:这取决于 BIOS,首先两块硬盘被安装在系统上,BIOS 可能不知道从什么地方启动。
│ │ │ ├如果你的目标盘尚未分区的话能做什么?
│ │ │ ├ttylinux 包含 fdisk 程序能被用来给硬盘分区。
│ │ │ ├例如,把硬盘分一个主分区并连接到第一个 IDE 控制器,使用命令:fdisk /dev/hda。
│ │ │ ├fdisk 的用户接口有点简单和原始,所以使用要特别小心。
│ │ │ ├如果你以前还没有用过它,一个比较好的主意是在网络上搜索相关的说明。
│ │ │ ├一些基本的命令你可能会用到:“d”用来删除分区;“n”用来创建分区;“p”用来打印当前分区表;“w”用来编辑硬盘分区表。
│ │ │ └你也可以使用“q”来退出 fdisk 程序,并且不保存任何改变。
│ │ ├装载程序的位置
│ │ │ ┌你可以安装 LILO 启动加载器到两个位置之一:硬盘的主引导记录;分区的引导扇区。
│ │ │ ├当 LILO 被安装在你的第一块硬盘的 MBR 时,它会完全取代你电脑上的引导程序。
│ │ │ ├如果你有其它的操作系统被安装在系统上,你可能需要添加相关信息到 ttylinux 的 LILO 配置文件(/etc/lilo.conf)中,以能够启动和引导它。
│ │ │ ├当 LILO 被安装在目标分区的引导扇区或你的电脑的非第一块硬盘的 MBR 上时,你需要安装其它的启动加载器到第一块硬盘的 MBR 中。
│ │ │ └你务必将 ttylinux 的 LILO 启动加载器的安装位置添加到 MBR 或引导扇区中,以使的能够启动 ttylinux。
│ │ └运行安装程序
│ │   ┌一旦你确认了目标设备和启动加载器的位置,你就可以运行安装程序了。
│ │   ├名为 installer 的脚本能够按如下方式被请求(方括号括起的是可选参数):installer [mbr] /dev/hdc /dev/hda2。
│ │   ├例如,从 CD-ROM 设备 /dev/hdc 安装到分区 /dev/hda2,安置 LILO 到硬盘 /dev/hda 的 MBR,你可以使用:installer mbr /dev/hdc /dev/hda2。
│ │   ├又例如,从第二个 SATA CD-ROM 设备 /dev/scd1 安装到第二块 SATA 硬盘的第三个分区,安置 LILO 到目标分区的引导扇区:installer /dev/scd1 /dev/sdb3。
│ │   ├安装程序在继续进行之前会检查你的源设备是否包含了 ttylinux CD-ROM。
│ │   ├如果 CD-ROM 被找到,一个有关什么被安装在哪儿的摘要信息会被打印出来,并且你会被给出整个安装过程最后的取消机会。
│ │   ├输入“yes”继续安装,否则被取消。
│ │   ├安装程序会在目标分区建立 ext2 文件系统,然后复制发行版文件到新的文件系统,最后再安装 LILO 启动加载器。
│ │   ├一旦安装程序完成,它会打印出成功消息。
│ │   └这个时候,你可以将 CD-ROM 从你的电脑上移除,并重新启动。
│ ├自定义
│ │ ┌接下来的说明主要对手动安装 ttylinux 有用,但是在这里所描述的配置文件和选项对于当前从可引导的 CD-ROM 中安装 ttylinux 系统也是有用的。
│ │ ├在你忙于安装 ttylinux 之前,你可能想在镜像文件里改变几个设置以适合你自己的系统。
│ │ ├你可以解压后加载镜像,然后做几个合适的改变。
│ │ ├如果镜像当前已经存在于工作目录,使用“root”用户按如下操作。
│ │ ├(006.uncompressing and mounting and making changes)
│ │ ├现在,ttylinux 系统已经被加载到目录 mnt 下。
│ │ ├如果你愿意,可以检查一下。
│ │ ├如果你想手动安装 ttylinux 到硬盘,你可以按照如下方式根据你的意图建立一个安装存档。
│ │ ├(007.install to hard disk by hand)
│ │ ├在这之后,你可以获得一个名叫 ttylinux-hd.tar.gz 的文件,它可以被解压到任何你希望的系统上。
│ │ ├你可能希望自定义一些东西,比如正在使用的键盘映射、时区、网络服务提供商设置等等。
│ │ ├你可以按照如下方式从工作系统拷贝键盘映射、时区设置。
│ │ ├(008.copy keymap and timezone)
│ │ ├为网络提供商设置拨号信息,你需要知道如下情况。
│ │ ├你的调制解调器设备连接的位置,也就是 /dev/ttyS1。
│ │ ├你的调制解调器的初始化字符串,也就是 ATZ。
│ │ ├告诉计算机你的调制解调器的速度,也就是 115200。
│ │ ├你的 ISP 的电话号码,也就是 1-800-12345678。
│ │ ├你的 ISP 用户,也就是 joeuser。
│ │ ├你的 ISP 密码,也就是 joepass。
│ │ ├通过以上内容拨号使用你的调制解调器。
│ │ ├如果你想使用 ISDN 拨号,你需要知道如下情况。
│ │ ├你的 ISP 的电话号码,也就是 1-800-12345678。
│ │ ├你的 ISP 用户,也就是 joeuser。
│ │ ├你的 ISP 密码,也就是 joepass。
│ │ ├你想使用什么样的电话号码拨号到外面。
│ │ ├你是希望自动拨号还是手动拨号。
│ │ ├根据你的嗜好编辑文件 /etc/isp.conf 以改变设置。
│ │ ├注意:ttylinux 只知道有关在拨号以后立即启动 PPP 会话的提供商(这些时间对于大多数提供商都是正确的),因此如果需要一些特别的步骤来让你登录的话,你的网络连接可能无法在 ttylinux 上工作。
│ │ ├在德国,ttylinux 几乎可以工作在所有提供商下,但是我不知道其它国家是否如此。
│ │ ├如果 ttylinux 使用 ISDN,你需要在文件 /etc/isp.conf 里设置 USER_ISDN=yes,默认情况下是没有使用 ISDN 的。
│ │ ├显而易见,你需要内核支持 ISDN,硬件支持你的 ISDN 硬件。
│ │ ├如果你需要内核模块来运行你的 ISDN 硬件,你需要添加相关内容和合适的 /etc/modules.conf 到 ttylinux 系统。
│ │ ├一旦你完成了改变,可以卸载文件系统并运行 gzip 来再次压缩它。
│ │ ├(009.umount and gzip)
│ │ ├你现在已经准备好了真正的安装程序。
│ │ ├注意:本章节只覆盖了运行 ttylinux 系统最小的自定义需求。
│ │ ├这可以达到更深的程度,你可以参阅下面有关的系统指南(章节 3)信息。
│ │ ├如果你的目的是寻找一个在内存中运行 ttylinux 的方法,你务必需要在继续安装之前配置你所需要的所有信息,因此阅读系统指南的章节是你继续操作的明智主意。
│ │ └如果你想安装在硬盘,你总是需要阅读后再进行配置。
│ └手动安装
│   ┌我假设你使用 LILO(比 Linux 加载器更简短)作为你的启动加载器。
│   ├你也可以使用其它的诸如 loadlin,但是你将明确地需要一些 LILO 的经验来转换先前在这里给出的 LILO 的实例到其它的启动管理器。
│   ├我也假设你想添加 ttylinux 到现有已经被用来在你的机器上启动其它(Linux)系统的 LILO 设置下。
│   ├如果你想使用 syslinux 启动加载器在 FAT 文件系统上引导 ttylinux,请查阅附录关于建立可启动 CD-ROM(附录 A)的例子。
│   ├把 rootfs.gz 镜像和 Linux 内核放在你希望运行 ttylinux 的且保留了其它引导文件的目录里,最有可能是 /root。
│   ├让我们假设你的内核镜像文件的名称叫 bzImage-ttylinux。
│   ├现在你可以将下面的内容添加到 /etc/lilo.conf。
│   ├(010.bzImage-ttylinux)
│   ├现在按照 /sbin/lilo 重新运行 LILO 安装程序。
│   ├在下一次启动时,你可以在 LILO 引导提示下输入 ttylinux 来引导 ttylinux。
│   ├就这些,你现在已经准备好尝试 ttylinux 了。
│   ├如果你想安装在硬盘,你需要至少 8MB 大小的可利用分区。
│   ├假设该分区是 /dev/hda8,按照下面的内容使用前面(章节 2.5)获得的文件 ttylinux-hd.tar.gz。
│   ├(011.ttylinux-hd.tar.gz)
│   ├现在按照前面的概述进行自定义。
│   ├你将需要配置 mnt/etc/fstab 来改变引导设备。
│   ├一旦你完成了,你只需要卸载分区:umount mnt。
│   ├现在你可以按照前面的说明安装 LILO,只需要改变 root=/dev/hda8 行和移除 initrd 行来引导文件系统。
│   └准备开始了。
├系统指南
│   ─本章节给出了一个简短的系统概览:它的配置,一些安装好的程序。
│ ┌基本特征
│ │ ┌在启动的时候,ttylinux 提供了 6 个文本控制台用来登录。
│ │ ├默认安装了 2 个账户:root(管理员帐户)和密码 root,guest 和密码 guest。
│ │ ├syslogd 和 klogd 后台进程被运行,将内核和系统的消息记录在 /var/log/message 里面。
│ │ ├如果你需要文本编辑器,vi 已经被安装,输入 vi /path/to/filename 可以简单地调用。
│ │ ├该版本是 busybox 提供的最小的版本。
│ │ ├你可以在网络上很多地方找到使用 vi 的文档和帮助。
│ │ ├当前提供了工具 passwd、adduser、addgroup、deluser 和 delgroup 来操作用户、组和密码。
│ │ ├如果你没有像自定义章节(前面 2.5)的概述那样改变时区和键盘设置,ttylinux 将使用默认的设置。
│ │ ├默认的时区是 UTC,默认的键盘映射是 US 键盘。
│ │ ├默认情况下,inetd super-server 和 dropdear SSH server 是被运行的。
│ │ ├当 telnet 连接申请时,一个 telnet server 会被 inetd 派生运行。
│ │ ├ttylinux 包含了一个基础包过滤防火墙,它在拨号连接时会被激活。
│ │ └注意:在默认的防火墙设置中,telnet server 对于拨号连接的外部是不可见的。
│ ├启动和关闭
│ │ ┌在系统启动时,初始化进程会运行 /etc/rc.d/rc.sysinit 脚本来使系统启动。
│ │ ├该脚本会做一些常规的检查工作,重新加载根系统,启动基本的网络。
│ │ ├在这些完成之后,rc.sysinit 将根据目录 /etc/rc.d/rc.start 运行全部可执行的文件。
│ │ ├无论这些是脚本还是编译过的程序,都没关系。
│ │ ├所有可执行文件都将被传递 start 参数。
│ │ ├例如,如果这里有一个叫做 runme 的脚本,rc.sysinit 将执行 runme start。
│ │ ├默认的 ttylinux 初始化脚本被存储在 /etc/rc.d/init.d 目录。
│ │ ├那些内容将被符号链接到 rc.start 目录并在启动时运行。
│ │ ├如果你想写你自己的初始化脚本,安置它们在 init.d 目录,同时安置一个符号链接在 rc.start 目录,大概也需要放入符号链接到 rc.stop 目录。
│ │ ├如果你不想编写自己的脚本,你也可以添加命令到文件 /etc/rc.d/rc.local - 该脚本将运行在引导程序的最后,待其它脚本运行完后才运行。
│ │ ├在关闭时,/etc/rc.d/rc.reboot 将被运行。
│ │ ├这将运行 /etc/rc.d/rc.stop 目录下所有的程序,并且每一个程序将被传递一个 stop 参数。
│ │ ├我们的范例脚本 runme 将被这样执行 runme stop。
│ │ ├目录 rc.start 和 rc.stop 下的所有脚本都是按照名称的 ASCII 码顺序运行的。
│ │ ├如果你想它们按照特殊的顺序运行,你可以使用这样的名称 01.first 和 02.second。
│ │ ├这个就是 ttylinux 脚本的命名方法。
│ │ ├目录 rc.start 和 rc.stop 下的所有东西都有一个符号链接,因此如果你想禁用一些特殊的脚本,你可以简单的移除这些链接。
│ │ ├在系统运行时,你也可以手动地调用初始化脚本,以防你想开始或停止某个程序。
│ │ ├为了更简单,一个叫做 service 的脚本被提供,例如:service inetd stop 将停止 inetd server 后台进程。
│ │ ├所有的脚本(除了 pppconf,它只明白极少的选项)都可通过 start、stop、restart 选项来做一些明确的事情。
│ │ ├一些脚本也知道 status 和 reload 选项,用来显示状态信息和重新加载服务配置文件。
│ │ └任何脚本如果当前没有调用任何选项,将会打印出它所支持的全部选项信息。
│ ├使用 PPP 拨号连接
│ │ ┌在前面的自定义章节(前面 2.5)中已经概述了怎样添加内容到 /etc/isp.conf 来配置拨号信息。
│ │ ├你将在这里找到有关如何实际使用 PPP 子系统来进行网络拨号的概览。
│ │ ├假设 /etc/isp.conf 在启动之前已经被正确安装,你只需要一个命令来启动网络连接:ppp -up。
│ │ ├如果你使用能够自动拨号的 ISDN(在 /etc/isp.conf 中设置 ISDN_MODE=auto),你就不需要运行:ppp -up。
│ │ ├只需要运行能够发送包到网络主机的程序即可。
│ │ ├ppp -up 触发 ppp 后台程序,它将拨号到提供商并且尝试登录。
│ │ ├ppp -up 能够被 ppp 用户组的任何用户运行。
│ │ ├在默认的 ttylinux 配置中,ppp 用户组没有任何成员,因此只有 root 用户能够启动和停止网络连接。
│ │ ├当连接被启动和运行时,你可以查阅 /var/log/message(使用 tail -f)相关信息。
│ │ ├在这之后,网络连接已经准备被使用。
│ │ ├例如,从外部世界将能够连接达到 SSH 服务器。
│ │ ├你可以使用 retawq 网页浏览器来浏览网页。
│ │ ├使用 g 键来输入 URL,然后使用光标和返回键实现导航。
│ │ ├你可以按 Shift+Q 来退出浏览器。
│ │ ├如果你使用 ISDN,当连接启动时,你可以调用 bundle 和 unbundle 脚本来启用或禁用信道绑定。
│ │ ├新连接在默认情况下总是使用简单的信道,即使在这之前信道绑定已经被启用。
│ │ ├检查当前的信道绑定是否被启用,使用命令:service isdn status。
│ │ ├如果你决定断开网络,你可以使用:ppp -down。
│ │ ├这样做会关闭连接。
│ │ ├重复一次,这些只能由 root 用户或 ppp 用户组中的用户来完成启用网络连接。
│ │ ├如果你改变了 /etc/isp.conf 中的设置,你将需要更新 ppp 配置文件并运行,命令为:ppp restart。
│ │ ├注意:如果你想交换使用调制解调器到使用 ISDN,你需要在运行 ppp restart 之前关闭网络连接,反之亦然。
│ │ ├在这之后,你就可以使用 ppp -up 和 ppp -down。
│ │ ├注意:只能由 root 用户运行 ppp restart,而普通用户则不行。
│ │ ├在 ttylinux 以前的版本(2.5 及以前),重新启动才能够更新 PPP 配置文件。
│ │ ├允许手动修改配置文件已经不再是个问题了。
│ │ ├配置文件只有在系统启动并且不存在时才被建立。
│ │ ├ppp 用户组的用户将能够读取包含了你的拨号密码的 /etc/isp.conf 文件。
│ │ ├这是不是一个好主意,取决于你有多信任你的用户。
│ │ └如果你希望只使用 ISDN,你可以移除用户组的读取权限:chmod g-r /etc/isp.conf。
│ ├使用 dropbear SSH 包
│ │ ┌SSH,或者安全外壳,它是一种允许远程登录计算机的协议。
│ │ ├它使用加密连接,使用公钥身份验证来替代简单原始的密码。
│ │ ├优势覆盖了旧的 telnet 协议,在 SSH 会话传输的网络上,没有什么是不加密的。
│ │ ├dropbear 是一个小型的 SSH v2 服务器和客户端包。
│ │ ├系统启动时默认加载了服务器。
│ │ ├它允许密码和公钥身份验证。
│ │ ├公钥身份验证使用 DSS 和 RSA 密钥,并且工作密钥是由流行的 OpenSSH 包所产生。
│ │ ├将你的由 OpenSSH 产生的公钥放到文件 .ssh/authorized_keys 中,它足以让你在拥有对应的私钥时从任何计算机进行登录。
│ │ ├注意:.ssh 目录的权限必须不能包含用户组和其它写权限,否则 dropbear 将拒绝公钥身份验证。
│ │ ├SSH 的客户端程序叫做 dbclient。
│ │ ├它与服务器不同的是不能使用 OpenSSH 格式的密钥。
│ │ ├你可以使用 dropbearconvert 程序来转换一个 OpenSSH 格式的密钥为 dbclient 所用,或者你可以使用 dropbearkey 来建立一个新的密钥。
│ │ ├转换一个 OpenSSH 密钥并存储在 ~/.ssh/id_rsa 中,请使用:dropbearconvert openssh dropbear ~/.ssh/id_rsa ~/.ssh/id_rsa.db。
│ │ ├新的密钥将存储在 ~/.ssh/id_rsa.db 中。
│ │ ├你可以使用“-i”开关来让 dbclient 使用你的新密钥来进行身份验证。
│ │ ├旧的 OpenSSH 密钥的公钥部分可以照原来样子粘贴到你的 ~/.ssh/authorized_keys 文件中。
│ │ ├转换仅需要被用于私钥。
│ │ ├建立一个新的 RSA 密钥并存储在 ~/.ssh/id_rsa.db 文件中,你可以使用命令:dropbearkey -t rsa -f ~/.ssh/id_rsa.db。
│ │ ├新的密钥的公钥部分将被打印在显示屏。
│ │ ├你可以把它放在那些你能够使用存储在 ~/.ssh/id_rsa.db 文件中的私钥进行登录的机器的 ~/.ssh/authorized_keys 文件中。
│ │ ├你可以使用“-t dss”替代“-t rsa”来建立 DSS 密钥以替换 RSA 密钥。
│ │ ├如果你丢失了公钥,你总是能够使用私钥和“-y”开关作用在 dropbearkey 上以取回它:dropbearkey -y -f ~/.ssh/id_rsa.db。
│ │ └如果你想使用 scp 来复制文件到其它机器上,OpenSSH 标准的 scp 程序将被包含在 dropbear 和 ttylinux 系统中。
│ ├设置网络设备
│ │ ┌基础的网络设置位于 /etc/network.conf 文件中。
│ │ ├在该文件中,你可以全局地禁用或启用网络。
│ │ ├同时,可以明确地指定网关的地址。
│ │ ├如果被设置了,ttylinux 在启动时会给网关安装一个默认的路由。
│ │ ├如果你不使用调制解调器或 ISDN 进行拨号,这倒是相当有用的。
│ │ ├如果你使用拨号,一旦你启动了拨号连接,默认的路由将被覆盖重写。
│ │ ├注意:环回网络经过 lo 设备总是被启用的。
│ │ ├/etc/network.conf 的设置仅仅是覆盖能够与外界联系的设备。
│ │ ├设置网络设备,在目录 /etc/network.conf 下复制 sample 文件存储为名称为 interface.eth0 的文件。
│ │ ├例如,如果你想设置网络设备 eth0,文件的名称为 interface.eth0,请使用:cp sample interface.eth0。
│ │ ├现在,编辑新文件以调整设备的设置。
│ │ └你可以让系统使用 DHCP 协议从 DHCP 服务器获得网络配置,也可以通过文件来手动设置 IP 地址和其它参数。
│ ├使用防火墙
│ │ ┌ttylinux 防火墙的默认设置是假设网络接口面向世界其它地方被叫做 ippp0 或 ppp0,这取决于你使用 ISDN 还是使用调制解调器来拨号。
│ │ ├默认情况下,防火墙允许外部世界访问 SSH 服务器,但将拒绝访问 telnet 服务器。
│ │ ├其它企图进来的连接都将被拒绝并被记录(速率被限制在平均每小时 3 个消息),而被用来 FTP 活动会话连接的 ftp-data 端口将被允许进入。
│ │ ├这适用于 TCP 连接。
│ │ ├而 UDP 协议的进入包在端口 1024 以上的都被允许。
│ │ ├同时,外部世界对 ttylinux 机器的 ping 操作也不被允许。
│ │ ├输出流量完全不会被防火墙限制。
│ │ ├你可以在 /etc/firewall.conf 文件中改变防火墙的设置。
│ │ ├唯一的设置选项是允许或禁止访问 SSH 和 telnet 服务器。
│ │ ├注意:该防火墙脚本是十分简单的,并且假设本地用户总是可被信任的。
│ │ ├对于用户使用 UDP 在 1024 以上的端口运行服务器后台进程是没有做保护的。
│ │ ├如果你不相信你的用户,该防火墙脚本对于你来说是不够的。
│ │ └注意:只有 ppp0 或 ippp0 设备是受保护的,其它接口不受防火墙约束。
│ ├shell 环境
│ │ ┌ttylinux 默认使用的 shell 就是 GNU bash。
│ │ ├你可以在 /etc/profile 中改变启动环境(变量、别名等等)。
│ │ ├你也可以将所有的文件放在目录 /etc/profile.d 中,当你登录到 ttylinux 机器的时候,所有该文件夹中的可读文件被作为 bash 程序的来源。
│ │ ├使用 /etc/profile.d 对于改变你自己的个人设置是最明智的选择。
│ │ ├你可能想在一段时间后更新你的 ttylinux 系统版本,你也完全终结了在忘记备份后丢失全部个人设置 /etc/profile 文件的可能。
│ │ └在 /etc/profile.d 中,你的改变是安全的。
│ ├包管理
│ │ ┌包管理是被一个叫 pacman(也叫包管理器)的 shell 脚本操作处理的。
│ │ ├它的选项有点类似于 RedHad 的包管理器 RPM。
│ │ ├它可能被用来安装和移除包,也可能被用来查询安装好的包和文件的数据库。
│ │ ├ttylinux 的二进制包基本上是 bzip2 算法压缩的 tar 存档。
│ │ ├在 ttylinux 主页的下载页面,你可以下载通常带有发行版本的所有包。
│ │ ├如果你在运行的 ttylinux 上移除了某个包并且希望稍后又能够重新安装它,那么你可能得按上面说的做。
│ │ ├安装 bash-3.0-2.bin.tbz 可以使用以下方式:pacman -i bash-3.0-3.bin.tbz。
│ │ ├你也可以从 wget 程序生成的标准输入管道来安装包。
│ │ ├它允许你在没有存储文件到 ttylinux 系统上时,通过网络来安装包。
│ │ ├例如,从假定的 foo.org 网站上下载 bash 包并安装:wget http://foo.org/bash-3.0-2.bin.tbz -o -;pacman -i -。
│ │ ├查询已安装的包和文件有三种不同的可利用的选项。
│ │ ├获得所有安装包列表:pacman -qa。
│ │ ├找出 /bin/login 文件所属的包:pacman -qf /bin/login。
│ │ ├列出 e2fsprogs 包的全部文件:pacman -ql e2fsprogs。
│ │ ├如果你想移除一个包,你可以使用“-e”选项来操作。
│ │ ├移除 isdn4k-utils 包,请这样使用:pacman -e isdn4k-utils。
│ │ ├在安装或移除包期间,你也可以使用“-v”选项来取得详细的输出。
│ │ ├pacman 会列出一个被安装或被移除的所有文件的列表。
│ │ ├pacman 脚本能够从目录 /var/log/packages 中获得安装包和文件的信息,在这里可以获得每一个安装包的每一个文件的信息。
│ │ ├该文件包含了所有文件及文件属于某个特定包的信息列表。
│ │ └当你手动删除某些文件时,pacman 不会提醒你,它只专门使用 /var/packages 中找到的信息。
│ └使用 devfs(不再被支持)
│   ┌以前的 ttylinux 版本支持在 devfs 设备文件系统中启用运行 Linux 内核。
│   ├然而,从 2.6 内核开始,devfs 被主要的内核开发者认为是过时的。
│   ├一个替代解决办法是使用 udev,它可以完全地运行在用户空间。
│   ├因此,我不得不在目前的 ttylinux 中放弃对最小的 devfs 的支持。
│   └到目前为止,我还没有打算集成 udev,因为我依然想要支持 2.6 以前的内核,但是在将来会改变。
├联系
│ ┌如果你有错误报告、建议、或是任何你觉得对 ttylinux 来说很重要的,请随时联系我。
│ ├你可以使用 ttylinux@ewetel.net 来联系我。
│ └看一看 ttylinux 发行版里的 AUTHORS 文件,里面有迄今为止贡献了主意、错误报告、或代码的人的列表。
└附录 A:如何制作一个可启动的 ttylinux 的 CD 盘
  ┌下面留在这里的说明是作为参照目的的,它将完全不能工作在更新的 8MB 大小的 ttylinux 文件系统上。
  ├请注意:接下来的说明用于整合 2.88 MB 的软盘镜像到可启动的 CD-ROM 上。
  ├这是一个不同方法来使用官方 ttylinux CD-ROM 版本。
  ├下面的方法将产出一个比官方更小的镜像,但是发行版的安装程序将不能工作在这个更小的镜像上。
  ├这里提供一个叫做 mkttyiso 的脚本,用来将发行版的二进制和源码版组合在一起,成为更大的、安装程序兼容的 CD-ROM 镜像。
  ├下面的说明,在你工作的系统上你需要如下程序:mkisofs、mkdosfs、和 syslinux。
  ├mkdosfs 通常会在一个叫做 dosfstools 的包中被找到。
  ├你将需要 ttylinux 文件系统镜像 rootfs.gz 和 Linux 内核镜像(make zImage 或者 make bzImage 的结果)。
  ├我假设你在你当前的工作目录中拥有一些文件,并且你内核镜像的名称是 vmlinuz。
  ├接下来的说明将只对 root 用户起作用,而非普通用户。
  ├首先,通过其余的用户指南,自定义所有你想做的事情。
  ├一旦 ttylinux 被刻录在 CD 上,你将无法做任何修改。
  ├现在,我们开始准备 CD 镜像。
  ├(012.preparing the CD image)
  ├这个时候,我们已经建立了一个类似于 2.88 MB 软盘的镜像文件,syslinux 已经将启动加载器放到了该镜像中,我们可以把镜像加载到 mnt 目录,并且拷贝我们的内核镜像和文件系统镜像文件到硬盘镜像。
  ├我们也可以说在启动时,内核期望根文件系统在 /dev/ram0 上。
  ├现在,我们需要在硬盘镜像上建立一个 syslinux.cfg 配置文件:vi mnt/syslinux.cfg。
  ├在该文件中放置一行:append initrd=rootfs.gz。
  ├如果你想传递内核参数到你的内核,需要在同一行附加相关信息。
  ├例如,如果你想传递 idebus=33,该行即是:append initrd=rootfs.gz idebus=33。
  ├现在,我们完成了建立硬盘镜像,我们需要制作一个可启动 CD。
  ├让我们开始组合一个 ISO 镜像。
  ├(013.putting together the ISO image)
  ├启动镜像本身只有 2.88 MB,因此你有可利用的额外空间。
  ├在启动后你可以加载 CD 来获取你放入到 ISO 镜像中的全部文件,除了 boot.img 文件以外。
  ├现在你可以很方便地往 iso 目录中加入任何你想加入的东西。
  ├一旦完成了,你可以如下操作。
  ├(014.make ISO image)
  ├恭喜,你已经完成了建立一个可启动的 ttylinux ISO 镜像的工作。
  ├现在,你所需要做的就是使用一些 CD 刻录程序把 bootcd.iso 镜像刻录到真正的 CD 中。
  └你可能需要保存可建立启动盘的 iso/boot/boot.img 文件在你所创建的所有 ISO 镜像之外 - 这些需要 CD 上大概 3MB 的空间。

  用户指南中涉及的专业术语的详细信息可利用百度百科谷歌等进行检索以获取相关知识。

  下面提供了指南中涉及到的相关图片:


ttylinux User Guide NO.001 open source licenses


ttylinux User Guide NO.002 device on IDE controller


ttylinux User Guide NO.003 SATA CD-ROM device


ttylinux User Guide NO.004 SATA hard disk device


ttylinux User Guide NO.005 a dual-boot setup with Windows and ttylinux


ttylinux User Guide NO.006 uncompressing and mounting and making changes


ttylinux User Guide NO.007 install to hard disk by hand


ttylinux User Guide NO.008 copy keymap and timezone


ttylinux User Guide NO.009 umount and gzip


ttylinux User Guide NO.010 bzImage-ttylinux


ttylinux User Guide NO.011 ttylinux-hd.tar.gz


ttylinux User Guide NO.012 preparing the CD image


ttylinux User Guide NO.013 putting together the ISO image


ttylinux User Guide NO.014 make ISO image

官方网站:http://www.minimalinux.org/
原版英文:http://www.minimalinux.org/ttylinux/docs/user_guide.pdf