| 導購 | 订阅 | 在线投稿
分享
 
 
當前位置: 王朝網路 >> perl >> 功能豐富的Perl:用于系統管理
 

功能豐富的Perl:用于系統管理

2008-05-19 06:25:45  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
 
  cfengine(配置引擎)是一種 UNIX 管理工具,其目的是使簡單的管理的任務自動化,使困難的任務變得較容易。它的目標是使系統從任何狀態收斂(convergence)到一種理想狀態。依照它的作者 Mark Burgess 所說,cfengine 總是使您的系統更接近于您所定義的配置; 它決不會使系統變得更糟。在本文中,Ted 通過演示一些簡單的 cfengine 使用,使您熟悉這一獨特的系統管理工具。

  初學者和中級系統管理員將從本文獲益最多;解說和示例假設您可以運用大部分初學者級別的系統管理概念。

  要使用本文中的示例,您的系統應該是一個最近的(2000 或更新)主流 UNIX(Linux、Solaris、BSD)安裝。示例可以與早期版本的 Perl 和 UNIX 以及其它操作系統一起使用,如果它們不能工作,對您來說,可以把它當成練習來解決。

  cfengine 正處于開發中。版本 1.6.3 是穩定的,它是本文的基礎。當前正在進行阿爾法測試的版本 2.0 的計劃包括重寫體系結構、添加許多很棒的新功能部件以及使語法基本上保持不變。要了解 cfengine 的所有功能以及版本 2.0 中的增強功能,請訪問 cfengine主頁(請參閱本文後面的參考資料)。

  cfengine 的要點

  cfengine 將改變您的系統管理方法。您將運行一個命令並觀察系統將收斂到一種穩定狀態。我保證這看起來象在變魔術。在您喝茶的時候,cfengine 將編輯文件、運行命令並創建符號鏈接。

  然而,cfengine 並不能代替您思考。在將配置文件放入産品之前,您仍需要編寫它並對它進行測試。 而另一方面,cfengine 所做的事情幾乎很少會造成損害。

  cfengine 使系統收斂成爲可能。但是,爲什麽需要收斂呢? 我認爲系統管理員首先需要保持內心甯靜,其余的事情都是次要的。穩定性、可靠性和可預測性是達到內心甯靜的方法。這看似過分簡單, 但詢問任何一名好的系統管理員,每次您都會得到這個答案。收斂可以幫助管理員達到穩定性、可靠性和可預測性。雖然它不是達到那些目標的唯一方法,但在我的經曆中它所帶來的痛苦最少。

  穩定性可定義爲防止無意的更改。當 cfengine 實現收斂時,它通過規則集做到這一點。良好設計的規則(請放心,cfengine 使良好的設計變得容易)只是使系統達到一種理想狀態(如在 cfengine 規則中定義的那樣理想)。例如,每次運行 cfengine 時,都可以重新創建關鍵的系統符號鏈接。或者,只要修改了本地副本,都可以從可信資源庫複制 init.d 啓動腳本。 如果 cfengine 沒有發覺進程在運行,那麽可以重新啓動它們。

  可靠性是使機器幸免于問題的能力。網絡出故障或磁盤出故障是主要的可靠性考驗。您的系統能幸免于那些問題嗎?通過收斂到一種理想狀態,您可以期望系統處于或接近那一理想狀態。 雖然可靠性不單由 cfengine 完成,但收斂可使之更加容易。 因爲穩定的系統不太可能受問題影響,所以穩定性也是可靠性的主要資産。 最後,cfengine 的收斂使獲得「空白」系統並使它達到期望的狀態成爲可能, 並能夠對關鍵系統進行快速臨時替換。

  這裏,有必要多講講期望和理想的狀態。目前爲止,我們假設僅有一種理想狀態,它就是那個期望的狀態。事實上,對于所有機器來說並沒有理想狀態。 機器按任務、位置、連通性、用戶、操作系統類型和版本等分類。每個系統管理員都用某些方法來對他的機器分類,通常根據上述各項以及更多項(我們稍後將詳細討論類)。雖然對于所有機器來說沒有一種理想狀態,但對于給定的機器類有一個要達到的理想狀態。 這是 cfengine 的設計目標。cfengine 使尋找理想狀態變得可行,並且易于收斂到該狀態。

  可預測性是機器按照期望的那樣來運轉的能力。 收斂通過使系統變得穩定且可靠來達到可預測性。而且,一旦新機器收斂到一種理想狀態,就可以期望它象它所替換的舊機器那樣工作。當機器將很快收斂到一個已知狀態時,就可以很容易地估計添加系統或替換它們的調度成本。最後,爲您系統編寫的軟件可以期望系統處于一種接近理想的狀態。然後,系統資源處于一種可預測的狀態,這樣,軟件就可以更多地集中在功能上,而更少地將每個系統作爲懷有敵意的未知領域對待。

  cfengine 的概述

  Cfengine 由幾個程序組成。在版本 1.6.3 中,主程序叫作 cfengine。cfengine 程序解釋文件中的規則集,並執行那些規則請求的操作。 嚴格來說,cfengine 程序只是 cfengine 語言的解釋器,並且任何 cfengine 程序都只是那個解釋器的腳本。

  在版本 1.6.3 中,還有一個名爲 cfd 的守護程序及其同伴 cfrun。cfd 將在版本 2.0 得到加強,而在 1.6.3 版本中有許多未完善的地方。幸運的是,不用 cfd,就可以完成我所需要的任務(用信號通知運行 cfengine 並遠程複制文件)。我甯願在 ssh 上通過顯式腳本啓動 cfengine。 它只比 cfd 少許慢一點,但更易于監控。當通過 cfd 啓動時,cfengine 發出的錯誤和遠程定義的類沒有可靠地顯示出來。 對于遠程文件複制,我發現 cfd 是不可靠的而且可能會危害安全性,所以我使用 rsync。cfengine 的作者 Mark Burgess 聲明 cfd 在版本 2.0 中將有很大改進,而 rsync 將不再是必需的,但在版本 2.0 推出之前,我建議避免 cfd。

  在開始使用 cfengine 之前,應該編譯和安裝它。對于可以使用它們的系統,RPM 都有可用的版本, 而且還有一個可用的 Solaris 包(請參閱參考資料)。如果要存儲文件的永久校驗和(類似于 Tripwire 所做的事情),則應該帶有 Berkeley DB 支持進行編譯。然後,應該開始創建配置文件。 主要的配置文件是 /etc/cfengine/cfengine.conf,它是在不帶文件名調用 cfengine 時運行的(當在 1.6.3 中編譯時,可以指定一個不同的缺省配置目錄,但在 2.0 及更高版本中,/etc/cfengine 將是檢查的唯一位置,所以您應該嚴格遵守這一點)。

  下面是 cfengine 的啓始配置。它不是成品, 在運行它之前,應該仔細地閱讀 cfengine 參考大全和教程(請參閱參考資料)。 請帶 -v -n(詳細的預演)選項嘗試運行 cfengine,看一下這個配置將做些什麽。 當使用 -n(預演)選項時,不會影響系統。

  清單 1. cfengine 的啓始配置文件 /etc/cfengine/cfengine.conf

  # note that only some of the possible sections are used here;

  # refer to the cfengine documentation for the full list of sections

  # you can have.

  Comments, as you can see, are like shell or Perl

  # comments.

  # see the tutorial and reference for any unexplained phenomena

  import:

  any::

  cf.groups

  groups:

  # all groups are defined in cf.groups, imported above, but you can

  # define extras here.

  The format is simple:

  class = ( machine1 machine2 )

  # and then any machine named machine1 or machine2 will have that class

  # defined.

  # the control section sets up how cfengine will behave

  control:

  any::

  # you have to state in AddInstallable what classes unknown to cfengine

  # by default you will be using.

  Run cfengine as "cfengine -v" to see

  # the built-in classes you don't have to define.

  Here we divide

  # machines into the ones that run inetd and the ones that run xinetd,

  # as an example.

  AddInstallable = ( inetd xinetd )

  editfilesize

  = ( 300000 )

  moduledirectory = ( /etc/cfengine/modules )

  domain

  = ( yourdomain.com )

  any::

  LogDirectory

  = ( /etc/cfengine/log )

  netmask

  = ( 255.255.255.0 )

  Repository

  = ( /etc/cfengine/repository )

  sysadm

  = ( "tzz@iglou.com" )

  # Bug in cfengine: actionsequence must follow LogDirectory and Repository

  actionsequence = ( directories files editfiles copy links processes disable

  shellcommands )

  directories:

  # this ensures that these directories will be created when cfengine runs

  /etc/cfengine/log

  /etc/cfengine/repository

  /etc/cfengine/cfcollector

  files:

  any::

  # set the permissions for these files

  /etc/sudoers mode=0440 owner=root group=root action=fixall

  /etc/hosts.allow mode=0644 owner=root group=root action=fixall

  /etc/hosts.deny mode=0644 owner=root group=root action=fixall

  # just warn if this file's permissions are wrong

  /etc/shadow mode=0400 owner=root action=warnall inform=true

  # CERT advisory CA-2001-05, for Solaris only

  solaris::

  /usr/lib/dmi/snmpXdmid mode=0000 owner=root group=root action=fixall

  # example of setting permissions differently for different OS types

  # (not Linux and Linux), and negating classes

  !linux::

  /.ssh mode=0700 owner=root action=fixall inform=true

  linux::

  /root/.ssh mode=0700 owner=root action=fixall inform=true

  editfiles:

  any::

  # add the rsync service to /etc/services and /etc/inetd.conf

  { /etc/services

  SetLine "rsync

  873/tcp # rsync"

  
 
 
 
上一篇《Linux下Perl的經典用法:讀入單個記錄》
下一篇《功能豐富的Perl:用Perl保存》
 
 
 
 
 
 
日版寵物情人插曲《Winding Road》歌詞

日版寵物情人2017的插曲,很帶節奏感,日語的,女生唱的。 最後聽見是在第8集的時候女主手割傷了,然後男主用嘴幫她吸了一下,插曲就出來了。 歌手:Def...

兄弟共妻,我成了他們夜裏的美食

老鍾家的兩個兒子很特別,就是跟其他的人不太一樣,魔一般的執著。兄弟倆都到了要結婚的年齡了,不管自家老爹怎麽磨破嘴皮子,兄弟倆說不娶就不娶,老父母爲兄弟兩操碎了心...

如何磨出破洞牛仔褲?牛仔褲怎麽剪破洞?

把牛仔褲磨出有線的破洞 1、具體工具就是磨腳石,下面墊一個硬物,然後用磨腳石一直磨一直磨,到把那塊磨薄了,用手撕開就好了。出來的洞啊很自然的。需要貓須的話調幾...

我就是掃描下圖得到了敬業福和愛國福

先來看下敬業福和愛國福 今年春節,支付寶再次推出了“五福紅包”活動,表示要“把欠大家的敬業福都還給大家”。 今天該活動正式啓動,和去年一樣,需要收集“五福”...

冰箱異味産生的原因和臭味去除的方法

有時候我們打開冰箱就會聞到一股異味,冰箱裏的這種異味是因爲一些物質發出的氣味的混合體,聞起來讓人惡心。 産生這些異味的主要原因有以下幾點。 1、很多人有這種習...

《極品家丁》1-31集大結局分集劇情介紹

簡介 《極品家丁》講述了現代白領林晚榮無意回到古代金陵,並追隨蕭二小姐化名“林三”進入蕭府,不料卻陰差陽錯上演了一出低級家丁拼搏上位的“林三升職記”。...

李溪芮《極品家丁》片尾曲《你就是我最愛的寶寶》歌詞

你就是我最愛的寶寶 - 李溪芮 (電視劇《極品家丁》片尾曲) 作詞:常馨內 作曲:常馨內 你的眉 又鬼馬的挑 你的嘴 又壞壞的笑 上一秒吵鬧 下...

烏梅的功效與作用以及烏梅的食用禁忌有哪些?

烏梅,又稱春梅,中醫認爲,烏梅味酸,性溫,無毒,具有安心、除熱、下氣、祛痰、止渴調中、殺蟲的功效,治肢體痛、肺痨病。烏梅泡水喝能治傷寒煩熱、止吐瀉,與幹姜一起制...

什麽是脂肪粒?如何消除臉部脂肪粒?

什麽是脂肪粒 在我們的臉上總會長一個個像脂肪的小顆粒,弄也弄不掉,而且顔色還是白白的。它既不是粉刺也不是其他的任何痘痘,它就是脂肪粒。 脂肪粒雖然也是由油脂...

網絡安全治理:國家安全保障的主要方向是打擊犯罪,而不是處置和懲罰受害者

來源:中國青年報 新的攻擊方法不斷湧現,黑客幾乎永遠占據網絡攻擊的上風,我們不可能通過技術手段杜絕網絡攻擊。國家安全保障的主要方向是打擊犯罪,而不是處置和懲罰...

河南夫妻在溫嶺網絡直播“造人”內容涉黃被刑事拘留

夫妻網絡直播“造人”爆紅   1月9日,溫嶺城北派出所接到南京警方的協查通告,他們近期打掉了一個涉黃直播APP平台。而根據掌握的線索,其中有一對涉案的夫妻主播...

如何防止牆紙老化?牆紙變舊變黃怎麽辦?

如何防止牆紙老化? (1)選擇透氣性好的牆紙 市場上牆紙的材質分無紡布的、木纖維的、PVC的、玻璃纖維基材的、布面的等,相對而言,PVC材質的牆紙最不透氣...

鮮肌之謎非日本生産VS鮮肌之謎假日貨是謠言

觀點一:破日本銷售量的“鮮肌之謎” 非日本生産 近一段時間,淘寶上架了一款名爲“鮮肌之謎的” 鲑魚卵巢美容液,號稱是最近日本的一款推出的全新護膚品,産品本身所...

中國最美古詩詞精選摘抄

系腰裙(北宋詞人 張先) 惜霜蟾照夜雲天,朦胧影、畫勾闌。人情縱似長情月,算一年年。又能得、幾番圓。 欲寄西江題葉字,流不到、五亭前。東池始有荷新綠,尚小如...

關于女人的經典語句

關于女人的經典語句1、【做一個獨立的女人】 思想獨立:有主見、有自己的人生觀、價值觀。有上進心,永遠不放棄自己的理想,做一份自己喜愛的事業,擁有快樂和成就...

未來我們可以和性愛機器人結婚嗎?

你想體驗機器人性愛嗎?你想和性愛機器人結婚嗎?如果你想,機器人有拒絕你的權利嗎? 近日,第二屆“國際人類-機器人性愛研討會”大會在倫敦金史密斯大學落下帷幕。而...

全球最變態的十個地方

10.土耳其地下洞穴城市 變態指數:★★☆☆☆ 這是土耳其卡帕多西亞的一個著名景點,傳說是當年基督教徒們爲了躲避戰爭而在此修建。裏面曾住著20000人,...

科學家稱,人類死亡後意識將在另外一個宇宙中繼續存活

據英國《每日快報》報道,一位科學家兼理論家Robert Lanza博士宣稱,世界上並不存在人類死亡,死亡的只是身體。他認爲我們的意識借助我們體內的能量生存,而且...

《屏裏狐》片頭曲《我愛狐狸精》歌詞是什麽?

《我愛狐狸精》 - 劉馨棋   (電視劇《屏裏狐》主題曲)   作詞:金十三&李旦   作曲:劉嘉   狐狸精 狐狸仙   千年修...

 
 
 
  cfengine(配置引擎)是一種 UNIX 管理工具,其目的是使簡單的管理的任務自動化,使困難的任務變得較容易。它的目標是使系統從任何狀態收斂(convergence)到一種理想狀態。依照它的作者 Mark Burgess 所說,cfengine 總是使您的系統更接近于您所定義的配置; 它決不會使系統變得更糟。在本文中,Ted 通過演示一些簡單的 cfengine 使用,使您熟悉這一獨特的系統管理工具。   初學者和中級系統管理員將從本文獲益最多;解說和示例假設您可以運用大部分初學者級別的系統管理概念。   要使用本文中的示例,您的系統應該是一個最近的(2000 或更新)主流 UNIX(Linux、Solaris、BSD)安裝。示例可以與早期版本的 Perl 和 UNIX 以及其它操作系統一起使用,如果它們不能工作,對您來說,可以把它當成練習來解決。   cfengine 正處于開發中。版本 1.6.3 是穩定的,它是本文的基礎。當前正在進行阿爾法測試的版本 2.0 的計劃包括重寫體系結構、添加許多很棒的新功能部件以及使語法基本上保持不變。要了解 cfengine 的所有功能以及版本 2.0 中的增強功能,請訪問 cfengine主頁(請參閱本文後面的參考資料)。   cfengine 的要點   cfengine 將改變您的系統管理方法。您將運行一個命令並觀察系統將收斂到一種穩定狀態。我保證這看起來象在變魔術。在您喝茶的時候,cfengine 將編輯文件、運行命令並創建符號鏈接。   然而,cfengine 並不能代替您思考。在將配置文件放入産品之前,您仍需要編寫它並對它進行測試。 而另一方面,cfengine 所做的事情幾乎很少會造成損害。   cfengine 使系統收斂成爲可能。但是,爲什麽需要收斂呢? 我認爲系統管理員首先需要保持內心甯靜,其余的事情都是次要的。穩定性、可靠性和可預測性是達到內心甯靜的方法。這看似過分簡單, 但詢問任何一名好的系統管理員,每次您都會得到這個答案。收斂可以幫助管理員達到穩定性、可靠性和可預測性。雖然它不是達到那些目標的唯一方法,但在我的經曆中它所帶來的痛苦最少。   穩定性可定義爲防止無意的更改。當 cfengine 實現收斂時,它通過規則集做到這一點。良好設計的規則(請放心,cfengine 使良好的設計變得容易)只是使系統達到一種理想狀態(如在 cfengine 規則中定義的那樣理想)。例如,每次運行 cfengine 時,都可以重新創建關鍵的系統符號鏈接。或者,只要修改了本地副本,都可以從可信資源庫複制 init.d 啓動腳本。 如果 cfengine 沒有發覺進程在運行,那麽可以重新啓動它們。   可靠性是使機器幸免于問題的能力。網絡出故障或磁盤出故障是主要的可靠性考驗。您的系統能幸免于那些問題嗎?通過收斂到一種理想狀態,您可以期望系統處于或接近那一理想狀態。 雖然可靠性不單由 cfengine 完成,但收斂可使之更加容易。 因爲穩定的系統不太可能受問題影響,所以穩定性也是可靠性的主要資産。 最後,cfengine 的收斂使獲得「空白」系統並使它達到期望的狀態成爲可能, 並能夠對關鍵系統進行快速臨時替換。   這裏,有必要多講講期望和理想的狀態。目前爲止,我們假設僅有一種理想狀態,它就是那個期望的狀態。事實上,對于所有機器來說並沒有理想狀態。 機器按任務、位置、連通性、用戶、操作系統類型和版本等分類。每個系統管理員都用某些方法來對他的機器分類,通常根據上述各項以及更多項(我們稍後將詳細討論類)。雖然對于所有機器來說沒有一種理想狀態,但對于給定的機器類有一個要達到的理想狀態。 這是 cfengine 的設計目標。cfengine 使尋找理想狀態變得可行,並且易于收斂到該狀態。   可預測性是機器按照期望的那樣來運轉的能力。 收斂通過使系統變得穩定且可靠來達到可預測性。而且,一旦新機器收斂到一種理想狀態,就可以期望它象它所替換的舊機器那樣工作。當機器將很快收斂到一個已知狀態時,就可以很容易地估計添加系統或替換它們的調度成本。最後,爲您系統編寫的軟件可以期望系統處于一種接近理想的狀態。然後,系統資源處于一種可預測的狀態,這樣,軟件就可以更多地集中在功能上,而更少地將每個系統作爲懷有敵意的未知領域對待。   cfengine 的概述   Cfengine 由幾個程序組成。在版本 1.6.3 中,主程序叫作 cfengine。cfengine 程序解釋文件中的規則集,並執行那些規則請求的操作。 嚴格來說,cfengine 程序只是 cfengine 語言的解釋器,並且任何 cfengine 程序都只是那個解釋器的腳本。   在版本 1.6.3 中,還有一個名爲 cfd 的守護程序及其同伴 cfrun。cfd 將在版本 2.0 得到加強,而在 1.6.3 版本中有許多未完善的地方。幸運的是,不用 cfd,就可以完成我所需要的任務(用信號通知運行 cfengine 並遠程複制文件)。我甯願在 ssh 上通過顯式腳本啓動 cfengine。 它只比 cfd 少許慢一點,但更易于監控。當通過 cfd 啓動時,cfengine 發出的錯誤和遠程定義的類沒有可靠地顯示出來。 對于遠程文件複制,我發現 cfd 是不可靠的而且可能會危害安全性,所以我使用 rsync。cfengine 的作者 Mark Burgess 聲明 cfd 在版本 2.0 中將有很大改進,而 rsync 將不再是必需的,但在版本 2.0 推出之前,我建議避免 cfd。   在開始使用 cfengine 之前,應該編譯和安裝它。對于可以使用它們的系統,RPM 都有可用的版本, 而且還有一個可用的 Solaris 包(請參閱參考資料)。如果要存儲文件的永久校驗和(類似于 Tripwire 所做的事情),則應該帶有 Berkeley DB 支持進行編譯。然後,應該開始創建配置文件。 主要的配置文件是 /etc/cfengine/cfengine.conf,它是在不帶文件名調用 cfengine 時運行的(當在 1.6.3 中編譯時,可以指定一個不同的缺省配置目錄,但在 2.0 及更高版本中,/etc/cfengine 將是檢查的唯一位置,所以您應該嚴格遵守這一點)。   下面是 cfengine 的啓始配置。它不是成品, 在運行它之前,應該仔細地閱讀 cfengine 參考大全和教程(請參閱參考資料)。 請帶 -v -n(詳細的預演)選項嘗試運行 cfengine,看一下這個配置將做些什麽。 當使用 -n(預演)選項時,不會影響系統。   清單 1. cfengine 的啓始配置文件 /etc/cfengine/cfengine.conf   # note that only some of the possible sections are used here;   # refer to the cfengine documentation for the full list of sections   # you can have.   Comments, as you can see, are like shell or Perl   # comments.   # see the tutorial and reference for any unexplained phenomena   import:   any::   cf.groups   groups:   # all groups are defined in cf.groups, imported above, but you can   # define extras here.   The format is simple:   class = ( machine1 machine2 )   # and then any machine named machine1 or machine2 will have that class   # defined.   # the control section sets up how cfengine will behave   control:   any::   # you have to state in AddInstallable what classes unknown to cfengine   # by default you will be using.   Run cfengine as "cfengine -v" to see   # the built-in classes you don't have to define.   Here we divide   # machines into the ones that run inetd and the ones that run xinetd,   # as an example.   AddInstallable = ( inetd xinetd )   editfilesize   = ( 300000 )   moduledirectory = ( /etc/cfengine/modules )   domain   = ( yourdomain.com )   any::   LogDirectory   = ( /etc/cfengine/log )   netmask   = ( 255.255.255.0 )   Repository   = ( /etc/cfengine/repository )   sysadm   = ( "tzz@iglou.com" )   # Bug in cfengine: actionsequence must follow LogDirectory and Repository   actionsequence = ( directories files editfiles copy links processes disable   shellcommands )   directories:   # this ensures that these directories will be created when cfengine runs   /etc/cfengine/log   /etc/cfengine/repository   /etc/cfengine/cfcollector   files:   any::   # set the permissions for these files   /etc/sudoers mode=0440 owner=root group=root action=fixall   /etc/hosts.allow mode=0644 owner=root group=root action=fixall   /etc/hosts.deny mode=0644 owner=root group=root action=fixall   # just warn if this file's permissions are wrong   /etc/shadow mode=0400 owner=root action=warnall inform=true   # CERT advisory CA-2001-05, for Solaris only   solaris::   /usr/lib/dmi/snmpXdmid mode=0000 owner=root group=root action=fixall   # example of setting permissions differently for different OS types   # (not Linux and Linux), and negating classes   !linux::   /.ssh mode=0700 owner=root action=fixall inform=true   linux::   /root/.ssh mode=0700 owner=root action=fixall inform=true   editfiles:   any::   # add the rsync service to /etc/services and /etc/inetd.conf   { /etc/services   SetLine "rsync   873/tcp # rsync"   
󰈣󰈤
 
 
 
  免責聲明:本文僅代表作者個人觀點,與王朝網路無關。王朝網路登載此文出於傳遞更多信息之目的,並不意味著贊同其觀點或證實其描述,其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
 
 
完美絕倫_秀色可餐
無懈可擊的優美線條
純美秀氣_楚楚動人
纖發盡顯_玲珑女生
痞子的甘南日記
疑是銀河落九天
雪域壩上四——純美色
冬日戀歌——西城楊柳弄輕柔
 
>>返回首頁<<
 
 熱帖排行
 
 
 
 
© 2005- 王朝網路 版權所有