工作上使用Linux運維部署時,常用的命令詳解
linux 經驗:
1.linux 伺服器“只能”掛載,不能關機
2.登入完伺服器一定要logout
common sense:
常見的UNIX:
AIX --IBM,
HP-UX --HP,
solaris --SUN
常見的linux:
1. fedora RedHat CentOS SUSE gentoo 紅旗 mandriva turbolinux RHEL enterprise
2. Debian Ubuntu
1. Linux分割槽包括主分割槽,擴充套件分割槽,邏輯分割槽,swap等
一般/boot和swap分割槽為主分割槽,其他為邏輯分割槽,但是也不一定。根分割槽一般為8G
/dev/cdrom -- 光碟機
/dev/sda -- scsi硬碟
主分割槽為sda1-sda4 ----第一塊scsi硬碟的1-4個主分割槽
邏輯分割槽為sda5-sda16
1~4為主分割槽或擴充套件分割槽
5~7為邏輯分割槽
2.
ifconfig eth0 --檢查網絡卡ip是否生效
ifconfig eth0 ip -- 臨時設定網絡卡ip
service network restart -- 網絡卡重啟
telnet ip 埠號 -- 檢視服務埠是否開啟
3. ubuntu中沒有預設為superman,如果想獲得管理員許可權,需要用sudo su ->根據提示輸入密碼
4. 安裝原始碼包:.tar.gz
1.解壓:sudo tar zxvf 壓縮包名 --也可以是tar zvxf,看到解壓過程
2.也可以解壓縮包到home:->cd /home->cd 資料夾名字/->./vmware-install.pl,然後下一步下一步
3. 檢視結果 lsmod | grep vmblock
5. 設定共享資料夾:
共享資料夾被建立在/mnt/hgfs目錄下,新增工具:sudo apt-get install open-vm-dkms,然後:sudo mount -t vmhgfs .host/ /mnt/hgfs,
這時/mnt/hgfs裡就有share檔案夾了
6. ls -- 列出當前目錄下的所有資料夾和檔案
ls -l --長格式顯示 -> long
ls -a --顯示所有檔案(包含隱藏檔案) ->all
ls -al --長格式顯示(包含隱藏檔案) ->all long
ls -hl --檔案大小顯示為常見大小單位 B KB MB ->human-readable
ls -ahl --
ls -d --檢視目錄屬性 -- 貌似沒作用
附加:
ll -- 同ls -l
ls -lR 目錄 --遞迴檢視目錄
ls -l 檔名 -- 檢視檔案屬性
7. cd ~ 進入當前使用者的家目錄 /root /home/aa/
cd (回車)-- 到家目錄
cd - 進入上次目錄
cd .. 進入上一級目錄
cd . 進入當前目錄
pwd --顯示當前所在目錄--得到絕對路徑
mkdir 目錄名 --建立目錄
mkdir -p 11/22/33/44/ 遞迴建立目錄
mkdir ariel briel criel --同時建立多個目錄,中間用空格隔開,同時建立多個檔案也是如此
mkdir dirctory{1..8} -- 集合操作
touch 檔名 --建立檔案,再次touch是修改時間
touch file{1..10} --{}集合操作符 // 建立file1-file10十個檔案
vi file1(檔名) --修改檔案
rmdir 目錄名 --刪除空目錄
rm 檔名 --刪除檔案 --提醒是否刪除空(一般)檔案...選擇y or n
rm -rf 目錄名 --刪除目錄和檔案
rm -r 目錄名 --遞迴刪除目錄
rm -f 目錄名 --強制刪除
tree 目錄名 --顯示指定目錄下所有內容的目錄樹
-a -- 顯示檔案加目錄樹
8. linux常見目錄
普通使用者的Desktop -- /home/ariel/Desktop
root使用者的桌面在 -- /root/Desktop
/ 根目錄
/bin 命令儲存目錄(普通使用者就可以讀取的命令)
/boot 啟動目錄,啟動相關檔案
/dev 裝置檔案儲存目錄 -- device裝置,裝置
/etc 配置檔案儲存目錄 --
/home 普通使用者的家目錄
/lib 系統庫儲存目錄 -- library 圖書館
/mnt 系統掛載目錄
/media 掛載目錄
/root 超級使用者的家目錄
/tmp 臨時目錄 --temporary 臨時的,暫時的
/sbin 命令儲存目錄(超級使用者才能使用的目錄)
/proc 直接寫入記憶體的
/sys
/usr 系統軟體資源目錄
/usr/bin/ 系統命令(普通使用者)
/usr/sbin/ 系統命令(超級使用者)
/var 系統相關文件內容
/var/log/ 系統日誌位置
/var/spool/mail/ 系統預設郵箱位置
9. 如果配置靜態ip,則新增如下內容:
auto eth0
iface eth0 inet static
address 192.168.33.201
netmask 255.255.255.0
gateway 192.168.33.1 (在新開啟的檔案中直接加入這些內容 然後儲存退出即可)
要是配置生效,需要重啟網絡卡:
ifconfig eth0 down
ifconfig eth0 up
若還有沒有配置成功,則需重啟下網路服務
/etc/init.d/network restart
service network restart
10. ctrl+c 強制中斷
11. clear 清空當前螢幕,->ctrl+l
12. centos中設定ip:
setup->網路配置 -- tab鍵切換出來
13. touch 檔名 --建立檔案,或者修改檔案時間
rm -rf ——刪除檔案
14. cat 檔名 --檢視檔案內容
-n --列出行號
15. more 檔名 ——分屏顯示內容 空格——向下翻頁 b——向上翻頁 q——退出
16. head 檔名 ——顯示檔案頭
-n (1.2.3)行數 指定顯示檔案頭幾行
17. tail 檔名 ——顯示檔案尾部
-n 同上
18. ln -s —快捷方式
-- 軟連線
ln -s 原始檔 目標檔案 檔名都必須寫絕對路徑 [link]
-- 硬連線
ln 原始檔 目標檔案 檔案都必須寫絕對路徑 [link]
19. root使用者的桌面在/root/Desktop
20. cp -a 原始檔 目標位置 -- -pdr 複製目錄加檔案連帶檔案屬性
-r ——複製目錄連帶子目錄
-p -連帶檔案屬性複製
-d 若原始檔是連結檔案,則複製連結屬性
21. mv 原始檔 目標位置 --移動檔案或目錄
mv 原始檔名 新檔名 --修改檔名或者目錄
22. man 命令名 -- 幫助命令 --進入man以後,輸入q退出
命令 --help 檢視命令的常用選擇 --兩個-
23. whereis 命令名 -- 查詢命令的位置
which 命令 -- 查詢命令的命令,能看到相關別名,但不能檢視檔案
locate 檔名 -- 在儲存檔名的資料庫中按檔名查詢
updatedb -- 強制更新資料庫
24. z --搜尋命令
find 查詢位置 -name 檔名 -- 如果沒有指定目錄,則表示在當前目錄下查詢
-user 使用者名稱
-group 組名
-nouser 找沒有屬主的檔案
-size 按照檔案大小 +50k:大於50K , -50k:小於50k, 50k:等於50k --預設單位是資料塊
大於50M小於100M-- +50M -a -size -100M -M必須大寫 ,k必須小寫
-type 型別 按照檔案型別查詢f:普通 d:目錄 |:連結
--- 如果要加萬用字元,要在萬用字元外加引號 -name "^aabb*"
eg: find /root -perm 644 按照許可權查詢
-iname 按照檔名查詢,不區分大小寫
-mtime 修改時間
-inum --inode - i節點
-- 查詢檔案並刪除
find /var/log/ -mtime +10 -exec rm -rf {} \;
-- 查詢檔案並同時列出詳細資訊
find /home -name test.php -exec ls -l {} \; -- 必須有;
25. grep “字串” 檔名 查詢符合條件的字序列,檔名可給絕對路徑
-i “root” /etc/passwd
-v 反向選擇 -- eg:grep -v "^#" file.txt // 返回檔案中沒有以"#"開頭的行
-i 忽略大小寫
grep “key” 檔名
grep “a*” 檔名 匹配整個文件,包括空白行
26. 管道符:
命令1 | 命令2 命令1的執行結果作為命令2的執行條件
netstate -an | grep ESTABLISHED | wc -l 統計正在連線的網路連線數量
more 檔名 | grep "字串" -- 提取含有“字串”的行
27. netstat 檢視網路狀態的命令
-t 檢視tcp埠
-u 檢視udp埠
-l 監聽
-n 以ip和埠號顯示,不用域名和服務名顯示
28. 壓縮和解壓縮
.gz .bz2 .zip -- linux 可以識別的最常見的壓縮格式
.tar.gz .tar.bz2 -- 常見的壓縮和打包命令
-- 解壓 .tar 檔案 ------tar xvf 檔名
壓縮同時打包
tar -zcvf 壓縮檔名 原始檔
-z --識別.gz格式
-c 壓縮 -- compress
-v 顯示壓縮過程
-f 指定壓縮之後的檔名
--eg:tar -zcvf aa.tar.gz aa
解壓縮同時解打包
tar -zxvf 壓縮檔名
-x 解壓縮
--eg:tar -zxvf aa.tar.gz
--------------------------------------------------
壓縮同時打包
tar -jcvf 壓縮檔名 原始檔
-j --識別為.bz2格式
解打包同時解壓縮
tar -jxvf 壓縮檔名
-------------------------------------------------
壓縮.zip
zip 壓縮包名 檔名
解壓縮.zip
unzip 壓縮包名
--------------------------------------------------
.tar 打包
tar -cvf 打包檔名 原始檔
-c 打包
-v 顯示打包過程
-f 指定產生後的檔名
tar 解包
tar -xvf 打包檔名
-x 解打包
-v 顯示解打包過程
-f 指定產生後的檔名
--------------------------------------------------
檢視不解包
tar -ztvf 壓縮檔名
tar -jtvf 壓縮檔名
-t 只檢視不解壓
指定解壓縮位置 解壓時追加目錄路徑
tar -zxvf 壓縮檔名 -C/tmp
30. 關閉和重啟命令
sync 資料同步
shutdown -h now 沒有特殊情況使用此命令
shutdown -r now 重啟
reboot --重啟
31. 掛載命令
linux 中所有儲存裝置都必須掛載使用,包括硬碟
光碟掛載 --光碟不能自動掛載
/dev/sda1 第一個scsi硬碟的第一分割槽
/dev/cdrom 光碟 --快捷方式
/dev/hdc 光碟 --原始檔
1. mount -- 檢視所有掛載的裝置
mount -t 檔案系統 裝置描述檔案 掛載點(已經存在空目錄,保證光碟在光碟機中)
mount 【-t iso9660】/dev/cdrom-裝置檔案 /mnt/cdrom--掛載點
2. 光碟解除安裝
umount /dev/cdrom
或者umount /mnt/cdrom --強調:退出掛載目錄(cdrom),才能解除安裝
3,掛載U 盤
fdisk -l //檢視所有分割槽,確定U 盤的裝置檔名
mount -t vfat /dev/sdb1 /mnt/usb
-t vfat-->fat32
fat--->fat16
//linux 預設情況下不識別ntfs 格式,如果要使用,必須重新編譯內
32. 網路命令:
1. ping 測試網路連通性
ping -c 次數 -s 包大小 ip 探網路暢通 (-c 需要加上哦)
eg : ping -c 10 -s 1000 192.168.140.168
2. ifconfig 查詢本機網路資訊
33. 許可權管理
1 許可權位
-rw-r--r-- 1 root root 0 08-11 01:45 aa
許可權位是十位
第一位: 代表檔案型別
- 普通檔案
d 目錄檔案 -- dir
l 連結檔案 -- link
九位 所有者許可權u(ser 屬組許可權g(roup 其他人許可權o(ther
r 讀 4
w 寫 2
x 執行 1
7->讀寫執行 6->讀寫 5->讀,執行
4->只讀 3->寫執行 2->寫 1->執行
2 修改許可權
chmod ----change mode
chmod u+x aa --u-user aa檔案的屬主加上執行許可權
chmod u-x aa -- 移除aa檔案屬主的執行許可權
chmod g+w,o+w aa --g-group 對aa檔案的組加上寫許可權,其他人也加上寫許可權
chmod u=rwx aa -- 對aa檔案的屬主加上全部許可權
-R --遞迴修改
chmod 755 aa
chmod 644 aa
3 許可權意義:
1)許可權對檔案的含義
r:讀取檔案內容
w:編輯、新增、修改檔案內容
但是不包含刪除檔案
x:可執行
/tmp/11/22/abc ---------
2)許可權對目錄的含義
r:可以查詢目錄下檔名
w:具有修改目錄結構的許可權。如新建檔案和目錄,刪除此目錄下檔案和目錄,
重新命名此目錄下檔案和目錄,剪下
x:可以進入目錄
chmod -R 777 /dir -- 對/dir目錄及其目錄下的所有檔案為所有使用者加上全部許可權
4 屬主和屬組命令
chown ------change owner
chown 使用者名稱 檔名 改變檔案屬主
chown user1 aa user1必須存在
--chown :user1 aa 改變屬主同時改變屬組
// chgrp 改變屬組 --change group
chgrp 組名 檔名 --改變檔案的屬組
useradd 使用者名稱 新增使用者
passwd 使用者名稱 設定使用者密碼
--------------------------------------------------------------------------------
34. vi編輯器 --zhcon中文外掛
vim --- 全螢幕純文字編輯器
別名 alias 命令=‘命令別名’
alias vi='vim'
1.linux 使用者環境變數配置檔案
#vi /root/.bashrc --修改環境變數配置檔案
要想生效必須重新登入 logout->
2. vi 的三種模式:
命令模式
-- 1.游標移動
:n -- 移動到第幾行
gg -- 移動到檔案頭
G -- 移動到檔案尾
^ -- 移動到行首
$ -- 移動到行尾
-- 2.刪除字母
x -- 刪除單個字母
nx -- 刪除n個字母
-- 3.刪除整行 相當於剪下
dd -- 刪除單行
ndd -- 刪除多行
dG -- 從游標所在行刪除到檔案尾
-- 4.複製
yy -- 複製單行
nyy -- 多行復制
-- 5.貼上
p -- 貼上
P(大寫) -- 貼上到游標前
-- 6.撤銷
u -- 撤銷
ctrl+r -- 反撤銷
-- 7.顯示行號
:set nu -- 顯示
:set nonu -- 不顯示:
-- 8.顏色開關
:syntax off --關
:syntax on --開
-- vi配置檔案
~/.vimrc 手工建立的,vi配置檔案
-- 9.查詢
/查詢內容
n -- 下一個
N -- 上一個
-- 10.替換
:1,10s/old/new/g -- 替換1到10行的所有old為new
:%s/old/new/g -- 替換整個檔案的old為new
-- 11.註釋
:1,5s/^/#/g -- 註釋1-5行
:1,5/^#//g -- 取消註釋
:1,5/^\/\//g -- 檔案頭加入//
輸入模式
a --追加,游標之後
i --插入,在游標之前
o -- 在下行插入
O -- 在上行插入
末行模式
:
:q --不儲存直接退出
:q! --強制不儲存退出
:wq /:x-- 儲存退出
:wq! -- 強制儲存退出,只有管理員能用
35. 安裝軟體:
1. 原始碼包
優點:開源,自由定製
缺點:編譯時間長,一旦報錯很難解決
2. 指令碼安裝包
3. 二進位制rpm包
36. 二進位制rpm包 --在掛載光碟中,首先掛載 mount -t iso9660 /dev/cdrom /mnt/cdrom
優點:安裝速度快,簡易
缺點:自定義性差,庫檔案依賴性--www.rpmfind.net找其目錄
包全名: 包名-版本號-釋出次數-適合的linux平臺-硬體平臺.rpm
如果我們操作的是未安裝包,那麼必須使用全包名,而且要使用絕對路徑
如果我們操作的物件是已經安裝的包,那麼必須使用包名,但是任何路徑都可以執行
--安裝:
rpm -ivh 包全名 --install -- 安裝rpm包 庫檔案依賴 www.rpmfind.net
rpm -Uvh 包全名 --update --升級,也可以直接安裝
--解除安裝:
rpm -e 包名 -- 解除安裝rpm包,先解除安裝依賴包、、、、、
rpm -e --nodeps 包名 -- 強制解除安裝,只允許試驗使用
--檢查:
rpm -q 包名 -- 檢查包是否安裝
rpm -qa | grep 包名 -- 檢查所有安裝包,提取符合條件的包
rpm -qi 包名 -- 查詢包的資訊 -i--information
rpm -qip 包全名 -- 查詢未安裝包的資訊
rpm -ql 包名-- 查詢包中檔案的安裝位置 -l--list
rpm -qlp 包全名 -- 查詢沒有安裝的包,打算安裝的位置
rpm -qf 系統檔名 -- 查詢系統檔案屬於哪個包 -f -- file
-- 啟動httpd服務
1. service httpd restart|start|stop|status -- 不是標準命令
2. /etc/rc.d/init.d/httpd start|restart|stop|status-- 絕對路徑啟動,標準啟動模式
37. yum 包 -- 跟的只有包名
yum 包 --自動補全庫檔案,聯網安裝 -- 不允許解除安裝
yum -y install 包名 -- 安裝
-- yum -y remove 包名 -- 解除安裝,一般不允許
yum -y update 包名 -- 更y新升級
yum list --查詢所有可以安裝的包
光碟作為yum源:
1.cd /etc/yum.repos.d/
(mv CentOS-Base.repo CentOS-BS.repo.bak--修改檔名)
2. mount /dev/hdc /mnt/cdrom
-- 如果沒有網路,先使修改--(mv) CentOS-Base.repo檔名為CentOS-Base.repo.bak使其使用失效,
-- 從而使系統使用CentOS-Media.repo檔案
3. vi /etc/yun.repos.d/CentOS-Media.repo
baseurl=file:///mnt/cdrom --指定yum源位置
enabled=1 --原始檔生效
gpgcheck=0 --rpm驗證不生效
pkill -9 yum-updatesd 如果yum報錯正在升級,執行此命令,強制殺死升級程序
yum -y install gcc (gcc是c語言編譯器,不裝gcc,原始碼包不能安裝)
38. 原始碼包安裝
1. 遠端傳輸工具winscp傳輸apache到linux
httpd
2. 安裝
1.解壓
2.cd 解壓目錄--tar zxvf 檔名
3.檢視安裝文件 -- INSTALL README -- 裡面有每一個原始碼包的配置檔案
4.編譯前準備
./configure --prefix=/usr/local/apache2(名)--安裝路徑
功能:
1.檢測系統環境,生成makefile
2.定義軟體選項
-- 若安裝中報錯,使用make clean退出安裝
5.編譯
make
6.編譯安裝
make install
3. 啟動
/usr/local/apache2/bin/apachectl start --原始碼包apaceh的啟動方式
4. 刪除
直接刪除安裝目錄
39. date 檢視系統時間
date -s 20130220 設定日期
date -s 09:30:00 設定時間
du -sh 目錄名 統計目錄大小
-s 和
-h 習慣單位
40. 普通使用者轉換到root使用者
su - root -- - 連帶環境變數一起切換
sudo su
-------------------------------------------------------------------------------
41.使用者操作
使用者資訊檔案: vi /etc/passwd
-- 七列:
briel : x : 501:501 : briel :/home/briel:/bin/bash
| | | | | | |
使用者名稱:密碼位:UID:GID:使用者說明:使用者家目錄:使用者登入之後的許可權
UID -- 使用者ID, >500為普通使用者
GID -- 初始值ID
影子檔案:/etc/shadow
組資訊檔案:/etc/group
briel: x : 501 :
| | |h |
組名 :密碼位:組ID:組中附加使用者
1. -- 新增使用者
useradd 【選項】 使用者名稱
選項:
-g -- 指定初始組,一般不手工指定
*-G -- 指定附加組,把使用者加入組,一般使用附加組
-c -- 新增說明
-d -- 手工指定家目錄,不需要事先建立
-s -- /bin/bash 手工指定使用者登入之後的許可權
-- eg useradd -G ariel(附加組) briel(使用者) --新增使用者briel,同時指定附加組為ariel(初始組為briel)
初始組:每個使用者初始組只能有一個,一般都是和使用者名稱相同的組作為初始組
附加組:每個使用者可以屬於多個附加組。要把使用者加入組,都是加入附加組
2. -- 新增密碼
passwd 使用者名稱
普通使用者修改自己的密碼:
passwd -> 當前密碼->新密碼->新密碼
3. -- 刪除使用者
userdel -r 使用者名稱 --連帶家目錄一起刪除
4. -- 新增組
groupadd 組名
5. -- 刪除組
groupdel 組名 注意:組中沒有初始使用者才能刪除
6. -- 把已經存在的使用者加入組
gpasswd -a 使用者名稱 組名 -- 把使用者加入組 -add
gpasswd -d 使用者名稱 組名 -- 把使用者從組中刪除 -delete
42. 使用者相關命令
1.id 使用者名稱 -- 顯示使用者的UID,初始值,附加組
id ariel -- uid=500(ariel) gid=500(ariel) groups=500(ariel)
*2. su - 使用者名稱 -- 連帶環境變數一起切換
43. ACL許可權:
1. getfacl 檔名 -- 查詢檔案的acl許可權
2. setfacl 選項 u:使用者名稱:許可權 檔名 -- 設定acl許可權
-m -- 設定許可權
-b -- 刪除許可權
--eg:
setfacl -m u:使用者名稱:許可權 檔名/目錄
setfacl -m g:組名:許可權 檔名/目錄
-- 給特定使用者設定acl許可權
setfacl -m u:ariel:rwx 檔名/目錄
*setfacl -m u:ariel:rwx -R 目錄 -- 遞迴賦予acl許可權,只能賦予目錄
-- 刪除許可權
setfacl -b 檔名/目錄 -- 刪除acl許可權
--注意: 更該或刪除某個使用者對某個檔案的acl許可權時,只需要給這個使用者重新賦予acl許可權 空是---
-- acl 預設許可權 注意:預設許可權只能賦予目錄
// setfacl -m d:u:使用者名稱:rwx -R 目錄名 --d--default -- 對未來要新建的檔案生效
--注意:如果給目錄賦予acl許可權,兩條命令都要輸入
/********************************************************
-R 遞迴
-m u:使用者名稱:-R 許可權 只對已經存在的檔案生效
-m d:u:使用者名稱:-R 許可權 只對未來要新建的檔案生效
*********************************************************/
44. 輸出重定向
1.輸出重定向:
把應該輸出到螢幕的內容儲存在檔案裡
> 覆蓋寫 >> 追加寫
ls 【目錄】 > 檔名 -- 輸出資訊覆蓋寫到檔案中
ls 【目錄】 >> 檔名 -- 輸出資訊追加寫到檔案中
ls gdlslga 2>>檔名 -- 錯誤資訊輸出到檔案中 強調:錯誤輸出,不能有空格
2 --錯誤資訊
*掌握的知識:
ls 【目錄】>> 檔名 2>&1 --錯誤和正確資訊都輸入到檔案中,可以追加寫
2>&1 --把標準錯誤重定向到標準正確資訊中輸出
ls 【目錄】 >> 檔名1 2>>/home/test/檔名2 -- 正確資訊輸出到檔案1中,錯誤資訊輸出到檔案2中
45. 服務和程序管理
一. 程序檢視
1. ps aux --檢視當前系統所有執行的程序
-a 顯示前臺所有程序
-u 顯示使用者名稱
-x 顯示後臺程序
-------------------------
user:使用者名稱
pid:-- 程序id。PID 1 init 系統啟動的第一個程序
%CPU -- cpu佔用百分比
%MEM -- 記憶體佔用百分比
VSZ -- 虛擬記憶體佔用量 KB
RSS -- 固定記憶體佔有量
tty -- 登入終端 tty1-7 本地終端 1-6 字元 7圖形 pts/0-5 alt+F1-F7
stat -- 狀態 S:睡眠 D:不可喚醒 R:執行 T:停止 Z:僵死 W:進入記憶體交換 X:死掉的程序 <:高優先順序 N:低優先順序 L:被鎖進記憶體 s:含子程序 +:位於後臺 l:多執行緒
start -- 程序觸發時間
time -- 佔用cpu時間
command -- 程序本身
2. pstree -- 檢視程序樹
3. top --
第一行:系統當前時間 系統持續時間 登入使用者 1,5,15分鐘之前的平均負載
第二行:程序總數
第三行:CPU佔用率 %id 空閒百分比
第四行:記憶體使用: 總共 使用 空閒 快取
第五航:swap使用
操作命令: M 記憶體排序
P CPU排序
q 退出
4. 程序管理 --終止程序
kill --訊號 PID -- 結束單個程序
-9 --強制
killall -9 程序名 -- 結束一類程序
pkill -9 程序名
pkill -9 -t 終端號 -- 把某個終端登入的使用者踢出
pkill -9 -t tty1 --把本地登入終端1登入使用者踢出
二.linux 服務管理
1.分類
系統預設安裝的服務 --rpm包
--1. 獨立的服務
--2. 基於xinetd的服務,xinetd是系統超級守護程序
原始碼包安裝的服務
2. 系統預設安裝的服務;
*chkconfig --list --檢視服務的自啟動狀態
執行級別:0-6
0 關機
1 單使用者模式
2 不完全多使用者,不包含NFS服務
3 完全多使用者 字元介面
4 未分配
5 圖形介面
6 重啟
init 0 關機
init 3 字元介面
init 5 startx 圖形介面
init 6 重啟
3. 獨立的伺服器管理
①啟動:
/etc/rc.d/init.d/服務名 start|stop|restart|status
--eg /etc/rc.d/init.d/httpd start
service 服務名 start|stop|restart|status
②自啟動
*chkconfig --level 2345 服務名 on|off
*推薦:vi /etc/rc.local---->/etc/rc.d/rc.local
/etc/rc.d/init.d/httpd start
②圖框:ntsysv --所有系統預設安裝服務都可以使用ntsysv命令進行自啟動管理
-- 空格鍵新增* tab鍵切換
4. *原始碼包安裝的服務
1. 絕對路徑啟動:
/usr/local/apache2/bin/apachectl start
2. 自啟動
vi /etc/rc.local
/usr/local/apache2/bin/apachectl start
-- apache配置檔案
- vi /etc/httpd/conf/httpd.conf --ServerName localhost
三、計劃任務
echo 11 >> /root/aa --在aa檔案中追加11,一會定時任務驗證用
*迴圈定時任務
crontab -e 編輯定時任務
* * * * * 命令
10 * 31 * * 命令 // 每月的31號每小時的第10分鐘執行
10 * * * * 命令 // 每小時的第十分鐘執行
5 4 * 5-10 * 命令 // 每月的5-10號的凌晨4點零分執行
*/10 * * * * 命令 // 每十分鐘執行一次
5 4 1,15 * * 命令 // 每月的1號和15號的凌晨4點零5分執行
-- 日期和星期不要同時指定,會超出預期
5 4 10 * 5 命令
crontab -e 0 0 * * * /sbin/reboot --- 每天的0點鐘重啟
第一個*:一小時中第幾分鐘 0-59
第二個:一天中第幾個小時 0-23
第三個:一個月中第幾天 1-31
第四個:一年第幾個月 1-12
第五個:一週中星期幾 0-6
注意:
crontab -l --檢視系統定時任務
crontab -r -- 刪除定時任務
注意事項:
選項都不能為空,必須填入,不知道的值使用萬用字元*表示任何時間
每個時間欄位都可以指定多個值,不連續的值用,間隔,連續的值用-間隔
間隔固定時間執行書寫為*/n格式
命令應該給出絕對路徑
星期幾何第幾天不能同時出現
最小時間範圍是分鐘,最大時間範圍是月
四 系統執行級別
*1 dmesg -- 檢視系統啟動資訊--相當於硬體管理
cat /var/log/dmesg 系統啟動資訊日誌
dmesg | grep eth0 檢視eth0資訊
dmesg | grep CPU 檢視cpu資訊
2 系統執行級別
0 關機
1 單使用者
2 不完全多使用者,不含NFS
3 完全多使用者
4 保留
5 圖形介面
6 重啟
runlevel 查詢系統執行級別
init 執行級別 改變執行級別 init 0 init 6
*修改系統預設執行級別
vi /etc/inittab init配置檔案
id:3:initdefault: 系統預設執行級別
補充知識:
1. df -h -- 檢視分割槽使用情況
2. du -h -- 統計目錄大小
3. du -sh -- 統計檔案大小
------------------------------------------------------------------------------------------------
46. 常見網路埠:
20、21 -- ftp服務,檔案共享
22 -- ssh服務 安全遠端網路管理
23 -- telnet服務
25 -- smtp: 簡單郵件傳輸協議 --發信
110 -- pop3 : 郵件協議 -- 發信
80 -- www 網頁服務
3306 -- mysql 埠
53 -- DNS埠
/etc/services -- 檢視埠
埠數量 --tcp 65535 udp --65535
telnet ip 埠號 -- 測試埠是否可以正常連線
ctrl +l 退出測試
47. 抓包命令:
48.vsftp搭建:
1.安裝:
>rpm -ivh -vsftpd……
>yum -y install vsftpd
2.ftp使用者:
就是系統使用者,密碼也是系統密碼
3.相關檔案:
配置檔案:/etc/vsftpd/vsftpd.conf
使用者訪問控制:/etc/vsftpd/ftpusers --寫入此檔案的使用者都不能訪問ftp伺服器
/etc/vsftpd/chroot_list --不存在,需要手工建立 定義是否把使用者限制在家目錄
4. 配置檔案配置
/etc/vsftpd/vsftpd.conf
1 主機相關配置
listen_port=21 監聽埠
connect_from_port_20=YES 資料傳輸埠
ftpd_banner= 歡迎資訊
2 匿名使用者登入 在linux下識別為 ftp 使用者
anonymous_enable=YES 允許匿名使用者登入,一般禁用
3 本地使用者
local_enable=YES 允許系統使用者登入
write_enable=YES 允許上傳
local_umask=022 預設上傳許可權
local_max_rate=300 上傳限速
4 限制使用者訪問目錄
chroot_local_user=YES 只有此句,所有使用者限制在家目錄下
chroot_local_user=YES 如有三句話,只有檔案chroot_list中的使用者可以訪問任何目錄,其他使用者限制在家目錄
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
5.重啟服務:
service vsftpd restsrt
ftp客戶端使用
ftp ip
get 檔名 下載
put 檔名 上傳 不能上傳和下載目錄
49.linux常用命令:
1. w -- 查詢當前登入伺服器的所有使用者
2. who -- 查詢登入使用者
3. last -- 查詢登入系統相關資訊,重啟動時間
4. lastlog -- 顯示所有使用者最後一次的登入時間
5. write 使用者名稱 -- 給線上使用者寫資訊
write root tty1
內容
//ctrl+d 儲存、傳送
6. wall -- 對所有線上使用者說話
7. telnet ip 埠 測試埠是否可以正常連線
ctrl+] ----------- quit
8. netstat -tlun 檢視本機所有監聽埠
-t tcp -u udp -l 監聽 -n 以IP 和埠號顯示