2016年7月29日 星期五

修改screen任務程序的名稱

參考《用screen操控終端機》用 screen -e^Ta 來開啟新的任務程序(session)。假設上面有三個sessions,用 screen -ls 看到分別叫做:
There are screens on:
    5422.pts-0.srv (Detached)
    5448.pts-1.srv (Detached)
2 Sockets in /var/run/screen/S-sb.

最前面顯示的數字代表process ID,中間粗體則是任務程序的名稱(session name),最後則是在跑 screen 這支程式的伺服器名稱。想要把第一個 screen 從 pts-0 改名叫做 runProgram,在上述detached模式下只要輸入:
  • screen -S pts-0 -X sessionname runProgram

若是已經在attached的模式下,也就是說已經在 screen 裡面,那就用下面的方法改名:
  • screen -r pts-1
  • Ctrl-t + : sessionname monitor
第一行指令是從detached模式變成attached模式,進入名叫pts-1的任務程序裡面
第二行輸入順序是同時按住Ctrl與t後放開,按冒號後鍵入sessionname monitor。意思是把 pts-1 這個任務程序改名叫做 monitor

如果一開始就要一個叫做 window 的screen任務程序,直接用 screen -e^Ta -S window 
以上作法參考《Set screen names with GNU screen [closed]》《Rename screen session》這兩篇文章

_EOF_

2016年7月28日 星期四

曾經出現的智人總數

現存的人類都屬於現代人、或叫智人(Homo Sapiens)這一種,也是人屬Homo)下面唯一倖存的物種,其他像是尼安德塔人海德堡人直立人等等人屬的物種都已經滅絕。根據Carl Haub 2011年發表在Population Reference Bureau(PRB)的文章《How Many People Have Ever Lived on Earth?》的估計:
  • 曾經出現在地球上智人的數目約莫是 1076 億
  • 1 A.D.的人口數約 3 億
  • 1800年的人口數超過 10 億
  • 2011年中的人口總數近 70 億
  • 2011年中的人口數約佔所有出現過的人數的6.5%

2016年7月27日 星期三

DRBL讓用戶端開機選擇特定系統核心

DRBL伺服器與用戶端可以分別使用不同的系統核心(kernel)。例如說用戶端有特殊硬體,需要將驅動程式給放到系統核心,這時候就必須要指定特別的系統核心給用戶端。參考DRBL官網FAQ《用戶端電腦如何使用DRBL server上的某個版本核心?使用下面指令:
  • /usr/sbin/mknic-nbi -a -k 2.4.22-1.2199.nptl 

用戶端重開機後用的核心就會是kernel-2.4.22-1.2199.npti了。至於說要怎樣設定不同的用戶端指定不同的系統核心還需要研究看看

_EOF_

2016年7月26日 星期二

DRBL用戶端開機啟動rc.local的服務

參考DRBL企鵝龍官網的文章《如何開啟client端的rsh服務?》,執行:
  • drbl-client-service rc.local on
等它跑完之後,所有的client端下次重新啟動就會執行rc.local了。

若是覺得設定每一台client的rc.local很麻煩,可以先到/tftpboot/nodes下面設定第一台192.168.9.1/etc/rc.local,以這個檔案作為模板拷貝到其他的機器上面
  • for i in {2..234}; do cp 192.168.9.1/etc/rc.local 192.168.9.$i/etc/rc.local; done
  • for i in {2..234}; do diff 192.168.9.1/etc/rc.local 192.168.9.$i/etc/rc.local; done
第一行指令是拷貝,第二行是確認是否檔案都一樣

_EOF_

2016年7月25日 星期一

執行級別(Run Level)

Linux或是類UNIX系統開機時,系統會去判定開機時的執行級別 runlevel。在不同的級別下,會啟動不一樣的服務。一般來說有7個級別0, 1, 2-5, 6, S,欲啟動的服務放在/etc下面的這些目錄(以下的說明參考bizpro寫的《Linux Pi的奇幻旅程(16)-大改造(續)》):
  • rc0.d:負責關機的運作
  • rc1.d:維修模式
  • rc2.d:多人文字模式, 沒有圖形界面
  • rc3.d:多人文字模式, 沒有圖形界面, 具有網路
  • rc4.d:保留未使用
  • rc5.d:圖形界面
  • rc6.d:負責重開機的運作
  • rcS.d:單人模式(single user mode)
要查詢系統當前的執行級別,任選下面兩個指令
  • runlevel
  • who -r
而預設的run level則是存放在/etc/inittab裡面。在檔案最前面幾行看到
  • id:2:initdefault
意思就是預設啟動的run level是2,會去執行/etc/rc2.d裡面的服務。在這個資料夾中的服務都是用symbolic link連結到/etc/init.d/下面的服務,分成下面兩類:
  • S開頭:啟動服務,根據S後面接的數字由小而大依序啟動
  • K開頭:關閉服務,根據K後面接的數字由大而小依序關閉