RSS
 

Archive for the ‘Computers’ Category

查看 linux swap 使用狀況

18 May
Mem:  16427616k total, 16374588k used,    53028k free,      872k buffers
top - 16:48:42 up 153 days,  6:12,  3 users,  load average: 1.90, 2.02, 2.04
Tasks: 1210 total,   2 running, 1208 sleeping,   0 stopped,   0 zombie
Cpu(s): 12.5%us,  1.2%sy,  0.0%ni, 85.9%id,  0.0%wa,  0.1%hi,  0.2%si,  0.0%st
Mem:  16427616k total, 16371592k used,    56024k free,      524k buffers
Swap: 16779884k total,      208k used, 16779676k free, 15398336k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
29369 root      25   0 94600 7904 2632 R 98.5  0.0 118:27.17 sshd

一般而言用 top 指令. 預設是看不到 swap. 所以要額外按一些按鈕. 進去 top 然後按 O 再按 p 最後按 enter 就可以看到 swap

top - 16:50:29 up 153 days,  6:14,  3 users,  load average: 1.80, 1.94, 2.00
Tasks: 1210 total,   3 running, 1207 sleeping,   0 stopped,   0 zombie
Cpu(s): 11.6%us,  2.1%sy,  0.0%ni, 85.8%id,  0.0%wa,  0.0%hi,  0.5%si,  0.0%st
Mem:  16427616k total, 16189080k used,   238536k free,      692k buffers
Swap: 16779884k total,      208k used, 16779676k free, 15218204k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  SWAP COMMAND
 8898 root      18   0  151m 6724  972 S  0.0  0.0   0:00.01 144m hpssd.py
 
No Comments

Posted in Linux

 

Viber Beta for Android

05 May

終於讓我等到了! 可惜手邊沒有 Android 可以測試. 只好跟朋友借來測試.


把 Viber 放到桌面上


顯示通話記錄. 看來所有手機的通話記錄也會在上面顯示


有加入 Viber 的朋友. 目前而言大部分的 Viber 使用者都是 iPhone 使用者 or iOS 使用者


Viber 的鍵盤配置. 到目前為止都和 iPhone 上的版本沒什麼差異.


Viber 的文字簡訊. 雖然已經有 WhatsApp 這個功能好像還好. 除非 Viber 可以傳圖片. 可以分享目前位址. XD


其他資訊


撥打給自己測試看看


透過 WiFi 通話品質良好


Bye~

目前 Viber 給 Android 還在 Beta 版本. 而且是封閉的 Beta (private beta). 所以如果拿到程式. 也無法啟用. 如果你想加入 Viber Beta testing 請到 http://www.viber.com/android-beta/ 加入. 他們會寄信給你. 這樣就可以用 Android 打給有 Viber 軟體的人了.

 
No Comments

Posted in Android

 

在蘋果用命令列建立 CD/DVD .iso image

05 May

1. 取得 DVD 在 /dev/ 的磁碟代號.
$ drutil status

Vendor Product Rev
MATSHITA DVD-R UJ-8A8 HA13

Type: DVD-ROM Name: /dev/disk1
Sessions: 1 Tracks: 1
Overwritable: 00:00:00 blocks: 0 / 0.00MB / 0.00MiB
Space Free: 00:00:00 blocks: 0 / 0.00MB / 0.00MiB
Space Used: 601:20:16 blocks: 2706016 / 5.54GB / 5.16GiB
Writability:
Book Type: DVD-ROM (v1)

2. 從上列命令得知. DVD 的代號為 /dev/disk1. 再用下列命令卸載 DVD
$ diskutil unmountDisk /dev/disk1

Unmount of all volumes on disk1 was successful

3. 用 dd 指令匯出 iso 檔案. 需要花一段時間
$ dd if=/dev/disk1 of=DVD.iso bs=2048

2706016+0 records in
2706016+0 records out
5541920768 bytes transferred in 1599.459628 secs (3464871 bytes/sec)

4. 測試掛載剛剛做好的 .iso image, 可以用 Finder 直接在DVD.iso檔案上按兩下就能順利掛載.
$ hdid DVD.iso

相關閱讀 : 轉換 .dmg 為 .iso

 
 

找不到 kernel source 時使用的 command

03 May

# yumdownloader –source kernel

這個命令就可以把目前使用的 kernel source 下載回來.

 
No Comments

Posted in Linux

 

如何自製iPhone手機鈴聲?

17 Mar

這是土法煉鋼的方式自製iPhone手機鈴聲, 坊間應該有很多好用的軟體.

材料 : iTunes, Finder, 一首喜歡的歌

作法 :
1. 設定mp3輸出格式與品質. 通常是要輸出 AAC (mp4)

進去 iTunes 的 Preferences (Cmd + , ) 的 General, 按 “Import Settings…”按鈕


可以選 High Quality (128 kbps)就可以, 我比較龜毛我用比較高的品質

2. 選取部分音樂設定為鈴聲, 在iTunes內選取你要的歌曲. 然後按 滑鼠右鍵 選 “Get Info” 也可以用 Cmd + I 快速鍵

在 Options 的tab調整 Start Time 和 Stop Time 時間. 鈴聲通常只能放 30 秒

3. 轉換 mp3 成為 aac (mp4)

選取調整好的歌曲按滑鼠右鍵選”Create AAC Version”.

4. 更改 m4a 檔案為 m4r

選取你轉換好的 ACC 歌曲, 然後按 “Cmd + Shift + R” 會在 Finder 顯示歌曲檔案. 然後按 “Return” 更改副檔名為 m4r.

記得選 “Use .m4r”

5. 匯入鈴聲到 iTunes 並且同步到 iPhone

就將檔案複製一份到其他地方. 點兩下該檔案. 就可以把手機鈴聲放入 iTunes 內.

6. 到 iPhone 內設定鈴聲

在 “Settings -> Sounds ->Ringtone” 內設定你要的鈴聲


我的鈴聲設定往生咒..期望日本受到災難罹難的人可以順利無痛苦的通往西方極樂世界.

也分享往生咒的鈴聲給大家. 期望大家能持誦. 讓周邊往生的人或動物都能平靜安詳的到西方極樂世界.

如果你聽這音樂讓你感動的話. 這你有完整的版本在 哩厚 – 往生咒 程式

 
 

iPhone HTC Weather clock

13 Mar

這個功能我之前就很想要了. 只是 iPhone 並不提供 Widget . 真的很可惜. 這樣就不能自定桌面. 關於自定桌面的 icons 我認為 android 做得比較好.比較彈性. iPhone 就比較乏味.

簡單說明一下如何弄到這樣的畫面 :

1. 首先必須要先 JB
2. 安裝 iBlank, perpageHTML 和 HTC weather Animated PerpageHTML
3. 用 iBlank 產生 12 個空白 icons 然後拉到第一個畫面
4. 用 perpageHTML 產生 HTC Weather clock 再第一個畫面
5. 編輯 iPhone 的 /private/var/mobile/Library/PerPageHTML/HTCAniPPH/configureMe.js 檔案

var locale = “TWXX0021″ // 台北
var isCelsius = true // 顯示度 C
var useRealFeel = false
var updateInterval = 60 // 間隔多少分鐘更新
var showForecast = true // 天氣預報

// If you would rather use your own Lockscreen Background
// set showBackground to true and overwrite the included
// LockBackground.png file
var showBackground = true
var showWeatherAni = false // 顯示動畫

6. 讓 iPhone Respring 一下就可以看到了.

小麻煩. 但是用起來很爽. 還是很期望蘋果能native support widget :P

 
No Comments

Posted in iPhone

 

如何用 QuickTime Pro 將影片轉90度?

09 Mar


在用 iPhone 錄影的時候, 有時會沒注意把影片錄成直的!


播放的時候就會很奇怪.

所以就要進 QuickTime 把影片轉 90 度

用 QuickTime Pro 開啟之後, 按 Cmd + J 顯示影片屬性


選擇 Video Track 然後按左轉或右轉修正. 甚至你可以水平或垂直翻轉


轉好後再按 Cmd + S 儲存

這樣就完成了!!

 
 

在 Linux 下設定 iDRAC 透過 IPMI

25 Feb

手邊有幾台 Dell PowerEdge 有安裝 iDRAC 卡. 之前每次進去設定都要重新開機. 然後在開機過程中按 Ctrl + E 個別進去設定 iDRAC 的 IP 密碼…等等狀態相當麻煩. 如果我有100台那我就要不停的在等待開機畫面.不停在一直重複設定那些密碼…etc 後來, 我才知道可以透過 IPMI 的方式去管理那個 iDRAC.

在管理 iDRAC 前, 必須在你的 Linux 環境安裝 OpenIPMI, OpenIPMI-tools 和 OpenIPMI-libs 套件.

# yum install -y OpenIPMI

然後要啟動 IPMI 服務.

# chkconfig impi on
# service ipmi start

再來就可以設定 iDRAC 的狀態了, 例如我要設定該機器的 iDRAC 網路資訊並且啟用 IPMI 網路控制

# ipmitool -I open lan set 1 ipaddr 192.168.1.101
# ipmitool -I open lan set 1 defgw ipaddr 192.168.0.1
# ipmitool -I open lan set 1 netmask 255.255.255.0
# ipmitool -I open lan set 1 access on

為了確保 iDARC 不受到未授權的使用者重開你的機器.所以要記得改一下預設的 SNMP community. 設定 null 使用者及 root 的密碼.

設定 SNMP community 字串

# ipmitool -I open lan set 1 snmp TOP_SECRET

設定 null 使用者密碼

# ipmitool -I open lan set 1 password TOP_SECRET

設定 root 密碼

# ipmitool -I open user set password 2 TOP_SECRET

可以用下列指令檢查剛剛設定的值是否正確 :

# ipmitool -I open lan print 1

如果確認無誤, 那你可以到別台伺服器下 IPMI 指令進行管理. 你可以把你 iDRAC 遠端管理的密碼放在環境變數內方便操作. 雖然這樣會比較不安全!

# export IPMI_PASSWORD=”TOP_SECRET”

在下指令的時候可以用 “-E” 選項 就可以直接不打密碼就可以下達指令.

# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power status
Chassis Power is on

如果你要用互動的方式敲密碼就用 “-a” 的方式下指令.

# ipmitool -I lan -U root -a -H 192.168.1.101 chassis power status
Password:
Chassis Power is on

如果你想放在 script 內. 你可以使用 “-P” 的方式加上你的密碼明碼. 就可以下達指令.

# ipmitool -I lan -U root -P “TOP_SECRET” -H 192.168.1.101 chassis power status
Chassis Power is on

再來你就可以用下列指完成開關機

## 開機 – Power On
# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power on
## 強制斷電關機 – Power Off
# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power off
## 透過作業系統正常關機 – Graceful Shutdown
# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power soft
## 重新開機不切斷電源 – Reset System (warm boot)
# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power reset
## 斷電式重新開機 – Power Cycle System (cold boot)
# ipmitool -I lan -U root -E -H 192.168.1.101 chassis power cycle

其他資訊

## 檢查電流瓦特狀態
# ipmitool -I lan -U root -E -H 192.168.1.101 sdr type “Current”
Current | 94h | ok | 10.1 | 2 Amps
Current | 95h | ns | 10.2 | Disabled
System Level | 98h | ok | 7.1 | 245 Watts
## 檢查溫度狀態
# ipmitool -I lan -U root -E -H 192.168.1.101 sdr type “Temperature”
Temp | 01h | ns | 3.1 | Disabled
Temp | 02h | ns | 3.2 | Disabled
Temp | 05h | ns | 10.1 | Disabled
Ambient Temp | 07h | ns | 10.1 | Disabled
Temp | 06h | ns | 10.2 | Disabled
Ambient Temp | 08h | ns | 10.2 | Disabled
Ambient Temp | 0Eh | ok | 7.1 | 16 degrees C
Planar Temp | 0Fh | ns | 7.1 | Disabled
IOH THERMTRIP | 5Dh | ns | 7.1 | Disabled
CPU Temp Interf | 76h | ns | 7.1 | Disabled
Temp | 0Ah | ns | 8.1 | Disabled
Temp | 0Bh | ns | 8.1 | Disabled
Temp | 0Ch | ns | 8.1 | Disabled
## 列出 event logs
# ipmitool -I lan -U root -E -H 192.168.1.101 sel list
1 | 01/11/2011 | 11:40:54 | Temperature #0x0e | Upper Non-critical going high
2 | 01/01/2011 | 12:32:41 | Temperature #0x0e | Upper Critical going high

大致上這樣在搭配程式就可以遠端管理多台機器了.

 
No Comments

Posted in Linux

 

jQuery 筆記 – 同步兩個 option buttons 的值

25 Feb

情境 :
在一連串 table 的網頁介面. 如果把 option button 部分設計在最下方. 那當table資料很多的時候就要一直捲動捲到最下方. 小不方便. 所以還要在多設計一個 option button 在網頁的最上方. 但是在同一個 form 如果裡面變數名稱命名不一樣的名稱到 option button 上. 那代表要在 php 裡面去處理那個兩個變數名稱. 也要處理使用者是按了上面的 action button 還是下面的 action button. 看起來有點麻煩.

解法 :
為了簡化這個問題, 我使用 jquery 幫忙同步兩個option buttons 的值. 下列是html部分

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<form method="POST" action="#">
      <h3>Available actions
      <select id="paction" name="paction">
        <option value="on">Power On</option>
 
        <option value="off">Power Off</option>
        <option value="soft">Graceful Shutdown</option>
        <option value="reset">Reset System (warm boot)</option>
        <option value="cycle">Power Cycle System (cold boot)</option>
      </select>
      <input type="submit" name="submit" value="Perform action"></h3>
omit......
      <h3>Available actions
      <select id="paction2" name="paction">
        <option value="on">Power On</option>
 
        <option value="off">Power Off</option>
        <option value="soft">Graceful Shutdown</option>
        <option value="reset">Reset System (warm boot)</option>
        <option value="cycle">Power Cycle System (cold boot)</option>
      </select>
      <input type="submit" name="submit" value="Perform action"></h3>
</form>

命名了兩個 option buttons 的 id 名稱. 但那兩個 option button 的 name 是一樣的. 然後再使用下列 jquery 語法. 就可以將這兩個不同的 option buttons 同步.

1
2
3
4
5
6
7
    $("#paction").change(function() {
        $("#paction2").val($("#paction").val());
    });
 
    $("#paction2").change(function() {
        $("#paction").val($("#paction2").val());
    });

其實只要把下面的值同步成真正要處理的值就可以了. 因為網頁 submit 後. 同名稱變數(paction)的話是看最後一個值. 但是為了要求完美. 所以我在把下面的 option button 同步回去第一個 option button

最後看一下 DEMO

 

jQuery 筆記 – 找出每個特定字串開頭的div進行處理

24 Feb

情境 :
我想列出一連串 servers 開關機狀態. 還有電流大小. 當然我可以直接顯示在網頁上. 但是顯示那樣的網頁可能會花 15~20秒才有辦法把每一台 servers 的狀態讀回來. 在等待的過程.網頁是白色的畫面. 這樣看起來好像網頁當掉了. 所以想說先把html table layout 顯示出來. 在透過 jquery 顯示後面比較花時間的資料. 所以必須要針對不同的 servers 進行狀態查詢. 這樣的顯示方式看起來比較不像是當掉. XD

解法 :
假設我有下列 html 然後想針對每個 foo_ 開頭的 div 進行處理.

1
2
3
4
5
<div id="foo_1"></div>
<div id="foo_2"></div>
<div id="foo_3"></div>
<div id="foo_4"></div>
<div id="foo_5"></div>

當然可以先用 php 把個別的變數輸出到 javascrpit 內的某個變數. 然後再個別去處理. 但是這樣太肉腳了.所以用下列 jquery 方式處理.

1
2
3
    $("div[id^='foo_']").each(function() {
      $(this).text("我的div名稱是 " + $(this).attr('id') + ".");
    });

這樣就會列出下列結果

我的div名稱是 foo_1.
我的div名稱是 foo_2.
我的div名稱是 foo_3.
我的div名稱是 foo_4.
我的div名稱是 foo_5.

這樣你應該有感覺了吧? 再來就可以在 function 內處理..看是要針對 1 2 3 4 5 不同的名稱給予不同的處理. 例如用 .post 去取得不同的值顯示. servers 的狀態.