知識分享
當我們利用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就可以了。
更多
因為國外的案子,而初次接觸Pantheon這個服務,節錄幾個重點
- 內建的 drupal 是經過調校的 Pressflow,所以如果有模組需要修改settings.php的話(如Domain Access),要進行一些調整。此外,當自訂的settings.php有設置$database參數時,可能會連線錯誤...
- Pantheon不允許SSH直接連線,但有支援SFTP。
- Pantheon有支援Git版本控制,當選擇使用Git連線時,無法透過SFTP更新檔案,所以剛開始建站的時候,不建議使用,當需要開發模組時再切換成Git模式比較適合。
如果現有的swap不太夠用,可以透過以下步驟快速擴展swap空間
指令如下:
- 首先在根目錄建立一個檔名為 swapfile 的 1GB 空檔案
sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
- 接下來把這個檔案格式化成swap格式
sudo mkswap /swapfile
- 然後啟用這個swap
swapon /swapfile
- 檢查記憶體及swap的總容量及使用狀況
free -m
- 設定開機自動掛載,編輯/etc/fstab
vim /etc/fstab
- 在最後一行加入以下內容
/swapfile none swap sw 0 0
就這麼簡單!
詳細說明請見:http://www.openspf.org/SPF_Record_Syntax
以下幾個關鍵字,用來敘述一個domain用來外寄郵件的主機,基本有以下幾種類型(Mechanism):
all | ip4 | ip6 | a | mx | ptr | exists | include
而domain也可以定義一些modifiers如下。其中modifier僅能出現一次
redirect | exp
Mechanism會有以下四種前綴,當有符合mechanism的結果時,就會採取前綴所代表的動作,先說明這些前綴代表的意義(沒有寫前綴時,預設是+):
"+" Pass
"-" Fail
"~" SoftFail
"?" Neutral
語法範例如下:
"v=spf1 -all" =>全部Fail
"v=spf1 a -all" =>僅 a 紀錄的主機 Pass
"v=spf1
- 首先安裝軟體
apt-get install quota quotatool
- 接著編輯fstab
vim /etc/fstab
- 假設需要配額管理的目錄是/home的話,檢查看是不是獨立的檔案系統,
df -h /home
如果Mount on的欄位出現 /home表示是獨立的檔案系統,不然通常是掛載在根目錄/
- 接著看看檔案系統的格式
mount | grep home
如果有看到 ext3 或 ext4就沒問題了
- 手動讓/home支援Quota
mount -o remount,usrquota,grpquota /home
- 如果要開機自動啟用的話,要編輯 /etc/fstab
vim /etc/fstab
找到 /home那一行,把options欄位中的值,增加 ,usrjquota=quota.user,grpjquota=quota.group
這裡要注意,
有一次Server重開機之後,突然apache就突然無法啟動了,所以就查了一下,這表示port 80或443被佔用了,所以apache無法啟動,
這個問題其實是因為有使用ssl,而因為開機時apache需要自動啟動,但因為啟用ssl需要輸入ssl key,所以導致apache其實沒有正常啟動,但卻佔用了80及443這兩個port
解法:
- 找出目前apache的pid , 指令如下
netstat -A inet -lnp | grep apache2
- 接著kill中止這個pid,假設pid是888,則指令如下
kill -9 888
- 之後就可以重啟了
service apache2 start
比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
更新方法:
- Ubuntu
執行 sudo apt-get update