進機房Deploy前,有幾件事要注意
- 新程式碼記得先壓縮備份好,確認目錄owner及權限是沒有問題的
- 程式碼備份在要帶去的usb、Server的ftp或某個目錄(可以http下載或scp可以找到的地方),最差的狀況可能要從測試站的目錄拿取更動的程式碼檔案,而不是預備好的程式碼
- 要熟悉Command line操作,別認為機房內的主機有GUI介紹操作
這部分當然要看你的系統環境,若是Linux系統,就好好練習命令列操作吧 - 非系統工程師不用懂太多指令,但基本的tar、 ftp、scp、ssh、wget、chown、 chmod,若程式有version control使用,至少要會直接匯出的指令,例如svn的co或export,git的clone,之前寫了篇CentOS筆記-scp用法,之後再補充其他的好了,重點是想要檔案時,可以用command line的方式就很快取得
- 到達現場時,第一件事備份所有舊程式、檔案資料及DB資料,Deploy最重要的永遠是備份、備份、備份、備份、備份~~最好是能備份到另一台Server去或先上傳到測試站上測試過
- 除非必要,否則別刪掉原目錄,直接覆蓋通常是最安全的做法(這點純是個人經驗,有些人好像是反過來)
雖然都會確認owner及權限,但常常在測試站上是沒問題,進了Server就開始這邊權限不對,那邊owner怪怪的,不然就是都正確,但你還是不能用,尤其是目錄,所以常常就是還原這個目錄,裡頭的檔案手動一個個換掉,神奇的是,有時還不能用usb上的,得ftp去測試環境拿,有時我在用我的mac時,也多少有這類狀況,我相信windows也可能有
我只能說我不是系統工程師~~我不是系統工程師~~我不是系統工程師~~,我的專業不在此啊~~ 麻煩找專業的來
謎之音:專業的看了看,可能會說這是程式的問題,要問那個工程師,問他是怎麼搞出來的