日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

运维命令

發布時間:2023/11/29 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 运维命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

==================================
1 文件管理2 軟件管理3 系統管理
4 服務管理5 網絡管理6 磁盤管理
7 用戶管理8 腳本相關9 服務配置
==================================
----------------------------------
1 文件管理
----------------------------------
創建空白文件
touch
不提示刪除非空目錄
rm -rf 目錄名
(-r:遞歸刪除-f 強制)
##################################
恢復rm 刪除的文件(ext3)
查看磁盤分區格式
df -T
卸載掛載
umount /data/
ext3grep /dev/sdb1 --ls --inode 2
記錄信息繼續查找目錄下文件inode 信息
ext3grep /dev/sdb1 --ls --inode 131081 # 此處是inode
記錄下inode 信息開始恢復目錄
ext3grep /dev/sdb1 --restore-inode 49153
##################################
windows 文本轉linux 文本
dos2unix
linux 文本轉windows 文本
unix2dos
轉換編碼
iconv -f gbk -t utf8 原.txt > 新.txt
查看md5 值
md5sum
硬鏈接
ln
符號連接
ln -s
查看上下翻頁且顯示行號
cat ? | nl |less
q 退出
結束狀態
ctrl+z
查看文件開頭內容
head
查看文件結尾內容
tail -f # 監視日志文件
檢查文件類型
file
重命名
rename
rename source_pattern target_pattern source_files
更改默認權限
umask
按數字排序
sort -n
按數字倒敘
sort -nr
過濾重復行
sort -u
刪除重復的行
uniq
重復的行出現次數
uniq -c
只顯示不重復行
uniq -u
將兩個文件合并用tab 鍵分隔開
paste a b
將兩個文件合并指定'+'符號隔開
paste -d'+' a b
將多行數據合并到一行用tab 鍵隔開
paste -s a
設置隱藏屬性
chattr [+-=] [ASacdistu] 文件或目錄
向下分面器
more
搜索
locate 字符串
查看行數
wc -l
實時某個目錄下查看最新改動過的文件
watch -d -n 1 'df; ls -FlAt /path'
快速備份一個文件
cp filename{,.bak}
##################################
配置編輯器
gconf-editor
vi 配置文件
vi /etc/vimrc
編輯文件
vim
打開行號
:set nu
取消行號
:set nonu
跳轉到200
200G
取消高亮
:nohl
設置自動縮進
:set autoindent
查看文本格式
set ff
改為unix 格式
set binary
向前翻頁
ctrl+ U
向后翻頁
ctrl+ D
全部替換
g/字符1/s//字符2/g
%s/字符1/字符2/g
# 普通用戶打開文檔不能保存
# tee 是一個把stdin 保存到文件的小工具,而%,是vim 當中一個只讀寄存器的名字,總保存著當
前編輯文件的文件路徑
:w !sudo tee %
##################################
按文件名查找
find /etc -name http
查找某一類型文件
find . -type f
按照文件權限查找
find / -perm
按照文件屬主查找
find / -user
按照文件所屬的組來查找文件
find / -group
文件使用時間在N 天以內
find / -atime -n
文件使用時間在N 天以前
find / -atime +n
文件內容改變時間在N 天以內
find / -mtime -n
文件內容改變時間在N 天以前
find / -mtime +n
文件狀態改變時間在N 天前
find / -ctime +n
文件狀態改變時間在N 天內
find / -ctime -n
# linux 文件無創建時間
# Access 使用時間
# Modify 內容修改時間
# Change 狀態改變時間(權限、屬主)
查找文件長度大于1M 字節的文件
find / -size +1000000c -print
按名字查找文件傳遞給-exec 后命令
find /etc -name "passwd*" -exec grep "xuesong" {} \;
查找文件名,不取路徑
find . -name 't*' -exec basename {} \;
##################################
====================================================================
----------------------------------
2 軟件管理
----------------------------------
解包tar
tar xvf 1.tar -C 目錄
打包tar
tar -cvf 1.tar *
查看tar
tar tvf 1.tar
給tar 追加文件
tar -rvf 1.tar 文件名
解包gz
tar zxvpf gz.tar.gz
打包gz
tar zcvpf gz.tar.gz
查看gz
tar ztvpf gz.tar.gz
解壓bzip2
bzip2 -dv 1.tar.bz2
解壓gzip 到tar
gzip -dv 1.tar.gz
壓縮tar 到gz
gzip -v 1.tar
bzip2 壓縮
bzip2 -v 1.tar
查看bzip2
bzcat
rpm 安裝
rpm -ivh
卸載
rpm -e lynx
強制卸載
rpm -e lynx --nodeps
測試
rpm --test lynx
查看所有安裝的rpm 包
rpm -qa
查找包是否安裝
rpm -qa | grep http
解壓zip
unzip zip.zip
壓縮zip
zip zip.zip *
rar3.6 下載地址
http://www.rarsoft.com/rar/rarlinux-3.6.0.tar.gz
壓縮文件為rar 包
rar a rar.rar *.jpg
解壓rar 包
unrar x rar.rar
7z 壓縮
7z a 7z.7z *
7z 解壓
7z e 7z.7z
查看字符行
zgrep 字符1.gz
打包/home, /etc ,但排除/home/dmtsai
tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
在/home 當中,比2005/06/01 新的文件才備份
tar -N "2005/06/01" -zcvf home.tar.gz /home
下載
wgetrc
文本上網
lynx
制作鏡像
cp -v /dev/dvd /software/rhel4.6.iso9660
清除編譯結果
make clean
源碼安裝
./configure --help |less
./configure --prefix=/usr/local/
make
make install
perl 程序編譯
perl Makefile.PL
make
make test
make install
perl 程序編譯
python file.py
編譯c 程序
gcc -g hello.c -o hello
====================================================================
----------------------------------
3 系統管理
----------------------------------
終端鎖屏Ctrl+S
解鎖屏Ctrl+Q
PS1 環境變量控制提示顯示
PS1='[\u@ \H \w \A \@#]\$'
開機啟動模式
vi /etc/inittab
查找命令的目錄
whereis
查看當前要執行的命令所在的路徑
which
讓部命令后臺運行
命令&
將前臺放入后臺(暫停)
ctrl+z
查看后臺運行程序
jobs
啟動后臺暫停進程
bg 2
調回后臺進程
fg 2
后臺運行不受shell 退出影響
nohup cmd &
清空整個屏幕
clear
重新初始化屏幕
reset
查詢用過的命令默認1000 條
history
清楚記錄命令
history -c
cat /root/.bash_history
查看登陸過的用戶信息
last
last -n user
who /var/log/wtmp
列出登錄系統失敗的用戶相關信息
lastb -a
/var/log/btmp
防火墻日志
tail -f /var/log/messages
ssh 日志
tail -f /var/log/secure
隨機生成密碼
mkpasswd
-l 位數-C 大小-c 小寫-d 數字-s 特殊字符
mkpasswd -l 8 -C 2 -c 2 -d 4 -s 0
當前在線用戶
who
w
查看當前用戶名
whoami
查看登陸用戶名
logname
顯示月歷
cal
查看服務器啟動時間
uptime
設日期
date -s 20091112
設時間
date -s 18:30:50
同步時間
/usr/sbin/ntpdate stdtime.gov.hk
7 天前日期
`date -d "7 days ago" +%Y%m%d`
日期格式轉換
`date +%Y-%m-%d -d '20110902'`
日期和時間
date +%Y-%m-%d_%X
查看時間
hwclock
賬戶影子文件
/etc/shadow
列出所有語系
locale -a
修改語言
LANG=en
修改編碼
vi /etc/sysconfig/i18n
utf-8 <---> GBK
強制字符集
export LC_ALL=C
查詢靜態主機名
vi /etc/hosts
最大連接
/etc/security/limits.conf
grub 開機啟動項添加
/etc/grub.conf
title ms-dos
rootnoverify (hd0,0)
chainloader +1
別名
alias
監測命令
watch
查看Linux 版本信息
uname -a
cat /proc/version
cat /etc/issue
lsb_release -a
查看cpu 信息
more /proc/cpuinfo
查看cpu 型號和邏輯核心數
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
cpu 運行的位數
getconf LONG_BIT
物理cpu 個數
cat /proc/cpuinfo | grep physical | uniq -c
結果大于0 支持64 位
cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l
查看cpu 是否支持虛擬化
cat /proc/cpuinfo|grep flags
pae 支持半虛擬化Intel VT 支持全虛擬化
查看內存信息
more /proc/meminfo
查看全面硬件信息
dmidecode
查看服務器型號
dmidecode | grep "Product Name"
查看軟raid 信息
cat /proc/mdstat
查看硬raid 信息
cat /proc/scsi/scsi
查看硬件信息
lspci
查看是否支持raid
lspci|grep RAID
顯示開機信息
dmesg
進程樹
pstree
每隔一秒報告虛擬內存統計信息9 次
vmstat 1 9
把180 號進程的優先級加1
renice +1 180
終止某個PID 進程
kill -9 PID
指定三天后下午5:00 執行/bin/ls
at 5pm + 3 days /bin/ls
編輯周期任務
crontab -e
分鐘小時天月星期命令或腳本
01 1-3/2 * * * 命令或腳本
直接將命令寫入周期任務
echo "40 7 * * 2 /root/sh">>/var/spool/cron/root
查看自動周期性任務
crontab -l
刪除自動周期性任務
crontab -r
禁止或允許用戶使用周期任務
cron.deny 和cron.allow
啟動自動周期性服務
service crond 啟動|停止|重啟|狀態>
是否打開了某個端口
netstat -anlp | grep 端口號
查看監聽
netstat -anlp
sudo 命令權限添加
visudo
用戶別名(可用all)=NOPASSWD:命令1,命令2
wangming linuxfan=NOPASSWD:/sbin/apache start,/sbin/apache restart
UserName ALL=(ALL) ALL
制作補丁
diff suzu.c suzu2.c > sz.patch
安裝補丁
patch suzu.c < sz.patch
顯示打開指定文件的所有進程
lsof 文件
查看端口的進程
lsof -i :32768
顯示消耗內存最多的10 個運行中的進程,以內存使用量排序.cpu +3
ps aux |grep -v USER | sort -nk +4 | tail
查看內核模塊
lsmod
yum 擴展源
http://download.fedoraproject.org/pub/epel
wget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh epel-release-5-4.noarch.rpm
升級所有包版本,依賴關系,系統版本內核都升級
yum -y update
升級指定的軟件包
yum -y update 軟件包名
不改變軟件設置更新軟件,系統版本升級,內核不改變
yum -y upgrade
yum 搜索相關包
yum search mail
會改變配置文件,改變舊的依賴關系,改變系統版本
dist-upgrade
編輯啟動項
/boot/grub/grub.conf
開機啟動腳本順序
/etc/profile
/etc/profile.d/*.sb
~/bash_profile
~/.bashrc
/etc/bashrc
--------------------------------------------------------------------
top
前五行是系統整體的統計信息。
第一行是任務隊列信息,同uptime 命令的執行結果。其內容如下:
01:06:48 當前時間
up 1:22 系統運行時間,格式為時:分
1 user 當前登錄用戶數
load average: 0.06, 0.60, 0.48 系統負載,即任務隊列的平均長度。
三個數值分別為1 分鐘、5 分鐘、15 分鐘前到現在的平均值。
第二、三行為進程和CPU 的信息。當有多個CPU 時,這些內容可能會超過兩行。內容如下:
Tasks: 29 total 進程總數
1 running 正在運行的進程數
28 sleeping 睡眠的進程數
0 stopped 停止的進程數
0 zombie 僵尸進程數
Cpu(s): 0.3% us 用戶空間占用CPU 百分比
1.0% sy 內核空間占用CPU 百分比
0.0% ni 用戶進程空間內改變過優先級的進程占用CPU 百分比
98.7% id 空閑CPU 百分比
0.0% wa 等待輸入輸出的CPU 時間百分比
0.0% hi
0.0% si
最后兩行為內存信息。內容如下:
Mem: 191272k total 物理內存總量
173656k used 使用的物理內存總量
17616k free 空閑內存總量
22052k buffers 用作內核緩存的內存量
Swap: 192772k total 交換區總量
0k used 使用的交換區總量
192772k free 空閑交換區總量
123988k cached 緩沖的交換區總量。
內存中的內容被換出到交換區,而后又被換入到內存,但使用過的交換區尚未被覆蓋,
該數值即為這些內容已存在于內存中的交換區的大小。
相應的內存再次被換出時可不必再對交換區寫入。
進程信息區
統計信息區域的下方顯示了各個進程的詳細信息。首先來認識一下各列的含義。
序號列名含義
a PID 進程id
b PPID 父進程id
c RUSER Real user name
d UID 進程所有者的用戶id
e USER 進程所有者的用戶名
f GROUP 進程所有者的組名
g TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為?
h PR 優先級
i NI nice 值。負值表示高優先級,正值表示低優先級
j P 最后使用的CPU,僅在多CPU 環境下有意義
k %CPU 上次更新到現在的CPU 時間占用百分比
l TIME 進程使用的CPU 時間總計,單位秒
m TIME+ 進程使用的CPU 時間總計,單位1/100 秒
n %MEM 進程使用的物理內存百分比
o VIRT 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
p SWAP 進程使用的虛擬內存中,被換出的大小,單位kb。
q RES 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
r CODE 可執行代碼占用的物理內存大小,單位kb
s DATA 可執行代碼以外的部分(數據段+棧)占用的物理內存大小,單位kb
t SHR 共享內存大小,單位kb
u nFLT 頁面錯誤次數
v nDRT 最后一次寫入到現在,被修改過的頁面數。
w S 進程狀態。
D=不可中斷的睡眠狀態
R=運行
S=睡眠
T=跟蹤/停止
Z=僵尸進程
x COMMAND 命令名/命令行
y WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名
z Flags 任務標志,參考sched.h
##################################
iptables
內建三個表:nat mangle 和filter
filter 預設規則表,有INPUT、FORWARD 和OUTPUT 三個規則鏈
INPUT 進入
FORWARD 轉發
OUTPUT 出去
ACCEPT 將封包放行
REJECT 攔阻該封包
DROP 丟棄封包不予處理
-A 在所選擇的鏈(INPUT 等)末添加一條或更多規則
-D 刪除一條
-E 修改
-p tcp、udp、icmp 0 相當于所有all !取反
-P 設置缺省策略(與所有鏈都不匹配強制使用此策略)
-s IP/掩碼(IP/24) 主機名、網絡名和清楚的IP 地址!取反
-j 目標跳轉,立即決定包的命運的專用內建目標
-i 進入的(網絡)接口[名稱] eth0
-o 輸出接口[名稱]
-m 模塊
--sport 源端口
--dport 目標端口
#配置文件
vi /etc/sysconfig/iptables
#將防火墻中的規則條目清除掉
iptables -F
#注意:iptables -P INPUT ACCEPT
#導入防火墻規則
iptables-restore <規則文件
#保存防火墻設置
/etc/init.d/iptables save
#重啟防火墻服務
/etc/init.d/iptables restart
#查看規則
iptables -L -n
iptables -L -n --line-numbers
#從某個規則鏈中刪除一條規則
iptables -D INPUT --dport 80 -j DROP
iptables -D INPUT 8
#取代現行規則
iptables -R INPUT 8 -s 192.168.0.1 -j DROP
#插入一條規則
iptables -I INPUT 8 --dport 80 -j ACCEPT
#查看轉發
iptables -t nat -nL
#在內核里打開ip 轉發功能
echo 1 > /proc/sys/net/ipv4/ip_forward
##################################
#允許本地回環
iptables -A INPUT -s 127.0.0.1 -p tcp -j ACCEPT
#允許已建立的或相關連的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#開放對外訪問
iptables -P OUTPUT ACCEPT
#指定某端口針對IP 開放
iptables -A INPUT -s 192.168.10.37 -p tcp --dport 22 -j ACCEPT
#允許的IP 或IP 段訪問
iptables -A INPUT -s 192.168.10.37 -p tcp -j ACCEPT
#開放對外開放端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#關閉入口
iptables -P INPUT DROP
#關閉轉發
iptables -P FORWARD DROP
##################################
iptables 規則文件
# Generated by iptables-save v1.2.11 on Fri Feb 9 12:10:37 2007
*filter
:INPUT DROP [637:58967]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [5091:1301533]
#允許的IP 或IP 段訪問
-A INPUT -s 127.0.0.1 -p tcp -j ACCEPT
-A INPUT -s 192.168.0.0/255.255.0.0 -p tcp -j ACCEPT
#開放對外開放端口
-A INPUT -p tcp --dport 80 -j ACCEPT
#指定某端口針對IP 開放
-A INPUT -s 192.168.10.37 -p tcp --dport 22 -j ACCEPT
#拒絕所有協議(INPUT 允許的情況)
#-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,URG RST -j DROP
# 允許已建立的或相關連的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#拒絕ping
-A INPUT -p tcp -m tcp -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on Fri Feb 9 12:10:37 2007
##################################
常用實例
#允許在IP 訪問指定端口
iptables -A INPUT -s 192.168.62.1 -p tcp --dport 22 -j ACCEPT
#禁止使用某端口
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -p tcp --dport 31 -j REJECT
#禁止QQ 端口
iptables -D FORWARD -p udp --dport 8000 -j REJECT
#禁止icmp 端口
#除192.168.62.1 外,禁止其它人ping 我的主機
iptables -A INPUT -i eth0 -s 192.168.62.1/32 -p icmp -m icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j DROP
#其它情況不允許
iptables -A INPUT -i eth0 -j DROP
#禁止指定IP 訪問
iptables -A INPUT -p tcp -s IP -j DROP
#禁止指定IP 訪問端口
iptables -A INPUT -p tcp -s IP --dport port -j DROP
#阻止所有沒有經過你系統授權的TCP 連接
iptables -t filter -A INPUT -i eth0 -p tcp --syn -j DROP
#添加網段轉發
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
#IP 包流量限制
iptables -A INPUT -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT
iptables -A INPUT -i eth0 -p icmp -j DROP
#端口映射
iptables -t nat -A PREROUTING -i eth0 -p tcp -s 192.168.62.0/24 --dport 80 -j REDIRECT --to-ports
3128
#列出某規則鏈中的所有規則
iptables -L INPUT
#刪除某個規則鏈,不加規則鏈,清除所有非內建的
iptables -X allowed
#將封包計數器歸零
iptables -Z INPUT
#定義新的規則鏈
iptables -N allowed
#定義過濾政策
iptables -P INPUT DROP
#修改某自訂規則鏈的名稱
iptables -E allowed disallowed
#比對通訊協議類型是否相符
#-p ! tcp 排除tcp 以外的udp、icmp。-p all 所有類型
iptables -A INPUT -p tcp
#比對封包的來源IP
#192.168.0.0/24 ! 反向對比
iptables -A INPUT -s 192.168.1.1
#比對封包的目的地IP
iptables -A INPUT -d 192.168.1.1
#比對封包是從哪片網卡進入
#eth+表示所有的網卡
iptables -A INPUT -i eth0
#比對封包要從哪片網卡送出
iptables -A FORWARD -o eth0
#比對某段時間內封包的平均流量
#例子是用來比對:每小時平均流量是否超過一次3 個封包。除了每小時平均次外,也可以每
秒鐘、每分鐘或每天平均一次,默認值為每小時平均一次,參數如后: /second、/minute、/day。
除了進行封數量的比對外,設定這個參數也會在條件達成時,暫停封包的比對動作,以避免因
駭客使用洪水攻擊法,導致服務被阻斷。
iptables -A INPUT -m limit --limit 3/hour
#比對瞬間大量封包的數量
#例子是用來比對一次同時涌入的封包是否超過5 個(這是默認值),超過此上限的封包將被直
接丟棄。使用效果同上。
iptables -A INPUT -m limit --limit-burst 5
#比對來自本機的封包
#是否為某特定使用者所產生的,這樣可以避免服務器使用root 或其它身分將敏感數據傳送出,
可以降低系統被駭的損失。可惜這個功能無法比對出來自其它主機的封包。
iptables -A OUTPUT -m owner --uid-owner 500
#比對來自本機的封包
iptables -A OUTPUT -m owner --gid-owner 0
iptables -A OUTPUT -m owner --pid-owner 78
iptables -A OUTPUT -m owner --sid-owner 100
#用來比對聯機狀態
iptables -A INPUT -m state --state RELATED,ESTABLISHED
聯機狀態共有四種:INVALID、ESTABLISHED、NEW 和RELATED。
#-j 參數指定進行的處理動作,處理動作包括: ACCEPT、REJECT、DROP、REDIRECT、
MASQUERADE、LOG、DNAT、SNAT、MIRROR、QUEUE、RETURN、MARK,說明:
iptables -A FORWARD -p TCP --dport 22 -j REJECT --reject-with tcp-reset
#可以傳送的封包有幾個選擇:ICMP port-unreachable、ICMP echo-reply 或是tcp-reset
REDIRECT 將封包重新導向到另一個端口(PNAT)
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
MASQUERADE 改寫封包來源IP 為防火墻NIC IP
iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE --to-ports 1024-31000
LOG 將封包相關訊息紀錄在/var/log 中
iptables -A INPUT -p tcp -j LOG --log-prefix "INPUT packets"
SNAT 改寫封包來源IP 為某特定IP 或IP 范圍
iptables -t nat -A POSTROUTING -p tcp-o eth0 -j SNAT --to-source
194.236.50.155-194.236.50.160:1024-32000
DNAT 改寫封包目的地IP 為某特定IP 或IP 范圍
iptables -t nat -A PREROUTING -p tcp -d 15.45.23.67 --dport 80 -j DNAT --to-destination
192.168.1.1-192.168.1.10:80-100
MIRROR 鏡射封包
QUEUE 中斷過濾程序
RETURN 結束在目前規則煉中的過濾程序
MARK 將封包標上某個代號
##################################
iptables 配置實例
允許某段IP 訪問任何端口
iptables -A INPUT -s 192.168.0.3/24 -p tcp -j ACCEPT
設定預設規則(拒絕所有的數據包,再允許需要的,如只做WEB 服務器.還是推薦三個鏈都是
DROP)
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
(注:意直接設置這三條完已經掉線了)
開啟22 端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
如果OUTPUT 設置成DROP 的,要寫上下面一條
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
(注:,不寫導致無法SSH.其他的端口一樣,OUTPUT 設置成DROP 的話,也要添加一條鏈)
如果開啟了web 服務器,OUTPUT 設置成DROP 的話,同樣也要添加一條鏈
iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
做WEB 服務器,開啟80 端口,其他同理
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
做郵件服務器,開啟25,110 端口
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
允許icmp 包通過,允許ping
iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT 設置成DROP 的話)
iptables -A INPUT -p icmp -j ACCEPT (INPUT 設置成DROP 的話)
允許loopback!(不然會導致DNS 無法正常關閉等問題)
IPTABLES -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP)
IPTABLES -A OUTPUT -o lo -p all -j ACCEPT(如果是OUTPUT DROP)
====================================================================
----------------------------------
4 服務管理
----------------------------------
啟動sendmail 服務
./sendmail start
/etc/init.d/sendmail start
關閉sendmail 服務
./sendmail stop
查看sendmail 服務當前狀態
./sendmail status
發送郵件
echo 內容| /bin/mail -s "標題" 收件箱
打開服務列表需要打*
ntsysv
讓某個服務不自動啟動35 指的是運行級別
httpd:chkconfig --level 35 httpd off
讓某個服務自動啟動
httpd:chkconfig --level 35 httpd on
查看所有服務的啟動狀態
chkconfig --list
查看某個服務的啟動狀態
chkconfig --list |grep httpd
查看服務的狀態
chkconfig –-list [服務名稱]
設置非獨立服務啟狀態
chkconfig 服務名on|off|set
開啟mysql 后臺運行
/usr/local/mysql/bin/mysqld_safe --user=mysql &
開機啟動執行
vi /etc/rc.d/rc.local
開機啟動和關機關閉服務連接
/etc/rc.d/rc3.d/S55sshd
# S 開機start K 關機stop 55 級別后跟服務名
ln -s -f /usr/local/httpd/bin/apachectl /etc/rc.d/rc3.d/S15httpd
====================================================================
----------------------------------
5 網絡管理
----------------------------------
##################################
本機網絡配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
BROADCAST=192.168.1.255
HWADDR=00:0C:29:3F:E1:EA
IPADDR=192.168.1.55
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
TYPE=Ethernet
GATEWAY=192.168.1.1
##################################
增加邏輯IP 地址
ifconfig eth0:0 192.168.1.221 netmask 255.255.255.0
查看路由表
route
添加路由表
route add default gw 192.168.1.1 dev eth0
設置DNS
vi /etc/resolv.conf
禁用網卡
ifconfig eth0 down
啟用網卡
ifconfig eth0 up
ifup eth0:0 up
測試跳數
traceroute www.baidu.com (linux)
tracert www.baidu.com (windows)
根據IP 和主機最大數計算掩碼
ipcalc -m "$ip" -p "$num"
用wget 的遞歸方式下載整個網站
wget --random-wait -r -p -e robots=off -U Mozilla www.example.com
通過DNS 來讀取Wikipedia 的hacker 詞條
dig +short txt hacker.wp.dg.cx
host -t txt hacker.wp.dg.cx
rz ssh 小文件上傳
sz ssh 小文件下載
從linux ssh 登錄另一臺linux
ssh -p 22 wang@192.168.1.209
利用ssh 操作遠程主機
ssh -p 22 root@192.168.1.209 環境變量中腳本
把本地文件拷貝到遠程主機
scp -P 22 文件root@ip:/目錄
ssh 連接不提示yes
ssh -o StrictHostKeyChecking=no 192.168.70.130
把遠程指定文件拷貝到本地
scp root@192.168.1.209:遠程目錄本地目錄
通過SSH 掛載遠程主機上的文件夾
sshfs name@server:/path/to/folder /path/to/mount/point
卸載的話使用fusermount 命令
fusermount -u /path/to/mount/point
用DIFF 對比遠程文件跟本地文件
ssh user@host cat /path/to/remotefile | diff /path/to/localfile -
用SSH 創建端口轉發通道
ssh -N -L2001:remotehost:80 user@somemachine
嵌套使用SSH
ssh -t host_A ssh host_B
密鑰信任
ssh-keygen –t rsa
vi 用戶/.ssh/authorized_keys
遠程關掉一臺WINDOWS 機器
net rpc shutdown -I IP_ADDRESS -U username%password
禁ping
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
##################################
先ping 在掃描主機開放端口
nmap -PT 192.168.1.1-111
掃描出系統內核版本
nmap -O 192.168.1.1
掃描端口的軟件版本
nmap -sV 192.168.1.1-111
半開掃描(通常不會記錄日志)
nmap -sS 192.168.1.1-111
不支持windows 的掃描(判斷是否是windows)
nmap -sF 192.168.1.1-111
nmap -sX 192.168.1.1-111
nmap -sN 192.168.1.1-111
不ping 直接掃描
nmap -P0 192.168.1.1-111
詳細信息
nmap -d 192.168.1.1-111
無法找出真正掃描主機(隱藏IP)
nmap -D 192.168.1.1-111
端口范圍
nmap -p 20-30,139,60000-
表示:掃描20 到30 號端口,139 號端口以及所有大于60000 的端口
組合掃描(不ping、軟件版本、內核版本、詳細信息)
nmap -P0 -sV -O -v 192.168.30.251
##################################
====================================================================
----------------------------------
6 磁盤管理
----------------------------------
查看硬盤容量
df -h
查看磁盤分區格式
df -T
修改只讀文件系統為讀寫
mount -o remount,rw /
查看卷標
e2label /dev/sda5
創建卷標
e2label /dev/sda5 new-label
NTFS 添加卷標
ntfslabel -v /dev/sda8 new-label
ext2 分區轉ext3 分區
tune2fs -j /dev/sda
格式化分區
mkfs -t ext3 /dev/hda3
指定索引塊大小
mke2fs -b 2048 /dev/sda5
對文件系統修復
fsck -y /dev/sda6
查看超級塊的信息
dumpe2fs -h /dev/sda5
查看當前系統支持文件系統
cat /proc/filesystems
檢測硬盤狀態
smartctl -H /dev/sda
檢測硬盤信息
smartctl -i /dev/sda
檢測所有信息
smartctl -a /dev/sda
檢測目錄下所有文件大小
du -h 目錄
顯示當前目錄中子目錄的大小
du -h --max-depth=1
掛載光驅
mount -t iso9660 /dev/dvd /mnt
掛載鏡像文件
mount -o loop /software/rhel4.6.iso /mnt/
##################################
磁盤grub 開機引導項添加
/etc/grub.conf
title ms-dos
rootnoverify (hd0,0)
chainloader +1
##################################
建立軟RAID1
兩塊硬盤分區一樣,分別新建分區文件類型為software RAID
創建兩個就點擊raid 合并為RAID1,這里的掛載點為正常linux 目錄
查看raid 工作狀態
cat /proc/mdstat
兩個盤都加grub 引導
查看
cat /boot/grub/grub.conf
grub
root (hd0,0)
setup (hd0)
root (hd1,0)
setup (hd1)
修改grub 啟動項配置文件
vi /boot/grub/grub.conf
復制title CentOS 到最后的四行
在下面粘貼修改為剛才新加的引導(hd1,0)。
查看分區
sfdisk -d /dev/hda
導出A 盤分區列表
sfdisk -d /dev/hda > fq.hda
將分區列表導入到新加的硬盤
sfdisk /dev/hdb < fq.hda
恢復新掛載的硬盤分區
mdadm /dev/md1 -a /dev/hdb5
# raid5 可利用lvm 擴容
##################################
新硬盤掛載
fdisk /dev/sdc
p # 打印分區
d # 刪除分區
n # 創建分區,(一塊硬盤最多4 個主分區,擴展占一個主分區位置。p 主分區e 擴展)
w # 保存退出
mkfs -t ext3 -L 卷標/dev/sdc1 # 格式化相應分區
mount /dev/sdc1 /mnt # 掛載
添加開機掛載分區
vi /etc/fstab
用卷標掛載
LABEL=/data /data ext3 defaults 1 2
用真實分區掛載
/dev/sdb1 /data4 ext3 defaults 1 2
第一個數字"1"該選項被"dump"命令使用來檢查一個文件系統應該以多快頻率進行轉儲,若不需
要轉儲就設置該字段為0
第二個數字"2"該字段被fsck 命令用來決定在啟動時需要被掃描的文件系統的順序,根文件系統
"/"對應該字段的值應該為1,其他文件系統應該為2。若該文件系統無需在啟動時掃描則設置該
字段為0
##################################
====================================================================
----------------------------------
7 用戶管理
----------------------------------
建立用戶
useradd xuesong
修改密碼
passwd 用戶
echo "xuesong" | passwd xuesong --stdin
查找用戶顯示信息
finger
添加組
groupadd
修改文件擁有者(R 遞歸)
chown -R
修改所有者用戶中包含點"."
chown y\.li:mysql
修改用戶組
chgrp
修改用戶名
usermod -l 新用戶名老用戶名
修改用戶所屬組
usermod -g user group
修改用戶家目錄
usermod -d 目錄-m 用戶
將用戶添加到附加組
usermod -G user group
刪除帳號及家目錄
userdel -r
指定組并不允許登錄的用戶
useradd -g www -M -s /sbin/nologin www
切換用戶執行
su - user -c "
#命令1
"
====================================================================
----------------------------------
8 腳本相關
----------------------------------
##################################
正則表達式
^ 行首定位
$ 行為定位
. 匹配除換行符以外的任意字符
* 匹配0 或多個重復字符
+ 重復一次或更多次
? 重復零次或一次
[] 匹配一組中任意一個字符
[^] 匹配不在指定組內的字符
\ 用來轉義元字符
\< 詞首定位符(支持vi 和grep)
\<love
\> 詞尾定位符(支持vi 和grep)
love\>
x\{m\} 重復出現m 次
x\{m,\} 重復出現至少m 次
x\{m,n\} 重復出現至少m 次不超過n 次
X? 匹配出現零次或一次的大寫字母X
X+ 匹配一個或多個字母X
(abc|def)+ 匹配一連串的(最少一個) abc 或def;abc 和def 將匹配
\d 匹配任意一位數字
\D 匹配任意單個非數字字符
\w 匹配任意單個字母數字字符,同義詞是[:alnum:]
\s 匹配任意的空白符
\b 匹配單詞的開始或結束
[:alpha:] 代表所有字母不論大小寫
[:lower:] 表示小寫字母
[:upper:] 表示大寫字母
[:digit:] 表示數字字符
() 括號內的字符為一組
##################################
基本流程結構
if [ $a == $b ]
then
echo "等于"
else
echo "不等于"
fi
##################################
case $xs in
0) echo "0" ;;
1) echo "1" ;;
*) echo "其他" ;;
esac
##################################
num=1
# while true 等同while :
while [ $num -lt 10 ]
do
echo $num
((num=$num+2))
done
##################################
grep a a.txt | while read a
do
echo $a
done
##################################
w=`awk -F ":" '{print $1}' c`
for d in $w
do
$d
done
##################################
for ((i=0;i<${#o[*]};i++))
do
echo ${o[$i]}
done
##################################
until 循環# 當command 不為0 時
until command
do
body
done
##################################
流程控制
break N # 跳出幾層循環
continue N # 跳出幾層循環,循環次數不變
continue # 重新循環次數不變
##################################
變量
將變量A 賦值為字串
A="a b c def"
A=`命令`
間接調用
eval a=\

a?
將變量A?定義為組數?
A=(a?b?c?def)?
set?a1?a2?a3?a4?
$1?$2?$*?
在子shell?中運行?
(a=bbk)?
定義變量類型?
declare?或者typeset?
-r?只讀(readonly?一樣)?
-i?整形?
-a?數組?
-f?函數?
-x?export?
declare?-i?n=0?
env?#?查看環境變量?
env?|?grep?"name"?#?查看定義的環境變量?
set?#?查看環境變量和本地變量?
read?name?#?輸入變量?
readonly?name?#?把name?這個變量設置為只讀變量,不允許再次設置?
readonly?#?查看系統存在的只讀文件?
export?name?#?變量name?由本地升為環境?
export?name="RedHat"?#?直接定義name?為環境變量?
export?Stat$nu=2222?#?變量引用變量賦值?
unset?name?#?變量清除?
export?-n?name?#?去掉只讀變量?
shift?#?用于移動位置變量,調整位置變量,使$3?的值賦給$2.$2?的值賦予$1?
name?+?0?#?將字符串轉換為數字?
number?"?"?#?將數字轉換成字符串?
常用系統變量?
$0?#?腳本啟動名(包括路徑)?
basename?$0?#?只取腳本名?
$n?#?當前程式的第n?個參數,n=1,2,…9?
$*?#?當前程式的所有參數(不包括腳本本身)?
$#?#?當前程式的參數個數(不包括腳本本身)

# 當前程式的PID
$! # 執行上一個指令的PID
$? # 執行上一個指令的返回值
變量引用技巧${}
${name:+value} # 如果設置了name,就把value 顯示,未設置則為空
${name:-value} # 如果設置了name,就顯示它,未設置就顯示value
${name:?value} # 未設置提示用戶錯誤信息value
${name:=value} # 如未設置就把value 設置并顯示<寫入本地中>,
${#A} # 可得到變量中字節
${#A[*]} # 數組個數
${A[2]} # 腳本的一個參數
${A:4:9} # 取變量中第4 位到后面9 位
${A/www/http} # 取變量并且替換每行第一個關鍵字
${A//www/http} # 取變量并且全部替換每行關鍵字
定義了一個變量為:
file=/dir1/dir2/dir3/my.file.txt
${file#*/} # 去掉第一條/ 及其左邊的字串:dir1/dir2/dir3/my.file.txt
${file##*/} # 去掉最后一條/ 及其左邊的字串:my.file.txt
${file#*.} # 去掉第一個. 及其左邊的字串:file.txt
${file##*.} # 去掉最后一個. 及其左邊的字串:txt
${file%/*} # 去掉最后條/ 及其右邊的字串:/dir1/dir2/dir3
${file%%/*} # 去掉第一條/ 及其右邊的字串:(空值)
${file%.*} # 去掉最后一個. 及其右邊的字串:/dir1/dir2/dir3/my.file
${file%%.*} # 去掉第一個. 及其右邊的字串:/dir1/dir2/dir3/my
# # 是去掉左邊(在鍵盤上# 在$ 之左邊)
# % 是去掉右邊(在鍵盤上% 在$ 之右邊)
# 單一符號是最小匹配﹔兩個符號是最大匹配
##################################
test 條件判斷
# 符號[ ] 等同test
expression 為字符串操作
-n str # 字符串str 是否不為空
-z str # 字符串str 是否為空
expression 為文件操作
-b # 是否塊文件
-p # 文件是否為一個命名管道
-c # 是否字符文件
-r # 文件是否可讀
-d # 是否一個目錄
-s # 文件的長度是否不為零
-e # 文件是否存在
-S # 是否為套接字文件
-f # 是否普通文件
-x # 文件是否可執行,則為真
-g # 是否設置了文件的SGID 位
-u # 是否設置了文件的SUID 位
-G # 文件是否存在且歸該組所有
-w # 文件是否可寫,則為真
-k # 文件是否設置了的粘貼位
-t fd # fd 是否是個和終端相連的打開的文件描述符(fd 默認為1)
-O # 文件是否存在且歸該用戶所有
! # 取反
expression 為整數操作
expr1 -a expr2 # 如果expr1 和expr2 評估為真,則為真
expr1 -o expr2 # 如果expr1 或expr2 評估為真,則為真
兩值比較
整數字符串
-lt <: # 小于
-gt >: # 大于
-le <=: # 小于或等于
-ge >=: # 大于或等于
-eq ==: # 等不等
-ne !=: # 不等于
判斷大小,0 為真,1 為假
test 10 -lt 5
echo $?
1
判斷字符串長度是否為0
test -n "hello"
0
##################################
重定向
# 標準輸出stdout 和標準錯誤stderr 標準輸入stdin
cmd 1> fiel # 把標準輸出重定向到file 文件中
cmd > file 2>&1 # 把標準輸出和標準錯誤一起重定向到file 文件中
cmd 2> file # 把標準錯誤重定向到file 文件中
cmd 2>> file # 把標準錯誤重定向到file 文件中(追加)
cmd >> file 2>&1 # 把標準輸出和標準錯誤一起重定向到file 文件中(追加)
cmd < file >file2 # cmd 命令以file 文件作為stdin(標準輸入),以file2 文件作為標
準輸出
cat <>file # 以讀寫的方式打開file
cmd < file cmd # 命令以file 文件作為stdin
cmd << delimiter
cmd; #從stdin 中讀入,直至遇到delimiter 分界符。
delimiter
>&n # 使用系統調用dup (2) 復制文件描述符n 并把結果用作標準輸出
<&n # 標準輸入復制自文件描述符n
<&- # 關閉標準輸入(鍵盤)
>&- # 關閉標準輸出
n<&- # 表示將n 號輸入關閉
n>&- # 表示將n 號輸出關閉
##################################
運算符
$[]等同于$(()) # $[]表示形式告訴shell 求中括號中的表達式的值
~var # 按位取反運算符,把var 中所有的二進制為1 的變為0,為0 的變為1
var\<<str # 左移運算符,把var 中的二進制位向左移動str 位,忽略最左端移出的各位,最
右端的各位上補上0 值,每做一次按位左移就有var 乘2
var>>str # 右移運算符,把var 中所有的二進制位向右移動str 位,忽略最右移出的各位,
最左的各位上補0,每次做一次右移就有實現var 除以2
var&str # 與比較運算符,var 和str 對應位,對于每個二進制來說,如果二都為1,結果為1.
否則為0
var^str # 異或運算符,比較var 和str 對應位,對于二進制來說如果二者互補,結果為1,
否則為0
var|str # 或運算符,比較var 和str 的對應位,對于每個二進制來說,如二都該位有一個1
或都是1,結果為1,否則為0
運算符的優先級
級別運算符說明
1 =,+=,-=,/=,%=,*=,&=,^=,|=,<<=,>>== # 賦值運算符
2 || # 邏輯或前面不成功執行
3 && # 邏輯與前面成功后執行
4 | # 按位或
5 ^ # 按異位與
6 & # 按位與
7 ==,!= # 等于/不等于
8 <=,>=,<,> # 大于或等于/小于或等于/大于/小于
9 \<<,>> # 按位左移/按位右移(無轉意符號)
10 +,- # 加減
11 *,/,% # 乘,除,取余
12 ! ,~ # 邏輯非,按位取反或補碼
13 -,+ # 正負
##################################
數學運算
$(( )) 整數運算符號大致有這些:
+ - * / **:分別為"加、減、乘、除、密運算"
& | ^ !:分別為"AND、OR、XOR、NOT" 運算
% :余數運算
運算
let
let x=16/4
let x=5**5
手工命令行計數器
expr
SUM=`expr 2 \* 3`
計算字串長度
expr length "bkeep zbb"
抓取字串
expr substr "bkeep zbb" 4 9
抓取第一個字符數字串出現的位置
expr index "bkeep zbb" e
整數運算
expr 14 % 9
expr 30 / 3 / 2 # 運算符號有空格
增量計數(加循環即可)
LOOP=0
LOOP=`expr $LOOP + 1`
數值測試(如果試圖計算非整數,則會返回錯誤。)
rr=3.4
expr $rr + 1
expr: non-numeric argument
rr=5
expr $rr + 1
6
模式匹配(可以使用expr 通過指定冒號選項計算字符串中字符數)
.* 意即任何字符重復0 次或多次
expr bkeep.doc : '.*'
在expr 中可以使用字符串匹配操作,這里使用模式抽取.doc 文件附屬名。
expr bkeep.doc : '.?.doc'
次方計算
echo "m^n"|bc
##################################
grep 用法
-c 顯示匹配到得行的數目,不顯示內容
-h 不顯示文件名
-i 忽略大小寫
-l 只列出匹配行所在文件的文件名
-n 在每一行中加上相對行號
-s 無聲操作只顯示報錯,檢查退出狀態
-v 反向查找
-e 使用正則表達式
-A1 打印匹配行和下一行
-wc 匹配出現次數
grep 可用于if 判斷,找到$?為then
過濾關鍵字符行
grep -v "a" txt
精確匹配字符串
grep 'a\>' txt
大小寫敏感
grep -i "a" txt
同時匹配大小寫
grep "a[bB]" txt
查找0-9 重復三次的所在行
grep '[0-9]\{3\}' txt
任意條件匹配
grep -E "word1 | word2 | word3" file
同時匹配三個
grep word1 file | grep word2 |grep word3
##################################
tr 用法
-c 用字符串1 中字符集的補集替換此字符集,要求字符集為ASCII。
-d 刪除字符串1 中所有輸入字符。
-s 刪除所有重復出現字符序列,只保留第一個;即將重復出現字符串壓縮為一個字符串。
[a-z] a-z 內的字符組成的字符串。
[A-Z] A-Z 內的字符組成的字符串。
[0-9] 數字串。
\octal 一個三位的八進制數,對應有效的ASCII 字符。
[O*n] 表示字符O 重復出現指定次數n。因此[O*2]匹配OO 的字符串。
tr 中特定控制字符的不同表達方式
速記符含義八進制方式
\a Ctrl-G 鈴聲\007
\b Ctrl-H 退格符\010
\f Ctrl-L 走行換頁\014
\n Ctrl-J 新行\012
\r Ctrl-M 回車\015
\t Ctrl-I tab 鍵\011
\v Ctrl-X \030
將所有大寫轉換成小寫字母
tr A-Z a-z
將空格替換為換行
tr " " "\n"
刪除空行
tr -s "[\012]" < plan.txt
tr -s ["\n"] < plan.txt
刪除文件中的^M,并代之以換行
tr -s "[\015]" "[\n]" < file
tr -s "[\r]" "[\n]" < file
替換passwd 文件中所有冒號,代之以tab 鍵
tr -s "[:]" "[\011]" < /etc/passwd
tr -s "[:]" "[\t]" < /etc/passwd
增加顯示路徑可讀性
echo $PATH | tr ":" "\n"
tr 在vi 內使用,在tr 前加處理行范圍和感嘆號('$'表示最后一行)
1,$!tr -d '\t'
Mac -> UNIX
tr "\r" "\n"<macfile > unixfile
UNIX -> Mac
tr "\n" "\r"<unixfile > macfile
DOS -> UNIX
Microsoft DOS/Windows 約定,文本的每行以回車字符(\r)并后跟換行符(\n)結束
tr -d "\r"<dosfile > unixfile
UNIX -> DOS:在這種情況下,需要用awk,因為tr 不能插入兩個字符來替換一個字符
awk '{ print $0"\r" }'<unixfile > dosfile
##################################
awk 用法
\b 退格
\f 換頁
\n 換行
\r 回車
\t 制表符Tab
\c 代表任一其他字符
-F 改變FS 值(分隔符)
~ 匹配
= 賦值
== 匹配
+= 疊加
[:alnum:] 字母數字字符
[:alpha:] 字母字符
[:cntrl:] 控制字符
[:digit:] 數字字符
[:graph:] 非空白字符(非空格、控制字符等)
[:lower:] 小寫字母
[:print:] 與[:graph:]相似,但是包含空格字符
[:punct:] 標點字符
[:space:] 所有的空白字符(換行符、空格、制表符)
[:upper:] 大寫字母
[:xdigit:] 十六進制的數字(0-9a-fA-F)
內建變量
$n 當前記錄的第n 個字段,字段間由FS 分隔
$0 完整的輸入記錄
ARGC 命令行參數的數目
ARGIND 命令行中當前文件的位置( 從0 開始算)
ARGV 包含命令行參數的數組
CONVFMT 數字轉換格式( 默認值為%.6g)
ENVIRON 環境變量關聯數組
ERRNO 最后一個系統錯誤的描述
FIELDWIDTHS 字段寬度列表( 用空格鍵分隔)
FILENAME 當前文件名
FNR 同NR ,但相對于當前文件
FS 字段分隔符( 默認是任何空格)
IGNORECASE 如果為真(即非0 值),則進行忽略大小寫的匹配
NF 當前記錄中的字段數(列)
NR 當前行數
OFMT 數字的輸出格式( 默認值是%.6g)
OFS 輸出字段分隔符( 默認值是一個空格)
ORS 輸出記錄分隔符( 默認值是一個換行符)
RLENGTH 由match 函數所匹配的字符串的長度
RS 記錄分隔符( 默認是一個換行符)
RSTART 由match 函數所匹配的字符串的第一個位置
SUBSEP 數組下標分隔符( 默認值是/034) 。
BEGIN 先處理(可不加文件參數)
END 結束時處理
[[:digit:][:lower:]] 數字和小寫字母(占一個字符)
-F"[ ]+|[%]+" 已多個空格或多個%為分隔符
[a-z]+ 多個小寫字母
[a-Z] 代表所有大小寫字母(aAbB...zZ)
[a-z] 代表所有大小寫字母(ab...z)
打印匹配到得行
awk '/Tom/' 文件
如果第三個字段值小于4000 才打印
awk '$3 <4000' 文件
匹配Tom 開頭的行打印第一個字段
awk '/^Tom/{print $1}'
顯示所有第一個字段不是以ly 結尾的行
awk '$1 !~ /ly$/' 文件
條件判斷(如果$1 大于$2,max 值為為$1,否則為$2)
awk '{max=($1 > $2) ? $1 : $2; print max}' 文件
awk '{print ($1>$2)?"第一排"$1:"第二排"$2}' e.txt
(括號代表if 語句判斷"?"代表then ":"代表else)
算術運算(第三個字段和第四個字段乘積大于500 則顯示)
awk '$3 * $4 > 500' 文件
打印tom 到suz 之間的行
awk '/tom/,/suz/' 文件
去掉前三行
awk '{$1="";$2="";$3="";print}' a.sh
將date 值賦給d,并將d 設置為數組mon,打印mon 數組中第2 個元素
awk 'BEGIN{ "date" | getline d; split(d,mon) ; print mon[2]}' 文件
以空格、:、制表符Tab 為分隔符
awk -F'[ :\t]' '{print $1,$2}'
取關鍵字下第幾行
awk '/關鍵字/{a=NR+2}a==NR {print}'
awk 中引用變量
a=22aa &&echo 88:99:44|awk -F":" '{print $1,"'"$a"'",$2,$3}'
指定類型(%d 數字,%s 字符)
/sbin/ifconfig |awk '{printf("line %d,%s\n",NR,$0)}'
awk -v RS=# 'NF{for(i=1;i<=NF;i++)if($i) printf $i;print ""}' 文件
awk 加if 判斷
awk '{if ( $6 > 50) print $1 " Too high" ;\
else print "Range is OK"}' file
awk '{if ( $6 > 50) { count++;print $3 } \
else { x+5; print $2 } }' file
awk 加循環
awk '{i = 1; while ( i <= NF ) { print NF, $i ; i++ } }' file
awk '{ for ( i = 1; i <= NF; i++ ) print NF,$i }' file
提取時間,空格不固定
ll | awk -F'[ ]+|[ ][ ]+' '/^$/{print $8}'
查看磁盤空間
df|awk -F"[ ]+|%" '$5>14{print $5}'
取出第四列等于90 的第五列
awk '$4==90{print $5}'
打印所有以模式no 或so 開頭的行
awk '/^(no|so)/' test
排列打印
awk 'END{printf
"%-10s%-10s\n%-10s%-10s\n%-10s%-10s\n","server","name","123","12345","234","1234"}' txt
awk 'BEGIN{printf
"|%-10s|%-10s|\n|%-10s|%-10s|\n|%-10s|%-10s|\n","server","name","123","12345","234","1234"}'
awk 'BEGIN{
print " *** 開始*** ";
print "+-----------------+";
printf "|%-5s|%-5s|%-5s|\n","id","name","ip";
}
$1!=1 && NF==4{printf "|%-5s|%-5s|%-5s|\n",$1,$2,$3" "$11}
END{
print "+-----------------+";
print " *** 結束*** "
}' txt
awk 中計算(求余數)
echo list|awk '{ i=($1%100);if ( $i >= 0 ) {print $0,$i}}'
sub 匹配第一次出現的符合模式的字符串,相當于sed 's//'
awk '{sub(/Mac/,"Macintosh");print}' urfile
#用Macintosh 替換Mac
gsub 匹配所有的符合模式的字符串,相當于sed 's//g'
awk '{sub(/Mac/,"MacIntosh",$1); print}' file
#第一個域內用Macintosh 替換Mac
處理sql 語句
cat 1.txt|awk -F" # " '{print "insert into user
(user,password,email)values(""'\''"$1"'\'\,'""'\''"$2"'\'\,'""'\''"$3"'\'\)\;'"}' >>insert_1.txt
引用外部變量
awk '{print "'"$a"'","'"$b"'"}'
在END 塊里面把數組內容寫到文件
awk -F: '{name[x++]=$1};END{for(i=0;i<NR;i++)print i,name[i]}' data >tmp
將$1 的值疊加后賦給sum
awk 'sum+=$1{print sum}' <<EOF
1 11 111
2 22 222
8 33 333
10 44 444
EOF
加入END 只打印最后的結果
awk '{sum2+=$2;count=count+1}END{print sum2,sum2/count}' <<EOF
1324236000: 4.8726625090e+06 1.4806911317e+07
1324236300: 3.1952608823e+05 1.3144868085e+07
1324236600: 5.0792587262e+05 1.4931600767e+07
EOF
#結果中第一個值是$2 的總和第二個值是$3 的總和第三個值是$2 總和除個數(平均值) 第
四個值是$3 總和除個數(平均值)
#e+06 是科學計數法,表示乘以10 的6 次方
awk '{sum2+=$2;count=count+1}END{print sum2,sum2/count}' <<EOF
1: 3 30
2: 6 60
3: 9 90
EOF
列求和
cat txt |awk '{a+=$1}END{print a}'
列求平均值
cat txt |awk '{a+=$1}END{print a/NR}'
列求最大值
cat txt |awk 'BEGIN{a=0}{if ($1>a) a=$1 fi}END{print a}'
#設定一個變量開始為0,遇到比該數大的值,就賦值給該變量,直到結束
求最小值
cat txt |awk 'BEGIN{a=11111}{if ($1<a) a=$1 fi}END{print a}'
判斷$1 是否整除(awk 中定義變量引用時不能帶$ )
cat txt |awk '{ i=$1%10;if ( i == 0 ) {print i}}'
##################################
sed 用法
-n 輸出由編輯指令控制(取消默認的輸出,必須與編輯指令一起配合)
-i 直接對文件操作
-e 多重編輯
p 打印
d 刪除
s 替換
g 配合s 全部替換
i 行前插入
a 行后插入
r 讀
y 轉換
q 退出
..?保存..作為標簽1(\1)
& 代表查找的串內容
* 前導符
.* 匹配任意多個字符
模式空間(兩行兩行處理)
N 將第二行追加到第一行將換行符\n 替換空極為一行
n 將第二行覆蓋到第一行
h 把模式空間里的行拷貝到暫存空間
H 把模式空間里的行追加到暫存空間
g 用暫存空間的內容替換模式空間的行
G 把暫存空間的內容追加到模式空間的行后
x 將暫存空間的內容于模式空間里的當前行互換
! 對所選行以外的所有行應用命令。
注意:暫存空間里默認存儲一個空行。
sed 命令替換并打印出替換行( -i 改變文本)
sed -n -e "{s/文本(正則表達式)/替換的文本/p}"
打印并刪除正則表達式的那部分內容
sed -n -e "{s/^ *[0-9]*//p}"
刪除含關鍵的一行
sed -i "/^$f/d" a
直接對文本替換
sed -i "s/=/:/" c
找到pearls 開頭在行尾加jcui
sed -i "/^pearls/s/$/jcui/" ab.txt
標簽(保存mar作為標簽1)
sed -n 's/margot/\1ianne/p' 文件
echo "margot"|sed -n 's/mar.*t/\1\2/p'
sed -e 's/^[a?zA?Z]\+?[a?zA?Z]\+.?/\2 \1\3/g' file
在以[0-9][0-9]結尾的行后加5
sed 's/[0-9][0-9]$/&5' 文件
打印從第5 行到以no 開頭行之間的所有行
sed -n '5,/^no/p' 文件
修改west 和east 之間的所有行,在結尾處加*VACA*
sed '/west/,/east/s/$/*VACA*/' 文件
多重編輯(先刪除1-3 行,在將1 替換成2)
sed -e '1,3d' -e 's/1/2/' 文件
找到含suan 的行,在后面加上讀入的文件內容
sed '/suan/r 讀入文件' 文件
找到含no 的行,寫入到指定文件中
sed -n '/no/w 寫入文件' 文件
取出第一組數字,并且忽略掉開頭的0
sed 's/[^1-9]*[0?9]\+.*/\1/'
打印1 和3 之間的行
sed '/1/,/3/p' file
取出指定行
sed -n '1p' 文件
在第5 行之前插入行
sed '5i\aaa' file
在第5 行之后抽入行
sed '5a\aaa' file
在匹配行前插入一行
echo a|sed -e '/a/i\b'
在匹配行后插入一行
echo a|sed -e '/a/a\b'
echo a|sed 's/a/&\nb/g'
引用外部變量
sed -n ''$a',10p'
sed -n ""$a",10p"
取用戶家目錄(匹配不為/的字符和匹配:到結尾的字符全部刪除)
sed -n '{s/^[^\/]*//;s/\:.*//;p}' /etc/passwd
將換行符轉換為換行
echo abcd\\nabcde |sed 's/\\n/@/g' |tr '@' '\n'
刪除掉@后面所有字符,和空行
sed -e 's/@.*//g' -e '/^$/d'
將幾行合并成一行
echo $(cat file)|sed 's/ //g'
取一列最大值
cat tmp|awk '{print $1}'|sort -n|sed -n '$p'
查找屬主權限為7 的文件
ls -l|sed -n '/^.rwx.*/p'
在a 前面加#號
echo a|sed -e 's/a/#&/g'
##################################
圖形dialog
多選界面[方括號]
dialog --title "Check me" --checklist "Pick Numbers" 15 25 3 1 "one" "off" 2 "two" "on" 3 "three"
"off" 2>tmp
多選界面(圓括號)
dialog --title "title" --radiolist "checklist" 20 60 14 tag1 "item1" on tag2 "item2" off 2>tmp
單選界面
dialog --title "title" --menu "MENU" 20 60 14 tag1 "item1" tag2 "item2" 2>tmp
進度條
dialog --title "Installation" --backtitle "Star Linux" --gauge "Linux Kernel" 10 60 50
選擇yes/no
dialog --title "標題" --backtitle "Dialog" --yesno "說明" 20 60
公告
dialog --title "公告標題" --backtitle "Dialog" --msgbox "內容" 20 60
顯示訊息后立即離開
dialog --title "hey" --backtitle "Dialog" --infobox "Is everything okay?" 10 60
輸入對話框
dialog --title "hey" --backtitle "Dialog" --inputbox "Is okay?" 10 60 "yes"
顯示文檔內容
dialog --title "Array 30" --backtitle "All " --textbox /root/txt 20 75
多條輸入對話框
dialog --title "Add a user" --form "Add a user" 12 40 4 "Username:" 1 1 "" 1 15 15 0 "Full
name:" 2 1 "" 2 15 15 0 2>tmp
星號顯示輸入--insecure
dialog --title "Password" --insecure --passwordbox "請輸入密碼" 10 35
選擇日期
dialog --stdout --title "日歷" --calendar "請選擇" 0 0 9 1 2010
##################################
腳本頭# sh 為當前系統默認shell,可指定為bash 等
#!/bin/sh
臨時文件定義
errtmp=/tmp/

date+outtmp=/tmp/

`date +%s%N`.outtmp
true > $outtmp
隨機數
$RANDOM
進程號
$$
納秒
date +%N
在當前bash 環境下讀取并執行FileName 中的命令
source file-name # 等同. FileName
間隔睡眠5 秒
sleep 5
在接收到信號后將要采取的行動
trap
當前目錄
$PWD
之前一個目錄的路徑
$OLDPWD
返回上一個目錄路徑
cd -
重復打印
yes
自動回答y 或者其他
yes |rm -i *
查看目錄所有文件夾
ls -p /home
查看匹配完整路徑
ls -d /home/
命令替換xargs
#將前面的內容,作為后面命令的參數
find / -perm +7000 | xargs ls -l
不換行執行下一句話
echo -n aa;echo bb
使轉義生效
echo -e "s\tss\n\n\n"
取字符串中字元
echo $a | cut -c2-6
排列組合(括號內一個元素分別和其他括號內元素組合)
echo {a,b,c}{a,b,c}{a,b,c}
返回目錄名
pwd | awk -F/ '{ print "目錄名:" ,$2 }'
替換上一條命令中的(foo)一個短語(bar)
^foo^bar^
!!:s/foo/bar/
!!:gs/foo/bar
##################################
shell 例子
判斷參數是否為空-空退出并打印null
#!/bin/sh
echo $1
name=${1:?"null"}
echo $name
##################################
循環數組
for ((i=0;i<${#o[*]};i++))
do
echo ${o[$i]}
done
##################################
判斷路徑
if [ -d /root/Desktop/text/123 ];then
echo "找到了123"
if [ -d /root/Desktop/text ]
then echo "找到了text"
else echo "沒找到text"
fi
else echo "沒找到123 文件夾"
fi
##################################
匹配替換密碼
#!/bin/sh
cat mailpassword > temp.txt
sed -i "s/:/ = /" temp.txt
w=`awk -F " = " '{print $1}' temp.txt`
for d in $w
do
grep -w $d svnpassword >/dev/null
if [ $? -eq 0 ]
then
sed -i "/^$d/d" svnpassword
grep "^$d" temp.txt >> svnpassword
#替換到轉義就出問題
#sed -i "/^$d/c $(grep "^$d" temp.txt)" svnpassword
fi
done
rm temp.txt
##################################
多行合并
將兩行并為一行(去掉換行符)
sed '{N;s/\n//}' file
將4 行合并為一行(可擴展)
awk '{if (NR%4==0){print $0} else {printf"%s ",$0}}' file
將所有行合并
awk '{printf"%s ",$0}'
##################################
shift 用法
./cs.sh 1 2 3
#!/bin/sh
until [ $# -eq 0 ]
do
echo "第一個參數為: $1 參數個數為: $#"
#shift 命令執行前變量$1 的值在shift 命令執行后不可用
shift
done
##################################
給腳本加參數getopts
#!/bin/sh
while getopts :ab: name
do
case $name in
a) aflag=1
;;
b) bflag=1
bval=$OPTARG
;;
\?) echo "USAGE:`basename $0` [-a] [-b value]"
exit 1
;;
esac
done
if [ ! -z $aflag ] ; then
echo "option -a specified"
echo "$aflag"
echo "$OPTIND"
fi
if [ ! -z $bflag ] ; then
echo "option -b specified"
echo "$bflag"
echo "$bval"
echo "$OPTIND"
fi
echo "here $OPTIND"
shift $(($OPTIND -1))
echo "$OPTIND"
echo " `shift $(($OPTIND -1))` "
##################################
判斷腳本參數是否正確
./test.sh -p 123 -P 3306 -h 127.0.0.1 -u root
#!/bin/sh
if [ $# -ne 8 ];then
echo "USAGE: $0 -u user -p passwd -P port -h host"
exit 1
fi
while getopts :u:p:P:h: name
do
case $name in
u)
mysql_user=$OPTARG
;;
p)
mysql_passwd=$OPTARG
;; P)
mysql_port=$OPTARG
;;
h)
mysql_host=$OPTARG
;;
*)
echo "USAGE: $0 -u user -p passwd -P port -h host"
exit 1
;;
esac
done
if [ -z $mysql_user ] || [ -z $mysql_passwd ] || [ -z $mysql_port ] || [ -z $mysql_host ]
then
echo "USAGE: $0 -u user -p passwd -P port -h host"
exit 1
fi
echo $mysql_user $mysql_passwd $mysql_port $mysql_host
#結果root 123 3306 127.0.0.1
##################################
dialog 取值接值退出
outtmp=/tmp/outtmp
dialog --no-shadow --backtitle "雪松制作" --title "請選擇" --ok-label "提交" --cancel-label "取消"
--menu "請選擇" 10 60 0 \
1 "[目錄]" \
q "[退出]" \
2> $outtmp
#判斷提交取消
if [ $? == "1" ]
then
break
#continue
fi
#只判斷退出
pt=`awk '{print}' $outtmp`
if [ $pt == q ]
then
break
fi
#判斷操作
case $pt in
1)
#操作
;;
q)
exit #break
;;
esac
##################################
dialog 輸入對話框加判斷
while :
do
outtmp=/tmp/outtmp
dialog --title "雪松制作" --form "請輸入" 20 60 10 "用戶:" 1 2 "" 1 15 35 0 "ID:" 2 2 "" 2
15 35 0 "" 6 2 "" 6 0 0 0 "輸入格式如下" 7 2 "" 7 0 0 0 "說明" 8 2 "" 8 0 0
0 2> $outtmp
yh=`sed -n '1p' $outtmp`
id=`sed -n '2p' $outtmp`
if echo $yh | grep -e '^[1-9][0-9]\{0,2\}' > /dev/null 2>&1
then
if echo $id | grep -e '^[1-9][0-9]\{0,12\}' > /dev/null 2>&1
then
break
else
echo "您輸入的不合法,請從新輸入!"
fi
else
echo "您輸入的不合法,請從新輸入!"
fi
done
##################################
打印表格
#!/bin/sh
clear
awk 'BEGIN{
print "+--------------------+--------------------+";
printf "|%-20s|%-20s|\n","Name","Number";
print "+--------------------+--------------------+";
}'
a=`grep "^[A-Z]" a.txt |sort +1 -n |awk '{print $1":"$2}'`
#cat a.txt |sort +1 -n |while read list
for list in $a
do
name=`echo $list |awk -F: '{print $1}'`
number=`echo $list |awk -F: '{print $2}'`
awk 'BEGIN{printf "|%-20s|%-20s|\n","'"$name"'","'"$number"'";
print "+--------------------+--------------------+";
}'
done
awk 'BEGIN{
print " *** The End *** "
print " "
}'
##################################
判斷日期是否合法
#!/bin/sh
while read a
do
if echo $a | grep -q "-" && date -d $a +%Y%m%d > /dev/null 2>&1
then if echo $a | grep -e '^[0-9]\{4\}-[01][0-9]-[0-3][0-9]$'
then
break
else
echo "您輸入的日期不合法,請從新輸入!"
fi
else
echo "您輸入的日期不合法,請從新輸入!"
fi
done
echo "日期為$a"
##################################
打印日期段所有日期
#!/bin/bash
qsrq=20010101
jsrq=20010227
n=0
>tmp
while :;do
current=$(date +%Y%m%d -d"$n day $qsrq")
if [[ $current == $jsrq ]];then
echo $current >>tmp;break
else
echo $current >>tmp
((n++))
fi
done
rq=`awk 'NR==1{print}' tmp`
##################################
打印提示
cat <<EOF
#內容
EOF
登陸遠程執行命令(特殊符號需要\轉義)
ssh root@ip << EOF
#執行命令
EOF
登陸mysql 執行命令
mysql -uroot -ppasswd -S mysql.sock --default-character-set=gbk -A<<EOF>outtmp
#mysql 命令
EOF
##################################
數學計算的小算法
#!/bin/sh
A=1
B=1
while [ $A -le 10 ]
do
SUM=`expr $A \* $B`
echo "$SUM"
if [ $A = 10 ]
then
B=`expr $B + 1`
A=1
fiA
=`expr $A + 1`
done
##################################
豎行轉橫行(三種)
cat file|tr '\n' ' '
echo $(cat file)
#!/bin/sh
for i in `cat file`
do
a=${a}" "${i}
done
echo $a
##################################
取用戶的根目錄
#! /bin/bash
#showhome.sh
IFS=:
while read name pass uid gid gecos home shell
do
echo $home
done
執行./showhome.sh < /etc/passwd
##################################
把漢字轉成encode 格式:
echo 論壇| tr -d "\n" | xxd -i | sed -e "s/ 0x/%/g" | tr -d " ,\n"
%c2%db%cc%b3
大寫的:
echo 論壇| tr -d "\n" | xxd -i | sed -e "s/ 0x/%/g" | tr -d " ,\n" | tr "[a-f]" "[A-F]"
%C2%DB%CC%B3
##################################
把帶有大寫字母的文件名改為全部小寫
#!/bin/bash
for f in *;do
mv $f `echo $f |tr "[A-Z]" "[a-z]"`
done
##################################
查找連續多行,在不連續的行前插入
#/bin/bash
lastrow=null
i=0
cat incl|while read line
do
i=`expr $i + 1`
if echo "$lastrow" | grep "#include <[A-Z].h>"
then
if echo "$line" | grep -v "#include <[A-Z].h>"
then
sed -i ''$i'i\\/\/All header files are include' incl
i=`expr $i + 1`
fi
fi
lastrow="$line"
done
##################################
====================================================================
----------------------------------
9 服務配置
----------------------------------
samba
修改配置文
/etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = sambaserver
security=share
hosts allow=網絡主機
[file]
comment=home directories
path=/etc/samba/xuesong
public=yes
writable=yes
browseable=yes
重啟
service smb restart
linux 訪問windows 共享
smbclient -L //ip 地址或計算機名
##################################
DNS 服務器
DNS 主配置文件,moon.com 域名,zone.moon.com 域的配置文件
vi /etc/named.conf
zone "moon.com" IN {
type master;
file "zone.moon.com";
allow-update { none; };
};
測試主配置文件
named-checkconf
新建域的配置文件zone.moon.com
vi /var/named/chroot/var/named/zone.moon.com
$TTL 86400
@ IN SOA xs. quanzhou722.163.com. (
20102014
3H
15M
1W
1D
)
IN NS xs.
IN MX 5 mail.
www IN A 192.168.1.209
ftp IN A 192.168.1.209
mail IN A 192.168.1.209
測試moon.com 域配置文件
named-checkzone moon.com /var/named/chroot/var/named/zone.moon.com
建立域配置文件的軟連接
ln -s /var/named/chroot/var/named/zone.moon.com /var/named/zone.moon.com
重啟named 服務
service named restart
設置DNS
vi /etc/resolv.conf
測試解析是否成功
host www.moon.com
nslookup www.moon.com
##################################
ftp 配置
查看vsftp 是否安裝
rpm -qa | grep vsftp
主配置文件
vi /etc/vsftpd/vsftpd.conf
啟動VSFTPD 服務
service vsftpd restart
查看21 端口是否開放
netstat -atln |grep 21
1、匿名用戶是否允許訪問
anonymous_enable=YES
anon_mkdir_write_enable=YES
2、本地用戶管理
local_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
將用戶添加到vsftpd.chroot_list 文件中允許訪問
cat /etc/passwd |grep ":5[0-9][0-9]:" | awk -F : '{print $1}' > /etc/vsftpd.chroot_list
3、虛擬用戶管理
(1)要用到文件數據庫db4
rpm -qa |grep db4
(2)將帳戶放入文本:(奇數行)用戶名(偶數行)密碼
vi zhanghu.dat
(3)生成帳戶的文件數據庫
db_load -T -t hash -f zhanghu.dat /etc/vsftpd/vsftpd_zhanghu.db
(4)修改文件數據庫訪問權限
chmod 600 /etc/vsftpd/vsftpd_zhanghu.db
(5)手工建立虛擬用戶所需的PAM 配置文件
vi /etc/pam.d/vsftpd.zhanghu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_zhanghu
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_zhanghu
(6)添加一個虛擬用戶的入口帳戶
useradd -d /var/ZhanDian -s /sbin/nologin XuNiRuKou
(7)在主配置文件中添加虛擬用戶的配置內容
虛擬用戶的新添加配置
chroot_local_user=YES
guest_enable=YES
guest_username=XuNiRuKou
pam_service_name=vsftpd.zhanghu
(8)在vsftpd.conf 配置文件中指定用戶配置文件的目錄
user_config_dir=/etc/vsftpd/vsftpd_zhandian
(9)建立配置文件中指定用戶配置文件的目錄
mkdir /etc/vsftpd/vsftpd_zhandian
(10)因為入口帳戶是一個本地帳戶,所以要指定虛擬用戶具有本地帳戶的權限,才能讀寫自
己空間中的文件
虛擬用戶就可以就擁有寫權限
virtual_use_local_privs=YES
(11)
touch /etc/vsftpd/vsftpd_zhandian/xuesong
echo "local_root=/var/ZhanDian/xuesong" >> /etc/vsftpd/vsftpd_zhandian/xuesong
(12)
mkdir /var/ZhanDian/xuesong
(13)
chown -R XuNiRuKou:XuNiRuKou /var/ZhanDian/
(14)重啟服務
/etc/init.d/vsftpd restart
(15)客戶端虛擬賬號測試
建立用戶腳本。最好在加上判斷用戶名是否存在
#!/bin/sh
echo 請輸入用戶名
read y
echo $y >> zhanghu.dat
echo 請輸入密碼
read m
echo $m >> zhanghu.dat
db_load -T -t hash -f zhanghu.dat /etc/vsftpd/vsftpd_zhanghu.db
chmod 600 /etc/vsftpd/vsftpd_zhanghu.db
touch /etc/vsftpd/vsftpd_zhandian/$y
echo "local_root=/var/ZhanDian/$y" >> /etc/vsftpd/vsftpd_zhandian/$y
mkdir /var/ZhanDian/$y
chown -R XuNiRuKou:XuNiRuKou /var/ZhanDian/$y
/etc/init.d/vsftpd restart
##################################
httpd 安裝
tar zxvf httpd-2.2.12.tar.gz
cd httpd-2.2.12
./configure --prefix=/usr/local/httpd \
--enable-rewrite
make && make install
ls /usr/local/
groupadd www
useradd -g www -M -s /sbin/nologin www
cd /usr/local/httpd/
vi conf/httpd.conf
服務器開啟在軟件安裝目錄的bin 中
./apachectl start
網頁放在的htdocs 中
開機啟動
vi /etc/rc.d/rc.local
/usr/local/httpd/bin/apachectl start
如果啟動提示
httpd: Could not reliably determine the server fully qualified domain name, using 127.0.0.1 for
ServerName
修改/etc/hosts 計算機名
在httpd.conf 中開啟
ServerName 127.0.0.1:80
編碼設置
AddDefaultCharset UTF-8
AddDefaultCharset GB2312
##################################
mysql 源碼安裝
groupadd mysql
useradd mysql -g mysql -M -s /bin/false
tar zxvf mysql-5.0.22.tar.gz
cd mysql-5.0.22
./configure --prefix=/usr/local/mysql \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--with-mysqld-user=mysql \
--with-extra-charsets=all \
--with-unix-socket-path=/var/tmp/mysql.sock
make && make install
生成mysql 用戶數據庫和表文件,在安裝包中輸入。
scripts/mysql_install_db --user=mysql
vi ~/.bashrc
export PATH="$PATH: /usr/local/mysql/bin"
配置文件,有large,medium,small 三個,根據機器性能選擇
cp support-files/my-medium.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 700 /etc/init.d/mysqld
cd /usr/local
chmod 750 mysql -R
chgrp mysql mysql -R
chown mysql mysql/var -R
cp /usr/local/mysql/libexec/mysqld mysqld.old
ln -s /usr/local/mysql/bin/mysql /sbin/mysql
ln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin
ln -s -f /usr/local/mysql/bin/mysqld_safe /etc/rc.d/rc3.d/S15mysql5
ln -s -f /usr/local/mysql/bin/mysqld_safe /etc/rc.d/rc0.d/K15mysql5
##################################
mysql rpm 安裝
到http://www.mysql.com/downloads/mysql 下載mysql RPM(service 和client),
MySQL-server-community-5.1.51-1.rhel5.i386.rpm 安裝服務端
MySQL-client-community-5.1.51-1.rhel5.i386.rpm 安裝客戶端
MySQL-devel-community-5.1.51-1.rhel5.i386.rpm 用于php 的mysql 安裝
rpm –ivh MySQL-server-community-5.1.51-1.rhel5.i386.rpm
rpm –ivh MySQL-client-community-5.1.51-1.rhel5.i386.rpm
rpm –ivh MySQL-devel-community-5.1.51-1.rhel5.i386.rpm
/etc/init.d/mysqld start
mysqladmin -u root password 'xuesong'
mysql -u root -S /var/lib/mysql/mysql.sock -p
數據目錄/var/lib/mysql
chkconfig --list |grep mysqld
chkconfig --level 3 mysqld on
配置文件(日志\pid)
/etc/my.cnf
ll /usr/bin/mysql*
##################################
mysql 常用命令
啟動mysql 服務
./mysql/bin/mysqld_safe --user=mysql &
登錄mysql 的命令
格式: mysql -h 主機地址-u 用戶名-p 用戶密碼
mysql -h110.110.110.110 -P3306 -uroot -p
mysql -uroot -p -S /data1/mysql5/data/mysql.sock -A --default-character-set=GBK
刷新
flush privileges;
顯示所有數據庫
show databases;
打開數據庫
use dbname;
顯示選中數據庫中所有的表
show tables;
查看表結構
desc tables;
刪除數據庫
drop database name;
刪除表
drop table name;
創建數據庫
create database name;
mysqladmin -h myhost -u root -p create dbname
創建表
create table ka(ka_id varchar(6),qianshu int);
插入字段
alter table name add column accountid(列名) int(11) NOT NULL(字段不為空);
不登陸mysql 插入字段
mysql -uroot -p -S mysql.sock -e "use db;alter table gift add column accountid int(11) NOT
NULL;flush privileges;"
查詢
select 列名稱from 表名稱;
select host,user,password from user;
備份數據庫
mysqldump -h host -u root -p dbname >dbname_backup.sql
mysqlhotcopy 只能備份MyISAM 引擎
/bin/mysqlhotcopy -u root -p
還原數據庫
mysql -h host -u root -p dbname < dbname_backup.sql
登陸mysql 后還原sql 文件
source 路徑.sql
賦予查詢權限(沒有用戶,直接創建)
grant select on db.* to log@"%" Identified by "123456";
賦予所有權限(沒有用戶,直接創建)
grant all privileges on db.* to log@"IP" identified by '123456' with grant option;
更改密碼
update user set password=password('新密碼') where user='root'
mysqladmin -u root password 'xuesong'
mysql 查看所有用戶的語句
select user();
刪除用戶
delete from user where user='sss' and host='localhost' ;
查看主從
show slave status\G;
查看主從復制進程
show processlist;
添加索引解決停mysql 速度慢
ALTER TABLE player ADD INDEX weekcredit_faction_index (weekcredit, faction);
創建主從復制用戶
grant replication slave on *.* to '用戶'@'%' identified by '密碼';
備份表
mysqldump -u root -p -S mysql.sock --default-character-set=utf8 --hex-blob db table1 table1 >
/data/db.sql
查看系統的字符集和排序方式的設定
SHOW VARIABLES LIKE 'character_set_%';
查看mysql 所有參數
show variables;
刪除空用戶
delete from user where user='';
創建表指定存儲引擎的類型:
CREATE TABLE innodb (id int, title char(20)) ENGINE = INNODB
CREATE TABLE myisam (id int, title char(20)) ENGINE = MyISAM
改變現有的表使用的存儲引擎:
ALTER TABLE mytable ENGINE = MyISAM
查詢表引擎
SHOW TABLE STATUS from 數據庫庫名where Name='表名';
SHOW TABLE STATUS from db where Name='innodb';
查看mysql 變量
SHOW VARIABLES;
查詢用戶權限
select host,user,password from user;
查看表的引擎狀態
show table status
##################################
gd 安裝
分別安裝組件libxml、zlib、freetype、libpng、jpegsrc、gd
libxml2-2.6.24.tar.bz2
zlib-1.2.3.tar.gz
freetype-2.2.1.tar.gz
libpng-1.2.10.tar.gz
jpegsrc.v6b.tar.gz
gd-2.0.33.tar.gz
libxml 安裝
tar xzvf libxml2-2.6.24.tar.bz2
tar xvf libxml2-2.6.24.tar
cd libxml2-2.6.24
./configure
make
make install
zlib 安裝
tar xzvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
make
make install
freetype 安裝
tar xzvf freetype-2.2.1.tar.gz
cd freetype-2.2.1
./configure --prefix=/usr/local/php/modules/freetype
make
make install
libpng 安裝
tar xzvf libpng-1.2.10.tar.gz
cd libpng-1.2.10
./configure --prefix=/usr/local/php/modules/libpng
jpeg 安裝
mkdir /usr/local/php/modules/jpeg6
mkdir /usr/local/php/modules/jpeg6/bin
mkdir /usr/local/php/modules/jpeg6/lib
mkdir /usr/local/php/modules/jpeg6/include
mkdir /usr/local/php/modules/jpeg6/man
mkdir /usr/local/php/modules/jpeg6/man/man1
一句創建
mkdir -pv /usr/local/jpeg/{,bin,lib,include,man/man1,man1}
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure --prefix=/usr/local/php/modules/jpeg6 \
--enable-shared \
--enable-static
make
make install
gd 安裝
tar zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd2 \
--with-jpeg=/usr/local/php/modules/jpeg6 \
--with-png=/usr/local/php/modules/libpng \
--with-zlib \
--with-freetype=/usr/local/php/modules/freetype
修改Makefile 文件231 行,重復的第二個freetype 改為libpng
make
make install
php 安裝
tar xvf php-5.1.6.tar
cd php-5.1.bz2.6
./configure --prefix=/usr/local/php \
--sysconfdir=/etc \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-config-file-path=/usr/local/php/lib \
--with-libxml-dir=/usr/local/libxml2 \
--with-zlib \
--with-jpeg-dir=/usr/local/php/modules/jpeg6 \
--with-freetype-dir=/usr/local/php/modules/freetype \
--with-gd=/usr/local/gd2 \
--with-openssl \
--with-regex=php \
--with-gnu-ld \
--with-tsrm-pthreads \
--with-bz2 \
--with-gettext \
--with-db4=/usr \
--enable-ftp \
--enable-bcmath \
--enable-dba \
--enable-sockets \
--enable-soap \
--enable-zend-multibyte \
--enable-mbstring \
--with-curlwrappers \
--with-curl=/usr/local/curl \
--with-pdo-mysql=/usr/local/mysql \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config
make
make install
cp php.ini-recommended /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
在PHP.IN 添加
[eaccelerator]
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so
eaccelerator.shm_size="32"
eaccelerator.cache_dir="/usr/local/cache/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
完成后在/usr/local/httpd/conf/httpd.conf 文件上添加如下一行:
AddType application/x-httpd-php .php .php5
ln -s /usr/local/php/bin/php /sbin/php
vi index.php
<? php
phpinfo();
?>
重啟httpd
/usr/local/httpd/bin/apachectl restart
最后一步重新啟動apache 報如下錯誤:
httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load
/usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore
segment prot after reloc: Permission denied
不關閉SELINUX 的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1
##################################
LINUX 集群
LVS-- ipvsadm 命令參考
ipvsadm 的用法和格式如下: ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p
[timeout]] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C ipvsadm -R ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port [-g|i|m] [-w weight] ipvsadm -d -t|u|f
service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp ipvsadm --start-daemon state [--mcast-interface interface] ipvsadm
--stop-daemon
ipvsadm -h
命令選項解釋:有兩種命令選項格式,長的和短的,具有相同的意思。在實際使用時,兩種都
可以。
-A --add-service 在內核的虛擬服務器表中添加一條新的虛擬服務器記錄。也就是增加一臺新的
虛擬服務器。
-E --edit-service 編輯內核虛擬服務器表中的一條虛擬服務器記錄。
-D --delete-service 刪除內核虛擬服務器表中的一條虛擬服務器記錄。
-C --clear 清除內核虛擬服務器表中的所有記錄。
-R --restore 恢復虛擬服務器規則
-S --save 保存虛擬服務器規則,輸出為-R 選項可讀的格式
-a --add-server 在內核虛擬服務器表的一條記錄里添加一條新的真實服務器記錄。也就是在一個
虛擬服務器中增加一臺新的真實服務器
-e --edit-server 編輯一條虛擬服務器記錄中的某條真實服務器記錄
-d --delete-server 刪除一條虛擬服務器記錄中的某條真實服務器記錄
-L|-l --list 顯示內核虛擬服務器表
其他的選項:-t --tcp-service service-address 說明虛擬服務器提供的是tcp 的服務[vip:port] or
[real-server-ip:port]
-u --udp-service service-address 說明虛擬服務器提供的是udp 的服務[vip:port] or
[real-server-ip:port]
-f --fwmark-service fwmark 說明是經過iptables 標記過的服務類型。
-s --scheduler scheduler 使用的調度算法,有這樣幾個選項rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,-p
--persistent [timeout] 持久穩固的服務。這個選項的意思是來自同一個客戶的多次請求,將被同
一臺真實的服務器處理。timeout 的默認值為300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真實的服務器[Real-Server:port]
-g --gatewaying 指定LVS 的工作模式為直接路由模式(也是LVS 默認的模式)
-i --ipip 指定LVS 的工作模式為隧道模式
-m --masquerading 指定LVS 的工作模式為NAT 模式
-w --weight weight 真實服務器的權值
--mcast-interface interface 指定組播的同步接口
-c --connection 顯示LVS 目前的連接如:ipvsadm -L -c
##################################
VS-NAT 模式
內容服務器的容量10~20
使用保留地址的LAN
雙向重寫
安裝ipvsadm 軟件
內核做個連接
ln -s /usr/src/kernels/2.6.18-53.e15-i686/ /usr/src/linux
安裝軟件
查看ipvsadm 版本
ipvsadm --version
建立腳本/etc/rc.d/lvs
echo "1" > /proc/sys/net/ipv4/ip_forward
#清除ipvsadm 一系列規則
ipvsadm -C
ipvsadm -A -t 外網IP:端口-s rr
ipvsadm -a -t 外網IP:端口-r 內網1 服務器IP:端口-m -w 1
ipvsadm -a -t 外網IP:端口-r 內網2 服務器IP:端口-m -w 1
修改內網服務器ip 和網關,開啟httpd,建立不同頁面測試
缺點不能排除宕機的web 服務器,可使用LVS+Keepalived 組合
##################################
heartbeat 心跳檢測(雙機熱備)
安裝heartbeat 的rpm 包
需要先裝heartbeat-pils 和heartbeat-stonith 兩個包
主節點的配置
安裝完解壓配置文件
rpm -q heartbeat -d
cd /etc/ha.d
cp /usr/share/doc/heartbeat-2.1.3/ha.cf .
cp /usr/share/doc/heartbeat-2.1.3/authkeys .
cp /usr/share/doc/heartbeat-2.1.3/haresources .
查看計算機名,記錄下來
uname -n
vi ha.cf
打開日志記錄文件
logfile /var/log/ha-log
打開心跳檢測
keepalive 2
死亡時間
deadtime 30
warntime 10
initdead 120
用什么協議端口(udp)
udpport 694
使用哪個網卡作為心跳檢測
bcast eth1
備用的IP
ucast eth1 192.168.1.20
主節點服務器
node 主節點計算機名
node 另一個計算機名
ping 外網測試
ping 一個外網的IP
配置驗證模式
vi authkeys
打開
auth1
1 crc
配置虛擬服務
vi haresources
加上一條名稱和IP
計算機名IP httpd
sev1.example.com 222.90.88.88 httpd
hosts 文件要配置上兩個機器的機器名和IP
vi /etc/hosts
222.90.88.10 sev1.example.com sev2
192.168.1.10 sev1
222.90.88.20 sev1.example.com sev2
192.168.1.20 sev1
chmod 600 authkeys
service heartbeat start
在配置備用節點
直接拷貝主節點的文件修改
安裝完進入安裝目錄
cd /etc/ha.d
用sftp 登陸主機
sftp 222.90.88.10
cd /etc/ha.d
get ha.cf
get authkeys
get hare*
bye
只需要修改ha.cf 文件
vi ha.cf
ucast eth1 192.168.1.10
啟動備用節點
service heartbeat start
測試
主節點和負節點建立不同index 頁面
主節點虛擬出外網ip eth0:0
停掉主節點任務
重新訪問
啟動后在訪問
##################################
DR 直接路由模式
同一網段的LAN
內容服務器的容量20 以上
降低LVF 的負載
VIP 服務器的配置腳本
vi /etc/init.d/vip.sh
ifconfig eth0:0 222.90.88.88 broadcast 222.90.88.88 netmask 255.255.255.255 up
route add -host 222.90.88.88 dev eth0:0
ipvsadm -C
ipvsadm -A -t 222.90.88.88:80 -s rr
ipvsadm -a -t 222.90.88.88:80 -r 222.90.88.10 -g
ipvsadm -a -t 222.90.88.88:80 -r 222.90.88.20 -g
ipvsadm
chmod 777 /etc/init.d/vip.sh
/etc/init.d/vip.sh
服務器配置腳本
vi /etc/init.d/lvs.sh
ifconfig lo:0 222.90.88.88 broadcast 222.90.88.88 netmask 255.255.255.255 up
route add -host 222.90.88.88 dev lo:0
echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p
chmod 777 /etc/init.d/lvs.sh
/etc/init.d/lvs.sh
第二臺服務器
sftp 222.90.88.10
get /etc/init.d/lvs.sh
bye
mv lvs.sh /etc/init.d/
/etc/init.d/lvs.sh
測試兩個服務器測試頁面寫入不同內容
分別啟動httpd
真是IP 可以分別訪問不同服務器,訪問虛擬IP88,則互相倫叫
##################################
IP 隧道模式
WAN(或LAN 也可)
內容服務器的容量能到100
vip-server
vi /etc/init.d/vip.sh
ifconfig tunl0 222.90.88.88 broadcast 222.90.88.88 netmask 255.255.255.255 up
route add -host 222.90.88.88 dev tunl0
ipvsadm -C
ipvsadm -A -t 222.90.88.88:80 -s rr
ipvsadm -a -t 222.90.88.88 :80 -r 222.90.88.10 -i
ipvsadm -a -t 222.90.88.88 :80 -r 222.90.88.20 -i
ipvsadm
chmod -R 777 /etc/init.d/vip.sh
/etc/init.d/vip.sh
1web 服務器
ifconfig runl0 222.90.88.88 broadcast 222.90.88.88 netmask 255.255.255.255 up
route add -host 222.90.88.88 dev tunl0
echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_annaunce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_annaunce
sysctl -p
chmod 777 /etc/init.d/lvs.sh
/etc/init.d/lvs.sh
2web 服務器
sftp 222.90.88.10
get /etc/init.d/lvs.sh
bye
mv lvs.sh /etc/init.d/
/etc/init.d/lvs.sh
測試兩個服務器測試頁面寫入不同內容
分別啟動httpd
真是IP 可以分別訪問不同服務器,訪問虛擬IP88,則互相倫叫
##################################
sendmail 郵件服務器
配置DNS 服務器為mail 服務器IP 解析
在配置文件中添加
IN MX 5 mail.
mail IN A 192.168.1.209
重啟服務service named restart
測試
ping mail.xuesong.com
nslookup mail.xuesong.com
mail 服務器上設置DNS 服務器
vi /etc/resolv.conf
安裝軟件
sendmail-8.13.8-8.el5.i386.rpm
sendmail-cf-8.13.8-8.el5.i386.rpm
sendmail-doc-8.13.8-8.el5.i386.rpm
yum install dovecot
m4
sendmail 配置文件目錄:/etc/mail
vi local-host-names
添加xuesong.com
vi sendmai.mc
去掉前面兩個dnl
dnl TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5
LOGIN PLAIN')dnl
修改IP
DAEMON_OPTIONS('Port=smtp,Addr=192.168.1.209, Name=MTA')dnl
生成sendmail 配置文件sendmail.cf
m4 sendmail.mc > sendmail.cf
查看啟動級別
chkconfig --list |grep sas
開啟啟動級別3
chkconfig --level 3 saslauthd on
makemap hash access.db < access
vi /etc/dovecot.conf
打開下面一句話
protocols = imap imaps pop3 pop3s
service sendmail restart
service dovecot restart
group mail
useradd -g mail -M -s /sbin/nologin 用戶名
##################################
JDK 安裝
rpm -qa|grep jdk
確認gcj 的版本號
rpm -qa | grep gcj
卸載gcj
yum -y remove java-1.4.2-gcj-compat
從SUN 下載jdk-1_5_0_14-linux-i586-rpm.bin 或jdk-1_5_0_14-linux-i586.bin
mkdir /usr/java
cd /usr/java
1. jdk-1_5_0_14-linux-i586-rpm.bin 文件安裝
chmod 777 jdk-1_5_0_14-linux-i586-rpm.bin
rpm -ivh jdk-1_5_0_14-linux-i586.rpm
2. jdk-1_5_0_14-linux-i586.bin 文件安裝
chmod u+x jdk-1_5_0_14-linux-i586.bin
./jdk-1_5_0_14-linux-i586.bin
添加環境變量
vi /etc/profile
export JAVA_HOME=/usr/local/java/jdk1.6.0_23
export
CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
reboot 重啟生效
##################################
xen 管理
查看虛擬主機列表
xm list
使用文本方式連接虛擬系統
xm console test
啟動虛擬主機
xm create test
虛擬機和主機切換
ctrl+]
關閉虛擬主機
xm shutdown 主機名
虛擬機克隆(關閉后克隆)
virt-clone -o test -n test1 -f /data/xen/test1.img
虛擬機增加硬盤
dd if=/dev/zero of=/data/xen/test.img bs=1M count=8
編輯原來配置文件,添加新磁盤文件
vi /etc/xen/vm11
name = "vm11"
uuid = "91b0200b-eb41-46d3-1e11-ee2a87035f24"
maxmem = 128
memory = 128
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
disk = [ "tap:aio:/data/vm11.img,xvda,w", "tap:aio:/data/vm11b.img,xvdb,w" ]
vif = [ "mac=00:16:36:75:8a:ea,bridge=virbr0,script=vif-bridge" ]
啟動XEN 虛擬機并登陸測試新加的磁盤
增加虛擬機網卡
cat /etc/xen/vm11
name = "vm11"
uuid = "91b0200b-eb41-46d3-1e11-ee2a87035f24"
maxmem = 512
memory = 128
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
disk = [ "tap:aio:/data/vm11.img,xvda,w" ]
vif = [ "mac=00:16:36:75:8a:ea,bridge=xenbr0,script=vif-bridge",
"mac=00:16:36:75:8a:eb,bridge=xenbr0,script=vif-bridge" ]
====================================================================

轉載于:https://www.cnblogs.com/lsxs-wy/p/6965366.html

總結

以上是生活随笔為你收集整理的运维命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

久久人人爽人人片 | 日韩精品一区在线播放 | 一区二区三区免费在线 | www.国产在线| 午夜精品视频一区 | 免费看一级黄色 | 欧美一级在线观看视频 | 色91av| www色 | 国产一区久久 | 欧美日韩国内在线 | 久久久久久久久福利 | 久久亚洲影院 | 精品一区久久 | 欧美一二区视频 | 免费观看9x视频网站在线观看 | 97视频在线观看网址 | 天天综合天天综合 | 蜜臀一区二区三区精品免费视频 | 日韩大片在线看 | 激情文学丁香 | 成人免费视频免费观看 | 五月天免费网站 | 手机看片久久 | 综合色综合 | 97在线免费 | 午夜精品一区二区三区在线视频 | 福利视频一二区 | 美女福利视频一区二区 | 综合久久一本 | 香蕉看片| 超碰在线97观看 | 一区二区 不卡 | 久草视频在线观 | 在线香蕉视频 | 在线日韩三级 | 激情五月婷婷综合网 | 国产99在线播放 | 成人中文字幕av | 日韩免费一二三区 | 久一久久 | 69av视频在线 | 亚洲欧美国产精品va在线观看 | 午夜久久福利影院 | 国产在线不卡精品 | 欧美成人在线免费观看 | 亚洲日本色 | 国产美女被啪进深处喷白浆视频 | 亚洲高清视频在线 | 日韩电影在线观看中文字幕 | 色综合久久88色综合天天6 | 玖玖爱在线观看 | 99r在线| 色综合久久88色综合天天 | 中文字幕在线看视频国产中文版 | 中文字幕无吗 | a在线播放 | 亚洲欧洲xxxx | 久久综合精品国产一区二区三区 | 午夜视频二区 | 国产69精品久久久久久久久久 | 久久一区二区三区四区 | 久久精品国产免费看久久精品 | 男女激情片在线观看 | 狠狠的干狠狠的操 | 国产麻豆视频免费观看 | 免费看黄在线看 | 91日韩在线| 亚洲成av片人久久久 | 日本久久久久久 | 99操视频| 日韩电影一区二区三区 | 美女视频黄的免费的 | 精品美女视频 | 国产成人精品一区二区在线 | 999电影免费在线观看 | 91精品国产欧美一区二区成人 | 欧美精品一区二区在线观看 | 国产一级片久久 | 国产精品一区二区三区久久 | 91一区啪爱嗯打偷拍欧美 | 久久这里只有精品9 | 不卡的av片 | 日韩欧美在线观看一区二区 | 毛片基地黄久久久久久天堂 | 国模视频一区二区三区 | 国产成免费视频 | 在线精品视频免费播放 | 深爱激情综合网 | 日日婷婷夜日日天干 | 中文字幕在线观看网站 | 久久久久成人免费 | 亚洲一区二区三区miaa149 | 免费看毛片在线 | 在线观看中文字幕2021 | 日韩精品欧美一区 | 国产精品美女 | 国产资源精品 | 99精品视频中文字幕 | japanesefreesex中国少妇 | 欧美精品久久久久性色 | 精品国产一区二区三区久久久蜜臀 | 久久婷婷一区二区三区 | 国产看片免费 | 国产免费一区二区三区最新6 | 91九色最新 | 99精品系列| 国产精品 中文字幕 亚洲 欧美 | 玖草影院 | 97国产在线 | 亚洲美女精品区人人人人 | 欧美一级xxxx | 欧美性色xo影院 | www亚洲一区 | 欧美伦理电影一区二区 | 亚洲免费av观看 | 欧美黄污视频 | 国产成人精品999在线观看 | 亚洲人视频在线 | 国产亚洲精品久久19p | 国产精品自产拍在线观看网站 | 国产精品一区免费在线观看 | 日韩成年视频 | h动漫中文字幕 | 成年人免费av网站 | 久久一视频 | 综合天堂av久久久久久久 | a久久免费视频 | 欧美性色综合网站 | 日韩偷拍精品 | 涩涩网站在线观看 | 日韩欧美视频在线观看免费 | 天天操月月操 | 性色av一区二区三区在线观看 | 色婷婷久久久综合中文字幕 | 日韩黄色在线 | 日韩欧美视频一区 | 亚洲人在线视频 | 超碰97公开 | 91视频在线看 | 国产精品免费一区二区三区在线观看 | 欧美性超爽 | 国产综合精品一区二区三区 | 在线国产精品视频 | 婷婷色狠狠 | 亚洲在线精品视频 | 日本视频久久久 | 午夜精品一区二区三区在线 | 亚洲国产中文字幕在线观看 | 亚洲午夜久久久久久久久电影网 | 欧美在线视频免费 | 伊人网站| 高清国产在线一区 | 国产精品成人久久 | 综合在线观看色 | 亚洲精品久久久久999中文字幕 | 国产探花在线看 | 成人网在线免费视频 | 日本中文字幕在线看 | 91精品在线麻豆 | 97人人添人澡人人爽超碰动图 | 三级av网 | 久久久久成人精品免费播放动漫 | 天天综合导航 | 97天堂网 | 日韩丝袜在线观看 | 国产精品免费麻豆入口 | 国产美女精品 | 在线观看国产永久免费视频 | 天躁狠狠躁 | 日韩在线观看高清 | 片黄色毛片黄色毛片 | 精品久久在线 | 久久精品永久免费 | 男女靠逼app | 久久艹人人| 国产日韩精品久久 | 在线看v片成人 | 久久久久看片 | 精品国产观看 | 黄色av成人在线观看 | 在线国产能看的 | 黄色精品免费 | 亚洲影视九九影院在线观看 | 欧美黄色软件 | 免费看的黄色录像 | 视频高清 | 成人毛片在线观看视频 | 久99久精品视频免费观看 | 久久免费视频一区 | 欧美日韩国产在线一区 | 五月天婷亚洲天综合网精品偷 | 国产96在线观看 | 丁香久久激情 | 国产中文在线视频 | 日韩中文幕 | 国产精品毛片一区 | 久久精品1区 | 手机在线欧美 | 欧美一级免费黄色片 | 国产免费av一区二区三区 | 91成人精品在线 | 中文字幕你懂的 | 久久久久国产一区二区三区 | 久久免费视频网 | 国产精品12| 丁香婷婷久久久综合精品国产 | bbbb操bbbb | 97色婷婷人人爽人人 | 狠狠操狠狠插 | 久久免费视频一区 | 欧美国产亚洲精品久久久8v | 香蕉视频网址 | 国产精品久久久久久久久久东京 | 成人小视频在线观看免费 | 成人黄色大片在线观看 | 久久特级毛片 | 伊人色综合久久天天 | 国产毛片在线 | 2018亚洲男人天堂 | 国产黄色片久久久 | 国产美女被啪进深处喷白浆视频 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 亚洲女裸体 | 国产精品午夜久久久久久99热 | 99免费在线视频观看 | 91在线视频免费观看 | 国产免费又黄又爽 | 97超碰人人在线 | 欧美一区在线看 | 婷婷综合亚洲 | 国产成人61精品免费看片 | 久久久91精品国产一区二区精品 | wwwwww黄 | 热99在线视频 | 久久综合干 | 欧美日韩视频一区二区三区 | 精品在线一区二区 | 日操操| 在线免费av网| 456免费视频 | 亚洲精品999 | 久久91网 | 国产高清无av久久 | 亚洲国产伊人 | 一区二区三区四区精品视频 | 日韩电影一区二区在线 | 99视频精品全部免费 在线 | 久久不射电影院 | 日本久久成人中文字幕电影 | 在线免费观看国产视频 | 欧美极度另类性三渗透 | 久久综合久色欧美综合狠狠 | 99久久精品国产欧美主题曲 | 亚洲精品国产精品国自产观看 | 天天射天天干天天操 | 国产视频2021| 午夜精品婷婷 | 99欧美 | 国产无遮挡又黄又爽馒头漫画 | 亚洲女同ⅹxx女同tv | 久久亚洲在线 | 精品高清美女精品国产区 | 在线电影 一区 | 久久精品电影 | 国产成人精品一区二区三区在线观看 | 中文字幕免费一区 | 久久免费视频国产 | 日韩剧情 | 五月婷婷操 | 激情深爱 | 亚洲精品人人 | av中文在线影视 | av在线免费观看黄 | 国产精品久久久久久久久久久久午夜 | 午夜精品久久久久久久爽 | 亚洲一区二区高潮无套美女 | 99精品视频在线观看视频 | bbbb操bbbb| 国产 日韩 在线 亚洲 字幕 中文 | 成人免费在线视频 | 欧美久久久久久久久久 | 黄色av网站在线观看免费 | 亚洲精品视频网站在线观看 | 欧美精品乱码99久久影院 | 久久久久久影视 | 欧美精品一区在线发布 | 久久国产精品免费一区 | 欧美福利在线播放 | 高清av免费看 | 色射爱| 国产在线毛片 | 色噜噜日韩精品一区二区三区视频 | 亚洲婷婷综合色高清在线 | 久久激情视频网 | 美女在线免费观看视频 | 日本黄色免费在线观看 | 开心婷婷色| 成人毛片一区二区三区 | 国产传媒一区在线 | 国产成人久久精品 | 天天激情天天干 | 久久香蕉影视 | 亚洲高清在线 | 午夜黄色大片 | 日韩久久久久久久久久久久 | 国产精品高潮久久av | 操处女逼| 天天操天天操天天操天天操天天操 | 99综合电影在线视频 | 激情综合网天天干 | 制服丝袜在线 | 国产中文字幕在线免费观看 | 国产在线高清视频 | 91网页版免费观看 | 欧洲精品久久久久毛片完整版 | 新版资源中文在线观看 | 精品久久一 | 在线免费观看麻豆视频 | 国产日韩欧美自拍 | av成人免费在线 | 欧美一二三区在线播放 | 91激情视频在线观看 | 人人玩人人添人人澡97 | 国产一级片直播 | 国内丰满少妇猛烈精品播放 | 精品国产一二三 | 免费视频区 | 中文字幕999 | 欧美综合在线视频 | 国产精品久久久久久69 | 欧美夫妻性生活电影 | 欧美日韩在线精品 | 日韩av综合网站 | 欧美在线视频一区二区三区 | 久久男人中文字幕资源站 | 欧美精品在线观看一区 | 国产人在线成免费视频 | 插综合网| 日韩羞羞| 欧美久草视频 | 激情欧美xxxx | 欧美成人视 | 国产精品成久久久久 | 亚洲高清视频一区二区三区 | 国产丝袜网站 | 国产精品久久久久一区二区三区共 | 六月丁香社区 | 久久免费国产电影 | 超碰97国产精品人人cao | 精品久久久免费视频 | 天天操天天舔天天干 | 亚州精品在线视频 | 激情欧美xxxx | 中文欧美字幕免费 | 国产夫妻自拍av | 精品久久1 | 一区二区三区四区五区六区 | 久久夜色网 | 色婷婷亚洲综合 | 成年人视频在线免费 | 韩国一区二区在线观看 | 久久久一本精品99久久精品66 | 国产高清免费在线观看 | 国产精品久久久久永久免费看 | 亚洲va韩国va欧美va精四季 | 最新日韩在线 | 九九亚洲视频 | 成人网中文字幕 | 久久久影院官网 | 精品乱码一区二区三四区 | 中文字幕在线看视频国产中文版 | 最近日本韩国中文字幕 | 欧美日韩性生活 | 欧美精品黑人性xxxx | 亚洲国产精品va在线看 | 欧美精品一区二区三区一线天视频 | 超碰人人干人人 | 在线观看色网站 | 欧美亚洲精品在线观看 | 综合久久久久久久 | 日韩精品视频在线观看网址 | 激情综合六月 | 狠狠操天天操 | 国产91在线免费视频 | 久久精品日产第一区二区三区乱码 | 国产成在线观看免费视频 | 亚洲成av人影院 | 欧美 日韩 视频 | 国产亚洲精品美女 | 激情自拍av| 99久久精品免费看国产一区二区三区 | 国产在线a免费观看 | 国产h在线播放 | 久久精品观看 | 久久精品网址 | 亚洲成人精品国产 | 亚洲一区二区三区精品在线观看 | 人人射人人插 | 中文字幕在线观看的网站 | 国产免费二区 | 日本乱视频 | 又黄又刺激又爽的视频 | 国产视频观看 | 精品国产亚洲一区二区麻豆 | 亚洲国产片色 | 欧美日一级片 | 国产视频999 | 日本91在线 | 国产精品成人一区二区三区吃奶 | 韩国av免费观看 | 国产一区二区在线视频观看 | 黄色av成人在线 | 成人免费视频视频在线观看 免费 | 波多野结衣在线观看视频 | 91看片一区二区三区 | 日韩在线理论 | 婷婷色综| 婷婷五天天在线视频 | 狠狠色噜噜狠狠 | 久久综合五月天 | 视频一区二区视频 | 欧美激情精品久久久久久免费印度 | 国产成人精品网站 | 蜜臀一区二区三区精品免费视频 | 亚洲综合导航 | 国产一级片不卡 | 国产一级电影 | 精品主播网红福利资源观看 | 国产一区自拍视频 | 黄色三级免费网址 | 五月综合激情婷婷 | 超级碰碰碰碰 | 国产精品网红直播 | 亚洲精品国产成人 | 一区二区三区国 | 日韩中文字幕视频在线 | 国产亚洲在线 | 在线播放你懂 | 免费视频久久 | 天天摸夜夜操 | 免费亚洲精品 | 69中文字幕| 精品国产乱码久久久久久1区二区 | 久久久久久久久久久久久9999 | 黄色成人在线观看 | www.婷婷com | 国产精品视频app | 亚洲日韩中文字幕 | 久久久久久国产精品免费 | 91黄视频在线观看 | 九色激情网 | 色诱亚洲精品久久久久久 | 在线蜜桃视频 | 久久综合久久综合这里只有精品 | 天天天天天天操 | 激情欧美日韩一区二区 | 欧美激情精品久久久久久免费 | 欧美日韩国产一区二区在线观看 | 韩国在线一区二区 | 免费看的黄色小视频 | 国产亚洲精品无 | 免费99| 日韩高清片| 天天色天天干天天 | 天天操天天色综合 | 久久久久久久久久久电影 | 天天操天天干天天摸 | 2019天天干夜夜操 | 国产在线视频导航 | 免费看的黄网站软件 | 在线精品国产 | 九九热精品在线 | 国产三级视频 | 精品96久久久久久中文字幕无 | 亚洲欧美日韩国产精品一区午夜 | 91精品秘密在线观看 | 亚洲精品伦理在线 | 色a综合 | 97国产视频 | 国产精品成久久久久 | 激情深爱| 免费看黄在线网站 | 国产v亚洲v | 国产99久久久国产精品免费看 | 欧美精品久久人人躁人人爽 | 五月天综合婷婷 | 91cn国产在线| 久久综合激情 | 午夜av一区二区三区 | 亚洲精品视频中文字幕 | www.啪啪.com | 青草视频网| 狠狠插天天干 | 欧美一区二区三区免费看 | 不卡的av在线 | 视频在线观看一区 | 国产xx视频 | 亚洲另类视频 | 国产1级视频 | 日韩免费观看视频 | 一级大片在线观看 | 黄色一级在线免费观看 | 91九色成人 | 国产精品一区二区三区观看 | 国产成人一区二区三区电影 | 成人av影视观看 | 女人18毛片90分钟 | 国精产品999国精产 久久久久 | 久久久久久久国产精品 | 国产精品视频观看 | 午夜视频一区二区三区 | 在线观看免费成人av | 久久久精品一区二区三区 | 中文字幕亚洲综合久久五月天色无吗'' | 最近中文字幕完整高清 | 亚洲精品久久久久久久不卡四虎 | 日韩中文字幕在线不卡 | 中文字幕久久精品亚洲乱码 | 国产色视频网站2 | 亚洲精品在线免费 | 国产一线天在线观看 | 丁香久久| 国产大陆亚洲精品国产 | 久久久久这里只有精品 | 久久久免费观看视频 | 日本黄色免费大片 | 亚洲japanese制服美女 | 国产精品免费成人 | 欧美成人黄色片 | 激情偷乱人伦小说视频在线观看 | 国产精品99久久久久久久久 | 不卡精品视频 | 六月丁香激情综合 | 精品久久久久免费极品大片 | 99亚洲天堂| 福利精品在线 | 久草在线视频在线观看 | 色姑娘综合天天 | 久久美女精品 | 欧美激情奇米色 | 青草视频在线播放 | 99精品一区 | 精品免费国产一区二区三区四区 | 欧美日韩中文在线观看 | 中文字幕视频播放 | 97视频一区| 四虎成人精品永久免费av九九 | 不卡的av | 久久精品伊人 | 天天天天色射综合 | 日韩二区精品 | 日韩av二区| 精品九九久久 | 欧美一级片免费 | 麻豆国产精品va在线观看不卡 | 美女在线国产 | 91插插影库| 成人在线播放视频 | 国产91在线免费视频 | 亚洲一区精品人人爽人人躁 | 亚洲精品国产片 | 国产真实精品久久二三区 | 9797在线看片亚洲精品 | 国产一区二区三区四区大秀 | 欧美成人影音 | 中文字幕在线观看2018 | 国产福利精品视频 | 国产无遮挡又黄又爽馒头漫画 | 在线观看中文字幕视频 | 精品国产成人在线影院 | 叶爱av在线 | 国产精品九九热 | 成人av.com| 国产成人精品一区二 | 97免费| 成av在线| 亚洲一级理论片 | 成人网在线免费视频 | 高清在线一区二区 | 在线观看网站av | 日韩有码网站 | www久草 | 久久看片 | 狠狠色丁香久久综合网 | 中文字幕精品一区 | 国产亚洲婷婷 | 国产亚洲视频在线 | 日韩.com| 五月天电影免费在线观看一区 | 久久99精品久久久久久久久久久久 | 91免费网站在线观看 | 国产精成人品免费观看 | 欧美日韩三区二区 | 亚洲精品视频在线观看免费 | 日韩av电影一区 | 日韩精品久久久免费观看夜色 | 国产黄a三级三级 | 欧美一级小视频 | 天天操狠狠操 | 国产精品嫩草影院123 | 在线看片日韩 | 日韩欧美一区二区三区在线 | 欧美精品久久久久久久久久 | 国产精品初高中精品久久 | 91精品第一页 | 91成年人网站 | 国产精品一码二码三码在线 | 天天干一干 | 国产永久免费高清在线观看视频 | 免费高清av在线看 | 成人影视免费看 | 国产裸体视频网站 | 天天干天天上 | 亚洲在线 | 免费视频二区 | 97成人精品视频在线观看 | 在线之家免费在线观看电影 | 国产成人一区二区三区影院在线 | 久久艹免费 | 人人爽人人看 | 五月婷婷综合在线 | 婷婷色网址| 九九影视理伦片 | 国产精品99久久久久久久久 | 福利二区视频 | 一级a毛片高清视频 | 中文字幕第一页在线视频 | 亚洲成人免费在线 | 伊人色综合久久天天网 | 亚洲激情中文 | 狠狠干中文字幕 | 欧美日韩国产精品一区二区亚洲 | 成人久久18免费网站 | 国产高清视频色在线www | 国产精品日韩精品 | 久久精品在线视频 | 国产高清在线精品 | 久久精品伊人 | 最近中文字幕在线 | 丁香六月婷 | 亚洲国产成人精品电影在线观看 | 日韩 精品 一区 国产 麻豆 | 99re国产视频 | 精品国产乱码久久久久久1区二区 | 久久久久免费精品 | 超碰97成人| 在线观看日本高清mv视频 | 中文字幕在线专区 | 91桃色视频 | 欧美激情视频三区 | 中文在线 | 国产成人三级在线观看 | 久久久精品一区二区三区 | 极品国产91在线网站 | 国产不卡网站 | 成人免费在线看片 | 丁香六月婷 | 久久久久日本精品一区二区三区 | 黄网站大全 | 91插插影库| 国产精品入口传媒 | 草久在线视频 | 91日韩国产| 国产不卡一区二区视频 | 久久精品免费 | 日韩欧美在线观看一区二区三区 | 国产精品麻豆果冻传媒在线播放 | 日韩av进入 | 又长又大又黑又粗欧美 | 日韩在线二区 | 久久久久久久久久久久影院 | 综合国产在线 | 亚洲国产电影在线观看 | 日韩精品一区二区三区在线播放 | 国产精品一区二区白浆 | 麻豆传媒视频在线 | 一区二区不卡视频在线观看 | 精品一区二区在线免费观看 | 人人狠狠综合久久亚洲婷 | 在线看不卡av| 中文字幕在线观看完整版 | 久久久久久久免费 | 在线电影91 | 丁香综合五月 | 婷婷色在线视频 | 香蕉在线观看 | 久久免费资源 | 日韩欧美成人网 | 午夜久久成人 | 黄色特一级片 | 久久99久久久久久 | 国产精品自拍在线 | 亚洲伊人成综合网 | 亚洲最新视频在线 | 中文字幕亚洲精品在线观看 | 欧美日韩视频网站 | 免费看国产视频 | 特级毛片网站 | 超碰在线网 | 久久国产精品久久w女人spa | 在线天堂v| 亚洲国产视频在线 | 日韩视频一区二区三区在线播放免费观看 | 天堂在线视频中文网 | av在线网站观看 | 5月丁香婷婷综合 | 色资源在线 | 免费网站在线观看成人 | 高清不卡一区二区在线 | 亚洲日本在线视频观看 | 色婷婷久久久综合中文字幕 | 国产99久久九九精品免费 | 超碰97人 | 中文字幕成人在线 | 久久婷婷精品视频 | 99爱在线观看 | 日韩精品中文字幕在线观看 | 四虎在线免费观看视频 | 久久国产精品99久久久久久进口 | 中文在线中文资源 | 欧美日韩精品网站 | 色综合久久综合网 | 黄色a一级视频 | 成人综合日日夜夜 | 综合在线亚洲 | 亚洲欧洲精品一区二区精品久久久 | 黄色小说在线免费观看 | 婷婷综合亚洲 | 五月开心六月婷婷 | 亚洲成a人片77777kkkk1在线观看 | 人人爽久久久噜噜噜电影 | 色播99 | 欧美夫妻性生活电影 | 精品视频久久 | 九九久久精品视频 | 久久 一区 | 在线观看av的网站 | 久草在线国产 | 插插插色综合 | 激情五月五月婷婷 | 国产一卡二卡在线 | 91九色蝌蚪| 久久久精品久久日韩一区综合 | 91免费看黄色 | 一区二区三区视频在线 | 亚洲综合视频在线观看 | 樱空桃av | 综合网久久 | 欧美日韩一区二区三区在线免费观看 | 午夜精品久久久久久久久久久 | 高清日韩一区二区 | 亚洲高清av | 久久久亚洲国产精品麻豆综合天堂 | 超级碰视频 | 天天操天天操天天操天天操天天操 | 欧美日韩高清一区二区 国产亚洲免费看 | 免费看国产曰批40分钟 | 国产精品视频全国免费观看 | 婷婷六月天综合 | 亚洲电影第一页av | 美女精品网站 | 亚洲va欧美va | 精品国产综合区久久久久久 | 国产色啪 | 国产精品免费久久久久影院仙踪林 | 99精品色 | 亚洲高清在线视频 | 欧美激情视频久久 | 看全黄大色黄大片 | 日韩欧美一区二区不卡 | 九九99靖品| 国产精品18久久久 | 日本精品视频在线观看 | 天天色官网 | 午夜精品久久久久99热app | 午夜视频在线观看一区二区三区 | 天天操天天是 | 国产精品 中文字幕 亚洲 欧美 | 超碰av在线播放 | 亚洲黄色免费在线看 | 国产精品成人自拍 | 中文字幕av在线播放 | 黄色精品网站 | 51久久夜色精品国产麻豆 | 色综合久久88色综合天天人守婷 | 久久久精品福利视频 | 国产三级精品三级在线观看 | 午夜视频在线观看一区二区三区 | 五月开心六月婷婷 | 久久久久欠精品国产毛片国产毛生 | 香蕉视频国产在线观看 | 2021av在线 | 亚洲作爱 | 国内视频在线观看 | 91爱爱网址 | 久久久久久久影视 | 欧美黑吊大战白妞欧美 | 91丨九色丨首页 | 色婷婷综合在线 | 色偷偷av男人天堂 | 国产精品中文字幕在线观看 | 91亚洲国产 | 久久久亚洲网站 | 国产一级淫片在线观看 | 亚洲视频在线播放 | 日韩欧美成 | 色综合欧洲 | 狠狠色狠狠色综合系列 | 91热| 久久久久久毛片精品免费不卡 | 成年人免费在线播放 | 在线观看国产成人av片 | 色婷婷综合五月 | 免费看精品久久片 | free,性欧美| 中国成人一区 | 日韩 在线 | 99热在| 成人免费看黄 | 日本中文字幕网址 | 日韩欧美电影在线观看 | www.eeuss影院av撸| 国产黄色成人 | 国产精品久久久久久久久久东京 | 97成人在线免费视频 | 欧美日韩在线免费观看 | 久久夜视频| 日韩欧美在线一区 | 日韩欧美精品在线观看视频 | www.av小说 | 成人在线视频在线观看 | 亚洲精品中文字幕在线 | 久久久久久不卡 | 国产精品免费在线观看视频 | 最近免费中文字幕mv在线视频3 | 国产传媒一区在线 | 亚洲精品456在线播放第一页 | 国产很黄很色的视频 | av在线a| 2022国产精品视频 | 久草亚洲视频 | 天天人人综合 | 午夜av剧场 | 在线视频a| 四虎在线免费观看 | 丁香激情综合久久伊人久久 | 中文字幕一二 | 亚洲不卡123| 99综合电影在线视频 | 色综合久久88色综合天天免费 | 亚洲成av人片 | 日韩一级精品 | 色婷婷狠| 欧美中文字幕第一页 | 国产精品大片 | 久久久国产日韩 | 亚州精品一二三区 | 国产精品乱码一区二区视频 | 国产日韩精品一区二区三区 | 国产精品精品国产色婷婷 | 国产日产高清dvd碟片 | 色婷婷啪啪免费在线电影观看 | 日本丶国产丶欧美色综合 | 91精品久久久久久久91蜜桃 | 久久se视频 | 黄色精品国产 | 美女视频黄免费的 | 精品久久久久久久久亚洲 | 正在播放国产一区 | 人人澡人人添人人爽一区二区 | 西西444www | 91麻豆精品国产自产在线 | 黄a在线 | 午夜av免费 | 国产99久久久精品 | 久久男人免费视频 | 99r在线| 久久久精品国产一区二区电影四季 | 91av精品| 欧日韩在线视频 | 2021久久 | 国产精品k频道 | 国产短视频在线播放 | 波多野结衣一区二区 | 日韩三级av | 久久在线免费观看 | 国产色在线,com| 狠狠色狠狠色合久久伊人 | 激情五月综合 | 69视频国产 | 伊人狠狠操 | 香蕉视频日本 | 国产精品免费观看视频 | 久久免费视频8 | 色婷婷导航 | 亚州国产精品久久久 | 久久国产高清 | 免费网站黄 | 久久99这里只有精品 | 国产精品成人一区二区三区吃奶 | 午夜国产一区二区 | 爱情影院aqdy鲁丝片二区 | 六月丁香激情综合色啪小说 | 国产精品99免费看 | 精品夜夜嗨av一区二区三区 | 麻豆免费观看视频 | 深爱激情五月婷婷 | 欧美日韩在线免费视频 | 国产一级电影在线 | 久草在线费播放视频 | 久久激情小视频 | 国产精品一区久久久久 | 99国内精品久久久久久久 | 91人人澡人人爽人人精品 | 国产原创中文在线 | 西西www4444大胆在线 | 毛片网站在线观看 | av在线免费网 | 久久国产精品影片 | 五月天天色 | 免费精品视频在线观看 | 91黄色成人 | 久操视频在线 | 久久av一区二区三区亚洲 | 日韩欧美精品一区二区三区经典 | 免费特级黄毛片 | 久久久久北条麻妃免费看 | 久久综合电影 | 中文在线8资源库 | 在线免费黄 | 中文字幕一区二区三区在线观看 | www.天天干 | 国产黄色免费观看 | 人人玩人人添人人 | 成人av地址 | 激情中文在线 | 视频国产精品 | 国内精品在线一区 | 在线观看mv的中文字幕网站 | 成人动漫一区二区三区 | 在线看岛国av| 国产精品第十页 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 日韩专区一区二区 | 亚洲精品高清视频在线观看 | 久久久久网站 | 91亚洲欧美 | 日本h视频在线观看 | 免费三级av| 日韩精品视频在线观看网址 | 欧美日韩大片在线观看 | 国产电影黄色av | 最新超碰在线 | 新版资源中文在线观看 | 免费h精品视频在线播放 | 国产精品原创av片国产免费 | 欧美资源 | 四虎在线观看 | 日韩在线观看你懂得 | 日韩亚洲精品电影 | 国产成人亚洲在线观看 | 日韩午夜高清 | 色资源二区在线视频 | 激情综合中文娱乐网 | 久久久久久久久久影视 | 97国产在线 | 欧美精品在线视频观看 | 91亚色免费视频 | 可以免费看av| 婷婷四房综合激情五月 | 国产一区二区在线播放视频 | 国内少妇自拍视频一区 | 国产精品18videosex性欧美 | 亚洲成人黄色在线观看 | 日韩理论在线观看 | 久久久国产精品人人片99精片欧美一 | 91精品国 | 国产中文字幕一区二区三区 | 免费国产黄线在线观看视频 | 最近中文字幕大全中文字幕免费 | 伊人成人精品 | 久久久久女教师免费一区 | 操操操日日 | 亚洲成av人片在线观看无 | 97在线观看免费高清完整版在线观看 | 天天干天天拍天天操天天拍 | 日韩com| 热久久免费国产视频 | 国产精品国产三级国产不产一地 | 国产一级电影 | 久久超 | 黄色软件在线看 | 国产视频一 | 曰本三级在线 | 国产精品一级视频 | 国产亚洲一区二区在线观看 | 亚洲精品免费看 |