2015年9月30日 星期三

驗證對外 IP 不求人,架設自己的 myip 網站

一個系統工程師常常會需要用到 myip 來驗證自己的對外IP,這個動作平常不用,但有需要的時候就會變得很頻繁使用

 

但是常常遇到常用的 myip 網站無法使用或者是在沒有外網的環境下使用,這時候不如就自己架一個 myip 網站

 

myip 實際上的運用很廣,又非常簡單,只要使用 php + curl 就可以達到 Server / Client 的功能!

2015年9月23日 星期三

Dropbox API 用 bash 也可以上傳下載 Dropbox

最近在備份一些資料的時候,把腦筋動到 Dropbox 上面去,想要把一些比較一般的資料搬上去,在備份跟上傳 Dropbox 的部分,希望一氣呵成搞定他!

 

終於在 GitHub 上找到一個 Dropbox Uploader 的專案。

Mac 修改預設的 vim 參數,讓寫code也能有好心情

在 Mac 預設的 vim 編輯是沒有顏色辨識的,由於我是一個 vim 愛好者,實在不喜歡純色調的黑白色,所以必須為 vim 加入一些慣用的參數

 

使用的環境是 OS X Yosemite 10.10.3

2015年9月21日 星期一

Kali 2.0 安裝啟動失敗 Trying to boot from SATA drive...

前幾天看到 Kali 出了 2.0 版本,整個 UI 都改了還蠻炫的,還和 Windows / Mac 一樣多了虛擬桌面,趕緊安裝來試玩看看

 

沒想到一裝好後開機就出現錯誤
SCSI controller is not installed. 
Network bootrom is installed.
Trying to boot from SATA drive...

看起來是在 SATA drive 找不到 boot 資訊

Sublime Text 3 關閉自動更新 build 3074

這篇其實有點是個人筆記的懶文,因為 Sublime Text 預設會一直去檢查更新,我不喜歡更新,我只喜歡穩定可用的東西!

 

因為 Sublime Text 預設的 Preferences 設定不是 GUI 介面,而是以設定檔的形式出現,免得腦容量不足,所以紀錄在這

2015年9月16日 星期三

php 短標籤縮寫 short_open_tag

今天在執行任務的時候一位 RD 的 php 程式沒辦法正常顯示,由於得知狀況是某些 php 無法正常執行。

 

後來確認問題的狀況都發生在 <? --- ?> 之間的程式碼,另一位有經驗的 RD 立馬發覺應該是有使用到 php 縮寫

 

在 php.ini 有一項設定可以使用短標籤縮寫

 
$ vim /etc/php.ini 

short_open_tag = On

 

如果你是安裝 php-fpm 記得重啟
$ service php-fpm restart

 

Orignal From: php 短標籤縮寫 short_open_tag

2015年9月10日 星期四

Windows 10 關閉自動更新 - KB3073930

在以往 Windows 都有可以關閉自動更新的選項,這回在 Windows 10 上面微軟竟然強制 Windows 10 自動更新,只有在專業版或企業版才可以選擇 "延遲更新"

 

由於微軟的強制更新造成開發人員強烈的反彈,因為許多新的驅動程式導致多螢幕失效、當機等,所以微軟妥協出了一個「Show or hide updates」工具可以選擇是否要更新,或是隱藏更新通知

 

Show or hide updates

Git 用 archive 和 checkout 匯出原始碼,並用 export-ignore 排除指定檔案

Git 本身的 Git repository 裸庫所儲存的是打包過的原始碼,並不能拿來當作 Web 使用

 

Git 有幾種方式可以將打包過的程式匯出成原始碼,來讓 WebServer 可以即時同步 Git 的程式碼內容

 

 

以下的實作都是在 Git repository 下動作。

Git 目錄:/home/git

專案目錄:/home/git/system

2015年9月9日 星期三

Windows 10 安裝 Parallels Tools 一直重新開機問題 - Parallels Desktop 10

最近在 Mac 上的 Parallels Desktop 10 安裝了 Windows 10 來玩看看,安裝完後 Parallels Tools 卻一直重複的重新開機 & 安裝 Parallels Tools 一直循環

在其他同事的 Mac 也是一樣問題,幸好在 Parallels Forums 找到了一篇相同的問題,並且有了官方回應。

Windows 10 Preview 2 - Parallels Tools installs on every restart

 

官方的解決方式是將 Parallels Tools 自動更新關閉

2015年9月7日 星期一

Redmine 2.6 替甘特圖(gatt chart)的每週加上每月的每一天,並修改預設顯示視角

在 Redmine 的甘特圖(gatt chart)預設是 年 / 年週 來顯示

ScreenShot 2015-09-07 00.21.24

 

由於業務需求,希望客制加上 月/日 的每一天來方便觀看,並且 Redmine 預設的甘特圖視角太大了,希望每次預設顯示為 "一個月"

 

一樣此篇適用於 Redmine 2.6 版本

Redmine 2.6 修改預設的篩選條件為 "任意一個"

由於公司需求,開始針對 Redmine 進行一些客製化的處理,我只是一個小小的系統工程師,每一個客制項目都必須花一些功夫來了解 Redmine

 

由於處理的方式是由 Source code 進行修改,所以版本不同可能有些許差異。

 

在 Redmine 的預設篩選條件是 "進行中",但需求者希望每次進入時可以看到全部的問題清單,所以預設進入必須改為 "任意一個"

 

此篇修改適用於 Redmine 2.6

2015年9月4日 星期五

Mac OSX 的套件管理工具 - Homebrew 安裝

雖然 Mac 是一套 unix 系統,但身為 Linux 的工程人員,在 Mac command 在執行時常常少了很多 Linux 擁有的基本指令例如 wget .. 等

 

Homebrew 就類似 Linux 上面的 yum、apt-get,是以 Git 和 Ruby 為底的套件管理工具

 

 

Homebrew install on Mac OSX Yosemite 10.10.3

2015年9月2日 星期三

CentOS 6 - Redmine 2.6 一套專業的專案管理流程系統

目前的公司有專案管理流程、甘特圖的需求,搜尋許多都沒辦法符合需求,最後想到前公司使用的是 redmine 當作專案管理系統,可以清楚的紀錄每項工作專案的執行作業,也可以讓老闆知道其實我們的工作量很大啦

 

 

Redmine 是一套基於 GPL 授權的系統,底層架構為 Ruby on Rails,小弟在安裝的過程中不是很順利,履遇狀況,在官網的 Document 寫的也很籠統,並沒有一個完整的文件內容,在網路上的爬文中也是頻頻出現問題,最後在東湊一湊下整理出這一篇 Redmine 2.6 的安裝文章

 

由於 Redmine 每一個子版或大版本更新,安裝的方式都有些許差異,可能會很容易遇到套件缺少或設定少東少西的,所以這篇是以 CentOS 6 minimal 為基底進行安裝,安裝 Redmine 2.6 版本,並且整合 Nginx 當作 Web Proxy。

PHP - 上傳檔案失敗『File upload error - unable to create a temporary file in Unknown』

今天在某一台機器要上傳檔案的時候,上傳檔案失敗,在 Nginx Log 內顯示訊息『File upload error - unable to create a temporary file in Unknown』

 

這項錯誤小弟一直執著在 upload 上傳的權限是否有問題,或是 php.ini 的 upload 限制,卻沒有去檢查其他項目

 

花了半小時才找到問題的原因出於 php.ini 中的 upload_tmp_dir

 

在預設 php.ini 這個項目是註解的,default = /tmp

預設在 Linux 是會有 /tmp 目錄的,但在不知為何的狀況下這台機器沒有 /tmp,造成上傳失敗。

 

建立好 /tmp 後,上傳成功。

Orignal From: PHP - 上傳檔案失敗『File upload error - unable to create a temporary file in Unknown』