Inotify 是文件系統(tǒng)事件監(jiān)控機制,計劃包含在即將發(fā)布的 Linux 內(nèi)核中作為 dnotify 的有效替代。dnotify 是較早內(nèi)核支持的文件監(jiān)控機制。Inotify一種強大的、細(xì)粒度的、異步的機制,它滿足各種各樣的文件監(jiān)控需要,不僅限于安全和性能。下面讓我們一起學(xué)習(xí)如何安裝 inotify 和如何構(gòu)建一個示例用戶空間應(yīng)用程序來響應(yīng)文件系統(tǒng)事件。
1.1同步工具安裝
1、輸入命令:su root,切換到超級用戶。
2、先查看linux的內(nèi)核是否支持inotify,支持inotify的內(nèi)核最小為2.6.13,輸入命令:uname –a。如下圖所示,內(nèi)核為2.6.27,支持inotify:
注:如果內(nèi)核低于2.6.13,請升級內(nèi)核或重新安裝內(nèi)核版本更高的linux系統(tǒng)。
3、建立同步ssh信任關(guān)系,輸入命令:cd $HOME,進入用戶根目錄。
輸入命令:ssh-keygen -t rsa (會出現(xiàn)幾個提示信息,一直按回車即可)。
會在 cd $HOME/.ssh/目錄下生成2個文件id_rsa、id_rsa.pub。
輸入命令:cp id_rsa.pub authorized_keys,將id_rsa.pub拷貝成authorized_keys。
將授權(quán)密鑰分發(fā)到iEPG服務(wù)器(192.168.100.101)上,輸入命令:
scp ~/.ssh/authorized_keys root@192.168.100.101:/root/.ssh/
如果有多臺下載服務(wù)器,每臺都須運行一次上面的密鑰下發(fā)命令。
4、通過如下命令查看系統(tǒng)是否支持inotify:ll /proc/sys/fs/inotify
如果有如下輸出,表示系統(tǒng)內(nèi)核已經(jīng)支持inotify:
total 0
-rw-r--r-- 1 root root 0 Feb 21 01:15 max_queued_events
-rw-r--r-- 1 root root 0 Feb 21 01:15 max_user_instances
-rw-r--r-- 1 root root 0 Feb 21 01:15 max_user_watches
5、取得軟件包inotify-tools-3.13.tar.gz,放在/tmp下。
6、輸入命令:tar zvxf inotify-tools-3.13.tar.gz,解壓軟件包。
7、輸入命令:cd inotify-tools-3.13,進入解壓后的目錄。
8、輸入命令:./configure
9、輸入命令:make
10、輸入命令:make install
11、在系統(tǒng)下執(zhí)行命令:man inotify、 man inotifywait、 man inotifywatch即可得到相應(yīng)的幫助信息,表示inotify安裝成功。
12、輸入命令:rsync,查看rsync是否安裝。
rsync一般是系統(tǒng)默認(rèn)安裝,如果沒有安裝就取得軟件包,安裝方法同inotify。
同步腳本使用
1、取得syncapps.sh腳本























































































root@10.10.80.76:/root/files/
3、輸入命令:chmod +x *.sh,給文件賦可執(zhí)行權(quán)限。
4、輸入命令:./syncapps.sh start,啟動同步工具。
啟動同步工具的輸入命令:./syncapps.sh start
停止同步工具的輸入命令:./syncapps.sh stop
重啟同步工具的輸入命令:./syncapps.sh restart
查看同步工具狀態(tài)的輸入命令:./syncapps.sh status
link
首先閱讀此文之前,最好閱讀
http://hi.baidu.com/maml897/blog/item/324bf86369961ed4e6113a5c.html
http://hi.baidu.com/maml897/blog/item/fa5f0a7e1edef00129388ae2.html
其次還要知道一點常識,就是我們在記事本等一些文本工具中 寫的都是字符,沒有誰會去寫字節(jié)(可以寫字節(jié),但是要用具特殊的編輯器),但是其實,我們的寫的是字符,但磁盤上真實存儲的是字節(jié)。
這里就出現(xiàn)了轉(zhuǎn)換的問題,當(dāng)然,這些問題記事本本身會幫助我們解決。我們打開一個記事本,然后文件--另存為,你會發(fā)現(xiàn)有幾種存儲格式供您選擇,
ANSI格式:就是ascii的格式
Unicode格式:采用國際通用的編碼存儲
Unicode big endian格式:這個和unicode有點區(qū)別,但我也不明太具體的不同
UTF-8:采用utf-8存儲,看過上面的兩篇文章,你會十分的了解這里介紹的編碼。Utf-8,是unicode的一種實現(xiàn)方式。
例如我們在記事本里面輸入“連通”兩個字。
1.我們另存記事本的時候,采用unicode存儲,那么雖然我們看到的字符還是“連通”,但是其實存儲在磁盤上的字節(jié) 確實
8FDE(連) 901A (通),這個是規(guī)定的,unicode是國際上規(guī)定的,給世界上的每個字符分配的唯一編碼。獲取某個字符的unicode的方法,可以去網(wǎng)上查找,最簡單的方法,就是打開word文檔,輸入字符,把光標(biāo)移動到字符后面,按alt+x,word會自動把字符轉(zhuǎn)換成unicode編碼,這里呢我們也可以看到,用unicode存儲漢字啊,每個漢字占用兩個字節(jié)。
2.我們另存記事本的時候,采用utf-8存儲,雖然我們看到的字符還是“連通”,但是其實存儲在磁盤上的字節(jié) 確實已經(jīng)變化了,這時候存儲的是
E8 BF 9E (連)E9 80 9A(通)。這就是utf-8的存儲的編碼,至于utf-8為什么這樣存儲,你可以閱讀上面的兩篇文章來了解,可以看到,utf-8使用3個字節(jié)存儲一個漢字。
另外我們還要知道的就是:電腦怎么區(qū)分一個記事本是用什么存儲的呢?
換句話說,為什么我用unicode存儲的8FDE(連) 901A (通),電腦就知道這是unicode編碼,從而使用unicode解碼,還原為“連通”呢?電腦又怎么知道E8 BF 9E (連)E9 80 9A(通)這是按照utf-8的存儲方式存儲的呢?
這里有一點標(biāo)記,就是在存儲字節(jié)的時候,記事本首先在最前面 標(biāo)明,這個記事本下面的存儲格式 是utf-8,還是unicode。
例如,
1.unicode存儲“連通”。磁盤字節(jié)真實存儲的其實是:
FF FE 8FDE 901A
前兩個FF FE是標(biāo)記,告訴電腦,這個文檔的存儲方式是unicode
2.utf-8存儲“連通”。磁盤字節(jié)真實存儲的其實是:
EF BB BF E8 BF 9E E9 80 9A
前三個EF BB BF 告訴電腦 這個文檔是utf-8存儲的
根據(jù)不同編碼的特點和標(biāo)志,對一個文本文件判斷編碼方法如下
1 . UTF7 所有字節(jié)的內(nèi)容不會大于127,也就是不大于&HFF
2 . UTF8 起始三個字節(jié)為"0xEF 0xBB 0xBF"
3 . UTF-16BE 起始三個字節(jié)為"0xFE 0xFF"
4 . UTF-16LE 起始三個字節(jié)為"0xFF 0xFE"

































































































| |||||||||
日 | 一 | 二 | 三 | 四 | 五 | 六 | |||
---|---|---|---|---|---|---|---|---|---|
27 | 28 | 29 | 30 | 31 | 1 | 2 | |||
3 | 4 | 5 | 6 | 7 | 8 | 9 | |||
10 | 11 | 12 | 13 | 14 | 15 | 16 | |||
17 | 18 | 19 | 20 | 21 | 22 | 23 | |||
24 | 25 | 26 | 27 | 28 | 29 | 30 | |||
31 | 1 | 2 | 3 | 4 | 5 | 6 |
常用鏈接
留言簿
隨筆分類
- EJB3.0
- Hibernate
- iBATIS
- java(3)
- linux(1)
- myEclipse
- Oracle
- Pushlet
- Spring
- struts2
- Tomcat
- WebService(1)
隨筆檔案
myeclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)
搜索
最新評論

- 1.?re: MyEclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)
- 評論內(nèi)容較長,點擊標(biāo)題查看
- --hhs
- 2.?re: MyEclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)[未登錄]
- 順便再說一下,1L純2B,大家不要理它~~~~~~~~
- --test
- 3.?re: MyEclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)[未登錄]
- 內(nèi)容介紹的非常好,非常適合新人 。謝謝。。
- --test
- 4.?re: MyEclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)
- 我是新手,你寫的很好,一看就明白
- --whily
- 5.?re: MyEclipse6.5上基于JAX-WS開發(fā)Webservice(中文示例)
-
@nishilaji
樓上的太沒素質(zhì)了,人家辛辛苦苦寫的這么詳細(xì),對于初學(xué)者來說就希望有這種細(xì)致的文檔介紹。在此我很感謝樓主,謝謝你,讓我很清楚明了的學(xué)會了這個實現(xiàn)方法! - --gxylh