系統管理
40 篇文章
Benjamin

流程標準化-以腳本取代文件

寫技術文件不難,要讓所有人都能看懂說明有點難,想統一不同成員寫的技術文件格式和風格相當困難,想讓其他人持續更新文件,維持文件有效性更是難上加難。因此,我不寫技術文件了。這篇文章寫給對系統管理有興趣的人,也許有些設計的想法可以參考。

标签活跃作者
Benjamin

上版的兩周後,差點無法挽回的慘劇

「這是個寶貴的經驗,往好處想經歷過這種錯誤之後你絕對不會犯第二次。你該慶幸這是和錢沒關係的系統,如果是網銀專案,我們公司現在已經被告了。」

Phanix

Apache 2.4 CORS configuration

如果是 api 的話,可以在程式的部分加上 header,但 resouce file (如圖片等)就得在 apache 裏頭做設定了 可以針對要設定的目錄在 site configuration file (/etc/apache2/sites-enabled/)中加上 &l...

Phanix

Git Error: pack-objects died, out of memory

紀錄一下… 今天遇到的,不過其實該 repository 也沒有很大的檔案,但是在 clone 的時候就會在 Compresing objects 的時候掛掉,然後回來這樣的錯誤訊息。$ git clone git@SERVER:NS/PROJECT.git Cloning into 'PROJECT'...

Phanix

一些 gitlab console command 整理

雖然用 root 帳號從 web interface 或者透過 api 方式也可以做很多事情,但有時候從 gitlab console 來還是比較快。啟動 gitlab console $ sudo gitlab-rails console production 通常需要花個幾秒...

Phanix

Gitlab server migration / 把 gitlab server 搬家

這篇文章整理得很好,把落落長的 gitlab 官方文章變得精簡許多。安裝新 server 目前 gitlab 已經把 EE (enterprise edition) 跟 CE (community edition) 整合在一起,如果 EE 沒有付費,那麼試用期過後自動變成 CE。

Phanix

使用 OSS 作為 alibaba cloud (aliyun) 的檔案系統

Alibaba cloud (aliyun) 上頭也有類似 gcp 的儲存服務,叫做 Object Storage Service (OSS),對於不常變更的檔案儲存算是便宜的選擇。而要在 ec instance 上直接存取的話,可以用 ossfs來將 bucket mount 起來當作一般檔案系統使用。

Phanix

php+apache 執行 sudo 命令出現 sudo: no tty present and no askpass program specified

php 用 exec (或 shell_exec 等)在 command line 下以 sudo 執行命令的時候,會出現sudo: no tty present and no askpass program specified的錯誤。主要原因是因為在 php + apache ...

Phanix

Use ownCloud app, “Files Share Link Renamer”, to get customized share link

其實會寫這篇的關係是因為 ownCloud 的 app 設定有點龜毛 =__= ownCloud 是個方便的cloud file server,還可以將檔案透過link的方式分享給其他外部使用者,但是自動產生類似hash的link總是不太好記,而 Files Share Link Renamer正好可以拿來用。

Phanix

Apache 2.4 ProxyPass

ProxyPass 可以把 URL A 轉去 URL B,並保留網址是 URL A。常見的用法可能像是 原本有網址 site-a.com,可是之後做了新版的網站,但是舊有的論壇功能 (www.site-a.com/forum/) 要留著 原本有 site-a.com 跟 sit...

Phanix

[GIT] Delete wrong merge, then redo

做 merge 的時候難免手殘… 如果還沒 push 到 server 上,那可以用 git reset –hard HEAD~1 來復原。如果是用 –soft 的話該 merge commit 依然會存在 local repository中,不像用 –hard 會刪除。

Phanix

Apache keep-alive v.s. iOS ajax bug

起因是因為 iOS 上 safari 瀏覽器在做 ajax request 的時候,有時會有bug (https://stackoverflow.com/questions/33895463/safari-ajax-request-failed-to-load-resource-...

Phanix

Git push detached HEAD, and set upstream to remote branch

今天遇到的狀況是,不小心把 local branch detach, 而且原本的 local branch 整個被改爛,然後要把修改過的東西(detached HEAD) push 回 remote branch,並把爛掉的 local branch track 上正確的 rem...

Phanix

Adding process time in Apache log

紀錄一下,要不然每次都還要找 +__+ 用 %{ms}T $ more /etc/apache2/apache.conf .... LogFormat "%v:%p %h %l %u %t \"%r\" % s %O %{ms}T \"%{Referer}i\" \"%{...

Phanix

Git push to the wrong branch

其實就是同事弄錯的事情經過 起因是同事想把Branch A倒退回前先前的 commit (rollback),下命令要直接對remote上的 branch 改指到某個 commit 上,但是因為工時太長(x)恍神(o)下錯命令… #當下在3d_new這個branch上,要roll...

Phanix

Setting for Phalcon 3 + php 7 using mongodb

php5 的時候還可以用 Mongo, 但是到了 php7 就強制要換成 MongoDB 才可以, 安裝方式如下(要先有 pecl) #如果有遇到 openssl 的問題的話, 可以先做下面這三行 $ sudo apt-get install -y autoconf g++ m...

Phanix

Google Compute Engine auto snapshot

很多人都知道之前 gitlab 裏頭的工程師不小心 rm -rf 的事件,所以當然要做好備份。在 google cloud 的機器可以乾脆直接寫 crontab 定期做 snapshot,不過這樣的方式也不能防止手殘砍掉負責跑這 crontab 的 instance 就是了 XD #!

Phanix

Backup tables of mysql server and import to the other server

這邊的使用情況是要把 gcp sql 的 import 到 aliyun 去 先在 gcp server 上用mysqldump 備份,然後利用 sshpass (要另外安裝) 指定 password 做 scp 到 aliyun server 上 $ sudo more /v...

Phanix

Apache redirects specific site requests to the other URL

ServerName www.site_name.com RedirectPermanent / http://www.the_other_site.com/ 起因就是因為XX的中國的機器用 domain name 連 http 要另外登記備案… WTF Original link: Phanix's Blog

Phanix

mysql import error

這個狀況在 aliyun RDS 系統上應該很容易遇到 將 mysqldump 出來的 sql 檔案用 mysql command 來做 import 是很常見的用法,像是 mysql -h test.mysql.rds.aliyuncs.com -u username -p ...