精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

用 Python 腳本實現對 Linux 服務器的監控

系統 Linux
在實際工作中,Linux 系統管理員可以根據自己使用的服務器的具體情況編寫一下簡單實用的腳本實現對 Linux 服務器的監控。 本文介紹了使用 Python 腳本實現對 Linux 服務器 CPU 內存 網絡的監控腳本的編寫方法。

目前 Linux 下有一些使用 Python 語言編寫的 Linux 系統監控工具 比如 inotify-sync(文件系統安全監控軟件)、glances(資源監控工具)等,在實際工作中,Linux 系統管理員可以根據自己使用的服務器的具體情況編寫一下簡單實用的腳本實現對 Linux 服務器的監控。 本文介紹一下使用 Python 腳本實現對 Linux 服務器 CPU 內存 網絡的監控腳本的編寫。

Python 版本說明

Python 是由 Guido van Rossum 開發的、可免費獲得的、非常高級的解釋型語言。其語法簡單易懂,而其面向對象的語義功能強大(但又靈活)。Python 可以廣泛使用并具有高度的可移植性。本文 Linux 服務器是 Ubuntu 12.10, Python 版本 是 2.7 。如果是 Python 3.0 版本的語法上有一定的出入。另外這里筆者所說的 Python 是 CPython,CPython 是用 C 語言實現的 Python 解釋器,也是官方的并且是最廣泛使用的Python 解釋器。除了 CPython 以外,還有用 Java 實現的 Jython 和用.NET 實現的 IronPython,使 Python方便地和 Java 程序、.NET 程序集成。另外還有一些實驗性的 Python 解釋器比如 PyPy。CPython 是使用字節碼的解釋器,任何程序源代碼在執行之前先要編譯成字節碼。它還有和幾種其它語言(包括 C 語言)交互的外部函數接口。

工作原理:基于/proc 文件系統

Linux 系統為管理員提供了非常好的方法,使其可以在系統運行時更改內核,而不需要重新引導內核系統,這是通過/proc 虛擬文件系統實現的。/proc 文件虛擬系統是一種內核和內核模塊用來向進程(process)發送信息的機制(所以叫做“/proc”),這個偽文件系統允許與內核內部數據結構交互,獲取有關進程的有用信息,在運行中(on the fly)改變設置(通過改變內核參數)。與其他文件系統不同,/proc 存在于內存而不是硬盤中。proc 文件系統提供的信息如下:

  • 進程信息:系統中的任何一個進程,在 proc 的子目錄中都有一個同名的進程 ID,可以找到 cmdline、mem、root、stat、statm,以及 status。某些信息只有超級用戶可見,例如進程根目錄。每一個單獨含有現有進程信息的進程有一些可用的專門鏈接,系統中的任何一個進程都有一個單獨的自鏈接指向進程信息,其用處就是從進程中獲取命令行信息。
  • 系統信息:如果需要了解整個系統信息中也可以從/proc/stat 中獲得,其中包括 CPU 占用情況、磁盤空間、內存對換、中斷等。
  • CPU 信息:利用/proc/CPUinfo 文件可以獲得中央處理器的當前準確信息。
  • 負載信息:/proc/loadavg 文件包含系統負載信息。
  • 系統內存信息:/proc/meminfo 文件包含系統內存的詳細信息,其中顯示物理內存的數量、可用交換空間的數量,以及空閑內存的數量等。

表 1 是 /proc 目錄中的主要文件的說明:

表 1 /proc 目錄中的主要文件的說明

下面本文的幾個例子都是使用 Python 腳本讀取/proc 目錄中的主要文件來實現實現對 Linux 服務器的監控的 。

#p#

使用 Python 腳本實現對 Linux 服務器的監控

  • 對于 CPU(中央處理器)監測

腳本 1 名稱 CPU1.py,作用獲取 CPU 的信息。

清單 1.獲取 CPU 的信息:

  1. #!/usr/bin/env Python  
  2. from __future__ import print_function  
  3. from collections import OrderedDict  
  4. import pprint  
  5. def CPUinfo():  
  6. ''' Return the information in /proc/CPUinfo  
  7. as a dictionary in the following format:  
  8. CPU_info['proc0']={...}  
  9. CPU_info['proc1']={...}  
  10. '''  
  11. CPUinfo=OrderedDict()  
  12. procinfo=OrderedDict()  
  13. nprocs = 0  
  14. with open('/proc/CPUinfo') as f:  
  15. for line in f:  
  16. if not line.strip():  
  17. # end of one processor  
  18. CPUinfo['proc%s' % nprocs] = procinfo  
  19. nprocsnprocsnprocs=nprocs+1  
  20. # Reset  
  21. procinfo=OrderedDict()  
  22. else:  
  23. if len(line.split(':')) == 2:  
  24. procinfo[line.split(':')[0].strip()] = line.split(':')[1].strip()  
  25. else:  
  26. procinfo[line.split(':')[0].strip()] = ''  
  27. return CPUinfo  
  28. if __name__=='__main__':  
  29. CPUinfoCPUinfoCPUinfo = CPUinfo()  
  30. for processor in CPUinfo.keys():  
  31. print(CPUinfo[processor]['model name'])  

簡單說明一下清單 1,讀取/proc/CPUinfo 中的信息,返回 list,每核心一個 dict。其中 list 是一個使用方括號括起來的有序元素集合。List 可以作為以 0 下標開始的數組。Dict 是 Python 的內置數據類型之一, 它定義了鍵和值之間一對一的關系。OrderedDict 是一個字典子類,可以記住其內容增加的順序。常規 dict 并不跟蹤插入順序,迭代處理時會根據鍵在散列表中存儲的順序來生成值。在 OrderedDict 中則相反,它會記住元素插入的順序,并在創建迭代器時使用這個順序。

可以使用 Python 命令運行腳本 CPU1.py 結果見圖 1:

  1. # Python CPU1.py  
  2. Intel(R) Celeron(R) CPU E3200  @ 2.40GHz  

圖 1.運行清單 1

也可以使用 chmod 命令添加權限收直接運行 CPU1.py:

  1. #chmod +x CPU1.py 
  2. # ./CPU1.py 
  • 對于系統負載監測

腳本 2 名稱 CPU2.py,作用獲取系統的負載信息

清單 2 獲取系統的負載信息:

  1. #!/usr/bin/env Python 
  2. import os 
  3. def load_stat(): 
  4. loadavg = {} 
  5. f = open("/proc/loadavg") 
  6. con = f.read().split() 
  7. f.close() 
  8. loadavg['lavg_1']=con[0] 
  9. loadavg['lavg_5']=con[1] 
  10. loadavg['lavg_15']=con[2] 
  11. loadavg['nr']=con[3] 
  12. loadavg['last_pid']=con[4] 
  13. return loadavg 
  14. print "loadavg",load_stat()['lavg_15'] 

簡單說明一下清單 2:清單 2 讀取/proc/loadavg 中的信息,import os :Python 中 import 用于導入不同的模塊,包括系統提供和自定義的模塊。其基本形式為:import 模塊名 [as 別名],如果只需要導入模塊中的部分或全部內容可以用形式:from 模塊名 import *來導入相應的模塊。OS 模塊 os 模塊提供了一個統一的操作系統接口函數,os 模塊能在不同操作系統平臺如 nt,posix 中的特定函數間自動切換,從而實現跨平臺操作。

可以使用 Python 命令運行腳本 CPU1.py 結果見圖 2:

  1. # Python CPU2.py 

圖 2.運行清單 2

  • 對于內存信息的獲取

腳本 3 名稱 mem.py,作用是獲取內存使用情況信息。

清單 3 獲取內存使用情況:

  1. #!/usr/bin/env Python 
  2. from __future__ import print_function 
  3. from collections import OrderedDict 
  4. def meminfo(): 
  5. ''' Return the information in /proc/meminfo 
  6. as a dictionary ''' 
  7. meminfo=OrderedDict() 
  8. with open('/proc/meminfo') as f: 
  9. for line in f: 
  10. meminfo[line.split(':')[0]] = line.split(':')[1].strip() 
  11. return meminfo 
  12. if __name__=='__main__': 
  13. #print(meminfo()) 
  14. meminfomeminfo = meminfo() 
  15. print('Total memory: {0}'.format(meminfo['MemTotal'])) 
  16. print('Free memory: {0}'.format(meminfo['MemFree'])) 

簡單說明一下清單 3:清單 3 讀取 proc/meminfo 中的信息,Python 字符串的 split 方法是用的頻率還是比較多的。比如我們需要存儲一個很長的數據,并且按照有結構的方法存儲,方便以后取數據進行處理。當然可以用 json 的形式。但是也可以把數據存儲到一個字段里面,然后有某種標示符來分割。 Python 中的 strip 用于去除字符串的首位字符,最后清單 3 打印出內存總數和空閑數。

#p#

可以使用 Python 命令運行腳本 mem.py 結果見圖 3。

  1. # Python mem.py 

圖 3.運行清單 3

  • 對于網絡接口的監測

腳本 4 名稱是 net.py,作用獲取網絡接口的使用情況。

清單 4 net.py 獲取網絡接口的輸入和輸出:

  1. #!/usr/bin/env Python 
  2. import time 
  3. import sys 
  4. if len(sys.argv) > 1: 
  5. INTERFACE = sys.argv[1] 
  6. else: 
  7. INTERFACE = 'eth0' 
  8. STATS = [] 
  9. print 'Interface:',INTERFACE 
  10. def rx(): 
  11. ifstat = open('/proc/net/dev').readlines() 
  12. for interface in  ifstat: 
  13. if INTERFACE in interface: 
  14. stat = float(interface.split()[1]) 
  15. STATS[0:] = [stat] 
  16. def tx(): 
  17. ifstat = open('/proc/net/dev').readlines() 
  18. for interface in  ifstat: 
  19. if INTERFACE in interface: 
  20. stat = float(interface.split()[9]) 
  21. STATS[1:] = [stat] 
  22. print   'In         Out' 
  23. rx() 
  24. tx() 
  25. while   True: 
  26. time.sleep(1) 
  27. rxstat_o = list(STATS) 
  28. rx() 
  29. tx() 
  30. RX = float(STATS[0]) 
  31. RX_O = rxstat_o[0] 
  32. TX = float(STATS[1]) 
  33. TX_O = rxstat_o[1] 
  34. RX_RATE = round((RX - RX_O)/1024/1024,3) 
  35. TX_RATE = round((TX - TX_O)/1024/1024,3) 
  36. print RX_RATE ,'MB      ',TX_RATE ,'MB' 

簡單說明一下清單 4:清單 4 讀取/proc/net/dev 中的信息,Python 中文件操作可以通過 open 函數,這的確很像 C 語言中的 fopen。通過 open 函數獲取一個 file object,然后調用 read(),write()等方法對文件進行讀寫操作。另外 Python 將文本文件的內容讀入可以操作的字符串變量非常容易。文件對象提供了三個“讀”方法: read()、readline() 和 readlines()。每種方法可以接受一個變量以限制每次讀取的數據量,但它們通常不使用變量。 .read() 每次讀取整個文件,它通常用于將文件內容放到一個字符串變量中。然而 .read() 生成文件內容最直接的字符串表示,但對于連續的面向行的處理,它卻是不必要的,并且如果文件大于可用內存,則不可能實現這種處理。.readline() 和 .readlines() 之間的差異是后者一次讀取整個文件,象 .read() 一樣。.readlines() 自動將文件內容分析成一個行的列表,該列表可以由 Python 的 for … in … 結構進行處理。另一方面,.readline() 每次只讀取一行,通常比 .readlines() 慢得多。僅當沒有足夠內存可以一次讀取整個文件時,才應該使用 .readline()。最后清單 4 打印出網絡接口的輸入和輸出情況。

可以使用 Python 命令運行腳本 net.py 結果見圖 4

  1. #Python net.py 

圖 4.運行清單 4

監控 Apache 服務器進程的 Python 腳本

Apache 服務器進程可能會因為系統各種原因而出現異常退出,導致 Web 服務暫停。所以筆者寫一個 Python 腳本文件:

清單 5 crtrl.py 監控 Apache 服務器進程的 Python 腳本:

  1. #!/usr/bin/env Python 
  2. import os, sys, time 
  3. while True: 
  4. time.sleep(4) 
  5. try: 
  6. ret = os.popen('ps -C apache -o pid,cmd').readlines() 
  7. if len(ret) < 2: 
  8. print "apache 進程異常退出, 4 秒后重新啟動" 
  9. time.sleep(3) 
  10. os.system("service apache2 restart") 
  11. except: 
  12. print "Error", sys.exc_info()[1] 

設置文件權限為執行屬性(使用命令 chmod +x crtrl.py),然后加入到/etc/rc.local 即可,一旦 Apache 服務器進程異常退出,該腳本自動檢查并且重啟。 簡單說明一下清單 5 這個腳本不是基于/proc 偽文件系統的,是基于 Python 自己提供的一些模塊來實現的 。這里使用的是 Python 的內嵌 time 模板,time 模塊提供各種操作時間的函數。

總結

在實際工作中,Linux 系統管理員可以根據自己使用的服務器的具體情況編寫一下簡單實用的腳本實現對 Linux 服務器的監控。本文介紹一下使用 Python 腳本實現對 Linux 服務器 CPU 、系統負載、內存和 網絡使用情況的監控腳本的編寫方法。

責任編輯:黃丹 來源: jobbole.com
相關推薦

2010-12-17 09:22:01

Linux服務器性能監控Munin

2011-03-31 12:48:04

cactiLinuxWindows

2011-03-25 15:01:25

Cacti監控Windows

2009-04-28 19:38:02

LinuxSrvRepor遠程監控

2011-04-02 11:12:48

cacti監控windows

2009-12-09 10:01:41

ibmdwShell刀片服務器

2011-03-25 15:24:40

Nagios監控

2019-06-13 17:15:30

監控Linux服務器

2020-06-07 11:54:34

Linux服務器命令

2011-03-22 09:07:13

Nagios監控Linux

2010-02-03 10:24:48

監控寶監控Linux

2012-05-07 10:08:25

Linux

2019-02-11 10:05:10

監控Linux命令

2018-12-11 10:39:14

Python服務器微信

2011-01-21 14:52:37

Sendmail

2017-02-05 16:48:38

LinuxGanglia

2011-04-06 14:24:28

nagios監控Linux

2011-04-06 15:05:56

nagios監控Linux

2011-08-22 12:25:08

nagios

2009-06-08 10:30:00

ASP腳本服務器
點贊
收藏

51CTO技術棧公眾號

亚洲精品成人电影| 国产一级二级毛片| 日韩精品一级毛片在线播放| 成人免费在线视频观看| 成人动漫视频在线观看免费| 在线观看亚洲欧美| 婷婷亚洲图片| 精品亚洲va在线va天堂资源站| 天天综合网日韩| 成人在线app| 91一区二区三区在线观看| 国产精品免费福利| 日本天堂网在线观看| 俺要去色综合狠狠| 亚洲成年网站在线观看| wwwwwxxxx日本| 欧美13videosex性极品| 亚洲欧美影音先锋| 日韩精品久久一区二区三区| 国产成人a人亚洲精品无码| 久久国产高清| 欧美极品少妇与黑人| 国产精品视频在| 日韩大尺度在线观看| 在线综合+亚洲+欧美中文字幕| 337p粉嫩大胆噜噜噜鲁| www在线观看播放免费视频日本| 久久综合九色综合欧美就去吻| 2019国产精品视频| 伊人久久成人网| 夜夜嗨一区二区三区| 久久国产精品久久久久| 国产精品久久久久久成人| 西野翔中文久久精品字幕| 日韩三级在线观看| 亚洲欧美日韩精品一区| 人人鲁人人莫人人爱精品| 亚洲福中文字幕伊人影院| 中文字幕日韩精品久久| 国产三级在线| 国产网站一区二区三区| 免费精品视频一区二区三区| 狠狠躁日日躁夜夜躁av| 国产精品一二三| 91在线视频成人| 中文字幕你懂的| 日本不卡一区二区| 国产成人精品亚洲精品| 国产一级一级国产| 美女精品在线| 亲子乱一区二区三区电影 | 黄色免费观看视频网站| 国产理论电影在线| 亚洲成人黄色影院| 国产毛片视频网站| 狠狠操一区二区三区| 亚洲成人7777| 亚洲中文字幕无码专区| 女厕盗摄一区二区三区| 日韩欧美在线一区| aa在线免费观看| 免费成人美女女| 欧美亚日韩国产aⅴ精品中极品| 超碰影院在线观看| 国产69精品久久久久按摩| 欧美性大战久久| 污视频网址在线观看| 精品国产第一国产综合精品| 欧美一级国产精品| 熟妇高潮一区二区| 婷婷激情久久| 一本色道久久88综合日韩精品| 久久久精品人妻无码专区| 精品午夜久久| 久久躁日日躁aaaaxxxx| 久久精品99国产精| 鲁大师影院一区二区三区| 国产精品久久久久久久久男| 97caocao| youjizz国产精品| 欧美日韩亚洲在线 | 国产乱论精品| 亚洲精品美女视频| 美国黑人一级大黄| 中文视频一区| 欧美与黑人午夜性猛交久久久| 日本中文字幕在线观看视频| 另类欧美日韩国产在线| 99理论电影网| 福利片在线观看| 亚洲男帅同性gay1069| 日韩小视频在线播放| 国产成人77亚洲精品www| 欧美一级久久久| 3d动漫精品啪啪一区二区下载 | 好吊色这里只有精品| free性护士videos欧美| 在线日韩国产精品| 一级黄色片毛片| 欧美美女视频| 久久久久免费精品国产| а中文在线天堂| 成人免费的视频| 亚洲图色在线| 色多多在线观看| 日韩一级片网站| 国产精久久一区二区三区| 亚洲色图二区| 国产精品18久久久久久麻辣| 亚洲精品97久久中文字幕无码| 欧美国产一区二区| www国产精品内射老熟女| 亚洲欧洲一二区| 亚洲天堂第一页| 国产精品18p| 精品一区二区三区久久| 欧美日韩免费高清| 国产美女高潮在线| 日韩一级二级三级精品视频| 妺妺窝人体色WWW精品| 亚洲精品偷拍| 3d动漫精品啪啪一区二区三区免费| 国产在线黄色| 高跟丝袜一区二区三区| 欧美图片自拍偷拍| 伊人久久大香线| 国产精品久久视频| 欧美巨乳在线| 精品久久久久久久久久久久久| 亚洲国产午夜精品| 日韩欧美1区| 国产精品第一区| 欧美婷婷久久五月精品三区| 亚洲国产欧美在线人成| 18深夜在线观看免费视频| 天天射成人网| 国产在线精品成人一区二区三区| 九色在线免费| 色综合久久66| 玖玖爱在线观看| 国产一区二区高清| 久久国产精品高清| 草草视频在线观看| 欧美va亚洲va在线观看蝴蝶网| 亚洲怡红院在线观看| 九九热在线视频观看这里只有精品| 日韩精品大片| 在线日本欧美| 在线精品国产欧美| 中文字幕视频二区| 国产精品嫩草99a| 亚洲综合婷婷久久| 国产精品久久久久久久久妇女| 国产精品普通话| 美女写真理伦片在线看| 在线不卡a资源高清| 五月天激情丁香| 国产成人亚洲综合a∨婷婷图片 | 中文字幕伦理免费在线视频| 制服丝袜中文字幕一区| 欧美精品久久久久性色| 成人精品gif动图一区| 霍思燕三级露全乳照| 亚洲v天堂v手机在线| 国产99久久精品一区二区| 东热在线免费视频| 91麻豆精品国产91久久久更新时间 | 久久久精品一区| www.黄色国产| 红桃视频成人在线观看| 天天躁日日躁aaaxxⅹ| 石原莉奈一区二区三区在线观看| 欧美日韩国产一二| 久久久免费人体| 欧美高跟鞋交xxxxhd| 深夜福利视频网站| 在线免费av一区| 天天天天天天天天操| 不卡视频一二三| 中文字幕无码不卡免费视频| 久久视频在线| 国产不卡一区二区在线观看| 三上悠亚激情av一区二区三区| 中文字幕日韩欧美精品在线观看| 国产wwwxxx| 欧美性精品220| 疯狂撞击丝袜人妻| 91在线云播放| 亚洲精品国产一区二区三区| 亚洲精品男同| 亚洲图片都市激情| 蜜桃久久久久| 成人免费视频97| 精精国产xxxx视频在线野外 | 国产亚洲一区二区三区在线播放| 欧洲一区二区三区精品| 久热国产精品视频| 涩涩视频在线观看免费| 91精品国产综合久久精品性色| 日本熟女一区二区| 亚洲欧美日韩在线不卡| 毛茸茸多毛bbb毛多视频| 国产在线视频精品一区| 欧美成人精品欧美一级乱| 亚洲色图网站| 日韩影视精品| 欧美亚洲国产日韩| 亚洲自拍偷拍区| 成人国产综合| 91精品国产91久久久久久久久 | 亚洲午夜国产一区99re久久| 久久久久亚洲av无码a片| 播五月开心婷婷综合| 在线观看中文av| 日韩不卡一区二区三区| 成人在线免费观看av| 国产精品magnet| 天天做天天爱天天高潮| 青青草国产成人a∨下载安卓| 国产欧美韩日| 涩爱av色老久久精品偷偷鲁| 国产精品网红直播| 成人va天堂| 2018日韩中文字幕| 成年人视频免费在线播放| 麻豆乱码国产一区二区三区| 波多野结衣在线网站| 亚洲欧美色婷婷| 天天操天天舔天天干| 亚洲第一精品福利| 精品人妻久久久久一区二区三区| 欧美日韩精品欧美日韩精品| 国产又粗又猛又黄视频| 欧美性极品少妇精品网站| 亚洲欧美在线视频免费| 亚洲午夜在线电影| 欧美极品视频在线观看| 亚洲欧美日韩国产中文在线| 日本少妇aaa| 亚洲欧洲性图库| 小早川怜子一区二区的演员表| 国产精品久线在线观看| 女人裸体性做爰全过| 国产精品美女www爽爽爽| 亚洲最大成人综合网| 国产日韩欧美在线一区| 国产综合精品久久久久成人av| 国产片一区二区| 大吊一区二区三区| 国产精品超碰97尤物18| 国产精品99久久久久久成人| 中文字幕视频一区| 国产精品精品软件男同| 亚洲欧美电影院| 黄色一级视频在线观看| 亚洲国产日韩综合久久精品| 亚洲国产成人精品激情在线| 欧美色视频日本高清在线观看| 国产一级片毛片| 在线观看亚洲a| 在线观看视频中文字幕| 日韩午夜电影av| 三级视频在线看| 亚洲欧美自拍一区| 亚洲欧美视频一区二区| 超薄丝袜一区二区| 搞黄网站在线看| 欧美专区第一页| 久久99久久久精品欧美| 91精品国产一区二区三区动漫 | 成人av网站在线观看免费| www.88av| 中文字幕乱码亚洲精品一区 | av在线电影网| 欧美精品免费在线| 美女网站在线看| 国产精品视频xxxx| 91亚洲无吗| 日韩免费av电影| 午夜精品国产| 免费在线观看的av网站| 久久精品国产亚洲高清剧情介绍| 无码人妻一区二区三区免费n鬼沢 久久久无码人妻精品无码 | 亚洲精品成a人| 九一国产在线观看| 7777精品伊人久久久大香线蕉| 黄色a在线观看| 伊人久久大香线蕉av一区二区| www红色一片_亚洲成a人片在线观看_| 久久久免费电影| 欧美激情不卡| 精品欧美日韩在线| 国产精品91一区二区三区| 日韩伦理在线免费观看| 日本在线不卡视频一二三区| 国产精品99久久久精品无码| 国产视频不卡一区| 免费一级全黄少妇性色生活片| 日本乱码高清不卡字幕| 成人av无码一区二区三区| 亚洲无亚洲人成网站77777| 三级网站视频在在线播放| 国产精品成熟老女人| 综合久久成人| 亚洲人成人77777线观看| 国产一区导航| 亚洲一区二区三区四区av| 国产精品久久三| 香蕉影院在线观看| 精品成人在线观看| a免费在线观看| 国产精品久久久久久久app| 九九热播视频在线精品6| 一级黄色免费在线观看| 免费在线观看一区二区三区| 一级特黄a大片免费| 亚洲欧洲综合另类| 中文字幕第一页在线播放| 日韩精品免费电影| 黄色小说在线播放| 成人在线免费观看视视频| 欧洲福利电影| 成人在线免费播放视频| 99视频精品在线| 久久久久久久久久久网| 91麻豆精品国产综合久久久久久| 成人欧美亚洲| 国产精品久久电影观看| 久久99蜜桃| 免费日韩中文字幕| 久久中文字幕电影| 特一级黄色大片| 亚洲国产精品999| 女人天堂av在线播放| 97超碰人人模人人爽人人看| 亚洲成av人电影| 日日干日日操日日射| 国产精品美女久久久久aⅴ国产馆| 国产精品成人无码| 在线观看久久久久久| 欧美123区| 亚洲国产欧美不卡在线观看 | 亚洲av综合色区无码另类小说| 亚洲婷婷国产精品电影人久久| 一卡二卡在线观看| 久久国产一区二区三区| 日韩成人在线一区| 美国av在线播放| 国产精品一区在线观看乱码| 91精品国产高清一区二区三蜜臀| 4438亚洲最大| 中文字幕在线播放网址| 国产精品白丝jk白祙| 亚洲欧洲午夜| a级大片在线观看| 欧美三级资源在线| 美女国产在线| 成人免费视频网站| 一区二区福利| 国产伦理片在线观看| 欧美三级日本三级少妇99| 免费a级在线播放| 99久久精品无码一区二区毛片| 亚洲精品免费观看| 国产一级久久久久毛片精品| 欧美日韩精品久久久| 性欧美高清come| 久久精品国产一区二区三区不卡| 久久久xxx| 69夜色精品国产69乱| 亚洲精品一线二线三线无人区| 日韩电影毛片| 亚洲国产一区二区精品视频| 国产一区亚洲一区| 国产视频91在线| 中文字幕日韩精品有码视频| 亚州一区二区| 任你操这里只有精品| 中文字幕在线不卡一区二区三区| 国内精品久久久久久久久久久| 韩国精品久久久999| 九九视频免费观看视频精品| 久久久精品视频国产| 欧美日韩一区二区精品| 日本在线视频观看| 久久96国产精品久久99软件| 麻豆免费看一区二区三区| 久久久久噜噜噜亚洲熟女综合| 亚洲欧美日韩在线一区| 国产一区二区三区精品在线观看| 无码中文字幕色专区| 中文字幕日韩一区| 天堂在线中文资源| 91精品视频观看| 新67194成人永久网站| 久久久久久久久久网站| 亚洲性视频网址| 国产人妖ts一区二区| xxww在线观看| 日韩欧美亚洲一二三区|