閫氳繃rsync+inotify瀹炵幇鏁版嵁鐨勫疄鏃跺浠
鎺ュ彈鍚屾鏈嶅姟鍣細闇€瑕乺syncd.conf锛岀劧鍚庨€氳繃rsync --daemon杩愯瀹堟姢杩涚▼銆?/p>
鍙戦€佸悓姝ユ湇鍔″櫒锛氶渶瑕乺sync.sh锛岀劧鍚庤繍琛岃鏂囦欢銆?/p>
聽聽
聽
聽
鍦ㄥ墠闈㈢殑鍗氭枃涓紝鎴戣鍒拌繃鍒╃敤rsync瀹炵幇鏁版嵁鐨勯暅鍍忓拰澶囦唤锛屼絾鏄瀹炵幇鏁版嵁鐨勫疄鏃跺浠斤紝鍗曠嫭闈爎sync杩樹笉鑳藉疄鐜帮紝鏈枃灏辫杩颁笅濡備綍瀹炵幇鏁版嵁鐨勫疄鏃跺浠姐€?/p>
涓€銆乺sync鐨勪紭鐐逛笌涓嶈冻
聽涓庝紶缁熺殑cp銆乼ar澶囦唤鏂瑰紡鐩告瘮锛宺sync鍏锋湁瀹夊叏鎬ч珮銆佸浠借繀閫熴€佹敮鎸佸閲忓浠界瓑浼樼偣锛岄€氳繃rsync鍙互瑙e喅瀵瑰疄鏃舵€ц姹備笉楂樼殑鏁版嵁澶囦唤闇€姹傦紝渚嬪瀹氭湡鐨勫浠芥枃浠舵湇鍔″櫒鏁版嵁鍒拌繙绔湇鍔″櫒锛屽鏈湴纾佺洏瀹氭湡鍋氭暟鎹暅鍍忕瓑銆?br>聽闅忕潃搴旂敤绯荤粺瑙勬ā鐨勪笉鏂墿澶э紝瀵规暟鎹殑瀹夊叏鎬у拰鍙潬鎬т篃鎻愬嚭鐨勬洿濂界殑瑕佹眰锛宺sync鍦ㄩ珮绔笟鍔$郴缁熶腑涔熼€愭笎鏆撮湶鍑轰簡寰堝涓嶈冻锛岄鍏堬紝rsync鍚屾鏁版嵁鏃讹紝闇€瑕佹壂鎻忔墍鏈夋枃浠跺悗杩涜姣斿锛岃繘琛屽樊閲忎紶杈撱€傚鏋滄枃浠舵暟閲忚揪鍒颁簡鐧句竾鐢氳嚦鍗冧竾閲忕骇锛屾壂鎻忔墍鏈夋枃浠跺皢鏄潪甯歌€楁椂鐨勩€傝€屼笖姝e湪鍙戠敓鍙樺寲鐨勫線寰€鏄叾涓緢灏戠殑涓€閮ㄥ垎锛岃繖鏄潪甯镐綆鏁堢殑鏂瑰紡銆傚叾娆★紝rsync涓嶈兘瀹炴椂鐨勫幓鐩戞祴銆佸悓姝ユ暟鎹紝铏界劧瀹冨彲浠ラ€氳繃linux瀹堟姢杩涚▼鐨勬柟寮忚繘琛岃Е鍙戝悓姝ワ紝浣嗘槸涓ゆ瑙﹀彂鍔ㄤ綔涓€瀹氫細鏈夋椂闂村樊锛岃繖鏍峰氨瀵艰嚧浜嗘湇鍔$鍜屽鎴风鏁版嵁鍙兘鍑虹幇涓嶄竴鑷达紝鏃犳硶鍦ㄥ簲鐢ㄦ晠闅滄椂瀹屽叏鐨勬仮澶嶆暟鎹€傚熀浜庝互涓婂師鍥狅紝rsync+inotify缁勫悎鍑虹幇浜嗭紒
浜屻€伮犲垵璇唅notify
聽Inotify 鏄竴绉嶅己澶х殑銆佺粏绮掑害鐨勩€佸紓姝ョ殑鏂囦欢绯荤粺浜嬩欢鐩戞帶鏈哄埗锛宭inux鍐呮牳浠?.6.13璧凤紝鍔犲叆浜咺notify鏀寔锛岄€氳繃Inotify鍙互鐩戞帶鏂囦欢绯荤粺涓坊鍔犮€佸垹闄わ紝淇敼銆佺Щ鍔ㄧ瓑鍚勭缁嗗井浜嬩欢锛屽埄鐢ㄨ繖涓唴鏍告帴鍙o紝绗笁鏂硅蒋浠跺氨鍙互鐩戞帶鏂囦欢绯荤粺涓嬫枃浠剁殑鍚勭鍙樺寲鎯呭喌锛岃€宨notify-tools灏辨槸杩欐牱鐨勪竴涓涓夋柟杞欢銆?br>鍦ㄤ笂闈㈢珷鑺備腑锛屾垜浠鍒帮紝rsync鍙互瀹炵幇瑙﹀彂寮忕殑鏂囦欢鍚屾锛屼絾鏄€氳繃crontab瀹堟姢杩涚▼鏂瑰紡杩涜瑙﹀彂锛屽悓姝ョ殑鏁版嵁鍜屽疄闄呮暟鎹細鏈夊樊寮傦紝鑰宨notify鍙互鐩戞帶鏂囦欢绯荤粺鐨勫悇绉嶅彉鍖栵紝褰撴枃浠舵湁浠讳綍鍙樺姩鏃讹紝灏辫Е鍙憆sync鍚屾锛岃繖鏍峰垰濂借В鍐充簡鍚屾鏁版嵁鐨勫疄鏃舵€ч棶棰樸€?/p>
涓夈€伮犲畨瑁卛notify宸ュ叿inotify-tools
聽鐢变簬inotify鐗规€ч渶瑕丩inux鍐呮牳鐨勬敮鎸侊紝鍦ㄥ畨瑁卛notify-tools鍓嶈鍏堢‘璁inux绯荤粺鍐呮牳鏄惁杈惧埌浜?2.6.13浠ヤ笂锛屽鏋淟inux鍐呮牳浣庝簬2.6.13鐗堟湰锛屽氨闇€瑕侀噸鏂扮紪璇戝唴鏍稿姞鍏notify鐨勬敮鎸侊紝涔熷彲浠ョ敤濡備笅鏂规硶鍒ゆ柇锛屽唴鏍告槸鍚︽敮鎸?inotify锛?br>[root@localhost webdata]# uname -r
2.6.18-164.11.1.el5PAE
[root@localhost webdata]# ll /proc/sys/fs/inotify
鎬昏 0
-rw-r--r-- 1 root root 0 04-13 19:56 max_queued_events
-rw-r--r-- 1 root root 0 04-13 19:56 max_user_instances
-rw-r--r-- 1 root root 0 04-13 19:56 max_user_watches
濡傛灉鏈変笂闈笁椤硅緭鍑猴紝琛ㄧず绯荤粺宸茬粡榛樿鏀寔inotify锛屾帴鐫€灏卞彲浠ュ紑濮嬪畨瑁卛notify-tools浜嗐€?br>鍙互鍒?a href="http://inotify-tools.sourceforge.net/">http://inotify-tools.sourceforge.net/涓嬭浇鐩稿簲鐨刬notify-tools鐗堟湰锛岀劧鍚庡紑濮嬬紪璇戝畨瑁咃細
[root@localhost聽 ~]# tar zxvf inotify-tools-3.14.tar.gz
root@localhost聽 ~]# cd inotify-tools-3.14
[root@localhost inotify-tools-3.14]# ./configure
[root@localhost inotify-tools-3.14]# make
[root@localhost inotify-tools-3.14]# make install
[root@localhost inotify-tools-3.14]# ll /usr/local/bin/inotifywa*
-rwxr-xr-x 1 root root 37264 04-14 13:42 /usr/local/bin/inotifywait
-rwxr-xr-x 1 root root 35438 04-14 13:42 /usr/local/bin/inotifywatch
inotify-tools瀹夎瀹屾垚鍚庯紝浼氱敓鎴恑notifywait鍜宨notifywatch涓や釜鎸囦护锛屽叾涓紝inotifywait鐢ㄤ簬绛夊緟鏂囦欢鎴栨枃浠堕泦涓婄殑涓€涓壒瀹氫簨浠讹紝瀹冨彲浠ョ洃鎺т换浣曟枃浠跺拰鐩綍璁剧疆锛屽苟涓斿彲浠ラ€掑綊鍦扮洃鎺ф暣涓洰褰曟爲銆?br>inotifywatch鐢ㄤ簬鏀堕泦琚洃鎺х殑鏂囦欢绯荤粺缁熻鏁版嵁锛屽寘鎷瘡涓猧notify浜嬩欢鍙戠敓澶氬皯娆$瓑淇℃伅銆?/p>
鍥涖€伮爄notify鐩稿叧鍙傛暟
inotify瀹氫箟浜嗕笅鍒楃殑鎺ュ彛鍙傛暟锛屽彲浠ョ敤鏉ラ檺鍒秈notify娑堣€梜ernel memory鐨勫ぇ灏忋€傜敱浜庤繖浜涘弬鏁伴兘鏄唴瀛樺弬鏁帮紝鍥犳锛屽彲浠ユ牴鎹簲鐢ㄩ渶姹傦紝瀹炴椂鐨勮皟鑺傚叾澶у皬銆備笅闈㈠垎鍒仛绠€鍗曚粙缁嶃€?br>聽聽聽 /proc/sys/fs/inotify/max_queued_evnets聽聽聽聽
聽聽聽聽聽聽 琛ㄧず璋冪敤inotify_init鏃跺垎閰嶇粰inotify instance涓彲鎺掗槦鐨別vent鐨勬暟鐩殑鏈€澶у€硷紝瓒呭嚭杩欎釜鍊肩殑浜嬩欢琚涪寮冿紝浣嗕細瑙﹀彂IN_Q_OVERFLOW浜嬩欢銆?br>聽聽聽 /proc/sys/fs/inotify/max_user_instances
聽聽聽聽聽聽聽 琛ㄧず姣忎竴涓猺eal user ID鍙垱寤虹殑inotify instatnces鐨勬暟閲忎笂闄愩€?br>聽聽聽 /proc/sys/fs/inotify/max_user_watches
聽聽聽聽聽聽聽 琛ㄧず姣忎釜inotify instatnces鍙洃鎺х殑鏈€澶х洰褰曟暟閲忋€傚鏋滅洃鎺х殑鏂囦欢鏁扮洰宸ㄥぇ锛岄渶瑕佹牴鎹儏鍐碉紝閫傚綋澧炲姞姝ゅ€肩殑澶у皬锛屼緥濡傦細
echo 30000000 > /proc/sys/fs/inotify/max_user_watches
浜斻€伮爄notifywait鐩稿叧鍙傛暟
Inotifywait鏄竴涓洃鎺х瓑寰呬簨浠讹紝鍙互閰嶅悎shell鑴氭湰浣跨敤瀹冿紝涓嬮潰浠嬬粛涓€涓嬪父鐢ㄧ殑涓€浜涘弬鏁帮細
飦?m锛?鍗?-monitor锛岃〃绀哄缁堜繚鎸佷簨浠剁洃鍚姸鎬併€?br>飦?r锛?鍗?-recursive锛岃〃绀洪€掑綊鏌ヨ鐩綍銆?br>飦?q锛?鍗?-quiet锛岃〃绀烘墦鍗板嚭鐩戞帶浜嬩欢銆?br>飦?e锛?鍗?-event锛岄€氳繃姝ゅ弬鏁板彲浠ユ寚瀹氳鐩戞帶鐨勪簨浠讹紝甯歌鐨勪簨浠舵湁modify銆乨elete銆乧reate銆乤ttrib绛夈€?br>鏇磋缁嗙殑璇峰弬鐪媘an聽 inotifywait銆?/p>
鍏€伮爎sync+inotify浼佷笟搴旂敤妗堜緥
聽妗堜緥鎻忚堪
杩欐槸涓€涓狢MS鍐呭鍙戝竷绯荤粺锛屽悗绔噰鐢ㄨ礋杞藉潎琛¢泦缇ら儴缃叉柟妗堬紝鏈変竴涓礋杞借皟搴﹁妭鐐瑰拰涓変釜鏈嶅姟鑺傜偣浠ュ強涓€涓唴瀹瑰彂甯冭妭鐐规瀯鎴愶紝鍐呭鍙戝竷鑺傜偣璐熻矗灏嗙敤鎴峰彂甯冪殑鏁版嵁鐢熸垚闈欐€侀〉闈紝鍚屾椂灏嗛潤鎬佺綉椤典紶杈撳埌涓夊彴鏈嶅姟鑺傜偣锛岃€岃礋杞借皟搴﹁妭鐐硅礋璐e皢鐢ㄦ埛璇锋眰鏍规嵁璐熻浇绠楁硶璋冨害鍒扮浉搴旂殑鏈嶅姟鑺傜偣锛屽疄鐜扮敤鎴疯闂€傜敤鎴疯姹傚湪鍓嶇璁块棶鍒扮殑缃戦〉鏁版嵁濮嬬粓鏄渶鏂扮殑銆佷竴鑷寸殑銆?br>瑙e喅鏂规
涓轰簡淇濊瘉鐢ㄦ埛璁块棶鍒扮殑鏁版嵁涓€鑷存€у拰瀹炴椂鎬э紝蹇呴』淇濊瘉涓変釜鏈嶅姟鑺傜偣涓庡唴瀹瑰彂甯冭妭鐐圭殑鏁版嵁濮嬬粓鏄竴鑷寸殑锛岃繖灏遍渶瑕侀€氳繃鏂囦欢鍚屾宸ュ叿鏉ュ疄鐜帮紝杩欓噷閲囩敤 rsync锛屽悓鏃跺張瑕佷繚璇佹暟鎹槸瀹炴椂鐨勶紝杩欏氨闇€瑕乮notify锛屽嵆锛氫娇鐢╥notify鐩戣鍐呭鍙戝竷鑺傜偣鏂囦欢鐨勫彉鍖栵紝濡傛灉鏂囦欢鏈夊彉鍔紝閭d箞灏卞惎鍔?rsync锛屽皢鏂囦欢瀹炴椂鍚屾鍒颁笁涓湇鍔¤妭鐐广€?br>绯荤粺鐜
杩欓噷鎵€鏈夋湇鍔″櫒鍧囬噰鐢↙inux鎿嶄綔绯荤粺锛岀郴缁熷唴鏍哥増鏈笌鑺傜偣淇℃伅濡傝〃1 鎵€绀猴細
琛?
聽
1聽瀹夎rsync涓巌notify-tools
inotify-tools鏄敤鏉ョ洃鎺ф枃浠剁郴缁熷彉鍖栫殑宸ュ叿锛屽洜姝ゅ繀椤诲畨瑁呭湪鍐呭鍙戝竷鑺傜偣锛屾湇鍔¤妭鐐规棤闇€瀹夎inotify-tools锛屽彟澶栭渶瑕佸湪web1銆亀eb2銆亀eb3銆亀ebserver鑺傜偣涓婂畨瑁卹sync锛岀敱浜庡畨瑁呴潪甯哥畝鍗曪紝杩欓噷涓嶅湪璁茶堪銆?br>鍦ㄨ繖涓渚嬩腑锛屽唴瀹瑰彂甯冭妭鐐癸紙鍗硈erver锛夊厖褰撲簡rsync瀹㈡埛绔殑瑙掕壊锛岃€屼笁涓湇鍔¤妭鐐瑰厖褰撲簡rsync鏈嶅姟鍣ㄧ鐨勮鑹诧紝鏁翠釜鏁版嵁鍚屾鐨勮繃绋嬶紝鍏跺疄灏辨槸涓€涓粠瀹㈡埛绔悜鏈嶅姟绔帹閫佹暟鎹殑杩囩▼銆傝繖鐐逛笌涓婇潰鎴戜滑璁茶堪鐨勬渚嬪垰濂界浉鍙嶃€?/p>
2聽鍦ㄤ笁涓湇鍔¤妭鐐归厤缃畆sync
聽杩欓噷缁欏嚭涓変釜鏈嶅姟鑺傜偣鐨剅sync閰嶇疆鏂囦欢锛屼互渚涘弬鑰冿紝璇昏€呭彲鏍规嵁瀹為檯鎯呭喌鑷淇敼銆?br>Web1鑺傜偣rsyncd.conf閰嶇疆濡備笅锛?br>uid = nobody
gid = nobody
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[web1]
path = /web1/wwwroot/
comment = web1 file
ignore errors
read only = no
write only = no
hosts allow = 192.168.12.134
hosts deny = *
list = false
uid = root
gid = root
auth users = web1user
secrets file = /etc/web1.pass
Web2鑺傜偣rsyncd.conf閰嶇疆濡備笅锛?br>uid = nobody
gid = nobody
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[web2]
path = /web2/wwwroot/
comment = web2 file
ignore errors
read only = no
write only = no
hosts allow = 192.168.12.134
hosts deny = *
list = false
uid = root
gid = root
auth users = web2user
secrets file = /etc/web2.pass
Web3鑺傜偣rsyncd.conf閰嶇疆濡備笅锛?br>uid = nobody
gid = nobody
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[web3]
path = /web3/wwwroot/
comment = web3 file
ignore errors
read only = no
write only = no
hosts allow = 192.168.12.134
hosts deny = *
list = false
uid = root
gid = root
auth users = web3user
secrets file = /etc/web3.pass
鍦ㄤ笁鍙版湇鍔¤妭鐐箁syncd.conf鏂囦欢閰嶇疆瀹屾垚鍚庯紝渚濇鍚姩rsync瀹堟姢杩涚▼锛屾帴鐫€灏唕sync鏈嶅姟鍔犲叆鍒拌嚜鍚姩鏂囦欢涓細
echo聽 鈥?usr/local/bin/rsync --daemon鈥?>>/etc/rc.local
鍒版涓烘锛屼笁涓獁eb鏈嶅姟鑺傜偣宸茬粡閰嶇疆瀹屾垚銆?/p>
3聽閰嶇疆鍐呭鍙戝竷鑺傜偣
聽閰嶇疆鍐呭鍙戝竷鑺傜偣鐨勪富瑕佸伐浣滄槸灏嗙敓鎴愮殑闈欐€佺綉椤靛疄鏃剁殑鍚屾鍒伴泦缇や腑涓変釜鏈嶅姟鑺傜偣锛岃繖涓繃绋嬪彲浠ラ€氳繃涓€涓猻hell鑴氭湰鏉ュ畬鎴愶紝鑴氭湰鍐呭澶ц嚧濡備笅锛?br>#!/bin/bash
host1=192.168.12.131
host2=192.168.12.132
host3=192.168.12.133
src=/web/wwwroot/
dst1=web1
dst2=web2
dst3=web3
user1=web1user
user2=web3user
user3=web3user
/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib聽 $src \
| while read files
聽聽聽聽聽聽聽 do
聽聽聽聽聽聽聽 /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/server.pass $src $user1@$host1::$dst1
聽聽/usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/server.pass $src $user2@$host2::$dst2
聽聽/usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/server.pass $src $user3@$host3::$dst3
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 echo "${files} was rsynced" >>/tmp/rsync.log 2>&1
聽聽聽聽聽聽聽聽 done
鑴氭湰鐩稿叧瑙i噴濡備笅锛?br>--timefmt锛氭寚瀹氭椂闂寸殑杈撳嚭鏍煎紡銆?br>--format锛氭寚瀹氬彉鍖栨枃浠剁殑璇︾粏淇℃伅銆?br>杩欎袱涓弬鏁颁竴鑸厤鍚堜娇鐢紝閫氳繃鎸囧畾杈撳嚭鏍煎紡锛岃緭鍑虹被浼间笌锛?br>15/04/10 00:29 /web/wwwroot/ixdba.shDELETE,ISDIR was rsynced
15/04/10 00:30 /web/wwwroot/index.htmlMODIFY was rsynced
15/04/10 00:31 /web/wwwroot/pcre-8.02.tar.gzCREATE was rsynced
杩欎釜鑴氭湰鐨勪綔鐢ㄥ氨鏄€氳繃inotify鐩戞帶鏂囦欢鐩綍鐨勫彉鍖栵紝杩涜€岃Е鍙憆sync杩涜鍚屾鎿嶄綔锛岀敱浜庤繖涓繃绋嬫槸涓€绉嶄富鍔ㄨЕ鍙戞搷浣滐紝閫氳繃绯荤粺鍐呮牳瀹屾垚鐨勶紝鎵€浠ワ紝姣旇捣閭d簺閬嶅巻鏁翠釜鐩綍鐨勬壂鎻忔柟寮忥紝鏁堢巼瑕侀珮寰堝銆?br>鏈夋椂浼氶亣鍒拌繖鏍风殑鎯呭喌锛氬悜inotify鐩戞帶鐨勭洰褰曪紙杩欓噷鏄?web/wwwroot/锛夊啓鍏ヤ竴涓緢澶ф枃浠舵椂锛岀敱浜庡啓鍏ヨ繖涓ぇ鏂囦欢闇€瑕佷竴娈垫椂闂达紝姝ゆ椂 inotify灏变細鎸佺画涓嶅仠鐨勮緭鍑鸿鏂囦欢琚洿鏂扮殑淇℃伅锛?杩欐牱灏变細鎸佺画涓嶅仠鐨勮Е鍙憆sync鍘绘墽琛屽悓姝ユ搷浣滐紝鍗犵敤浜嗗ぇ閲忕郴缁熻祫婧愶紝閭d箞閽堝杩欑鎯呭喌锛屾渶鐞嗘兂鐨勫仛娉曟槸绛夊緟鏂囦欢鍐欏畬鍚庡啀鍘昏Е鍙憆sync鍚屾銆?鍦ㄨ繖绉嶆儏鍐典笅锛屽彲浠ヤ慨鏀筰notify鐨勭洃鎺т簨浠讹紝鍗筹細鈥?e close_write,delete,create,attrib鈥濄€?br>鎺ョ潃锛屽皢杩欎釜鑴氭湰鍛藉悕涓篿notifyrsync.sh锛屾斁鍒?web/wwwroot鐩綍涓嬶紝鐒跺悗缁欏畾鍙墽琛屾潈闄愶紝鏀惧埌鍚庡彴杩愯锛?br>chmod 755 /web/wwwroot/inotifyrsync.sh
/web/wwwroot/inotifyrsync.sh &
鏈€鍚庯紝灏嗘鑴氭湰鍔犲叆绯荤粺鑷惎鍔ㄦ枃浠讹細
echo聽 鈥?web/wwwroot/inotifyrsync.sh &鈥?gt;>/etc/rc.local
杩欐牱灏卞畬鎴愪簡鍐呭鍙戝竷鑺傜偣鐨勬墍鏈夐厤缃伐浣溿€?/p>
4 娴嬭瘯rsync+inotify瀹炴椂鍚屾鍔熻兘
聽鎵€鏈夐厤缃畬鎴愬悗锛屽彲浠ュ湪缃戦〉鍙戝竷鑺傜偣鐨?web/wwwroot鐩綍涓嬫坊鍔犮€佸垹闄ゆ垨鑰呬慨鏀规煇涓枃浠讹紝鐒跺悗鍒颁笁涓湇鍔¤妭鐐瑰搴旂殑鐩綍鏌ョ湅鏂囦欢鏄惁璺熼殢缃戦〉鍙戝竷鑺傜偣鐨?web/wwwroot鐩綍涓嬫枃浠跺彂鐢熷彉鍖栵紝濡傛灉浣犵湅鍒颁笁涓湇鍔¤妭鐐瑰搴旂殑鐩綍鏂囦欢璺熺潃鍐呭鍙戝竷鑺傜偣鐩綍鏂囦欢鍚屾鍙樺寲锛岄偅涔堟垜浠繖涓笟鍔$郴缁熷氨閰嶇疆鎴愬姛浜嗐€?/p>
鏈枃鍑鸿嚜 鈥?a href="http://ixdba.blog.51cto.com/">鎶€鏈垚灏辨ⅵ鎯?/span>鈥?鍗氬锛岃鍔″繀淇濈暀姝ゅ嚭澶?a href="http://ixdba.blog.51cto.com/2895551/580280">http://ixdba.blog.51cto.com/2895551/580280