2015年9月2日 星期三

AP刷韌體 - tomato


原廠韌體並非不好,某些廠牌的韌體還有在更新,只是可能沒有需求的功能,所以才會刷成別的韌體。

刷韌體需要注意 -- 刷壞會被認定為人為損壞

以RT-N18U為範例

1. 至 Asus 官網下載韌體救援軟體
http://www.asus.com/tw/support


2. 至 Tomato 網站查AP對應的版本 - help 的 Router List


3. 下載該版本的韌體



注意:比較新的AP在ROM上比較沒有這個問題,但是比較舊款的需要注意ROM大小,像是 Asus WL520GU 只有 4MB ,就不能下載超過 4MB的韌體

4. AP接LAN到電腦,AP預設IP為192.168.1.1,電腦IP設成同網段 ,但是不要設與AP預設IP一樣,Mask 設定 255.255.255.0 

note:Dns跟Gateway 可以不用設定,因為沒有要連到外部網路

note:Gateway 是連結不同網段之間的溝通橋樑,而刷機是在同網段,所以可以不用設定

note:Dns 是 對應 IP 跟網域名稱的服務

5. 開啟救援軟體,選好韌體

6. 確認IP同網段,ping AP (有回應為正常)

7. 關電源,同時按住 RESET 與 WPS 鍵 (ping值無回應)


8. 開啟電源,等到燈號閃爍後,放開WPS (ping值無回應)


9. 再次等到燈號變成閃爍,放開 RESET ,上傳韌體 (ping值無回應)

note:第二次的閃爍燈號會比第一次慢

10. 等到上傳完成且ping值穩定,在上傳完後,大概會重開機兩次左右,登入管理頁面(192.168.1.1)

如果無法登入,檢查一下有沒有步驟做錯,像我做的時候,有時候太快放開WPS,就會失敗。

11. 成功後就是設定AP

note:在過程中ping AP 其實是不必要的,但是會這麼做是讓ping值成為我們的眼睛,否則在整個過程中會無法得知 AP 的狀態。




2015年8月31日 星期一

掛載硬碟 - parted 應用

今天的情況是原本的東西都在500G的硬碟,要把home目錄單獨掛到一顆4T的硬碟底下

裝完硬碟後,可以先進BIOS查看有沒有讀到
或是等開機後使用  dmesg 這個指令

note: dmesg - 查看開機過程中 kernel 所偵測到的硬體資訊

note:如果有加插Ram的話 free -h 可以查看

步驟如下

看新硬碟代號
dmesg | grep sd 

切割我們掛載的硬碟(假設代號為 sdb)
parted /dev/sdb

note:rm分割區代號可以移除分割區

先告訴硬碟我們的分割表類型
mklabel gpt

新增分割區
mkpart
part-type[]? primary
fs-type[ext2]? xfs
start? 0
end? -1  
Warning : The resulting partition is not properly aligned for best performance. Ignore/Cancel? i

note:  fdisk 只能支援到 2T 所以超過的話就要使用 parted 

note:-1代表全部

切割完之後 p 可以查看,確認ok後 q 離開

更新分割表資訊
partprobe

然後格式化分割區
mkfs.xfs -f /dev/sdb1

接下來先將舊的home改名字,不然改 fstab的時候會有衝突發生,並新增home目錄
mv /home /home.bak
mkdir /home

將我們新硬碟寫到fstab裡頭
blkid /dev/sdb1 
查看分割區的UUID
如果有圖形化介面可以右鍵複製貼上,沒有的話
blkid /dev/sdb1 >> /etc/fstab 
把顯示的所有資訊寫到 fstab 裡頭,再到 fstab 裡頭做修改
UUID=xxx /home     xfs    defaults  0 0

note:UUID是該分割區的唯一值,所以如果重新分割的話,UUID也會不一樣喔

然後就可以掛載上去了
mount /home
用 df -lh 查看

最後備份原本home底下的檔案
rsync -av 來源 目的
檢查檔案權限
reboot後確定一切正常就完成囉!

-----------------------------------------分隔線--------------------------------------

dmesg | grep sd

parted /dev/sdb

mklabel gpt
mkpart primary xfs 0 -1 

partprobe
mkfs.xfs -f /dev/sdb1

mv /home /home.bak

blkid /dev/sdb1 >> /etc/fstab
vim /etc/fstab

mount /home

rsync -av source goal

JS學習:函數進階使用技巧

代理函數物件 根據不同的條件,代理函數物件可以指向不同的函數來實現動態改變,如下: function femaleFunction() { console.log('female'); } function maleFunction() { ...