公告版位

新版部落格:blog.changyy.org

目前分類:實作筆記 (341)

瀏覽方式: 標題列表 簡短摘要

Dropbear SSH 是一套很常見的嵌入式 SSHD、SSH、SCP 替代方案

然而,最近使用 dropbear 時卻被一開始的編譯變數給影響到:

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

玩嵌入式時,有時就是需要手動從 command 去指定 wifi ap,試了一會終於找到就順手記一下吧

在此用的 wifi ap 是走 WPA2 TKIP 加密的,其他加密或不加密的方式可以參考這篇討論串 'SET_NETWORK 0 psk "1234567890"' command timed out

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

最近又把玩 mDNS 了,記得第一次接觸時是用 zeroconf python 程式,這次就改用 Apple 的 Open Source - mDNSResponder  啦

整理了一下後,就用 cmake 當 script 來把玩吧!

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

最近要來更新一下 nginx 了,目的是想使用第三方 modules,並希望依據 Ubuntu 內建 nginx 的佈設規劃。

作法就是用內建 nginx -V 查看目前編譯所下的指令,接著下載新版 nginx 後,再下載第三方 modules 後,就可以編一編,補一補缺的 library 後,即可收工。

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

Catdoc 是一套 GNU Public License Open Source,最近摸了一下,稍微改動了一點地方,主要原因是 catdoc 在找尋字碼表時,會採用原先在 compile time 所下的 define 關鍵字,這意味著程式若要搬移必須重制原先編譯時期所決定的相關目錄結構才行,例如一開始編譯時,就說字碼將安裝在 /usr/local/share/catdoc 下,那你把 binary 程式去另一台機器時,也必須把字碼一樣設置相同的路徑才行。

因此花了一點時間看了一下,還滿容易的,僅需把兩個變數(charset_path, map_path)的定義參數化,因為那個字碼路徑(CHARSETPATH)在各個程式之間算共享的資訊,在 C 語言中就是透過定義一份記憶體位置,其他用 extern 的方式來連結存取。改完後在多設個參數(-r /path/charsets)讓執行時可以初始化就好。

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

原先以為安裝 libexpat1-dev 後即可解決,但有更多細節該留意,就順手記一下吧

$ sudo find / -name "libexpat.so*"

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

複習一下 C 語言和 cmake 用法,這次用 C 來解 XML,至於為何要用 libroxml(LGPL) 嘛,只是單純碰到就用看看(且預設支援cmake),下次再改用 libxml2(MIT)。

處理一些 XML 時,會需要排版一下才方便人眼查看,這時就用到 Online XML Formatter 來格式化一下。

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

用 Redmine 附檔時只會看到 Internal Server Error 資訊,翻了 /var/log/apache2/error.log 後,看到了神祕句子:

Unexpected error in mod_passenger: An error occured while buffering HTTP upload data to a temporary file in /tmp/passenger.1.0.7336/generation-0/buffered_uploads. The current Apache worker process (which is running as XXX) doesn't have permissions to write to this directory. Please change the permissions for this directory (as well as all parent directories) so that it is writable by the Apache worker process, or set the 'PassengerUploadBufferDir' directive to a directory that Apache can write to.

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

忘記是從哪個版本開始 XD 總之,現在將 Redmine 升到 2.3.0.devel 版本,請參考官方:http://www.redmine.org/projects/redmine/wiki/RedmineUpgrade

後來發現,以前的 attachments 都不能下載,仔細確認後,發現這跟 db schema 有關,直接翻 db 後,發現多了個欄位 disk_directory,所以在 redmine/files 規劃已經改成 redmine/files/YEAR/MONTH 的結構,故只需建立對應的結構後,在把 db 資料更新一下即可,如:

文章標籤

changyy 發表在 痞客邦 留言(1) 人氣()

最近在架服務時,突然蹦出個強制都走 https 的念頭,找了一下果然可以用 rewrite rules 來解決 :P

$ sudo a2ensite default-ssl

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

ddwrt

最近周邊的 AP 不知不覺都刷成 DD-WRT 版本 :P 好處是設定方式越來越習慣,不用換台 AP 就要練習新的設定方式。但最近碰到一個現象,那就是設定好的 Port forwarding ,竟然在 LAN 裡頭無法使用,但在無線網路中是正常運作的。找了會,終於發現問題:r15760 breaks NAT loopback

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

clang_complete

最近開始狂寫 CPP 和使用 boost ,寫 CPP 對我而言最大的問題是找 library 的用法。回想起寫 php 時,總是憑著 C function 印象,丟著 keyword 到網路上就能找到,這時面對 CPP 跟 boost 時,因為沒有相關的 background 就卡關了 :P 所幸高手同事推薦了 clang_complete 給我把玩!對 CPP 甚至 boost 的操作終於可以輕鬆一點啦!

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

以前常用 ldd 來看一支程式到底吃了哪些 shared libraries ,然而在板子上卻不知該如何下手 :P 後來終於找到關鍵字 readelf 啦!所以就先找一下 cross compiler tools:

$ find /path -name "*readelf*"

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

Ubuntu 12.04 Desktop 預設的桌面是 tty7,可以用 ps -e | grep tty 看到。最近有台機器很久沒去看,發現桌面又掛了,除了滑鼠可以動之外,其他都動不了。常見的解法是重開機,可惜那台又是當 server 跑服務,最後遠端登入後就是送 kill 訊號給 tty7 了(此例恰好console端鍵盤無效,連切tty都不行)。

指令:

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

VS2012_exe

最近用 VS2012 編譯程式時,發現預設的狀況是不給 Windows XP 用的,據說當時推出 VS2012 時有意拋棄掉 XP 的,總之,後來有推出修正方式了。

文章標籤

changyy 發表在 痞客邦 留言(1) 人氣()

最近接手同事用 C++ 寫的程式,過程中看到使用 JSON Spirit 來處理 JSON 格式,然而,卻發現字串處理有些問題,追了一下才發現這是函式庫沒有使用好而已。

簡單的說,如果要處理 Unicode 的部份,請改用 w開頭系列,如 json_spirit::wmValue 等。

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

今天驗證某套 JSON library 到底有沒解碼錯誤,一直再想該怎樣把 '\u' 這類開頭的字串解碼出來,後來就想到幾乎快隨處都可以用的 python 啦

print u"\u771f\u5a01"

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

$ sudo apt-get install procmail
$ formail -b < file.eml > file.mbox

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()

$ sudo apt-get install smbfs
$ sudo mkdir -p /data/samba

文章標籤

changyy 發表在 痞客邦 留言(1) 人氣()

安裝不難,難就難在沒設定好 debug 痛苦 XD

簡易筆記:

文章標籤

changyy 發表在 痞客邦 留言(0) 人氣()