作者归档:℃冻番茄

定制ubuntu desktop livecd 自己做发行版[转载]

最近看到论坛很多朋友抱怨: 每次重装ubuntu之后,都要重复安装中文支持,配置系统等工作。如果能定制ubuntu的livecd,事先把这些工作做了,就可以省下不少时间了。

这可以通过定制ubuntu-livecd的iso来实现,为什么不选alternate,先看它们的区别:
ubuntu-8.04-alternate-i386.iso VS ubuntu-8.04-livecd-i386.iso
alternate里面是一大堆的按顺序排列的包,安装时可以选择desktop,server,然后根据选择安装不同的包。
livecd里面最大的文件是一个文件系统映像,即filesystem.squashfs,其实就是squashfs格式的压缩包。

下面以 ubuntu-8.04-desktop-i386.iso为例,在ubuntu-804测试通过:

1。 取出iso里面的所有内容

代码:
sudo mkdir  oldiso   newiso
sudo mount  ubuntu-8.04-desktop-i386.iso  oldiso  -o  loop
sudo  cp  oldiso/*   newiso/     -rp
sudo  umount  oldiso 


这个时候,newiso里面就是原来iso的全部内容。

2。 解压filesystem.squashfs,必须解压到linux分区, 它位于newiso/casper/filesystem.squashfs

代码:
sudo unsquashfs newiso/casper/filesystem.squashfs


耐心等待,解压出来是一个squashfs-root目录,大小约是原来的3倍左右,新安装的系统是不是差不多是这个大小呢?

3。开始定制系统

代码:
sudo cp /etc/resolv.conf   squashfs-root/etc   
sudo  chroot  squashfs-root     


默认的shell可能是sh,输入/bin/bash 就可以了, 这时候可以像在正常系统一样,用apt-get等命令,当然没有图形界面。
有些程序需要proc,所以这里先挂载上。

代码:
mount none  /proc   -t proc


代码:
 apt-get  update 
sudo apt-get  install  language-pack-gnome-zh  language-pack-zh   ttf-arphic-uming  ttf-wqy-zenhei  ## 安装中文支持,和中文字体


…….
还有用apt-get 删除不用的软件,例如oo,游戏等就不多说了,最后记得

代码:
apt-get clean     ##删除文件列表包
autoremove    ##删除旧版本包
rm   /etc/resolv.conf   
umount  /proc

搞定之后,按ctrl+d 退出系统!!!

4.生成安装软件列表
sudo chroot squashfs-root dpkg-query -W –showformat=’${Package} ${Version}\n’ | sudo tee newiso/casper/filesystem.manifest
sudo cp -v newiso/casper/filesystem.manifest{,-desktop}

5. 重新压缩映像。
删掉原来newiso/casper/filesystem.squashfs,还是先备份吧。。
sudo mksquashfs squashfs-root newiso/casper/filesystem.squashfs ##等待一段时间

6. 编辑diskdefines,这里定义一些版本信息。
nano newiso/README.diskdefines
$ cat README.diskdefines
#define DISKNAME Ubuntu 8.04.1 "Hardy Heron" – Release i386
#define TYPE binary
#define TYPEbinary 1
#define ARCH i386
#define ARCHi386 1
#define DISKNUM 1
#define DISKNUM1 1
#define TOTALNUM 0
#define TOTALNUM0 1

7. 生成各个文件的md5值.
sudo -s
(cd newiso && find . -type f -print0 | xargs -0 md5sum > md5sum.txt)
exit

8. 重新制作iso
cd newiso
sudo mkisofs -r -V "my ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o "../myubuntu-804-livecd-iso" .
cd ../ ### 这才是最重要的

定制好的iso文件是:myubuntu-804-livecd-iso, 先用虚拟机器试试吧。。 kvm/qemu用以下命令:
sudo kvm -cdrom myubuntu-804-livecd-iso -localtime -m 300 ##300是分配的内存

sablogClient 在ubuntu 9.04 mono环境下正常运行

一直以来都以为mono只能运行控制台程序,今天把昨天做的sablogClient放到ubuntu运行,没想到还能打开

但是刚开始,因为读取不到xml文件而报错,后把xml放在home下用户根目录下就ok了

另org.phprpc.client.dll 用的是3.5下面的,非mono下的

 

screenshot-2.png

SaBlogClient 1.0发布(支持sablog1.6和2.0)

现已支持sablog 1.6 和sablog 2.0,如其它bug问题,欢迎留言!

需安装Microsoft .NET Framework 3.5 安装客户端时自动下载安装Microsoft .NET Framework 3.5

客户端下载后直接安装使用,第一次使用时,请先点配置,输入php端地址 管理员用户名及密码及可。

php服务端,直接解压后上传至sablog 根目录下,打开http://您的网址/client/

能打开则表示安装服务端成功!

 无标题.jpg

客户端下载

sablogclientsetup.rar

php服务端下载

client.rar

sablog client 正在开发中

今天正在用c#写一个基于phprpc+sablog 1.6的winform

开发环境:vs 2008 c# 3.5 php5

目前完成部分:

1,vs2008设计界面,现已完工

2,博客管理员登陆及退出

3,把用户名密码加密加上服务器url地址保存在一个xml格式的配置文件中

4,自动获取日志的分类

5,php服务端完成用户登陆,用户退出,判断用户登陆状态及获取日志分类信息

6,timer通过读取配置完成,开启自动存稿间隔时间

未完成或正在开发的部分:

1,自动存稿功能

2,读取草稿功能

3,最重要的,发布日志部分

 

sablogclient.png2.png3.png4.png

小试一下PHPRPC php做服务器端c#做客户端

今天看了下phprpc的用法,打算以后用c#做一个写针对本blog发博文的桌面程序,这样就可以想什么时候写就什么时候写了!

c#客户端源码。可执行文件在debug文件夹下面

phprpclogin.rar

vs 2008开发 c# 3.5

 d.png

PHP代码
  1. <?php   
  2. require_once(‘PHPRPC/phprpc_server.php’);   
  3.   
  4. class xzy   
  5. {   
  6.     function login($user,$pass)   
  7.     {   
  8.         if($user==‘xzy’ && $pass==‘xzy’){   
  9.             return true;   
  10.         }else{   
  11.             return false;   
  12.         }   
  13.     }   
  14.     function hi($name)   
  15.     {   
  16.         return ‘hi  ‘.$name;   
  17.     }   
  18. }   
  19. $rpc = new phprpc_server();   
  20.   
  21. $rpc->add(array(‘login’,‘hi’),new xzy());   
  22.   
  23. $rpc->start();   
  24.   
  25. ?>  

apache非80端口在Google Chrome本地调试时问题

http://127.0.0.1:102/ 的网页可能暂时无法连接,或者它已被永久性地移动到新网址。

 禁用的端口列表

解决方法就是更换一个不在禁用列表里的端口

另外:

1,    // tcpmux
7, // echo
9, // discard
11, // systat
13, // daytime
15, // netstat
17, // qotd
19, // chargen
20, // ftp data
21, // ftp access
22, // ssh
23, // telnet
25, // smtp
37, // time
42, // name
43, // nicname
53, // domain
77, // priv-rjs
79, // finger
87, // ttylink
95, // supdup
101, // hostriame
102, // iso-tsap
103, // gppitnp
104, // acr-nema
109, // pop2
110, // pop3
111, // sunrpc
113, // auth
115, // sftp
117, // uucp-path
119, // nntp
123, // NTP
135, // loc-srv /epmap
139, // netbios
143, // imap2
179, // BGP
389, // ldap
465, // smtp+ssl
512, // print / exec
513, // login
514, // shell
515, // printer
526, // tempo
530, // courier
531, // chat
532, // netnews
540, // uucp
556, // remotefs
563, // nntp+ssl
587, // stmp?
601, // ??
636, // ldap+ssl
993, // ldap+ssl
995, // pop3+ssl
2049, // nfs
4045, // lockd
6000, // X11

 

 

 

21,   // ftp data
22, // ssh


ubuntu 9.04 用wine安装fireworks等windows下的软件

1、先把win下的中文字体(主要是simsun)都拷到
$HOME/.wine/drive_c/windows/Fonts
2、再新建一个纯文本文件,例如叫 zh.reg,加入以下内容

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial"="simsun"
"Arial CE,238"="simsun"
"Arial CYR,204"="simsun"
"Arial Greek,161"="simsun"
"Arial TUR,162"="simsun"
"Courier New"="simsun"
"Courier New CE,238"="simsun"
"Courier New CYR,204"="simsun"
"Courier New Greek,161"="simsun"
"Courier New TUR,162"="simsun"
"FixedSys"="simsun"
"Helv"="simsun"
"Helvetica"="simsun"
"MS Sans Serif"="simsun"
"MS Shell Dlg"="simsun"
"MS Shell Dlg 2"="simsun"
"System"="simsun"
"Tahoma"="simsun"
"Times"="simsun"
"Times New Roman CE,238"="simsun"
"Times New Roman CYR,204"="simsun"
"Times New Roman Greek,161"="simsun"
"Times New Roman TUR,162"="simsun"
"Tms Rmn"="simsun"

3、运行 regedit zh.reg

screenshot-1.png

使用zend studio自带SubVersion客户端

电脑新装的ubuntu 9.04 ,在linux下没有好用的图形svn客户端,用命令行又嫌麻烦,工作中又要用到svn来进行代码管理,以前也知道zend studio自带了svn客户端,但以前一直没用过,正好现在拿来用用,使用方法非常简单

Zend Studio默认使用CVS,可在“工具”->“首选项”->“source control”中选择Subversion即可。
配置Zend Studio客户端使用SVN:
打开“工具”->“SubVersion”->”checkout“,显示对话框
Module ULR 指要下载的源程序在源码库的位置,工作目录是下载到本机的程序存放位置,如果所填目录不存在,则程序自动创建。
用户名密码如果不需要的时候默认为空。

Subversion菜单命令说明:
Update : 将svn 源码库端文件同步到本地的工作拷贝。
Commit: 提交当前工作拷贝的更改。这个地方是有可能出现代码冲突的。最安全的解决方法,先update一下,再修改程序并Commit。
Add :将当前文件添加到版本控制库中。原来该版本不处于版本控制之下。比如新建立的一个程序或者文件。
Delete: 将当前文件从版本控制库中删除,脱离svn版本控制。
Revert : 取消当前文件的所有的本地编辑。并且解决所有的冲突状态。
Resove : 删除工作拷贝文件或目录的“冲突”状态。
Status: 查看当前工作拷贝文件和目录的状态。
Diff : 比较当前文件与源码库中相应文件的不同。
Log : 当前文件的所有修改记录,从创建开始的每一次修改都能显示出来。

注意:上面的命令也可以在Zend Studio 左侧的项目区域对多个文件或文件夹同时操作。

在修改完成之后,可以到程序运行服务器的项目目录下svn update一下,就可得到最新的程序。

Svn高级操作:
a. 解决冲突(合并别人的修改)
b. 分支与合并

screenshot.png