很方便的工具網站(CSS2), 查 CSS 的各種語法的用法、範例.
月份: 2005 年 12 月
rsync 備份
rsync + ssh 可以做簡單又快速的備援,
做法很簡單:
- 先 gen key (參考 ssh-keygen)
查一下另一邊的 Server 是否有啟動 rsync 服務如果沒啟動 => /etc/init.d/rsync start (或 /etc/default/rsync 設定開機啟動)- 確認 Server 和 Client 都有 rsync (ssh session會自己執行rsync --server以便兩端算簽章
- 指令1 - 遠端 備份回 本端:
rsync -avl --delete -e ssh server_hostname:/var/lib/mysql/ /backup/
- 指令2 - 本端 傳送到 遠端:
rsync -avl --delete -e ssh /var/lib/mysql server_hostname:/backup/
這樣子就完成囉. 感謝 Mango 大大指導.
若要詳細的可見以下連結:
ssh keygen 免輸入密碼
懶得打密碼, 以 key 做認證登錄.
步驟如下:
- ssh-keygen -t rsa 或 ssh-keygen -d (dsa) => 產生出 id_rsa, id_rsa.pub
- scp id_rsa.pub server_hostname:~/.ssh/
- ssh server_hostname
- cat .ssh/id_rsa.pub >> .ssh/authorized_keys 即可
- 這樣子就可以 key 認證登入, 不需輸入密碼.
注意: gen 時會問 Enter passphrase (empty for no passphrase): # 此處直接 enter 跳過,下次才不會詢問password
簡單解說一下:
- id_rsa: private key
- id_rsa.pub: public key
將 public key(id_rsa.pub) 拷貝到遠端的電腦後, 加到那 user 的 .ssh/authorized_keys 中.
之後連線時, 就會用本機的 private key(id_rsa) 與遠端電腦的 public key(authorized_keys) 做認證, 確認完成就可以直接登入, 不需輸入帳號密碼, 而且也比較安全.
要關閉使用密碼登入, 只允許使用 Key 來做登入, 可修改此檔案的下述兩個參數: vim /etc/ssh/sshd_config
- PubkeyAuthentication yes
- PasswordAuthentication no
將 Key cp 並寫入 authorized_keys 的方式, 有下述幾種簡便的方法:
- cat .ssh/id_rsa.pub | ssh hostname 'cat >> .ssh/authorized_keys' # 缺點, 機器沒有 .ssh 目錄會有問題
- ssh-copy-id -i .ssh/id_rsa.pub hostname # 推薦
- ssh-copy-id -i hostname # 預設會用 .ssh/id_rsa.pub 或現在 ssh-agent 載入的 key
相關網頁
虛擬桌面
Linux 的虛擬桌面太方便了, 回到 Windows 真不習慣.
所以也找了 Windows 的虛擬桌面來用~ :p
Windows: Virtual Dimension
Mac: Desktop Manager
好書: 程式設計專家手冊
聽人推薦的好書 - 程式設計專家手冊, 看 The Practice of Programming 這連結, 就知道此書已經被翻成幾種語言了....
先記下來, 之後再去書局好好看一下 🙂
好站: Old Linux
這網站將 Linux 最早期的資訊整理出來, 以讓之後學習的人可以先見識到最早期 Kernel 撰寫原理, 讓入門更快速..
Oldlinux.org -- Early Linux Kernel Analisys and Comments
SHA1 編碼 使用
md5 已經能夠在很短的時間內被破解(MD5 Collision Source Code Released).
Jserv長輩 的測試: MD5 Collision
破解演算法: MD5 Collision Generation (作者宣稱 45 min 就能破解, 我是跑了 80 min 才破解... 🙁 )
破解程式 Source Code: md5coll.c
暫時先改用 sha1 演算法好了, sha1 使用上, 基本上跟 md5 還是都很像的. 只有一些些的差異.
- md5 是 128 bits(32 bytes), sha1 是 160 bits(40 bytes)
- md5檢測程式 md5sum, sha1 是 sha1sum
- php 的 md5 function 是 md5(), sha1 的是 sha1()
基本上差不多是一樣的意思.
MySQL Insert Data(Table to Table)
MySQL Table insert data 到 另一個 Table 的語法,
INSERT INTO db.new_table SELECT * FROM db.old_table
其中 * 的 Schema 要與 New Table 的 Schema 一致(* 也可以替換成其它 Column Name)
專案管理厚黑學
意外間發現的一系列的文章,先留起來, 再找時間慢慢看...
- 專案厚黑學(一):從哥倫布發現新大陸開始
- 專案厚黑學(二):實現Vision
- 專案厚黑學(三):召開誓師大會
- 另類專案管理(四):做好簡報
- 專案管理厚黑學(五):KPI (上)
- 專案管理厚黑學(五):KPI (下)
- 專案厚黑學(六):專案價值的評估
- 專案管理厚黑學(七):重新定位價值
- 專案管理厚黑學(終):出錢的人才是老大
以上, 再來和目前盛行的 義和團式的專案計劃 做比較看看... XD
義和團式的專案計劃
看了這篇文章, 真是感同身受, 我們大家都是義和團式的開發呀...
這篇文章寫的也蠻真實的, 在一個案子下來的同時, 要考量到的是老闆、業務端、合作夥伴、程式開發小組... 等等的人的共同合作, 但是常常到後來總是一環一環的逼迫, 然後把專案 Delay 當做是正常的事情... 唉....
更慘的是, 現在大家都把加班當作正常的事... 千萬不要認為加班是正常 又 應該的事情, 加班代表的是, 時間估算錯誤, 而此錯誤會造成公司更大的損失, 若員工加班的很晚, 那他隔天來的精神狀況若跟著變差, 做事效率也會降低, 事情做不完也做不好, 公司的成本也會跟著無止盡的增加.
現在當老闆的似乎都沒想過這種事情, 台灣是全世界加班加的最兇的國家, 不是沒有原因的....
原作者的 網站 還有更多不錯的文章, 都建議可以參考看看..