星期四, 7月 16, 2015

統計子目錄檔案大小

這個功能其實蠻常用到的,但每次都會忘記,筆記一下。

最簡單的用法
du -hs $PATH/*
EX:du -hs /*
進階的用法
 du -s $PATH/* | sort -rn | head - number

EX:列出HOME 目錄前15名
 du -s /home/* | sort -rn | head -15


星期三, 7月 08, 2015

Find + Rsync

最近有一個檔案備份同步的需求,條件是備份某段時間內異動(新增)的檔案

爬了一下文章,似乎可以透過find 以及rsync 來做到。

我們來看一下範例,找出某段時間之後有被存取過的檔案。
# find .   -newerct 2015-07-01
./
file1
file2
其他find 更多應用可以參考MAN,其他跟時間比較相關的有mtime(檔案內容修改時間)、ctime(檔案狀態改變時間)、atime(檔案最後被存取時間)

接著搭配RSYNC把找出的檔案備份
 find SOURCE -newerct 2015-06-01 -exec rsync -av {} DST \;
原本以為這樣就可以結束,順利的備份,但是不管怎麼跑,RSYNC都會全部備份,奇怪了,不是都已經使用FIND了嗎?
後來仔細去看才發現,是因為FIND出 來的結果,第一筆是 ./也就是
./
file1
file2
最後在find 條件 加上要備份的檔案副檔名解決。
或是加入 *
 find SOURCE/* -newerct 2015-06-01 -exec rsync -av {} DST \;

附加,如果希望執行兩個命令以上呢
  find SOURCE/* -newerct 2015-06-01 -exec rsync -av {} DST \; -exec cmd {} \;
參考來源
利用 「find」 以日期為條件找出被修改或狀態改變的檔案
 find -exec with multiple commands

星期日, 6月 07, 2015

無法讀取exFat格式隨身碟

安裝fuse-exfat套件即可解決這個問題
zypper in fuse-exfat
 題外話,packman的Austria站台似乎又存取不是很正常,從分流列表中,修改回台灣分流。
怪,當初是為什麼會設定到澳洲去XD。


星期日, 5月 31, 2015

openSUSE 13.2 DNS設定問題

就在剛剛突然網路不能連線,但是使用ping卻是正常的,腦海中第一個浮現的,就是DNS。
馬上檢查一下DNS的設定。
vi /etc/resolv.conf
nameserver 8.8.8.8
看起來DNS是正常的,用nslookup檢查一下也是正常,開啟瀏覽器輸入IP也是正常,但是輸入網址就是找不到網站。

看起來很不正常,但是可以肯定是DNS的問題。
上網爬了一下,才知道要另外再網路設定那邊設定一下。
vi /etc/sysconfig/network/config
# 找到並修改NETCONFIG_DNS_STATIC_SERVERS=8.8.8.8
修改好之後,執行
netconfig update
開啟瀏覽器終於正常。
8.8.8.8 可以替換成你喜好的DNS伺服器。

Reference
Internet connection issues when using Opensuse 13.2

星期五, 5月 29, 2015

XenServer 6.5 SP1 更新

前陣子(05/12),XenServer 釋出6.5 SP1的更新。(更新說明)

找了個時間把伺服器做個更新的動作。

平常在做更新時,我習慣這麼做:
1.先把 vm 先遷移到master 主機上(重點是準備更新的機器上面沒有VM)。
2.更新伺服器,再把vm 遷移到更新好得機器上,更換master 主機為更新好得機器。
3.然後再把最後原本是master的機器做更新,最後再把master設定回原本的機器,把vm搬移回來。(設定MASTER跟搬移動作,看個人)。

好吧,看起來有點繞口令。
但這動作是為了避免更新發生問題,設定master動作是為了方便可以讓我的xencenter可以正常的查看運作情形。

今天在更新sp1時,卻發現機器更新好之後卻停在Maintenance mode。
想說試看看離開 Maintenance mode,卻會出現
The Server is still booting。

心裡突然一個念頭,該不會是master必須也要更新才可以正常吧。
於是把vm都關機,然後更新master主機之後,就正常了。

還好是在測試環境中先測試。



星期六, 5月 23, 2015

前進到openSUSE 13.2 (Ati 硬解測試篇4)

其實真的好一陣子沒有好好去追這方面的消息。

後來稍微查了一下,才發現原來 mplayer vaapi已經許久沒有再更新了,當時我還以為總有一天可以追上NVIDA的VDAPU。

但堅持使用A卡的我們也不用太灰心,還是有其他方法可以解決的,有發現一位網友寫的很棒,大概整理一下。

要使用A卡完成1080P硬解,有幾個步驟。

1.安裝驅動程式,第1推薦使用的發行版本提供的,再來才是考慮官方推薦的,以OpenSUSE為例,當然就是推薦Packman打包的。

2.安裝XvBA來實現VAAPI(一樣是透過Packman安裝)

3.安裝支援VAAPI播放器,根據網友分享目前首推MPV跟VLC,其中以MPV表現更為亮眼(另外現在SMPlayer支援mpv,可以彌補mpv不足的GUI介面設定)。

4.MPV開啟VAAPI的方式也蠻簡單的,建立MPV設定檔即可
vi ~/.config/mpv/mpv.conf
hwdec=vaapi
vo=vaapi,opengl-hq,opengl
透過指令來播放影片測試
mpv /path/your movie
如果有看到VO: [vaapi] 1920x1080 vaapi,表示有成功使用vaapi。

感覺ATI硬解又更往前邁進,但不知道何時可以追上N卡阿。

後來發現原來SMPlayer已經開始支援mpv,如此一來可以解決mpv缺少許多便利的參數設定的問題,而且也支援vaapi,一整個超棒的。

不過我的SMplayer如果聲音輸出使用預設,會播放錯誤,指定正確的輸出就正常了。


Reference
openSUSE 13.2 系统中播放视频时开启 AMD 显卡硬件加速视频解码的方法
Linux 下 MPV 和 VLC 播放器 VAAPI 显卡加速对比
現在 SMPlayer 支援 mpv 了

星期三, 5月 20, 2015

Kill TCP connection

今天發現伺服器異常,似乎是來自美國的SPAMBOT攻擊。

察看伺服器的連線,沒想到比想像中的大量

netstat -na |grep ip
爬了一下,似乎不少朋友推薦使用tcpkill套件,不過有看到一位網友分享的script也非常實用
lsof -i tcp:80 | grep ip | awk '{print $2}' | xargs kill
當然刪除前也可以先透過echo來察看刪除哪些程序

lsof -i tcp:80 | grep ip | awk '{print $2}' | xargs echo kill

Reference
Using BASH how can i kill TCP port 16969?