Ubuntu

[PHP] 如何利用手動安裝版本的PHP使用 pear 及 pecl

偶爾就會用到,寫一下筆記

[pear]

pear比較簡單,直接用該版本php目錄中的執行檔即可,假設是目錄是/opt/php7,一般來說執行檔都放在在/opt/php7/bin,所以可以這樣
指令範例如下:

  1. 看pear的設定檔資料
    /opt/php7/bin/pear config-show
  2. 安裝某個module
    /opt/php7/bin/pear install xxx/xxx

[pecl]

pecl 則得要指定設定檔(pear.conf),但並沒有限制一定要使用該版本中的執行檔,指令範例如下:

  1. 安裝模組
    pecl -C /opt/php7/etc/pear.conf install memcache

讓 SSH 可以不用輸入密碼登入(authentication key)

SSH加密連線,對於管理遠端伺服器來說,是個重要的工具,可以說是必用的工具了。但每次登入都要輸入密碼有時候滿麻煩的,然後SSH也滿friendly的,提供了一個不用輸入密碼的選擇,其實Amazon AWS,以及drupal git也是預設用這種方式連線。

用Authentication key的優點就是不用輸入密碼,安全性跟「輸入帳號密碼」相對而言較佳,要持有private key的電腦才能登入伺服器,不用擔心被人暴力破解密碼。但這裡其實也產生了一個問題,只要持有private key就可以了。所以不管用帳號或authentication key,都要好好保管。

廢話不多說,直接說明如何作,以下是在Ubuntu的環境下(基本上Linux指令應該都一樣):

解決Cannot stat() mounted device /dev/root: No such file or directory 錯誤

當我們利用quotacheck -avugm時,出現以下錯誤訊息時:

quotacheck: Cannot stat() mounted device /dev/root: No such file or directory

可以用以下指令檢查一下根目錄所在位置:

df -h

會出現類似下面的訊息:

Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda        47G  5.5G   41G  12% /

其中/dev/xvda就是根目錄實際位置,此時只要做個softlink即可

ln -s /dev/xvda /dev/root

接著再重新quotacheck一次,並重新啟用quota就可以了。

 

[Ubuntu]啟用配額管理 - Quota

  1. 首先安裝軟體
    apt-get install quota quotatool
     
  2. 接著編輯fstab
    vim /etc/fstab
     
  3. 假設需要配額管理的目錄是/home的話,檢查看是不是獨立的檔案系統,
    df -h /home
    如果Mount on的欄位出現 /home表示是獨立的檔案系統,不然通常是掛載在根目錄/
     
  4. 接著看看檔案系統的格式
    mount | grep home
    如果有看到 ext3 或 ext4就沒問題了
     
  5. 手動讓/home支援Quota
    mount -o remount,usrquota,grpquota /home
     
  6. 如果要開機自動啟用的話,要編輯 /etc/fstab
    vim /etc/fstab
    找到 /home那一行,把options欄位中的值,增加 ,usrjquota=quota.user,grpjquota=quota.group 

Linux 重大安全性漏洞 ShellShock 更新

比HeartBleed還要兇猛的漏洞-ShellShock,影響範圍為以Unix為基礎的作業系統,包含Mac OS以及 Linux。未進行更新的伺服器,將可被駭客輕易的遠端遙控

測試方法:

登入bash後,輸入以下指令後執行

env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test"

如果出現

Bash is vulnerable!
Bash Test

則表示需要更新。

更新完成後的話,相同指令則會產生以下內容:

bash: warning: VAR: ignoring function definition attempt
bash: error importing function definition for `VAR'
Bash Test

更新方法: