2009年2月27日 星期五

就笑了

出處

2009年2月17日 星期二

2009年2月16日 星期一

隨身碟防寫..

最近的隨身碟不知道從何時開始就把防寫開關全拿掉了, 而我需要這功能時, 隨身碟裡的 flash controller 又找不到 datasheet (USBest UT165, 其實這是 ITE 做的晶片..) 不知道怎麼下手改電路, 於是我拿隨身碟去玩碟仙, 碟仙請走後隨身碟裡就多了一個 README.txt 檔裡寫 "pin 5 to gnd", 一試, 果然有用! 於是寫在這裡備份一下, 更白爛的在下一篇. 

有關系統碟防寫...

這個隨身碟原本裝的是安裝好的 CentOS 5.1, 我只是要實驗看設唯讀後系統會不會出啥茶包, 結果是有兩個檔案依舊會想寫入系統碟, 分別是 /etc/mtab~ 與 /var/lib/stateless/writable/ 這兩個, 於是從 /etc/rc.sysinit 裡檢驗看是誰在用這兩個, 意外找到一個設定檔原本就可以設定系統碟為 "唯讀" 
以下請小心操作, 會把系統搞掛:
/etc/sysconfig/readonly-root 裡:
# Set to 'yes' to mount the system filesystems read-only.
READONLY=no # 這行改 yes
# Set to 'yes' to mount various temporary state as either tmpfs
# or on the block device labelled RW_LABEL. Implied by READONLY
TEMPORARY_STATE=no #這要不要改 yes 我沒試過
# Place to put a tmpfs for temporary scratch writable space
RW_MOUNT=/var/lib/stateless/writable
# Label on local filesystem which can be used for temporary scratch space
RW_LABEL=stateless-rw
# Label for partition with persistent data
STATE_LABEL=stateless-state
# Where to mount to the persistent data
STATE_MOUNT=/.snapshot
就可以了
不過因為一堆東西都不能寫去 /var, 所以系統會死掉. 科科~~

好了進入正題, 目前研究出來的做法是這樣:
1.要有兩個 linux 系統, 而不是對現在開好機的系統動刀. 假設我們把要改的系統 mount 到 /mnt/usb
2.把 /mnt/usb/var/log 底下除了 rpmpkgs 以外檔案清掉, cd 到 /mnt/usb, 把 var 壓起來, 比方說壓成 garbage.tar.bz2 (擺 /mnt/usb 下 )
3.原本的 /mnt/usb/var rename成 /mnt/usb/__var 或別的名字
4.在 /mnt/usb 做一個 link, ln -s /dev/shm/var var (這時是無效的 link)
5.在 .mnt/usb/etc/rc.d/rc.sysinit 找到這區, 在後面加上:
---------------- etc/rc.d/rc.sysinit -------------

# Mount all other filesystems (except for NFS and /proc, which is already
# mounted). Contrary to standard usage,
# filesystems are NOT unmounted in single user mode.
action $"Mounting local filesystems: " mount -a -t nonfs,nfs4,smbfs,ncpfs,cifs,gfs -O no_netdev

mkdir /dev/shm/var /dev/shm/tmp #可做可不做
tar jxf garbage.tar.bz2 -C /dev/shm
mount --bind /__var/lib/rpm /var/lib/rpm #這行是為了以後多增加軟體用.
mount -o remount,ro / #到這再把系統碟上鎖為 read-only.
---------------- etc/rc.d/rc.sysinit -------------
之後如果有特別需要要改檔案時, 用 mount -o remount,rw / 解鎖就可以了.

這樣修改之後, 除了有些軟體還是很不乖的會去複寫系統檔案 (像 dhclient 會複寫掉 /etc/resove.conf 與 /etc/yp.conf ...) 以外整個系統運作都還算正常, 隨身碟也因為以唯讀的方式運作免去因重複寫入造成快速毀損的問題, 可以多造幾個這樣的東西, 以備往後系統爛掉時可以馬上抽換隨身碟重開機, 又可以復活了.

2009年2月11日 星期三

今天回去元智一趟...

元旦發 "新年快樂" 簡訊時, 無意間發現我居然還留著我實驗室老師的手機號碼, 於是連老師都一起發簡訊出去了. 在那之後的一個半月, 老師打電話來, 相約今天回去元智看看老師...

兩年過去, 老師的白頭髮更多了, 實驗室換到新大樓了, 實驗室的新血我也幾乎都不認識, 我呆實驗室組的那臺怪電腦到今天居然還在跑 (當 web server..), 不變的仍是做不完的計劃, 還要帶學生出遊. 走之前, 老師還說很驚訝我會回來看他, 因為我在的時候, 對老師意見最多的就是我.

的確, 過去那三年時間裡不是沒假日而已, 而是沒日沒夜的在不知道趕什麼東西, 多了一年學東西到了外面工作時仍然覺的只學到皮毛而已, 當時做學生時壓力很大, 只想學位拿到一走了之. 兩年過去了, 心情沉澱下來, 回頭看之前呆的實驗室跟老師時, 覺的, 對這樣嚴格要求的老師, 只有感謝兩個字, 實在不夠表達...

2009年2月8日 星期日

intel D945GCLF2 (atom 330) 小測2

這次是測網路. 雖然 ftp 速度蠻令人満意的 (100Mbyte/s 上下), 但會有網路卡當掉的問題..
先列一下 server 跟 client 端的環境:
server:
intel D945GCLF2, Atom 330 (1.6Ghz x2, HT on), 2G DDR-533, RTL8111c(NIC), CentOS 5.1 (2.6.18-128), samba 3.0.28, vsftpd 2.0.5
client:
GA-MA770DS3H, Phenom 9500 (2.2Ghz x4), 6G DDR2-800, RTL8111c(NIC), WindowsXP SP3, FileZilla 3.2.1

RAMdisk to RAMdisk 對傳

網芳的傳輸速度大多在 40Mbyte/s 上下跑. 
ftp 上傳到 linux 機速度也大多在 100Mbyte/s 上下 (FileZilla 擷圖)

下傳速度也有 100Mbyte/s 上下, 但 linux 機那邊網路會不定時卡死.


ftp download 會導致網路掛掉的問題, 我是在 windows 機這邊換 intel pro1000GT 網卡後確定的, 網路同樣都是 RTL8111c 我想不至於在 AMD RS770 上沒問題, 在 intel 945GC 上就會出茶包, 所以我覺的有可能出包的是 CentOS, 當然也不排除是 intel 晶片組的問題...

只有 100Mbyte/s 這是沒有 I/O 瓶頸下的速度..... 嘖...

順路一提, 只走 PCI (32bit, 33Mhz) 時 ftp 速度大約會掉到 85~90Mb/s 的水準, 會比較快很明顯是 PCI-express 加持下的結果..

後記: 之後同樣的軟體跟環境移去 nForce4 平臺 (A64 3000+/939, MSI K8N-F) 就沒傳到一半會停頓很久的問題, 但另一個組合 P3-800 + GA-6OXET(i815EPT) 會很偶爾的停頓一下, 次數沒 atom 這片板子這麼多...
雖然有這問題都是 intel chipset 的板子, 不過我還是傾向是軟體的問題...