基礎(chǔ)技能培訓(xùn)---linux
發(fā)布時間:2020-10-22 來源: 思想?yún)R報 點擊:
基礎(chǔ)技能培訓(xùn) d ---Linux 一.
文檔說明 1. 文檔主要功能 (1)
面向新入職員工培訓(xùn) Linux 基礎(chǔ)知識。
。2)
面向有一定實際經(jīng)驗的員工進(jìn)行 Linux 基礎(chǔ)知識的查漏補缺 。
(3)
作為查詢一般 Linux 操作的常備文檔。
2. 文檔使用提示 (1)
建議新員工在實際環(huán)境中或搭建虛擬機進(jìn)行學(xué)習(xí)。
。2)
文檔中 Linux 的一些操作命令可能由于操作系統(tǒng)的不同而有所區(qū)別。
3. 文檔更新 更新時間 更新內(nèi)容 更新人 2014.10.29 文檔創(chuàng)建 孫策
二.
Linux 基礎(chǔ)知識 1. 什么是 Linux Linux 是在 1991 年由芬蘭大學(xué)生 Linus Torvalds 寫的一個核心操作系統(tǒng),最早僅只是核心而已,后來由于此核心不但可以適合于主流 PC 的 x86 架構(gòu),并且穩(wěn)定,因此有相當(dāng)多的團(tuán)隊加入研究開發(fā),后來某些公司將一些套件加入此核心中,變成為完整的一套操作系統(tǒng),所以才會有這么多的 Linux 版本。
2. 為什么要用 Linux 相比起 Windows,Linux 采用開源代碼,安全性高;擁有良好的資源分配,對服務(wù)器硬件性能要求大大低于 Windows;Linux 是真正的多用戶多線程且支持世界上幾乎所有的 cpu 架構(gòu);Linux 內(nèi)存管理和調(diào)度方式優(yōu)秀,運行穩(wěn)定。
3. 不同的 Linux 版本 我們工作中常用的是 RedHat 6.4 企業(yè)版。Redhat 或稱為 Redhat系列,包括 RHEL(Redhat Enterprise Linux,也就是所謂的 Redhat
Advance Server,收費版本)、Fedora Core(由原來的 Redhat 桌面版本發(fā)展而來,免費版本)、CentOS(RHEL 的社區(qū)克隆版本,免費)。Redhat應(yīng)該說是在國內(nèi)使用人群最多的 Linux 版本,甚至有人將 Redhat 等同于 Linux,所以這個版本的特點就是使用人群數(shù)量大,資料非常多。
而且網(wǎng)上的一般 Linux 教程都是以 Redhat 為例來講解的。Redhat 系列的包管 理方式采用的是基于 RPM 包的 YUM 包管理方式,包分發(fā)方式是編譯好的二進(jìn)制文件。穩(wěn)定性方面 RHEL 和 CentOS 的穩(wěn)定性非常好,適合于服務(wù)器使用, 但是 Fedora Core 的穩(wěn)定性較差,最好只用于桌面應(yīng)用 。
4. Linux 的一些基礎(chǔ)概念 (1)
版本號概念 Linux 內(nèi)核版本號格式是 x.y.zz-www,數(shù)字 x 代表版本類型,數(shù)字 y 為偶數(shù)時是穩(wěn)定版本,為奇數(shù)時是開發(fā)版本,如 2.0.40為穩(wěn)定版本,2.3.42 為開發(fā)版本,測試版本為 3 個數(shù)字加上測試號。
。2)
跨硬件平臺 Linux 采用一個統(tǒng)一的框架對硬件進(jìn)行管理,同時從一個硬件平臺到另一個硬件平臺的改動與上層應(yīng)用無關(guān)。
(3)
文件系統(tǒng) Linux 的文件系統(tǒng)和 Windows 中的文件系統(tǒng)有很大的區(qū)別。
Linux 文件系統(tǒng)是棵文件樹,所有文件和外部設(shè)備都掛在這棵樹上,根目錄是所有訪問的入口。Window 以驅(qū)動器的盤符為基礎(chǔ),盤符是訪問的入口。
分區(qū)和目錄的關(guān)系:
Linux 中分區(qū)屬于目錄,window 中目錄屬于分區(qū)。Linux 中,把每個分區(qū)和某個目錄對應(yīng)(掛裝),
對某一目錄操作,就是對相應(yīng)分區(qū)操作,實現(xiàn)了硬件管理手段和軟件目錄管理手段的統(tǒng)一。
。4)
目錄和文件 Linux 中,目錄也是文件。目錄(文件)的內(nèi)容:
存儲關(guān)聯(lián)的文件和子目錄名及相應(yīng)的指針, 這里也是存儲文件名的唯一地方。對目錄的操作,一般不涉及對其文件的內(nèi)容進(jìn)行操作,一般是對目錄名和其文件間的對應(yīng)關(guān)系進(jìn)行操作。
。5)
桌面系統(tǒng) 只是一個應(yīng)用軟件,不是 linux 中的自身部分,相當(dāng)耗系統(tǒng)資源并降低系統(tǒng)性能。
。6)
絕對路徑和相對路徑 在 Linux 中,絕對路徑是從/(也被稱為根目錄)開始的,比如/usr、/etc/X11。如果一個路徑是從/開始的,它一定是絕對路徑。相對路徑:相對路徑是以. 或.. 開始的. 表示用戶當(dāng)前操作所處的位置,而.. 表示上級目錄;在路徑中,. 表示用戶當(dāng)前所處的目錄,而..上級目錄,要把.和..當(dāng)做目錄來看。
5. 常用 Linux 工具 (1)
Putty:常用于連接無桌面環(huán)境的 linux 系統(tǒng)。
。2)
SshClient:常用于在 Linux 和 Windows 間傳輸文件。
(3)
VNC:常用于連接有桌面環(huán)境的 linux 系統(tǒng)。
注:Linux 可啟動多個 VNC 服務(wù),在 VNC 客戶端上輸入 IP+冒號+VNC 服務(wù)連接編號可訪問不同的 VNC 連接,進(jìn)入后面對的也將是不 同的桌面。
三.
Linux 的安裝(Redhat 6.4 )
1. 插入安裝光盤,系統(tǒng)會進(jìn)入引導(dǎo)界面,引導(dǎo)安裝 RHEL 操作系統(tǒng)。
2. 選擇 SKIP,跳過檢測
3. 從引導(dǎo)界面選擇簡體中文
4. 檢測之前安裝:這一部分,通常會選擇全新安裝而非升級。
5. 磁盤分區(qū):這一部分需非常注意,尤其是 SWAP 分區(qū)的大小,可參照以下表格修改。這里選擇默認(rèn)選項,系統(tǒng)自動非配磁盤空間。
可用 RAM Swap Space 1GB- - 2GB 1.5*RAM 2GB- - 4GB 1*RAM >8GB 0.75*RAM
6.
網(wǎng)絡(luò)配置:如果安裝數(shù)據(jù)庫的主機被用作數(shù)據(jù)庫服務(wù)器,網(wǎng)絡(luò)配置階段請勿使用 DHCP,需要分配一個靜態(tài) IP。選中 Enable IPv4 support 選項,取消 Use dynamic IP configuration (DHCP)選項和 Enable IPv6 support 選項。
7. Package 安裝部分,選擇 Customize now,額外勾選中以下 Package Groups:
基本系統(tǒng)?主框架訪問、兼容程序庫、安全性工具; 服務(wù)器?ftp 服務(wù)器、系統(tǒng)管理工具;系統(tǒng)管理?SNMP 管理、系統(tǒng)管理;桌面全選;應(yīng)用程序全選;開發(fā)全選
8. 全部配置好后,安裝系統(tǒng),然后會要求重啟機器。
9. 重啟完成后,對以下部分進(jìn)行配置:
10 .添加一個 oracle 用戶,用戶組為 root。(方便以后安裝數(shù)據(jù)庫)
。p擊 oracle 用戶)
(去掉默認(rèn)的 oracle 用戶組,勾選 root 組)
以下的步驟默認(rèn)即可配置完成。
四.
Linux 基本操作(Redhat 6.4 )
注:綠色為范例內(nèi)容,可替換 操作 命令舉例 備注 補全命令 按 tab 鍵
切換目錄 cd /opt 范例:切換到/opt 目錄下。
列出文件列表 ls 范例:顯示當(dāng)前文件目錄和子目錄列表 創(chuàng)建目錄 mkdir bohui 范例:在所在目錄下創(chuàng)建bohui 子目錄。
刪除文件 rm –rf bohui 強制刪除,不會確認(rèn) 范例:刪除所在目錄下的bohui 目錄或文件。
查看文件內(nèi)容 cat config.xml 范例:查看所在目錄下config.xml 文件的內(nèi)容。
編輯文件內(nèi)容 vi config.xml
退出為:冒號
按 insert 鍵進(jìn)入編輯模式 修改文件后輸入:q!不保存退出 或 范例:修改所在目錄下config.xml 文件的內(nèi)容。
:wq 保存退出 顯示當(dāng)前所在目錄 pwd 顯示當(dāng)前所在目錄。
切換用戶 su - oracle 范例:切換到 oracle 用戶,且一同切換環(huán)境變量。
設(shè)置權(quán)限 chmod 777 boot.sh 范例:將全部用戶賦予操作boot.sh 腳本的最高權(quán)限。
執(zhí)行腳本 ./start.sh 范例:執(zhí)行當(dāng)前目錄下的start.sh 腳本。
解壓縮 tar –jxvf bohui.tar.gz- 范例:解壓縮 bohui.tar.gz文件到當(dāng)前目錄下。
網(wǎng)卡狀態(tài)查詢 ifconfig 范例:可以查詢不同網(wǎng)卡是否連接正常(running)
系統(tǒng)性能分析及進(jìn)程查詢 Top
退出為 q
關(guān)閉進(jìn)程 killall BHIP80 范例:關(guān)閉名稱為 BHIP80的進(jìn)程。
網(wǎng)卡抓包 tcpdump –i eth1 –w test.pcap 推出為 ctrl+c 范例:抓 eth1 網(wǎng)卡的數(shù)據(jù)包并在當(dāng)前目錄下生成test.pcap 文件。
重啟系統(tǒng) reboot 需使用 root 用戶操作
五.
Linux 進(jìn)階操作手冊(Redhat 6.4 )
1. 系統(tǒng)基礎(chǔ)硬件配置檢查 操作 命令舉例 備注 查看 cpu 型號 #cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq –c 4
Intel(R) Atom(TM) CPU D525
@ 1.80GHz # dmidecode | grep CPU 該例子中有 4 個邏輯 CPU,型號為D525 查看 cpu 核心數(shù) #cat /proc/cpuinfo | grep physical | uniq –c 4 physical id
: 0
4 physical id
: 1 該例子說明兩顆 4 核的 CPU(根據(jù) id不同可知 CPU 個數(shù))
查看 cpu 溫度 #cd /proc/acpi/thermal_zone #cat
TZ*/temp* temperature:
38 C temperature:
27 C temperature:
43 C 該例子的前提是硬件有感知溫度的芯片 查看cpu總的占用率 #top
或 #top |grep “Cpu” 或 1. 直接用 top 命令不僅可以查看cpu 使用情況也可以查看內(nèi)存,Swap,進(jìn)程占用資源情況; 2. 也可以使用|和 grep 定位到 Cpu
#top –n 2 |grep “Cpu” Cpu(s): 13.7%us,
1.9%sy,
0.0%ni, 84.4%id,
0.1%wa,
0.0%hi,
0.0%si,
0.0%st Cpu(s):
0.4%us,
0.2%sy,
0.0%ni, 99.4%id,
0.0%wa,
0.0%hi,
0.0%si,
0.0%st 這一行; 3. 參數(shù)-n 是指定在終端顯示幾次的刷新結(jié)果;若不知道-n,默認(rèn)是在不停刷新; 4. top 運行中,按鍵盤 P 或 M 排序; P – 以 CPU 占用率大小的順序排列進(jìn)程列表 M – 以內(nèi)存占用率大小的順序排列進(jìn)程列表
查看指定程序的cpu 占用 #pidof httpd 31117 31116 31115 31114 #top –p 31117,31116,31115,31114 或 #top |grep java
1. 首先查看某些進(jìn)程的信息 2. Top 指定查看 PID Ps 命令也可以查看指定程序 CPU 占用情況,但顯示某個瞬間值,不易抓住峰值; 查看內(nèi)存容量 #free –m
total
used
free shared buffers
cached Mem:
2002
659
1343
0
130
153 -/+ buffers/cache: 376 1626 Swap:
510
3
507 或 #cat /proc/meminfo 或 #top
1. 參數(shù)-m 指定顯示數(shù)據(jù)單位為 M 從應(yīng)用程序的角度來說 可用內(nèi)存=系統(tǒng) free Memory+buffers+cached. 左側(cè)例子可用內(nèi)存 1626=1343+130+153 總內(nèi)存容量:2002M
============== 藍(lán)色部分:
total 內(nèi)存總數(shù): 2002M; used 已經(jīng)使用的內(nèi)存數(shù): 659M; free
空閑的內(nèi)存數(shù): 1343M shared 不同進(jìn)程間用來進(jìn)行數(shù)據(jù)交換,一般都是 0(多個進(jìn)程共享的內(nèi)存總額) buffers 是由各種進(jìn)程分配的,被用在如輸入隊列等方面,一個簡單的例子如某個進(jìn)程要求有多個字段讀入,在所有字段被讀入完整之前,進(jìn)程把先前讀入的字段放在 buffer 中保存。: 130M cached 經(jīng)常被用在磁盤的 I/O 請求上,如果有多個進(jìn)程都要訪問某個文件,于是該文件便被做成 cache 以方便下次被訪問,這樣可提供系統(tǒng)性能。:153M 綠色部分:
(-buffers/cache) used 內(nèi)存數(shù):376M (指的第一部分 Mem 行中的 used – buffers – cached) ( buffers/cache) free 內(nèi)存數(shù): 1626M (指的第一部分 Mem 行中的 free +buffers +cached)
查看內(nèi)存條數(shù) #dmidecode|grep –P -A5 "Memory\s+Device"|grep Size|grep -v Range
Size:2048MB
Size:2048MB
Size:NoModuleInstalled
Size:NoModuleInstalled
查看內(nèi)存的插槽數(shù),已經(jīng)使用多少插槽.每條內(nèi)存多大 (-A5 就是關(guān)鍵字下面再顯示五行) 查看內(nèi)存總的使用率 #free –m 或 #top 總的使用率=使用內(nèi)存/總內(nèi)存 使用的內(nèi)存=used 查看指定程序的內(nèi)存占用 #pidof httpd 31117 31116 31115 31114 #top –p 31117,31116,31115,31114 或 #top |grep java
查看硬盤容量 #fdisk –l 不同設(shè)備名稱下顯示磁盤容量,如:Disk /dev/had:10.7GB
查看硬盤個數(shù) #fdisk –l 通過設(shè)備名稱區(qū)分及容量區(qū)分不同的硬盤(設(shè)備名稱如:/dev/hda,
IDE 硬盤為 hdx(x 為從 a—d)因為IDE 硬盤最多四個,SCSI,SATA,USB 硬盤為 sdx(x為 a—z)
)
查看硬盤空間使用率 df –h df 常用參數(shù):
-T 打印文件系統(tǒng)類型。
-h 以友好格式顯示數(shù)值。
-H 也是以友好方式顯示數(shù)值,但 1K是以 1000 計算的,而不是 1024。
-l 只顯示本地文件系統(tǒng)。
-a 顯示全部文件系統(tǒng) 查看硬盤 i/o 情況 #iostat -x 1 Linux 2.6.33-fukai (fukai-laptop)
_i686_
(2 CPU) avg-cpu:
%user
%nice %system %iowait
%steal
命令格式:
iostat[參數(shù)][時間][次數(shù)] 命令參數(shù):
-C 顯示 CPU 使用情況
%idle
5.47
0.50
8.96
48.26
0.00
36.82
Device:
rrqm/s
wrqm/s
r/s
w/s
rsec/s
wsec/s avgrq-sz avgqu-sz
await
svctm
%util sda
6.00
273.00
99.00
7.00
2240.00
2240.00
42.26
1.12
10.57
7.96
84.40 sdb
0.00
4.00
0.00
350.00
0.00
2068.00
5.91
0.55
1.58
0.54
18.80
rrqm/s:
每秒進(jìn)行 merge 的讀操作數(shù)目.即 delta(rmerge)/s wrqm/s:
每秒進(jìn)行 merge 的寫操作數(shù)目.即 delta(wmerge)/s r/s:
每秒完成的讀 I/O 設(shè)備次數(shù).即 delta(rio)/s w/s:
每秒完成的寫 I/O 設(shè)備次數(shù).即 delta(wio)/s rsec/s:
每秒讀扇區(qū)數(shù).即 delta(rsect)/s wsec/s:
每秒寫扇區(qū)數(shù).即 delta(wsect)/s rkB/s:
每秒讀 K 字節(jié)數(shù).是 rsect/s 的一半,因為每扇區(qū)大小為 512 字節(jié).(需要計算) wkB/s:
每秒寫 K 字節(jié)數(shù).是 wsect/s 的一半.(需要計算) avgrq-sz: 平均每次設(shè)備 I/O 操作的數(shù)據(jù)大小 (扇區(qū)).delta(rsect+wsect)/delta(rio+wio) avgqu-sz: 平均 I/O 隊列長度.即 delta(aveq)/s/1000 (因為aveq 的單位為毫秒). await:
平均每次設(shè)備 I/O 操作的等待時間 (毫秒).即 delta(ruse+wuse)/delta(rio+wio) svctm:
平均每次設(shè)備 I/O 操作的服務(wù)時間 (毫秒).即 delta(use)/delta(rio+wio) %util:
一秒中有百分之多少的時間用于 I/O 操作,或者說一秒中有多少時間 I/O 隊列是非空的.即 delta(use)/s/1000 (因為 use 的單位為毫秒) 如果
%util 接近
100%, 說明產(chǎn)生的 O I/O 請求太多O ,I/O 系統(tǒng)已經(jīng)滿負(fù)荷, , 該磁盤 可能存在瓶頸. . idle 小于 70% IO 壓力就較大了, , 一般讀取速度有較多的 wait. 同時可以結(jié)合 vmstat 查看查看 b b 參數(shù)( ( 等待資源的進(jìn)程數(shù)) )和 和 a wa 參數(shù)O (IO 等待所占用的 U CPU 時間的百分比, , 高過 30%時 時 O IO 壓力高) )
-d 顯示磁盤使用情況 -k 以 KB 為單位顯示 -m 以 M 為單位顯示 -N 顯示磁盤陣列(LVM) 信息 -n 顯示 NFS 使用情況 -p[磁盤] 顯示磁盤和分區(qū)的情況 -t 顯示終端和 CPU 的信息 -x 顯示詳細(xì)信息
查看硬盤歷史 i/o情況 #iostat –x 2 >> /tmp/log.io
左側(cè)例子:每隔 2 秒刷新一次,并把輸出結(jié)果寫入 log.io 文件中;這樣可
以看到 i/o 歷史情況; 查看網(wǎng)卡型號 #lspci | grep Ethernet lspci 是一個用來顯示系統(tǒng)中所有PCI 總線設(shè)備或連接到該總線上的所有設(shè)備的工具。
為了能使用這個命令所有功能,你需要有 linux 2.1.82 或以上版本,支持 /proc/bus/pci 接口的核心; 查看網(wǎng)卡個數(shù) #ifconfig –a 或 lspci | grep Ethernet|wc -l
查看指定網(wǎng)卡的驅(qū)動及版本 1. 查看網(wǎng)卡驅(qū)動 #lspci -vvv 或 dmesg |grep Ethernet 2.查看驅(qū)動版本:
#modinfo 驅(qū)動名稱|grep version 也可以安裝 Ethtool 小工具查看網(wǎng)卡信息; lspic 參數(shù): -v 顯示設(shè)備的詳細(xì)信息。
-vv 顯示設(shè)備更詳細(xì)的信息。
-vvv 顯示設(shè)備所有可解析的信息
dmesg 可以看到開機檢測到硬件信息 查看指定網(wǎng)卡輸入流量 #watch ifconfig eth0
或 #watch more /proc/net/dev 或 #sar –n DEV 1 4 其他一些工具也可以,如:ifstat,sar(redhat 默認(rèn)安裝此工具),iftraf,nload,vnstat 等; Sar:
這個工具 RHEL5 自帶有,默認(rèn)也安裝。
-n參數(shù)很有用,他有6個不同的開關(guān):DEV | EDEV | NFS | NFSD | SOCK | ALL 。DEV 顯示網(wǎng)絡(luò)接口信息,EDEV顯示關(guān)于網(wǎng)絡(luò)錯誤的統(tǒng)計數(shù)據(jù),NFS統(tǒng)計活動的 NFS 客戶端的信息,NFSD統(tǒng)計 NFS 服務(wù)器的信息,SOCK 顯示套 接字信息,ALL 顯示所有 5 個開關(guān)
查看指定網(wǎng)卡輸出流量 #watch ifconfig eth0 #watch more /proc/net/dev 或 #sar –n DEV 1 4
2. 操作系統(tǒng)檢查及操作 操作 命令舉例 備注
查看系統(tǒng)名稱 # cat /etc/issue 查看操作系統(tǒng)發(fā)現(xiàn)版本及名稱 #hostname 查看主機名
修改系統(tǒng)名稱 #hostname new-hostname(即時生效,但系統(tǒng)重啟后失效) #echo new-hostname>/proc/sys/kernel/hostname (系統(tǒng)啟動時,從此文件中讀取主機名字)
或 #vi /etc/sysconfig/network 修改 hostname=new-hostname 下次重啟生效 #vi /etc/hosts 文件作相應(yīng)修改 hostname –a: 獲取主機別名。
hostname –d: 獲取 DNS 域名。
hostname –f: 獲取 FQDN 名稱。
hostname –i: 獲取主機的 IP 地址。
hostname –s: 獲取域名的 netbios 名稱
修改系統(tǒng)時間 1.#date
//顯示當(dāng)前日期 2.#date -s
//設(shè)置當(dāng)前時間,只有 root 權(quán)限才能設(shè)置,其他只能查看。
3.#date -s 20131010
//設(shè)置成 20131010,這樣會把具體時間設(shè)置成空 00:00:00 4.#date -s 12:23:23
//設(shè)置具體時間,不會對日期做更改 5.#date -s “12:12:23 2006-10-10″
//這樣可以設(shè)置全部時間
只有超級用戶才能用 date 命令設(shè)置時間,一般用戶只能用 date 命令顯示時間 查看系統(tǒng)內(nèi)核版本 #uname –r 或 #cat /proc/version #uname –a 詳細(xì)輸出所有信息,依次為內(nèi)核名稱,主機名,內(nèi)核版本號,內(nèi)核版本,硬件名,處理器類型,硬件平臺類型,操作系統(tǒng)名稱 -m 或–machine
顯示主機的硬件(CPU)名 -n 或-nodename 顯示主機在網(wǎng)絡(luò)節(jié)點上的名稱或主機名稱 -r 或–release
顯示 linux 操作系統(tǒng)內(nèi)核版本號 -s 或–sysname
顯示 linux 內(nèi)核名稱 -v 顯示顯示操作系統(tǒng)是第幾 version 版本 -p 顯示處理器類型或 unknown -i
顯示硬件平臺類型或 unknown -o 顯示操作系統(tǒng)名 –help
獲得幫助信息
–version 顯示 uname 版本信息
查看系統(tǒng)字符編碼 #echo $LANG
臨時修改系統(tǒng)字符編碼 #export LANG=en
永久修改系統(tǒng)字符編碼 #vi /etc/sysconfig/i18n 修改文件 i18n 的 LANG 的值 #source i18n 使修改生效;
查看 dmesg 日志 如果硬件損壞的話,可以用如下命令
#dmesg |grep error
/var/log/dmesg 記錄系統(tǒng)在開機的時候內(nèi)核偵測過程所產(chǎn)生的各項信息;
查看 boot 日志 #cat /var/log/boot.log.具體日期 /var/log/boot.log Linux 系統(tǒng)開機自檢過程顯示的信息 查看 secure 日志 #more /var/log/secure /var/log/secure 基本上,只要牽涉到“需要輸入賬號密碼”的程序,當(dāng)?shù)侨霑r(不管登入正確或錯誤)都會被記錄在此日志文件中;包括系統(tǒng)的 login 程序、圖形界面登入所使用的 gdm、su、sudo等;還有網(wǎng)絡(luò)連接的 ssh、telnet 等登入信息都會被記錄在這; 查看 Messages #more /var/log/messages /var/log/messages 幾乎系統(tǒng)發(fā)生的錯誤信息(或者是重要的資訊)都會記錄在這個日志文件;如果系統(tǒng)發(fā)生莫名的錯誤時,這個檔案是一定要查閱之一; Iptables 默認(rèn)把日志信息輸出到/var/log/messages 文件 動態(tài)的查看日志文件的更新內(nèi)容 #watch -d -n 1 cat /var/log/messages 或 #tail -f /var/log/messages
1.-d 表示高亮不同的地方,-n 表示多少秒刷新一次。
該指令,不會直接返回命令行,而是實時打印日志文件中新增加的內(nèi)容,這一特性,對于查看日志是非常有效的。如果想終止輸出,按 Ctrl+C 即可。
2. 參數(shù)-f使tail不停地去讀最新的內(nèi)容,這樣有實時監(jiān)視的效果
系統(tǒng)關(guān)機和重啟 關(guān)機 #shutdown –h now #shutdown –h 10:00 (10 點鐘關(guān)機) #shutdown –h +10(10 分鐘后關(guān)機) #halt
Default runlevel. The runlevels used are: 0 - halt (Do NOT set initdefault to this) 1 - Single user mode 2 - Multiuser, without NFS (The same
#init0 重啟 #shutdown –r now #reboot #init6 as 3, if you do not have networking) 3 - Full multiuser mode 4 - unused 5 - X11 6 - reboot (Do NOT set initdefault to this)
shutdown 為安全關(guān)機方式
3. 網(wǎng)絡(luò)信息檢查及操作 操作 命令舉例 備注 查看系統(tǒng)名稱 #hostname
修改系統(tǒng)名稱 #hostname testname
查看網(wǎng)卡 ip 地址信息 #ifconfig –a #ifconfig
eth0
修改網(wǎng)卡 ip 地址信息 1.即時生效,重啟網(wǎng)卡失效; #ifconfig eth0 172.17.13.21 netmask 255.255.255.0 #route add default gw 172.17.13.1 修改網(wǎng)關(guān) 1. 永久生效 #vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=172.17.13.21
NETMASK=255.255.255.0 GATEWAY=172.17.13.1 #service network restart
或 #/etc/init.d/network restart 重啟網(wǎng)絡(luò)服務(wù),使 IP 生效
以 eth0 網(wǎng)口為例子 添加多個 ip 地址 1. 一個網(wǎng)卡對應(yīng) 2 個 IP 地址為例:
修改 ip:
編輯文件/etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 //設(shè)備名稱,不要修改 BOOTPROTO=static //不要修改 BROADCAST=10.10.22.255 //廣播地址,一般為本網(wǎng)段的最后一個 IP IPADDR=10.10.22.145 //ip 地址 NETMASK=255.255.255.0 //子網(wǎng)掩碼
NETWORK=10.10.22.0 //網(wǎng)段地址 ONBOOT=yes //不要修改 TYPE=Ethernet //不要修改 注意:
ifcfg-eth0 是第一張網(wǎng)卡,ifcfg-eth1 是第二張網(wǎng)卡,依次類推 增加 ip:
可以重新編譯一個文件,文件名為/etc/sysconfig/network-scripts/ifcfg-eth0:0 也可以直接在/etc/sysconfig/network-scripts/ifcfg-eth0 中添加(但是設(shè)備 eth0 一定要有)
DEVICE=eth0:0 //設(shè)備名稱,不要修改 BOOTPROTO=static //不要修改 BROADCAST=10.10.33.255 //廣播地址,一般為本網(wǎng)段的最后一個 IP IPADDR=10.10.33.145 //ip 地址 NETMASK=255.255.255.0 //子網(wǎng)掩碼 NETWORK=10.10.33.0 //網(wǎng)段地址 ONBOOT=yes //不要修改 TYPE=Ethernet //不要修改 依次類推,如果再增加一個 ip,則再增加如下配置:
DEVICE=eth0:1 //設(shè)備名稱,不要修改 BOOTPROTO=static //不要修改 BROADCAST=10.10.44.255 //廣播地址,一般為本網(wǎng)段的最后一個 IP IPADDR=10.10.44.145 //ip 地址 NETMASK=255.255.255.0 //子網(wǎng)掩碼 NETWORK=10.10.44.0 //網(wǎng)段地址 ONBOOT=yes //不要修改 TYPE=Ethernet //不要修改 增加默認(rèn)網(wǎng)關(guān)的方法:
注意一臺機器只能有一個缺省網(wǎng)關(guān),否則就應(yīng)該給出具體的路由方式。
在相關(guān)的設(shè)備配置中增加一項即可,例如在上述配置中,在第一張網(wǎng)卡的第一個 IP 增加一個缺省網(wǎng)關(guān):
GATEWAY=10.10.22.3 修改完成后,要想使上述修改生效,則需要重起機器,或者重起網(wǎng)絡(luò)。
重新啟動機器的方法是:reboot 重起網(wǎng)絡(luò)的方法是:service network restart 以上為靜態(tài)增加 ip 的方法,即機器重起后仍然有效的方法
查看本地路由信息 #route –n
添加本地路由表 1.#route add default gw 172.17.13.1 (添加默認(rèn)路由) #route add –net172.17.0.0 netmask 255.255.0.0 gw 172.17.13.1 dev eth1 (添加到指定網(wǎng)絡(luò)的路由); 2.#vi /etc/sysconfig/network-script/route-eth1 添加:
GATEWAY0=172.17.13.1 NETMASK0=255.255.0.0 ADDRESS0=172.17.0.0 #service network restart (重啟網(wǎng)絡(luò)服務(wù)) 3.或者 1 方法的命令加入到/etc/rc.local 1. 第一種方式重啟network 服務(wù)后添加的路由失效; 2. 第二種方式永久靜態(tài)路由; 新建靜態(tài)路由配置文件 route-eth1,文件命名規(guī)則:route-devName,即對應(yīng)網(wǎng)卡設(shè)備名的路由配置文件。然后添加路由信息 刪除本地路由表 #route del default # route del -net 172.17.0.0 netmask 255.255.0.0 gw 172.17.13.1 dev eth0
查看本地端口監(jiān)聽情況 #netstat –l|more netstat 參數(shù):
-a (all)顯示所有選項,默認(rèn)不顯示 LISTEN 相關(guān) -t (tcp)僅顯示 tcp 相關(guān)選項 -u (udp)僅顯示 udp 相關(guān)選項 -n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。
-l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài) -p 顯示建立相關(guān)鏈接的程序名 -r 顯示路由信息,路由表 -e 顯示擴展信息,例如uid 等 -s 按各個協(xié)議進(jìn)行統(tǒng)計 -c 每隔一個固定時間,執(zhí)行該 netstat 命令。
查看端口被哪個程序占用 #netstat –anpl |grep 80 以 80 端口為例; 網(wǎng)卡重啟 #ifdown eth0 #ifup eth0 或 #ifconfig eth0 down #ifconfig eth0 up
或 #service network restart DNS 配置 #vi /etc/resolv.conf (打開此文件,添加域名 IP) nameserver 172.17.1.20 #service network restart
路由跟蹤 #traceroute [選項與參數(shù)] IP #traceroute –n www.baidu.com traceroute to www.baidu.com (220.181.111.148), 30 hops max, 60 byte packets
1
* * *
2
172.17.1.2 (172.17.1.2)
5.125 ms
5.115 ms
5.102 ms
3
124.127.132.5 (124.127.132.5)
14.497 ms
14.501 ms
57.551 ms
4
* * *
5
202.97.57.225 (202.97.57.225)
14.420 ms
15.407 ms
15.400 ms
6
* * *
7
220.181.0.86 (220.181.0.86)
143.748 ms 220.181.0.230 (220.181.0.230)
7.086 ms 220.181.0.26 (220.181.0.26)
32.821 ms
由於目前 UDP/ICMP 的攻擊層出不窮,因此很多路由器可能就此取消這兩個封包的回應(yīng)功能。所以我們可以使用 TCP 來偵測呦!
例如使用同樣的方法,透過等待時間 1 秒,以及 TCP 80 埠口的情況下,可以這樣做:
traceroute 可以幫助查看自己的網(wǎng)絡(luò)環(huán)境有問題還是 Internet 有問題
選項與參數(shù):
-n :可以不必進(jìn)行主機的名稱解析,單純用 IP ,速度較快!
-U :使用 UDP 的 port 33434 來進(jìn)行偵測,這是預(yù)設(shè)的偵測協(xié)定; -I :使用 ICMP 的方式來進(jìn)行偵測; -T :使用 TCP 來進(jìn)行偵測,一般使用 port 80 測試 -w :若對方主機在幾秒鐘內(nèi)沒有回聲就宣告不治...預(yù)設(shè)是 5 秒 -p 埠號:若不想使用 UDP 與 TCP 的預(yù)設(shè)埠號來偵測,可在此改變埠號。
-i 裝置:用在比較複雜的環(huán)境,如果你的網(wǎng)路介面很多很複雜時,才會用到這個參數(shù); -g 路由:與 -i 的參數(shù)相仿,只是 -g 後面接的是 gateway 的 IP 就是了
tcpdump 抓包 #tcpdump –i eth1 –c 2000 –w test.cap #tcpdump -i eth1 host 192.168.1.123 and port 80 -w /tmp/xxx.cap
tcpdump 常用參數(shù):
-c
在收到指定的包的數(shù)目后,tcpdump 就會停止;
-F
從指定的文件中讀取表達(dá)式,忽略其它的表達(dá)式;
-i
指定監(jiān)聽的網(wǎng)絡(luò)接口;
-r
從指定的文件中讀取包(這些包一般通過-w選項產(chǎn)生);
-w
直接將包寫入文件中,并不分析和打印出來; -s 限制捕獲報文的大小
4. 文件檢查及操作 操作 命令舉例 備注 新建文件夾 #mkdir test #mkdir –p /tmp/test/test1 mkdir 參數(shù): -m: 對新建目錄設(shè)置存取權(quán)限,也可以用 chmod 命令設(shè)置; -p: 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項后,系統(tǒng)將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄; 新建文件 #touch test 或 #vi test
#:wq 或 #echo>>test 或 #echo >test
編輯文件 #vi 或 #vim vi 與 vim 一樣都是編輯器,不同的是 vim 更高級一些,可以理解是 vi的高級版本 vim 兼容 vi 所有命令; 復(fù)制文件 #cp /opt/test.sh /tmp #cp -i /opt/test.sh /tmp cp:是否覆蓋"/tmp/test.sh"? y cp 參數(shù):
-a :相當(dāng)于 -pdr 的意思; -d :若來源文件為連結(jié)文件的屬性(link file),則復(fù)制連結(jié)文件屬性而非檔案本身; -f :為強制 (force) 的意思,若有重復(fù)或其它疑問時,不會詢問使用者,而強制復(fù)制; -i :若目的檔(destination)已經(jīng)存在時,在覆蓋時會先詢問是否真的動作!
-l :進(jìn)行硬式連結(jié) (hard link) 的連結(jié)檔建立,而非復(fù)制檔案本身; -p :連同檔案的屬性一起復(fù)制過去,而非使用預(yù)設(shè)屬性; -r :遞歸持續(xù)復(fù)制,用于目錄的復(fù)制行為; -s :復(fù)制成為符號連結(jié)文件 (symbolic link),亦即『快捷方式』檔案; -u :若 destination 比 source 舊才更新 destination 復(fù)制文件夾 #cp –rf /opt/test /tmp
移動文件 #mv /opt/test.sh /tmp mv 可移動文件或目錄,或是更改文件或目錄的名稱。
參數(shù):
-b 或--backup
若需覆蓋文件,則覆蓋前先行備份。
-f 或--force
若目標(biāo)文件或目錄與現(xiàn)有的文件或目錄重復(fù),則直接覆蓋現(xiàn)有的文 件或目錄。
-i 或--interactive
覆蓋前先行詢問用戶。
-S<附加字尾>或 --suffix=<附加字尾>
與-b 參數(shù)一并使用,可指定備份文件的所要附加的字尾。
-u 或--update
在移動或更改文件名時,若目標(biāo)文件已存在,且其文件日期比源文件新,則不覆蓋目標(biāo)文件。
-v 或--verbose
執(zhí)行時顯示詳細(xì)的信息。
-V=<方法>或 --version-control=<方法>
與-b 參數(shù)一并使用,可指定備份的方法。
--help
顯示幫助。
--version
顯示版本信息。
移動文件夾 #mv -i test /tmp mv:是否覆蓋"/tmp/test"? y
重命名文件 #mv /tmp/aa.log /tmp/bb.log
重命名文件夾 #mv test test1 或
#mv test /tmp/test1 刪除一個文件 # rm -f /var/log/httpd/access.log(強制刪除不做詢問)
rm 參數(shù),主要有下面幾個:
-i 刪除 刪除前詢問是否需要刪除;
-f 強制刪除,無需確認(rèn)。
-r 或-R 或--recursive 將目錄以及目錄下的文件或者目錄逐一刪除。
-d 或--directory 刪除目錄 ((只限超級用戶))
-v 或--verbose 顯示指令執(zhí)行過程
--help 顯示在線幫助內(nèi)容
--version 顯示版本信息并退出
清空一個文件的內(nèi)容 1.#echo “”>test(文件大小被截為 1 字節(jié),文件內(nèi)產(chǎn)生空行) 2.#echo > test 3.#>test(文件大小被截為 0 字節(jié))
4.# : > test 5.cat /dev/null >test(文件大小被截為 0字節(jié))
6.cp /dev/null test
六種方式都可; 重點 是 “>”
重定向 ,覆蓋掉原來文件的內(nèi)容
刪除一個文件夾 # rm -rf /var/log/httpd/access
(使用這個 rm -rf 的時候一定要格外小心,linux 沒有回收站的)
#rmdir test
rmdir 刪除空文件夾 查看文件類型 #ls –l (查看第一個字段)
Linux 文件類型常見的有: “-”表示普通文件; “d”表示目錄文件; “l”表示鏈接文件; “c”表示字符設(shè)備; “b”表示塊設(shè)備; “p”表示管道文件,比如 FIFO 文件; “f”表示堆棧文件,比如 LIFO。
查看文件的日期 #ls –l (查看第七個字段) ls 常用參數(shù):
-a — 全部(all)。列舉目錄中的全部文件,包括隱藏文件(.filename)。位于這個列表的起首處的 .. 和 . 依次是指父目錄和你的當(dāng)前目錄。
-l — 長(long)。列舉目錄內(nèi)容的細(xì)節(jié),包括權(quán)限(模式)、所有者、組群、大小、創(chuàng)建日期、文件是否是到系統(tǒng)其它地方的鏈接,以及鏈接
的指向。
-F — 文件類型(File type)。在每一個列舉項目之后添加一個符號。這些符號包括:/ 表明是一個目錄;@ 表明是到其它文件的符號鏈接;* 表明是一個可執(zhí)行文件。
-r — 逆向(reverse)。從后向前地列舉目錄中的內(nèi)容。
-R — 遞歸(recursive)。該選項遞歸地列舉所有目錄(在當(dāng)前目錄之下)的內(nèi)容。
-S — 大。╯ize)。按文件大小排序 -h — 以容易理解方式列出文件大。ㄈ 1k,234M,2G)
-authoer — 每個文件的作者 查看隱藏文件 #ls -a (隱藏文件格式 .filename)
用 ls -l 命令查看某一個目錄會得到一個 9 個字段的列表. 第 1 行顯示的信息: 總用量(total)
— 這個數(shù)值是該目錄下所有文件及目錄列表第 5 個字段的和(以 k 為單位),也就是該目錄的大小. 第 1 字段:
文件屬性字段 文件屬性字段總共有 10 個字母組成,第一個字母表示文件類型,如果這個字母是一個減號”-”,則說明該文件是一個普通文件.字母”d”表示該文件是一個目錄,字母”d”,是 dirtectory(目錄)的縮寫. 請注意,一個目錄或者說一個文件夾是一個特殊文件,這個特殊文件存放的是其他文件和文件夾的相關(guān)信息. 第 2 字段 文件硬鏈接數(shù)或目錄子目錄數(shù) 第 3 字段: 文件擁有者 第 4 字段: 文件擁有者所在的組 第 5 字段: 文件文件大小(以字節(jié)為單位) 第 6 字段: 文件創(chuàng)建月份
第 7 字段: 文件創(chuàng)建日期 第 8 字段: 文件創(chuàng)建時間 第 9 字段: 文件名 (如果是一個符號鏈接,那么會有一個 “-<” 箭頭符號,后面根一個它指向的文件)
查看文件夾大小 #ls –lh (查看第 5 個字段)
du 和 ls –l 區(qū)別: du 文件占用磁盤空間,并非文件大小,而 ls 顯示的是文件的實際大; 占用空間取決于文件系統(tǒng)的塊(block)的大小,linux 一般默認(rèn)是 4k(4096) ,因此,一個大小為 1個字節(jié)的文件,最小也要占用 4k,如果你創(chuàng)建文件系統(tǒng)的時候制定塊大小是 16K,那么即便一個文件只有 1 個字節(jié),占用空間也是 16K。
比如文件系統(tǒng)的 block 是 4K,一個13K 的文件占用的空間是 13k/4k = 3.25 個 block,一個 block 只能被一個文件占用,因此實際占用空間就是 4 個 block,就是 16K 查看文件的所有者信息 #ls -l (查看第 3 個字段) 或 #ls –author filename
查看文件內(nèi)容 #cat /路徑/文件名 (由第一行開始顯示檔案內(nèi)容)
或 #head –n num filename (只看頭 num 行) #tail –n num filename (只看尾 num 行) #more filename (一頁一頁顯示檔案內(nèi)容) #less filename (與 more 類似,比 more 更好的是可以往前翻頁) #nl
filename(顯示的時候,順道輸出行號) #od
以二進(jìn)制的方式讀取檔案內(nèi)容 #tac
從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫
修改文件的所有者 #chown test aa.sh chown 改變目錄或文件的所有權(quán) 一般只有 root 才有使用權(quán)限;一般
使用者沒有權(quán)限可以 改變別人的檔案擁有者,也沒有權(quán)限可以自己的檔案擁有者改設(shè)為別人; 常用參數(shù)-R:修改指定目錄下所有的文件和文件夾
修改文件的所屬群組 #chown :test aa.sh #chown -R
root:mail test6(修改所有者和群組)
修改文件的所有者權(quán)限 #chmod u+rwx filename
或 #chmod 700 filename
777 最高權(quán)限
修改文件的所屬群組權(quán)限 #chmod g+rwx filename 或 #chmod 070 filename
修改文件的其他權(quán)限 #chmod o+rwx filename 或 #chmod 667 filename
賦予某個文件所有者可讀可寫可執(zhí)行權(quán)限 #chmod u+wrx test 或 #chmod 700 test 1.文件的三種身份 u:文件的擁有者 g:文件所屬的群組 o:其他用戶 a:可以代表所有的 3 中身份; 2.文件的四種權(quán)限:
r:讀取文件的權(quán)限(read)
w:寫入文件的權(quán)限(write)
x:執(zhí)行的權(quán)限(execute)
s:特殊權(quán)限 3. 讀 取、寫入和執(zhí)行權(quán)限分別由數(shù)字 4、2 和 1 表示。
讀取權(quán)限:r 或者 4 寫入權(quán)限:w 或者 2 執(zhí)行權(quán)限:x 或者 1
chmod 111 test 和 chmod a+x test 是等價 賦予某個文件所屬組可執(zhí)行權(quán)限 #chmod g+x test
或 #chmod 676 test
在指定目錄下查找指定名稱的文件和文件夾 #find /etc -name net*
格式:find <指定路徑> <指定條件> <指定動作> 例子:搜索/etc 目錄(含子目錄)中,所有文件名以 net 開頭的文件。
取得路徑的文檔名稱和目錄名稱 #basename /etc/sysconfig/network network 取得文檔名 #dirname /etc/sysconfig/network /etc/sysconfig 取得目錄名 在 shell 腳本可能會用到 路徑跳轉(zhuǎn) #pwd 查看當(dāng)前路徑 #cd.. 返回上一級目錄 #cd ../.. 返回上兩級目錄 #cd - 返回上次所在的目錄 #cd ~ 返回主目錄
5. 文檔編輯相關(guān)操作 操作 命令舉例 備注 新建一個 test.sh 的文件 #vim test.sh 或者 #touch test.sh
打開 test.sh 文件并增加如下內(nèi)容:
#!/bin/sh Echo “hello,world!” Echo “hello,world!” Echo “hello,world!” Echo “hello,lili!” Echo “hello,world!” Echo “hello,world!” Echo “1234567” Echo “hello,world!” 1.#vim test.sh 2.按 i 鍵進(jìn)入插入模式,再輸入左側(cè)內(nèi)容; 或 按 yy 復(fù)制重復(fù)內(nèi)容,在命令行模式按下 pp 粘貼內(nèi)容; 3.按 ESC 鍵,從插入模式轉(zhuǎn)換到命令行模式,輸入:wq 或者 shift+zz 保存 參數(shù)
Vim test.sh 打開文件后默認(rèn)是命令行模式 i 從命令行模式切換到插入模式 ESC 從插入模式再切換到命令行模式 yy 拷貝光標(biāo)所在的行 dd 刪除光標(biāo)所在的行 查找包含 3456 的所有內(nèi)容,并依次定位到內(nèi)容所在位置 #/3456 #n #?3456 #N /字串 往光標(biāo)之后尋找該字串。
?字串 往光標(biāo)之前尋找該字串。
n
往下繼續(xù)尋找下一個相同的字串。
N
往上繼續(xù)尋找下一個相同的字串。
跳轉(zhuǎn)到第 5 行 #5G 在命令行模式操作:
G 會把光標(biāo)定位到
最后一行; 數(shù)字 G 會把光標(biāo)定位到指定的數(shù)字行,如 5G,光標(biāo)跳轉(zhuǎn)到第 5 行 復(fù)制第 5 行 #5G #y 在命令行模式操作:
y 復(fù)制 d 刪除
粘貼第 5 行到文件尾部 #G #p G 會把光標(biāo)定位到最后一行; 刪除第 8 行內(nèi)容 #8G #dd dd 刪除光標(biāo)所在行 清空文件內(nèi)容 #gg (跳轉(zhuǎn)到文件首行) #dG (清空文件)
選中指定部分復(fù)制并粘貼到結(jié)尾處 #v #上下左右健移動光標(biāo) #y #G #p v
從光標(biāo)當(dāng)前位置開始,光標(biāo)所經(jīng)過的地方會被選中,再按一下 v 結(jié)束。
V
從光標(biāo)當(dāng)前行開始,光標(biāo)經(jīng)過的行都會被選中,再按一下V結(jié)束 給當(dāng)前用戶賦予 test.sh 可執(zhí)行權(quán)限 #chmod u+x test.sh 或 #chmod 744 test.sh 1.文件的三種身份 u:文件的擁有者 g:文件所屬的群組 o:其他用戶 a:可以代表所有的3 中身份; 2.文件的四種權(quán)限:
r:讀取文件的權(quán)限(read)
w:寫入文件的權(quán)限(write)
x:執(zhí)行的權(quán)限(execute)
s:特殊權(quán)限 3. 讀 取、寫入和執(zhí)行權(quán)限分別由數(shù)字 4、2 和 1 表示。
讀取權(quán)限:r 或者 4 寫入權(quán)限:w 或者 2 執(zhí)行權(quán)限:x 或者 1
chmod 777 test 和 chmod a+x test 是等價 執(zhí)行 test.sh #sh test.sh #./test.sh #bash test.sh 三種方式都可;
6. 壓縮和解壓縮 操作 命令舉例 備注 把 aa.ts 壓縮成 aa.tar.gz #tar –zcvf aa.tar.gz aa.ts 左側(cè)例子 aa.ts 存在當(dāng)前目錄下,壓縮后 gz 包也放在當(dāng)前目錄下; 也可以指定完整目錄類似:tar -zcvf /home/test/backup/aa.tar.gz /home/test/aa.ts aa.tar.gz 名稱可以自己; 參數(shù)
–c:創(chuàng)建新的存檔 -x 從存檔展開文件 -t 列出存檔中文件的目錄 -z 用 gzip 對存檔壓縮或解壓 -v 顯示處理的文件名稱 -f 指定存檔或設(shè)備 c/x/t 僅能存在一個,不可同時存在!因為不可能同時壓縮與解壓縮 解壓 aa.tar.gz 到當(dāng)前目錄 #tar –zxvf aa.tar.gz
把/etc 目錄壓縮成etc.tar.gz并存放到/tmp目錄下 #tar –zcvf /tmp/tar.gz /etc
解壓etc.tar.gz包到指定目錄/bh #tar –zxvf etc.tar.gz –C /bh 參數(shù) –C 指定解壓縮目錄
7. 軟件安裝管理 操作 命令舉例 備注
安裝一個 rpm 格式軟件包 1.#rpm –ivh 軟件包名稱 2.#yum install 軟件包名稱 1.是本地安裝 2.在線安裝(yum 需要配置數(shù)據(jù)源)
3.參數(shù) -I 安裝 -v 顯示附加信息 -h 安裝時輸出 hash 記號 (“#”)
卸載一個 rpm 格式軟件包 1.#rpm –e 軟件包名稱 2.#yum remove 軟件包名稱 參數(shù)-e 刪除軟件 更新一個 rpm 格式軟件包 #rpm –Uvh 參數(shù)-U 升級 列出指定軟件包安裝了哪些文件及路徑 #rpm –ql gcc 前提是通過rpm安裝的軟件包; 左側(cè)以 gcc 軟件包為例; 根據(jù)操作命令查找軟件名稱 1. #whereis gcc gcc: /usr/bin/gcc /usr/lib/gcc /usr/libexec/gcc /usr/share/man/man1/gcc.1.gz 2. #which gcc /usr/bin/gcc 3. yum provides "*/mkdir"
1.Shell 的 which 命令可以找出相關(guān)命令是否已經(jīng)在搜索路徑中 2.Whereis 命令搜索更大范圍的系統(tǒng)目錄,和Shell 的搜索路徑無關(guān) 3. 查詢 mkdir 是屬于哪個軟件包; 根據(jù)軟件名稱查找軟件及配置文件 #rpm –qic 軟件名稱 參數(shù)
-i 查詢軟件的詳細(xì)信息,包信安裝的時間,版本信息等等 -c
查詢軟件的所有配置文件,只找出/etc/下面的文件名而以 -f 查詢某文件是哪個包生成的 查看軟件安裝版本 #rpm –qi 軟件包名稱
8. 用戶管理 操作 命令舉例 備注 新增加一個普通用戶 test,指定 id 為 505,組 id 為 500 #useradd –u 505 –g 500 test 該例子前提是組 id 500 存在;
主要參數(shù) -c:加上備注文字,備注文字保存在 passwd 的備注欄中。
-d:指定用戶登入時的啟始目錄 。
。璂:變更預(yù)設(shè)值。
-e:指定賬號的有效期限,缺省表示永久有效。
。璮:指定在密碼過期后多少天即關(guān)閉該賬號。
。璯:指定用戶所屬的群組。
。璆:指定用戶所屬的附加群組。
-m:自動建立用戶的登入目錄。
。璏:不要自動建立用戶的登入目錄。
。璶:取消建立以用戶名稱為名的群組。
。璻:建立系統(tǒng)賬號。
。璼:指定用戶登入后所使用的 shell。
-u:指定用戶 ID 號。
為 test 用戶設(shè)置密碼:123 # passwd test 更改用戶 test 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd:
所有的身份驗證令牌已經(jīng)成功更新 passwd 參數(shù):
-k
keep non-expired authentication tokens
-l 關(guān)閉賬號密碼。效果相當(dāng)于 usermod -L,只有 root 才有權(quán)使用此項。
-u 恢復(fù)賬號密碼。效果相當(dāng)于 usermod -U,同樣只有 root 才有權(quán)使用。
-g 修改組密碼。gpasswd 的等效命令。
-f 更改由 finger 命令訪問的用戶信息。
-d 關(guān)閉使用者的密碼認(rèn)證功能, 使用者在登入時將可以不用輸入密碼, 只有具備 root 權(quán)限的使用者方可使用.
-S 顯示指定使用者
的密碼認(rèn)證種類, 只有具備 root 權(quán)限的使用者方可使用.
[username] 指定帳號名稱. 修改 root 用戶的密碼為:^Bohui!123$ 1.#passwd root #輸入 root 用戶的舊密碼 #輸入新的密碼,確認(rèn)新密碼;
查看哪些用戶登錄了系統(tǒng) #who 或者 #whoami 可以輕松的獲取當(dāng)前登錄系統(tǒng)的用戶列表及用戶信息,包含使用終端登錄;
顯示當(dāng)前登錄用戶的身份及組的相關(guān)信息 #id Uid=0(root) gid=0(root) 組=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
whoami 顯示當(dāng)前作為什么用戶登錄,而 who am i顯示最初作為什么用戶登錄到系統(tǒng) 用戶切換 1.#su 2.#su root 3.#su – root 4.#sudo
1.su 后面沒有加上用戶賬戶默認(rèn)切換到 root,需要輸入 root 的密碼; 2.
只切換用戶身份,shell環(huán)境仍然是切換前用戶的環(huán)境 3. su - username -是切換用戶時,環(huán)境變量一起切換 4.sudo 是用普通用戶執(zhí)行只有管理員才能運行的命令,需要輸入普通登錄用戶的密碼; su 或 su - root 后目錄就變?yōu)榍袚Q后用戶的主目錄 忘記 root 用戶密碼
1、開機后出現(xiàn) grub 畫面。按E鍵。
2、用上下鍵選中第二項(類似于kernel/boot/vmlinuz--ro root=LABEL=\) 然后按E鍵編輯,輸入/ single 結(jié)果如下:
kernel/boot/vmlinuz--ro root=LABEL=/ single 3、按回車鍵,按B鍵啟動進(jìn)入系統(tǒng)。
4、在#sh 后輸入:passwd root 5、輸入新密碼,確認(rèn)新密碼。
6、輸入 reboot 重啟。
7、密碼修改成功。
9. 磁盤管理 操作 命令舉例 備注 分區(qū)和格式化 1.分區(qū):
。ㄏ旅胬臃 2 個主分區(qū),一個擴展分區(qū))
#fdisk -l
先找到要分區(qū)磁盤的設(shè)備名稱 #fdisk /dev/sdb
對設(shè)備/dev/sdb 分區(qū); m
m 顯示幫助 n
新建分區(qū) p
建主分區(qū) partition number (1-4):1 #創(chuàng)建第一個主分區(qū)
first cylinder (1-522,default 1):1 #起始柱面(第一個分區(qū)始終為 1) last cylinder or +size or +sizeM or +siezK(1-522,default 522): 10 #截止柱面(若 522 則整個硬盤分給了一個區(qū))此分區(qū)大小是系統(tǒng)按照柱面大小自動計算出來的
command acton (m for help):n
command action
e extended
p primary partition (1-4)
p
partition number (1-4):2 #創(chuàng)建第二個主分區(qū)
first cylinder (11-522,default 11):11 last cylinder ...(11-522,default 522): +100M #自定義分區(qū)大小
command acton (m for help):n
command action
e extended
p primary partition (1-4)
e #創(chuàng)建擴展分區(qū),注意一個磁盤只能創(chuàng)建一個擴展區(qū)
partition number (1-4):3
first cylinder (28-522,default 28):28 last cylinder ...(28-522,default 522):522 #將剩余空間全部分給擴展分區(qū) 擴展分區(qū)是不能直接使用的,必須在其上創(chuàng)建邏輯分區(qū)!
command acton (m for help):n
command action
l logical (5 or over)...
相關(guān)熱詞搜索:技能培訓(xùn) 基礎(chǔ) linux
熱點文章閱讀