2012年12月8日 星期六
Ubuntu 桌面下回到 command line 的方法
安裝完 Ubuntu Server,用 apt-get 安裝桌面系統,本來都 run 的好好的,今天下午某個軟體出問題,導致工具列都消失掉,網路介面也還沒設定好,不能遠端 reboot。
發生這種情況,除了含淚按下 power 鍵外,還有另一種選擇。
按下 ctrl-alt-F1,就可以看到熟悉的 login: 畫面,登入後再打 sudo reboot,或重啟桌面都行。
ctrl-alt-[F1-F6] 可以進入 tty1 到 tty6,若要回到桌面,按 ctrl-alt-F7 即可。
2012年12月6日 星期四
KVM 在 Core i7 上效能低落的原因
在一台 Core i7的機器上,安裝 XenServer,開了一個 Ubuntu 的 Server,速度很快。
在同一台機器上,直接安裝Ubuntu,在KVM上開一台VM起來,速度跟XenServer的VM有明顯落差,開始找原因。
一開始是往 disk 的方向找;XenServer是使用一個LV當做VM的disk,在KVM上我本來是用file當做VM的disk;使用一個LV給KVM的VM當disk後,速度一樣緩慢,這個可能有影響,但不是主因。
以下是使用libvirt,劃一個LV給VM用的domain XML片段
其中,/dev/ubuntu/kvm_3即是一個LV。
後來乾脆在Ubuntu安裝GUI (Ubuntu Server 原本無 GUI),再安裝virt-manager,使用virt-manager create一個VM,同樣使用file當VM的image;start VM後,發現VM速度很快,至此幾乎確認問題應該不在 disk。
使用virsh dumpxml將virt-manager create的VM的XML show出來,再一行一行比對,發現最根本原因在於第一行,virt-manager的VM是
我原來用libvirt create VM的第一行是
答案揭曉,若將domain type設定為qemu,會呼叫的emulator為/usr/bin/qemu-system-x86_64;若將domain type設定為kvm,emulator為/usr/bin/kvm。
因為Core i7有 vmx flags,使用kvm的方式會快上許多,若使用qemu當emulator,可能會有一次轉換的動作,導致效能低落。
將所有 VM 的 domain type 換成 KVM 後,速度已有明顯改善。
在同一台機器上,直接安裝Ubuntu,在KVM上開一台VM起來,速度跟XenServer的VM有明顯落差,開始找原因。
一開始是往 disk 的方向找;XenServer是使用一個LV當做VM的disk,在KVM上我本來是用file當做VM的disk;使用一個LV給KVM的VM當disk後,速度一樣緩慢,這個可能有影響,但不是主因。
以下是使用libvirt,劃一個LV給VM用的domain XML片段
其中,/dev/ubuntu/kvm_3即是一個LV。
後來乾脆在Ubuntu安裝GUI (Ubuntu Server 原本無 GUI),再安裝virt-manager,使用virt-manager create一個VM,同樣使用file當VM的image;start VM後,發現VM速度很快,至此幾乎確認問題應該不在 disk。
使用virsh dumpxml將virt-manager create的VM的XML show出來,再一行一行比對,發現最根本原因在於第一行,virt-manager的VM是
我原來用libvirt create VM的第一行是
答案揭曉,若將domain type設定為qemu,會呼叫的emulator為/usr/bin/qemu-system-x86_64;若將domain type設定為kvm,emulator為/usr/bin/kvm。
因為Core i7有 vmx flags,使用kvm的方式會快上許多,若使用qemu當emulator,可能會有一次轉換的動作,導致效能低落。
將所有 VM 的 domain type 換成 KVM 後,速度已有明顯改善。
2012年12月5日 星期三
2012年12月1日 星期六
CentOS 和 Ubuntu 改網路設定的方法整理
要修改 CentOS 和 Ubuntu 的網路設定,作法有點不一樣,整理如下
CentOS
Ubuntu
有一些地方需註記一下
CentOS
- 修改 /etc/sysconfig/network-scripts/ifcfg-eth0
- 執行 sudo service network restart
Ubuntu
- 修改 /etc/network/interfaces
- 執行 sudo service networking restart
有一些地方需註記一下
- 在CentOS 6.3中,一改完ifcfg-eth0後,在很短的時間內就會自動生效,不用執行 service network restart 也會有效果。會發現這點是因為我在改的時候,不小心把 IP 的設定打錯,存檔後幾秒鐘就斷線,這時我還未執行 service network restart。Ubuntu 則沒有這個現象,一定要執行 service networking restart 才會生效。在改 CentOS 的設定檔時需小心檢查,如果不在機器旁,設定又改錯,一存檔就糗了。
- 要改 nameserver 的設定,傳統作法是改 /etc/resolv.conf,現在的作法是改上述的設定檔。在CentOS的 ifcfg-eth0 中,設 DNS1=8.8.8.8;在 Ubuntu 的 interfaces中,設dns-nameservers=8.8.8.8,就可以把 nameserver 設為 google 的 DNS server 了。設定完這些檔後,/etc/resolv.conf會依據這些設定檔自動修改,加入nameserver 8.8.8.8;直接改 /etc/resolv.conf 不是正確的作法。
2012年11月30日 星期五
lvm 縮減根目錄容量
LVM 可以讓各個 filesystem 的容量自由增減,細節請參照鳥哥網頁超清楚說明
http://linux.vbird.org/linux_basic/0420quota.php#lvm
我的需求如下:原本我的 / 是 50G,/home 20G,我想變成 / 30G,/home 40G,把 / 的 20G 移給 /home,因此,我要先把 / 從 50G 降成 30G,再把 /home 從 20G 變成 40G。
依照說明,reduce size 有以下動作,假設 / 在 /dev/VolGroup/lv_root 上
umount /
e2fsck -f /dev/VolGroup/lv_root
resize2fs /dev/VolGroup/lv_root 20G
lvreduce -L 20G /dev/VolGroup/lv_root
但是第一步就出了問題;/ 沒有辦法 umount,後續動作全部不能做。
解法:使用 DVD 的 Rescue。
http://linux.vbird.org/linux_basic/0420quota.php#lvm
我的需求如下:原本我的 / 是 50G,/home 20G,我想變成 / 30G,/home 40G,把 / 的 20G 移給 /home,因此,我要先把 / 從 50G 降成 30G,再把 /home 從 20G 變成 40G。
依照說明,reduce size 有以下動作,假設 / 在 /dev/VolGroup/lv_root 上
umount /
e2fsck -f /dev/VolGroup/lv_root
resize2fs /dev/VolGroup/lv_root 20G
lvreduce -L 20G /dev/VolGroup/lv_root
但是第一步就出了問題;/ 沒有辦法 umount,後續動作全部不能做。
解法:使用 DVD 的 Rescue。
- 拿出你的 Linux DVD,我是用 CentOS 6.3 的 DVD
- 放進去後開機,選 Rescue installed system
- 然後會問你 Language、Keyboard Type,這個以大家的聰明才智應該知道怎麼選
- Rescue Method 選 Local CD/DVD
- Setup Networking 可以選 No
- Rescue 選 Skip,才不會幫你 mount 任何 filesystem。
- 選 Shell Start shell,跳進 shell 裡面,df 原來的 filesystem 都沒有被 mount,可以開始做你想做的事了
2012年11月28日 星期三
無法 virsh shutdown CentOS
libvirt 的 virsh shutdown 無效,CentOS 不會關機,一定要 login 進 CentOS 再 poweroff 才行。
解決方法很簡單,到 CentOS 下,yum acpid 就好了。
解決方法很簡單,到 CentOS 下,yum acpid 就好了。
2012年11月26日 星期一
蛋餅皮亂弄配方比例亂亂煎
週日參考網路上的文章,胡亂做了蛋餅皮,這次弄的配方比例如下
材料:
步驟:
蛋餅皮可以冷凍起來,等要做蛋餅的時候再拿出來。我是直接用了。
直接吃沒什麼味道,加入醬油膏比較好吃。
不過感覺上這樣的配方蛋餅皮做出來似乎有點少,下次再試多一點點看看。
另外,這次用到的平底鍋,中間有一點凹下去,導致中間比較厚,旁邊都快焦了,中間還水水的。
下次拿個平一點的平底鍋再試試。
材料:
- 麵粉 (不知道是哪種,媽媽說可能是中筋) 3大匙
- 地瓜粉 1大匙
- 水 5大匙
- 鹽 少許
步驟:
- 先將麵粉和地瓜粉倒在一起,加入水,攪拌均勻,灑入鹽,再攪拌一下,靜置十分鐘
- 拿出平底鍋,十分鐘後,熱鍋,倒油,然後把麵糊再攪拌一次,倒入鍋子中間
- 看到倒下去的麵糊邊邊開始翹起來的時候,就可以準備翻面了
- 煎到開心,把蛋餅皮拿起來,放在盤子裡
蛋餅皮可以冷凍起來,等要做蛋餅的時候再拿出來。我是直接用了。
- 把蛋打散,蔥花灑進去,攪拌均勻
- 熱平底鍋,倒油,將蛋倒到平底鍋,煎一下下
- 把蛋餅皮蓋上去,煎一下下,翻面
- 差不多的時候就捲起來,再煎一下,拿出刀子切成一段段,就可以吃了
直接吃沒什麼味道,加入醬油膏比較好吃。
不過感覺上這樣的配方蛋餅皮做出來似乎有點少,下次再試多一點點看看。
另外,這次用到的平底鍋,中間有一點凹下去,導致中間比較厚,旁邊都快焦了,中間還水水的。
下次拿個平一點的平底鍋再試試。
2012年9月27日 星期四
查詢 Linux Distribution 及版本
我也不知道為什麼到今天我才知道這個指令。
以前只會用 uname -a ,然後根據 kernel version 去猜是哪個 distribution 和 version。 原來有個更好用的指令。直接打 lsb_release -a 就可以看到的。
以下是實驗室某 Original Server。
[root@localhost ~]# lsb_release -a
LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.7 (Final)
Release: 5.7
Codename: Final
如果只要看是用哪個 Distribution,可以用 lsb_release -i
[root@localhost ~]# lsb_release -i
Distributor ID: CentOS
如果只要看版本號碼,可以用 lsb_release -r
[root@localhost ~]# lsb_release -r
Release: 5.7
如果要看 Description 那個欄位,包含是哪個 Distribution 及版號,可以用 lsb_release -d
[root@localhost ~]# lsb_release -d
Description: CentOS release 5.7 (Final)
以前只會用 uname -a ,然後根據 kernel version 去猜是哪個 distribution 和 version。 原來有個更好用的指令。直接打 lsb_release -a 就可以看到的。
以下是實驗室某 Original Server。
[root@localhost ~]# lsb_release -a
LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.7 (Final)
Release: 5.7
Codename: Final
如果只要看是用哪個 Distribution,可以用 lsb_release -i
[root@localhost ~]# lsb_release -i
Distributor ID: CentOS
如果只要看版本號碼,可以用 lsb_release -r
[root@localhost ~]# lsb_release -r
Release: 5.7
如果要看 Description 那個欄位,包含是哪個 Distribution 及版號,可以用 lsb_release -d
[root@localhost ~]# lsb_release -d
Description: CentOS release 5.7 (Final)
訂閱:
文章 (Atom)