作者EarlEco (漂流岛之王)
看板mud
标题[心得] 在网乐通打造LP MUD环境
时间Sun Sep 1 15:07:31 2013
写在前头
目前编出了fluffos的driver但是es2的lib 1.3版还是无法载入成功
在这期间感谢 laechan及诸位前辈拨空指导及经验传授。
更感谢派乐灵丹发展的sh4twbox
让壹电视停止营运後网乐通变成没用的垃圾, 其实它可以改成省电的 Linux 主机
前段的文章来自於sh4twbox 安装及使用手册 发问前请读使用手册
https://docs.google.com/document/d/1UWJxV8N8fbvjcvePgrruRmZuJwPseCyHZvebNddeYWc/pub
一、准备工具
机器:网乐通一台(不用遥控器)、5伏2安培变压器
其他配件:rj45网路线
道具:回纹针: 用来按 RESET 孔
随身碟:最好2G以上
一、下载档案复制到随身碟
下载自动安装碟 sh4twbox-usb-auto-<version>.dd.xz
https://sh4twbox.googlecode.com/files/sh4twbox-usb-auto-0.5.1.dd.xz
到
http://sourceforge.net/projects/win32diskimager/下载Win32 Disk Imager
把sh4twbox-usb-auto-0.5.1.dd.xz安装到随身碟内
二、决定和网乐通连线方式
这里不繁述,用DHCP先拿一个私人IP
三、快速安装sh4twbox
1. 解压缩成 *.dd 档, 再使用 dd 或 win32-image-writer 烧录到 usb 碟
2. 拔电源, 插上 usb 碟及网路线
3. 按住 RESET孔
4. 插电源, LED闪蓝灯三下再放开 RESET
5. 等40秒 (若只想要用外接 USB 玩 sh4twbox, 到这步骤即可)
6. 拔电源, 拔 usb 碟
7. 插电源, LED闪蓝灯三下再放开 RESET
8. 等约3分钟, 可以接电视看画面, 过程中LED闪蓝灯会一闪一闪
9. 以 telnet 连入网乐通, root 帐号连到网乐通, 密码是本站名称(twpda)打两次(共
10个字元)
三、调整网乐通8GDOM的分割区
sh4twbox 输入安装指令
=== sh4twbox v0.5.1 MENU === boot from /dev/sda2 (如果是使用随身碟开机应该是
sdb1)
1) Shell (default)
2) Set Time
3) Backup
4) install sh4TwBox to device (/dev/sda1:backup, /dev/sda2:normal)
5) install force overwrite
6) pack sda2 to sda1/target.tgz as the RESET restoring image
7) format partition
8) Restore
============ Please Enter Number:
以合并2,3,4分割区为例
在 MENU 按<Enter> 进入 Linux Shell
fdisk 将 partition 2,3,4 取消建立第二个 partition, 储存新的 partition table
2-1. 指令 fdisk /dev/sda 会出现 Command (m for help):
2-2. 指令 d 会出现Partition number (1-4): 依序输入2 3 4後
2-3. 指令 n p 然後按下两次enter等待回到Command (m for help):後输入w
即可完成2,3,4合并的动作
打 sh4twbox 回到选单
选择 menu format 格式化
四、记忆体升级256M
升级前打 free指令检查
# free
total used free shared buffers
Mem: 100176 7140 93036 0 828
-/+ buffers: 6312 93864
Swap: 0 0 0
升级方式:
下载 sh4twbox-uboot256m-<version>.dd.xz, 解压缩复制到随身碟
https://sh4twbox.googlecode.com/files/sh4twbox-uboot256m-0.1.dd.xz
後方插入 FAT16/32 格式的 USB 碟, 按 RESET(即等LED闪蓝灯三下放开动作),
电视画面不动,升级完系统会自动重开机,不需要管电视画面
升级完系统会自动重开机
使用 telnet 连入系统即可检查
拔掉 USB
以 free 指令检查, 应出现类似下列画面
# free
total used free shared buffers
Mem: 238252 6648 231604 0 440
-/+ buffers: 6208 232044
Swap: 0 0 0
五、最小安装使用方式
以下指令列出 vi 代表编辑, 若不会使用 vi 编辑器可以改用 nano 替代
ping tw.yahoo.com # 确认网路畅通 , 按 ctrl-c 中断
若 ping 查不到 ip address, 或是 shpkg 找不到 googlecode 网站,有可能遇到域名挟
持 请自行在 /etc/resolv.conf 加上
nameserver 168.95.1.1 # hinet 通常没问题放前面
nameserver 8.8.8.8 # google dns 有可能被污染放後面
也可以设定固定 IP避免DHCP定期改动 /etc/resolv.conf 问题 (将
/etc/init.d/staticip.sample 编写後改成 /etc/init.d/staticip)
passwd # 更换 root 密码
adduser <xxx> # 建立一般使用者, 平常尽量使用一般使用者登入
关闭不需要的 services (检查 /etc/init.d/*, 将不需要的 rename 即可)
vi /etc/sysctl.conf # 如果不需要当成 bridge 的话, 关闭 ip forward 功能
shpkg -Syu sh4twbox-kernel sh4twbox-init # 更新到系统到最新套件
shpkg -Syy # 再强迫更新一次套件列表(因为原安装碟没有相依性列表)
shpkg -E # 检查一下是否有相依性套件可以装
避免使用 shpkg -Syu 时自动升级 kernel 及系统档案覆盖到档案
rm -rf /var/lib/shpkg/local/sh4twbox-kernel*
rm -rf /var/lib/shpkg/local/sh4twbox-init*
reboot # 更换 kernel 及系统开机script 後重新开机
echo 主机名 > /etc/hostname # 设定主机名, 重开机(或手动打 hostname <xxx>)後生
效
暂时关闭没插开机碟时RESET闪三下会自动回存备份盖掉 sda2模式(初学者可省略此段)
mount /dev/sda1 /mnt/sda1
vi /mnt/sda1/root/run_a18.sh # 将最後一行的 loader.exe 前面加上 # 注解掉
以後需要修复请务必插上救援碟再按闪三下模式, 不然系统会切成 sda1 开机, 目前恢复
sda2 开机的办法只有将 sda2 打包放入 sda1 的
target.tgz
若不小心没插救援碟就按闪三下模式, 请将前面 loader.exe 注解取消, 再执行救援碟安
装吧!
六、Arch Linux(完整功能Linux)
mount /dev/sda1 /mnt/sda1
将此档案 copy 到 /mnt/sda1/target.tgz (记得要改名)
wget -O /mnt/sda1/target.tgz
http://sh4twbox.googlecode.com/files/target.arch.20130416.tgz
sha1sum /mnt/sda1/target.tgz # 比对检查码必须和下载网页相同
拔电源, 拔 usb 碟
按住 RESET孔
插电源, LED闪蓝灯三下再放开 RESET
等约4~10分钟, 可以接电视看画面, 过程中LED闪蓝灯会一闪一闪
以 putty, pietty 或 ssh 连入网乐通 (帐号: root, 密码是twpda打两次(共10个字元))
新增使用者 useradd -m <id>
改密码 passwd <id>
调整启动设定(包含网路连线方式) vi /etc/rc.local, 不会用 vi 可改用 nano
套件管理 pacman -S <package_name>
服务管理 因为缺高手升级 kernel , 只能使用传统的 sysvinit, 无法使用 systemd,概
述如下
编辑 /etc/rc.conf
设定档放 /etc/conf.d/*
重新启动服务 /etc/rc.d/<server> restart
停止服务 /etc/rc.d/<server> stop
自行设定的服务 /etc/rc.local
七、设定GCC和安装FluffOS
vi /etc/pacman.conf
75行 Server =
http://sh4twbox.googlecode.com/files (#拿掉)
76行 # Server =
http://t:8000/sh4twbox (此行删掉, 或加 # 注解)
可在 /etc/resolv.conf 可以加上
nameserver 8.8.8.8
以免无下载
pacman -Rsn yaourt # 暂先移除
pacman -Syu # 再在升级
pacman -S yaourt # 再重装
pacman -S wget
pacman -S libtool
pacman -S gzip
pacman -S gcc (会更新档案约20MB)
-----------------------------------------------
若使用 pacman -S gcc 没下载20MB的档案,请手动下载安装
wget
https://sh4twbox.googlecode.com/files/gcc-4.2.4.76-1.1-sh4.pkg.tar.xz
tar -xvf gcc-4.2.4.76-1.1-sh4.pkg.tar.xz
-----------------------------------------------
下载安装 libstdc++
-----------------------------------------------
输入 file /usr/lib/libstdc++.so
出现 /usr/lib/libstdc++.so: broken symbolic link to `libstdc++.so.6.0.9'
发现 libstdc++.so 是连结到 libstdc++.so.6.0.9,
使用 find -name libstdc++.so.6.0.9
发现系统无 libstdc++.so.6.0.9 这个档案
删除原来的连结
rm /usr/lib/libstdc++.so
开始下载安装 libstdc++
wget
http://www.sh-linux.ssdev.jp/rpm-fc9/RPMS/sh4/libstdc++-4.3.2-7.sh4.rpm
rpm -i libstdc++-4.3.2-7.sh4.rpm (libstdc++.so.6,libstdc++.so.6.0.10)
重新连结
ln -s /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so
-----------------------------------------------
准备工具
OS: Arch Linux
MUDOS: FluffOS 2.24
MUDLIB: ES2_lib.v1.3b
将抓下来的FluffOS 解开,放在工作目录下。
http://www.fluffos.myzen.co.uk/fluffos/fluffos-2.27.tar.xz
下载最新版本
指数在
http://www.fluffos.myzen.co.uk/fluffos/
居然是个XZ,也不知道怎麽想的
yum -y install xz
xz -d fluffos-2.27.tar.xz
tar -xvf fluffos-2.27.tar
也是一样,先改options.h
/ build.FluffOS的
使用make
*** No rule to make target `local_options’, needed by `dtrace_compile’.
Stop.
不明白。
找到options.h里面有 ‘cp options.h local_options’ and edit that
instead. local_options,
cp options.h local_options
继续make
make install
install -c driver ../bin
install -c addr_server ../bin
install -c portbind ../bin
八、准备安装MUDLIB--以ES21.3及DALIB为例
wget
http://es2.muds.net/download/ES2_lib.v1.3b.tar.gz
http://0rz.tw/b32S4 有DALIB 解开RAR自己用FlieZilla上传
cd /home
mkdir mud
我们把Es2或DALIB放在/home/mud
tar -xzvf ES2_lib.v1.3b.tar.gz产生mudlib
cd /home/mud/mudlib/adm/etc/将es2.conf装在/home/mud/bin
cp es2.comf /home/mud/bin
用nano或vi修改es2.conf
nano /home/mud/bin/es2.conf
找到
# absolute pathname of mudlib 放mudlib的地方
mudlib directory : /home/mud/mudlib //我就设成/home/mud/mudlib DA的话就是
OPEN_DA
# absolute pathname of driver/config dir //fluffOS driver的地方
binary directory : /home/mud/bin
存档改好退出
cd /home/mud/bin
./driver es2.conf
[root@sh4twbox bin]# ./driver es2.conf
using config file: es2.conf
Initializing internal tables....
----------------------------------------------------------------------------
DALIB (FluffOS v2.24) starting up on Linux - Sun Sep 1 15:04:02 2013
System Error: init_addr_server: socket:Address family not supported by
protocol
/adm/simul_efun/message.c line 91: Undefined function living
No error handler for error: *Error in loading object '/adm/obj/simul_efun'
program: (none), object: (none), file: (none)
The simul_efun (/adm/obj/simul_efun) and master (/adm/obj/master) objects
must be loadable.
目前只做到这里 如果要除错 请看Spock老大的LPC教学
谢谢各位让我讲的落落长 谢谢收看
--
妖魔逃出小村! 米莉亚施展幻影绝技,终於在天黑前追上妖魔!
米莉亚:妖魔,受死领便当吧!
妖魔: 我好惨啊! 跑了一整天,腿都虚累累阿,还要被你杀掉。
米莉亚:我比你还惨! 你只用跑一趟,杀了你我还要扛着你那麽重
的屍体回去,村长才肯给赏金!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 182.234.32.242
1F:推 laechan :创意无限!125.224.233.154 09/01 16:14
2F:推 wstd :推! 59.115.45.30 09/01 16:47
3F:推 mantohu :推 220.135.187.45 09/01 17:17
4F:推 anfernee5000:实验值得赞赏 114.34.72.73 09/01 17:26
5F:推 msrvoice :es2lib 不能#define NO_ADD_ACTION吧 1.200.86.227 09/01 23:02
我讲错了 options.h 我设成 #undef NO_ADD_ACTION
6F:→ anfernee5000:需要#define package_dwlib ?? 163.30.166.199 09/03 09:44
架好了
telnet://kobmud.no-ip.biz:4000
葫 芦
之
恶 魔 天 使
- Powered BY Undine 1.3 -本机采用网乐通架构平台
<测试国家制度 4/12, 2002>
本 mud 架构修改自 es2,及dalib
我们感谢 Annihilator 与 Bor 对台湾 Mud 的贡献!
更感谢sh4twbox派乐灵丹计画可以改成省电的 Linux 主机
http://www.twpda.com/ 我们的社群为
http://next.fishome.tw/bbs/
管理者 Earl,
e-mail : [email protected]
官方网站: FB粉丝团筹备中
本 mudlib 架设的 mud: kobmud.no-ip.biz 4000
葫芦Ⅱ已经执行了六分二十八秒
目前共有二位巫师、二十位玩家在线上﹐以及一位使用者尝试连线中。
您的英文名字﹕
※ 编辑: EarlEco 来自: 182.234.32.242 (09/06 01:42)
7F:推 Fnd :鴾ㄟ_﹐<---输入中文名字直接ENTER 218.173.37.226 09/09 03:11
8F:推 uonyang :太屌了!! 122.118.32.221 09/18 16:52