2009年10月29日

有趣的套件screen

這東西很早之前就有了,幾年前接觸過,不過嫌他太麻煩XD這裡有一篇不錯的介紹
http://lagunawang.pixnet.net/blog/post/2836825

因為最近又重新迷上了terminal介面,所以想說來學習一下(被迫學習XD),一用之下,頗為訝異阿,竟然有進步囉!!

最下面一行可以看到,最左邊表示開了三個screen,右邊說明了可以按下F9取得一些說明跟設定,還有一些關於cpu跟記憶體的資訊,另外加上時間日期,簡直是個"terminal desktop"XD

2009年10月27日

防火牆-iptables(1)

iptables相當複雜,所以這個文章我會慢慢寫
=============================
iptables不只能夠filter(過濾)packet的資料,甚至修改資料,也就是能夠做packet改寫達到NAT的功能
對於過濾的部分可以由一群群有次序的規則做判斷

Linux底下防火牆這功能幾乎由iptables一手包辦,其他儲存規則跟回覆規則的指令則是iptables-save跟iptables-restore
一開始如果系統沒有預設的規則,應該是等同全開、沒有限制,可借由
iptables -L -n

來觀察規則表,其中參數n的意思表示不要使用DNS反查,速度會快許多,結果如下圖表
iptables的語法大致上如同鳥哥網站提到的
iptables [-AI 鏈] [-io 網路介面] [-p 協定] \
> [-s 來源IP/網域] [-d 目標IP/網域] -j [ACCEPT|DROP]
參數:
-AI 鏈:針對某的鏈進行規則的 "插入" 或 "累加"
-A :新增加一條規則,該規則增加在原本規則的最後面。例如原本已經有四條規則,
使用 -A 就可以加上第五條規則!
-I :插入一條規則。如果沒有指定此規則的順序,預設是插入變成第一條規則。
例如原本有四條規則,使用 -I 則該規則變成第一條,而原本四條變成 2~5 號
鏈 :有 INPUT, OUTPUT, FORWARD 等,此鏈名稱又與 -io 有關,請看底下。

-io 網路介面:設定封包進出的介面規範
-i :封包所進入的那個網路介面,例如 eth0, lo 等介面。需與 INPUT 鏈配合;
-o :封包所傳出的那個網路介面,需與 OUTPUT 鏈配合;

-p 協定:設定此規則適用於哪種封包格式
主要的封包格式有: tcp, udp, icmp 及 all 。

-s 來源 IP/網域:設定此規則之封包的來源項目,可指定單純的 IP 或包括網域,例如:
IP  :192.168.0.100
網域:192.168.0.0/24, 192.168.0.0/255.255.255.0 均可。
若規範為『不許』時,則加上 ! 即可,例如:
-s ! 192.168.100.0/24 表示不許 192.168.100.0/24 之封包來源;

-d 目標 IP/網域:同 -s ,只不過這裡指的是目標的 IP 或網域。

-j :後面接動作,主要的動作有接受 (ACCEPT)、丟棄 (DROP) 及記錄 (LOG)
一般而言建議練習時先把INPUT的Policy設定為DROP,先全部擋住,在慢慢開啟允許進入的部分
iptables -P INPUT DROP

比方說允許SSH Server的port則開啟port # 22
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

不過我也很懷疑為何iptables不能進化一點,只有A跟I,只能把rule放在最前跟最後,何不妨讓人可以插入到某一條規則之後
使用如
iptables -A INPUT 2 -p tcp --dport 22 -j ACCEPT
就可以在規則2後加入一條規則

最後補上一條方便的規則,讓已經建立連線或者是由我們主機發出的封包引起對方回覆的封包進入,不然一些類似更新(apt/yum)可能無法正常運作
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

當然還可以擋掉一些討厭的網域區段或者mac address,這樣就完成了基本的INPUT Chain的部分
初學者可能常會想問,我知道service的名字或者套件的名字,但我怎麼知道他用的是tcp或者udp,還有走的port number呢?要用google去查嗎?其實大多知名的服務都不假外求,只要察看/etc/services這個檔案裡面就有了

以Fedora而言,完成之後記得把檔案寫到/etc/sysconfig/iptables這個檔案內,這樣下次開機他就會自動啟動了

如何查詢ubuntu版本?

  1. cat /etc/issue
  2. cat /etc/lsb-release
  3. lsb_release –d –s –c
這三種這方式都可以

ubuntu server

最近突然對只有單純文字介面(console)的linux又重新燃起興致,我抓了ubuntu 904的server開始安裝
剛剛裝完的時候,很好20G的HD只有使用了0.38%,大約七百多MB orz有的比我想像中的多,不過至少比win7的14G好很多
因為安裝的時候選擇了中文,當然一般console只有英文,必須要解決中文問題,很幸運的找到一篇有關zhcon的文件,裡面有教導怎樣使用framebuffer
因為一堆中文console都需要使用framebuffer這功能,所以不管是安裝zhcon或者jbfterm都要先搞定framebuffer
要先把framebuffer的module開啟
vim /etc/modprobe.d/blacklist-framebuffer
#註解 vesafb
#blacklist vesafb

vim /etc/initramfs-tools/modules
#加入以下兩行
fbcon
vesafb
接著利用hwinfo這工具來偵測framebuffer
apt-get install hwinfo
hwinfo --framebuffer
接著會看到一堆mode=0x0333之類的東西,他有標明解析度
我挑選了0x0340(800x600 24bits)

接著在kernel上的參數隻用
vim /boot/grub/menu.lst
kernel /boot/vmlinuz-2.6.... vga=0x0340
update-initramfs -k $(uname -r) -u
作者的最後一步驟我看不大懂,先記下來
vim /etc/udev/rules.d/40-basic-permissions.rules

#於檔尾加入以下內容
KERNEL=="fb0", MODE="0666"
KERNEL=="dsp", MODE="0666"

最後當然要重新開機reboot
跟著就是安裝jbfterm
參考http://wiki.ubuntu-tw.org/index.php?title=UbuntuL10n#jfbterm
記得要export LC_ALL=zh_TW.UTF-8
跟著啟動jbfterm-應該就可以看到中文字出現了
======================
接著裝上一些server,有ssh/apache2/php5/mysql/samba/vsftpd,使用空間逼近1G

2009年10月25日

U910要發佈囉

聽說有些令人高興的特色,比方說用了ex4的fs,聽說快了不少,kernel打算把Xorg的一些特色加入,這樣可以加快圖形速度,KDE4.x跟Gnome Shell不知道會不會整合進來,新的桌面環境總是讓人有點期待(又怕受傷害XD)

最近在教導一些初學者使用linux,發現些事情
首先,對於過去M$已經太習慣,很難分辨啥叫做一般user,啥叫做super user,一般user應該可以做啥,跟super才可以做的事情,他們用M$就只有一個觀念,全都是super user
其次,對terminal畫面非常"恐懼",因為不會用vim,他們對沒有選單的editor很難接受
再者,讓他們很難接受的是,字母要分大小寫,因為他們"分不出差異",還有常常會打錯字
還有,路徑的觀念也讓他們有點難以接受,為何沒有C:?啥是相對路徑跟絕對路徑?
最後,分不出執行檔跟一般檔案差異,因為後面沒有".exe"XD,然後有些又是只有super user才可以用

上面有些是terminal才會有的"症狀",有些則是則是一般會有的,看來習慣跟教育真的是一大推動軟體的重要方式

M$的認證機制

話說已經好久沒寫blog了~最近win7正夯,我在M01網站上看到有人寫M$如何做認證,實在很"佩服",就節錄過來讓大家看看吧
e-day-day wrote:
W7 / Vista 的零售版 "啟用機制" 是綁定主機板, 而且啟用過程要經過 "線上啟用" 這道手續.........
啟用過程會建立一個主機板"硬體識別碼",你在輸入"產品金鑰"後, 系統會產生"安裝識別碼",
啟用機制會透過網路連到微軟驗證伺服器, 把這組硬體識別碼和產品金鑰"綁定"的安裝識別碼紀錄在微軟伺服器,
然後伺服器會回傳一組確認碼告訴你的系統已經正確啟用無誤, 這就完成了第一次的啟用程序,
以後你重裝系統, 微軟的驗證伺服器會檢查你的硬體識別碼和產品金鑰產生的安裝識別碼是否一致,
所以說如果你換了主機板,那麼這組已經啟用的金鑰是無法再拿來啟用的 (換其它硬體組件沒有關係)
也就是說你要拿到別台電腦用這組金鑰安裝啟用系統自然是不可行的......
同一個主機板可無限次啟用,每次啟用都會連到微軟伺服器檢查這組金鑰有沒有啟用過,若有會檢查是否匹配....
只要你這台機器有在上網,以後系統每隔一段時間也會自動線上驗證.........

如果你這中間 "升級電腦換了主機板", 可以打電話到微軟, 使用電話語音啟用,
它會幫你改掉紀錄在微軟驗證伺服器的識別碼,去匹配新的主機板 (更改有十次限制),
那麼你舊的主機板不能用了,因為金鑰已經登記給新的主機板了.............

如果你根本沒有網路,可以透過電話語音啟用,
電話語音啟用過程會要你輸入系統產生的安裝識別碼(用於綁定主機板),
然後電話語音系統會告知你一組確認碼讓你輸入到你的系統來完成啟用.....................

如果你胡亂使用你的產品金鑰的話,微軟是隨時可以封殺你的產品金鑰的,加到黑名單對微軟來說輕而易舉.........

2009年4月29日

通通歸位

今天凌晨興起了整理房間的念頭,一般來說,我都是等到覺得蠻亂的時候才整理:P

今天又有這種感覺了,可是不一樣的是,整理完畢之後,有一種豁然開朗的感覺,跟以前的經驗相當的不一樣,實在說不上來是為了什麼?就是一種彷彿每一樣東西都已經放在他應該放的位置上了,非常的舒適

多謝看完我這篇隨手的雜記,大概會是今年唯一一篇跟linux完全不相關的文章吧

2009年4月27日

Droid已經進入ubuntu 9.04了

aptitude install ttf-droid就可以安裝囉
趕緊體驗看看吧

我對M$以及linux的感覺

對M$的感覺就是層出不窮的問題,可是總有解決知道,感覺相當的"社會",不完美,可是大多數的人生活在其中
相對的來說,linux給我一種夢想的感覺,好像是發育中的小孩,有著無窮的希望,任何事情在他上面,似乎都可已有不一樣的解答
比方說,可以很容易的把linux移植到各種嵌入系統,可是對於M$來說,只有M$ mobile,而且很多裝置都無法使用;但是反過來說,目前smart/pda phone大多是M$ mobile(除nokia外),獲利相當的可觀阿,motolora之前推動的linux客製化的版本卻是淡淡退出市場

很可惜,以這樣一個優越的平台,似乎還欠缺著啥,讓他無法受到大家的喜愛,用linux那麼久了,還是無法參透這個禪機,我想有許多的商人也是一樣,雖然linux幾乎不用授權費用,可是他們大多也無法在這上面獲利
我理想中,一個好的OS,應該不只在教育上,甚至商業上也有所成,這樣的期待,目前還沒有被實現

2009年4月24日

Ubuntu904

號稱開機超快,外加新的FS(file system) Ext4出來,我就用VM試驗了一下
大約一分鐘開到gdm,由bios=>grub等三秒=>gdm,這樣子一分鐘,感覺有稍微比較快了
不過這是剛剛安裝好的時候,以後如果安裝了一堆service可能就會慢下來了吧?