2016年2月11日 星期四

[Kernel] 練習追蹤核心小例子

kernel 很龐大, 要怎麼開始追蹤呢?

這篇從 /proc/version 開始, 介紹了幾個相關的檔案, 最後找到實做的部份, 是一個不錯的簡單小例子


參考:cat /proc/version在内核中是如何实现的?

[BeagleBone] 備份與還原 eMMC

由於BeagleBone Black 內建 eMMC所以買回來一開機就可以使用聽起來不錯可是如果寫壞 eMMC 怎麼辦? 要如何備份或是還原 eMMC? 要如何寫入新的 image?

備份的方式有兩種:

方法一使用傳統的 dd可以用 microSD 備份或是網路備份
1. 使用 microSD 備份插入 microSD指令 dd if=/dev/emmc of=/dev/microsd bs=4M可以先用 ls -al /dev/disk/by-id 分辨 /dev/emmc 和 /dev/microsd 的路徑

2. 使用網路備份指令 dd if=/dev/mmcblk0 bs=4M | ssh user@x.x.x.x 'dd of=/home/user/origBBB.img bs=4M'將會把 image 透過 ssh 傳到 user@x.x.x.x:/home/user


方法二, 使用autorun.sh
參考這篇,不過目前試的結果是失敗的



還原的方式也有兩種:

方法一透過 microSD修改 microSD 裡的 /boot/uEnv.txt將 #cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh 註解拿掉(把 # 移除)插到 BeagleBone Black 後開機系統讀取 MLO 後會讀取 uEnv.txt如果註解拿掉將會從 microSD 寫到 eMMC

方法二透過 microSD將已經有 image 的 microSD 插到 BeagleBone Black 開機系統將會讀取 MLO 後從 microSD 開機進入系統後使用 dd 將 microSD 的 image 寫到 eMMC指令 dd if=/dev/microsd of=/dev/emmc bs=4M可以先用 ls -al /dev/disk/by-id 分辨 /dev/emmc 和 /dev/microsd 的路徑


寫入新的 image 方法:
如同還原的方法一樣,所謂新的 image 就是去下載官方的 image 而已。


reference:
* How to backup BBB eMMC card
* Writing a new Image to the Beaglebone Black
* BeagleBone Black Extracting eMMC contents
* BeagleBoard.org Latest Firmware Images

2016年1月7日 星期四

[資訊科學] nand2tetris

用十分鐘向nand2tetris學會設計處理器, 心動

http://www.nand2tetris.org/

[資訊安全] 申請憑證

話說 google 修改演算法, 將 HTTPS 的權重設定比較高, 怕網站沒人用, 就順手申請了憑證

第一次只有申請一年, 不太貴, 明年到期後再找 coupon 好了

從 godaddy 申請的憑證, 要搭配別地方 host 主機大概參考這幾篇文章就可以了

1.[筆記] SSL 憑證購買記
2. Godaddy SSL 購買與安裝
3. Ubuntu Server with Apache2 SSL Certificate Installation

我的設定是在 /etc/apache2/sites-available/000-default.conf 下, 內容和 *.80 相同
<virtualhost>
...
        SSLEngine on
        SSLCertificateFile /path/to/crt
        SSLCertificateKeyFile /path/to/key
        SSLCertificateChainFile /path/to/gd_bundle.crt
...
</virtualhost>
問題就是 /path/to/key 我用到原本 request 的檔案, 所以就錯誤啦 要注意第一行要這樣開頭的才行
-----BEGIN CERTIFICATE REQUEST-----
這樣就不對啦
-----BEGIN CERTIFICATE-----

這問題是參考 Installing SSL certificate causes the server to fail when restarting

同場加映如何強制 HTTP 導到 HTTPS?
NameVirtualHost *:80
<VirtualHost *:80>
   ServerName my.example.com
   DocumentRoot /path/to/doc
   Redirect permanent / https://my.example.com/
</VirtualHost>

<VirtualHost _default_:443>
   ServerName my.example.com
   DocumentRoot /path/to/doc
   SSLEngine On
   ...
</VirtualHost>
參考:http to https apache redirection

2015年12月8日 星期二

[電子零件] 電子技術文件

逛到一個學生(?)的網站, 分享了不錯的教材, 筆記一下 http://web.ntnu.edu.tw/~60132057A/MyCourse.php

2015年11月22日 星期日

[Tips] Where are Wireless Profiles stored in Ubuntu

最近電腦會一直連一台奇怪的 AP, 找了一下設定檔放的位置, 原來在這邊阿:
~/.gconf/system/networking/

新版(Ubuntu 16)的換地方嚕
/etc/NetworkManager/system-connections

reference:
* Where are Wireless Profiles stored in Ubuntu
* Network Manager keeps creating new profiles for the same network


2015年11月4日 星期三

[多媒體] SDL教學

最近在看 SDL, 找到這篇還不錯
http://lazyfoo.net/tutorials/SDL/