在ubuntu 14.0上安裝php5-ssh2

最近要安裝php deployer來deploy,碰到需要用composer裝”herzult/php-ssh”:”1.1.1″ ,而裝這個又需要安裝php5-ssh2。

在ubuntu 14.0上安裝php5-ssh2步驟如下:

 

參考:http://php.net/manual/en/ssh2.installation.php

AWS EBS mount進EC2

step.1 上aws console開ebs

目前有下面三種可以選:
General Purpose (SSD), Provisioned IOPS (SSD) or Magnetic。可以選第一個玩玩看,記得avalibility zone要選EC2的那區。

step2.將EBS attach 到EC2上

這直接在aws console操作即可。

step3.登入EC2,做一些事:

先輸入:

這是看你EC2上的volum的mount狀況,可能會顯示如下:

這代表剛剛attach 近來的ebs xvdf還沒有mount進來。

輸入:

輸入:

基本上,上述指令完成後,應該大功告成,不過如果想要每次開機,都能讓EBS自動mount到EC2,還需要做一些事:

 

參考文章:
ebs-creating-volume
Attaching an Amazon EBS Volume to an Instance
Making an Amazon EBS Volume Available for Use

ubuntu 14:將php升級至5.6以上

PHP 5.6 on Ubuntu 14

 

參考文章:PHP 5.6 on Ubuntu 14

AWS EC2空間越來越小的問題

使用EC2時,會發現disk space會逐漸越來越小,即便你將所有log都刪除,你會發現用du指令去查每個目錄空間使用狀況,可用空間仍然越來越小:

例如:

這時有兩個解法:

一.重新開機

因為就像swap一樣,你的某些空間無法被釋放,像是暫存檔一樣,重新開機可以解決這個問題。

二.將EBS增大

步驟大概是這樣:
1)將EBS卸載
2)卸載後將EBS快照(snapshot)
3)用snapshot開新的EBS,然後將空間加大
4)將EBS加回原本的EC2

 

參考文章:
1. https://www.orztw.com/2014/06/linux-command-du.html#prettyPhoto
2. http://askubuntu.com/questions/118094/not-enough-disk-space-in-aws-instance

git 2.0的push.default的設定

官方訊息如下:

warning: push.default is unset; its implicit value is changing in
Git 2.0 from ‘matching’ to ‘simple’. To squelch this message
and maintain the current behavior after the default changes, use:

To squelch this message and adopt the new behavior now, use:

When push.default is set to ‘matching’, git will push local branches
to the remote branches that already exist with the same name.

In Git 2.0, Git will default to the more conservative ‘simple’
behavior, which only pushes the current branch to the corresponding
remote branch that ‘git pull’ uses to update the current branch.

See ‘git help config’ and search for ‘push.default’ for further information.
(the ‘simple’ mode was introduced in Git 1.7.11. Use the similar mode
‘current’ instead of ‘simple’ if you sometimes use older versions of Git)

換句話說,在Git 2.0,若將push.default設為matching,則在push時將所有local branch的變動,推上遠端branch,若設為simple,則只會推當前的branch的變動,至遠端branch。