Archive for the ‘coLinux’ Category

Xming 與 Window Manager

Friday, December 1st, 2006

Xming 是我目前正在使用的免費 Win32 X Server,搭配 coLinux 或 [Cygwin] 使用上都很方便。

其實要在 coLinux 或 Cygwin 中使用 XWindow 並不是困難的事,可以選擇自己跑 X Server 或是只跑 X Client,再把畫面丟到 Windows 上的 X Server;另外也有 VNCFreeNX 這類選擇。Xming 用到現在,大概就是 xhost 的設定比較不一樣,安裝上蠻簡單的,也不需要在 coLinux 或 Cygwin 中額外安裝其他套件就能用,算是非常方便的解決方案。

(more…)

txt2tags 輸出 LaTeX 檔測試

Monday, November 20th, 2006

之前把舊筆記整理了一下,發布了一篇Windows 下的 coLinux 環境設置。在還不會使用 LaTeX 前都是純文字格式的筆記,剛好前陣子也試用了一下 txt2tags 覺得還不錯,因此前一篇文章其實是用 txt2tags 轉成 HTML 後,再透過以前寫的小程式發布到 blog 上。

(more…)

Windows 下的 coLinux 環境設置

Friday, November 10th, 2006

前言

coLinux 的全名是 Cooperative Linux,介紹到此結束 (爆)。這篇只是我的記錄,所以不想打太多字啦,簡單的說就是可以把 Linux 當作一般的應用程式來執行,所以是直接執行 Linux,額外的負擔比較少 (要執行 VM 或 cygwin 也是需要額外資源的)。

雖然我自己大部份時間是使用 Linux 作業,但有時候就是很無奈,因為種種原因只能在 Windows 上操作,不過嘗過 Linux 甜頭的人實在是很難適應 Windows 那樣貧乏的環境;有時則是因為臨時需要 Linux 的實驗環境,但主要工作都在 Windows 上,很難完全轉移。我相信這類情況不是只有我遇到,因此就出現了各種解決方案。

過去最常見的方式是執行 Virtual Machine,如 VMWareVirtual PC 等等,或者是透過 cygwin 之類的模擬環境,還有我這次想介紹的 coLinux。這些工具各有優劣,我只就我個人的使用經驗來談:Virtual Machine 太耗資源,cygwin 環境雖然很接近,但有些跟終端機相關的設定又不太一樣,用起來很不順手。而 coLinux 跑的是 User-mode Linux,環境上最接近真正的 Linux (根本就是),大部份操作跟真正的 Linux 環境下是一樣的,設定檔也可以直接搬過來用。所以自從我知道有這種好東西後,就把其他工具丟掉,專心試用 coLinux。

(more…)

在 coLinux 裡安裝 icc

Thursday, August 17th, 2006

因為我的 colinux 用的是 debian image,所以安裝時得先裝上 rpm 套件
然後再修改一下安裝檔 install_cc.sh

— ../install_cc.sh 2005-12-08 03:58:24.000000000 +0800
+++ install_cc.sh 2006-08-17 16:56:20.000000000 +0800
@@ -1311,13 +1311,8 @@
else
IA=”$(uname -m)”
fi
- KERNEL=”$(uname -r | cut -d’.’ -f-3)”
- #GLIBC=”$(rpm -qf `ls -1 /lib/libc.* | sed ‘1!d’` | cut -d’-’ -f2)”
- if [ “$RPM_NOT_FOUND” = 0 ] ; then
- GLIBC=”$(rpm -qa | egrep -e ‘glibc-2\.2\.4′ -e ‘glibc-2\.2\.5′ -e ‘glibc-2\.2\.93′ -e ‘glibc-2\.3′ -e ‘glibc-2\.4′ 2> /dev/null )”
- else
+ KERNEL=”$(uname -r | cut -d’-’ -f1)”
GLIBC=”$(ls /lib/libc-* | grep -e ‘[.]so’ | sed s@’\(.*\)\(\.so.*\)’@'\1′@g)”
- fi
}

#

這樣就可以順利安裝了

colinux 0.6.4-2

Wednesday, July 19th, 2006

剛剛逛了一下  colinux  的  wiki  才發現已經有新版了
而首頁上卻完全沒更新XD

ChangeLog  [Link]

其中我比較關心的是  cofs  的改進,因為  xp  的分享一直搞不懂
在  colinux  裡開  samba  又會受限於  image  大小…這是我最後的希望了XD

cofs  and  cobd:

  *  Allow  relative  paths  in  XML  (except  for  \Device  &  \DosDevices)
  *  Remove  trailing  backslashes  from  cofs  paths
  *  Improve  console  output  of  mapped  devices  &  paths
  *  Case  insensitive  scans  for  duplicate  paths  

cofs:

  *  Fix  BSOD  for  long  non-ansi  names  in  directory
   (Thanks  to  Kensuke  Matsuzaki)
  *  Fix  for  handling  longer  basenames  (from  127  to  255)  

希望快點穩定阿….

Download
site  1  [Link]
site  2  [Link]

colinux 的備份

Tuesday, April 25th, 2006

這幾天在試試備份  coLinux  的方法
最簡單的方式當然是直接壓縮  disk  image  了
不過壓來壓去,檔案總是很大….

Filesystem      Size Used  Avail  Use%  Mounted  on
/dev/cobd0      1.5G 759M 677M 53%  /
/dev/cobd1      1.5G 316M 1.1G 22%  /home

在  WindowsXP  底下用  7-zip  壓縮的結果

2006/04/25 上午  09:27     491,532,897  fs_home_20060425.7z
2006/04/25 上午  10:49     468,579,178  fs_root_20060425.7z

這樣子感覺好像看不出壓縮保存的效益,7-zip  有那麼遜嗎…
後來想想,該不會要做  dfrag  吧?雖說在  Linux  底下很少聽到需要做  dfrag
但的確還是有這樣的程式,只是我接觸  Linux  以來還沒機會用到,就趁這次來玩玩看吧

問了一下  google  大神,有人提到用  tar  包起來再還原就有  defrag  的效果了
既然不用特別裝程式,那就來試試看吧

我另外弄了一個乾淨的  disk  image,重跑過  mkfs.ext3,mount  在  /mnt/backup
然後寫了一個簡單的  script  把該備份的資料都移到新的  disk  image  裡
基本的指令大概是這樣

tar  cf  -  dir  |  tar  xf  -  -C  /mnt/backup

這是備份或轉移系統的基本指令,有做過的人應該不難
其中有幾個系統目錄要跳過,不然整個  Windows  會直接死當…
為了還原方便,該有的目錄結構也要建立好,這些東西我在  script  裡都處理了
(可能沒有很完整,但目前能用就好)

轉換的過程很快,只是單純的  copy  動作而已,壓縮的結果如下

2006/04/25 下午  04:43     154,420,656  fs_home_20060425.7z
2006/04/25 下午  04:10     198,657,490  fs_root_20060425.7z
2006/04/25 下午  03:49     239,735,856  fs_root_20060425.bz2

壓縮後的檔案大小還不到之前的一半
大概因為我常常在新增/刪除檔案吧 效果還蠻明顯的:D
如果使用的時間沒那麼久,出來的結果大概不會差很多
還原時只要解壓縮,蓋掉原本的  root  image  後重新啟動  coLinux  就可以了

壓縮的時候我還測了一下  bzip2  跟  7-zip  哪一個比較好用
對一個空的  disk  image  來講,我下載  [Link]
一個  1.5GB  的  disk  image  以  bzip2  壓縮後不到  10kB
不過我解壓縮後重新用  7-zip  壓縮,竟然超過  200  kB

但是對於有資料的  disk  image,7-zip  的壓縮結果似乎好一點
所以我後來就用  7-zip  壓了

如果有人需要這個  script  的話…(我多做了一些判斷,所以看起來有點長)

#!/bin/bash
#  vim:  ts=2  sw=2

Mkdir=`which  mkdir`

root=’/’
[  ”$1″  =  ”"  ]  ||  root=$1
list=”
exclude=’cdrom  floppy  home  initrd  lost+found  mnt  proc  sys  tmp’
exclude_match=”
backup=’/mnt/backup’

[  -d  $backup  ]  ||  $Mkdir  $backup

echo
echo  ”backup  $root”
echo
cd  $root
for  d  in  *
do
    add=1
    for  e  in  $exclude
    do
        if  [  ”$d”  =  ”$e”  ];  then
            add=0
            exclude_match=$exclude_match’  ’$d
            break
        fi
    done

    [  $add  =  ’1′  ]  &&  list=$list”  ”$d
done

for  d  in  $list
do
    echo  -n  ”archiving  $d…”
    tar  cf  -  $d  |  tar  xf  -  -C  $backup
    if  [  $?  =  ’0′  ];  then
        echo  ’done’
    else
        echo  ’failed’
    fi
done

echo
echo  ’keep  directory  structure’
echo
cd  $backup
for  d  in  $exclude_match
do
    [  -d  $d  ]  ||  $Mkdir  $d
done