文章目錄
一、Linux的安裝
1、vm的安裝
首先安裝VM、直接百度搜索就行了,註冊碼到網上找找都有的。
2、在vm上安裝linux操作系統
1、首先去下載linux系統鏡像,linux系統有多個版本
CentOS、ReadHat、ubantu等多個版本。建議使用純命令行的CentOS、ReadHat都可以。有利於加深學習功底。
2、鏡像下載地址
3、創建虛擬機
1、創建新的虛擬機
2、選擇稍後添加鏡像
3、選擇linux操作系統
4、設置虛擬機名稱、以及存放路徑
5、選擇鏡像路徑、設置網絡連接模式
6、開啓虛擬機,進入安裝linux
按Enter就可以了,然後等待加載
7、Lnux基本設置
- 選擇語言。
- 一些基本初始化
- 網絡主機這裏一定要設置,不然會影響後面的遠程連接
8、安裝完成進入命令行。
二、Linux常用命令
1、目錄操作
=目錄操作======
mkdir: 創建目錄
-p : 遞歸的創建目錄 也就是可以創建多層目錄
一次創建多個目錄: mkdir {a,b,c,d,e,f}
一次創建 a b c d e f多個目錄。
rmdir:刪除一個空文件夾
cp:複製文件或者文件夾-a =-pdr
-p 同時複製文件屬性,比如修改日期
-d 複製時保留文件鏈接
-r: 複製文件夾時,遞歸複製子文件夾
-l 不復制,而是創建指向源文件的鏈接文件,鏈接文件名由目標文件給出。
note:可以在拷貝的同時重命名
mv:移動文件或者文件夾,可以在移動的時候重命名rm :刪除文件或者文件夾
-r:遞歸刪除
-f:強制刪除 即沒有提醒
2、文件處理
文件處理命令========
ls :查看文件
-l 以列表形式查看
-h 以一種人性化的方式查看,也是文件的大小以合適的單位顯示
-a 查看所有文件,包括隱藏文件
-i 顯示出文件的i節點號
touch 文件名:創建文件 可以一次創建多個文件,以空格隔開cat :查看文件內容
-n:帶行號
tac:反向顯示文件內容more:分頁查看文件內容
進入瀏覽模式後:
f或者空格:下一頁
enter:一行一行往下翻
q:退出less:查看文件內容
空格翻頁
回車換行
pageup:上一頁
pagedown:下一頁
上箭頭:向上翻
下箭頭:向下翻
/搜索詞 n向下找head -n 文件名 :查看文件前n行。缺省-n顯示前10行
tail -n 文件名 :查看文件的末尾幾行
-f :動態顯示文件末尾內容ln:鏈接命令
-s創建軟連接
硬鏈接和cp -p的區別是硬鏈接會同步更新
源文件如果丟失,硬鏈接依然存在。
硬鏈接和源文件的i節點相同。
硬鏈接不能誇分區,軟連接可以跨分區。
硬鏈接不可以鏈接目錄,鏈接可以
軟連接文件具有的權限是ugo都是rwx
3、權限管理
======權限管理命令
chmod:修改文件或目錄的權限,只有root和所有者可以更改
[{ugoa}{±=}{rwx}] [文件或目錄]
[mode=421] [文件或目錄]
-R 遞歸修改
權限的數字表示:
r->4
w->2
x->1例:chmod u+x a.txt
chmod g+w,o-r a.txt //同時做多個權限的修改
chmod g=rwx a.txt
chmod 640 a.txt
chmod -R 777 testdir //把目錄和下面所有文件的權限針對文件 針對目錄
r 讀權限 可以查看文件內容 可以列出目錄中的內容
w 寫權限 可以修改文件內容 可以在目錄中創建、刪除文件
x 執行權限 可以執行文件 可以進入目錄chown:更改文件所有者,只有root可以更改
chown root a.txt//把a.txt更改爲root所有chgrp:更改所屬組
chgrp lambrother fengjie //把fengjie的所屬組更改爲lambrotherumask -S:查看創建文件的缺省權限,即默認權限
umask 023:修改文件的缺省權限爲777-023=754。即rwxr-xr–
4、文件搜索
=文件搜索命令====================
find:搜索制定範圍內的文件
find [搜索範圍] [匹配條件]
-name 按文件名搜索
-iname 根據文件名查找,不區分大小寫
-size +n大於 -n小於 n等於 這個n是數據塊,在Linux中一個數據塊是512字節大小
-user 根據所有者查找
-group 根據所屬組查找
根據文件屬性查找:
-amin 訪問時間 access
-cmin 根據文件屬性被修改的時間 change
-mmin 根據文件內容被修改的時間 modify
例: find /etc -cmin -5 :查找/etc目錄下五分鐘內被修改過屬性的文件和目錄-a 兩個條件同時滿足
find /etc -size +10 -a -size -50
-o 兩個條件滿足一個即可-type
f 文件 d 目錄 l軟連接文件
-inum 根據i節點查找對找到的結果進行操作
-exec或者-ok 命令 {} ;
例如:
find /etc -name init* -exec ls -l {} ; 對找到的文件名按列表查看find /etc -name init :搜索目錄/etc下面所有的init文件,精確匹配,包括子目錄中的init文件
find / -size +204800 搜索大於100M的文件locate:(查找速度非常快,因爲它維護了一個文件庫。缺點就是新建立的文件沒有很快收錄到文件庫)
locate 文件名
updatedb 更新locate的文件資料庫 文件資料庫不收錄/tmp下的文件
-i 不區分大小寫which :查找命令的目錄以及別名
which 命令whereis :搜索命令所在目錄及幫助文檔路徑。
grep:在文件中搜尋字符串匹配的行並輸出,多個文件以空格隔開。
-i不區分大小寫
-v排除指定字符串
-E 以正則表達式的方式搜索
-F 以普通文本的方式搜索
-n 顯示搜索到的內容在文件中的行號。
5、幫助命令
幫助命令====
man:查看命令或者配置文件的幫助信息
man 命令/配置文件
在手冊裏面,可以輸入/要查找的str
man ls
man services
man fstab //直接輸入配置文件的名字,而不需要使用絕對路徑 重點查看name選項和配置文件的格式。
如果一個命令即使命令又是配置文件,那麼可以使用一個序號進行區分,比如:
man 1 passwd 查看命令passwd的幫助
man 5 passwd 查看配置文件passwd的幫助whatis 命令:得到命令的簡要信息
apropos 配置文件名:查看配置文件的簡短信息
命令 --help:查看命令的選項。
help 命令:查看shell內置命令的幫助信息。 shell內置命令是沒有命令路徑。不能使用man查看幫助。
6、用戶命令管理
=用戶管理命令========================
useradd: 添加用戶
useradd 用戶名passwd: 修改用戶密碼
passwd 用戶名 不加用戶名直接更改自己的密碼who:查看當前的賬戶 顯示的格式爲: 登錄用戶名 登錄終端(tty:本地登錄 pts:遠程終端) 登錄時間 ip地址
w:查看更詳細的用戶登錄信息。
7、壓縮命令
=========壓縮解壓縮命令
.gz格式
壓縮:gzip 文件名 只能壓縮文件不能壓縮目錄,壓縮完源文件也不見了
解壓縮:gunzip/gzip -d 壓縮包名稱tar:
-zcvf 壓縮後文件名 打包的目錄 :生成.tar.gz文件 注:這個命令先用tar歸檔,然後把歸檔的包壓縮成.gz
-zxvf 要解壓的文件名 :解壓縮.tar.bz2的文件-jcvf 壓縮後的文件名 打包的目錄:生成.tar.bz2 注:這個命令先用tar歸檔,然後把歸檔的包壓縮成.bz2
-jxvf 要解壓的文件名 :解壓.tar.bz2的文件zip:
zip -r 壓縮生成的文件名 要壓縮的目錄
zip 壓縮生成的文件名 要壓縮的文件。unzip:
unzip 要解壓縮的文件bzip2:
bzip2 -k 要壓縮的文件名 -k選項:保留源文件
bunzip2 -k 要解壓的文件名 -k選項:保留壓縮包
8、網絡命令
=網絡命令============
write:給在線用戶發送信息,用戶不在線不行。以Ctrl+D保存
write 用戶名wall:給所有用戶名發送信息
wall 要發送的信息ping:測試網絡連通性
ping ip地址
-c 要ping的次數ifconfig:
直接回車查看當前網卡信息
ifconfig 網卡名 ip地址 臨時修改網絡ip
ifconfig th0:0 192.168.1.100 netmask 255.255.255.0
給th0這個網卡新添加一個ip
ifconfig eth0:0 down
ifconfig eth0:0 up
ifdown th0
禁用th0這塊網卡ifup th0
開啓th0這塊網卡mail:郵件命令
mail 要發送的用戶名
mail 直接回車:查看命令
help :查看支持的命令格式
輸入序列號:查看郵件詳細內容
h: 回到郵件列表
d 序列號:刪除序列號對應的郵件last:統計計算機所有用戶登錄的時間信息,以及重啓信息
lastlog:所有用戶最後一次登錄的時間
-u 用戶的uid 查看指定用戶的登錄信息。traceroute:顯示數據包到主機間的路徑
traceroute 要探測的地址.
-n 使用ip而不使用域名nslookup www.baidu.com
查看百度的ip地址netstat:顯示網絡相關信息
-t :tcp協議
-u :udp協議
-l:監聽
-r:路由
-n:顯示ip地址和端口號netstat -tlun:查看本機監聽的端口
netstat -an:查看所有的監聽信息
netstat -rn :查看路由表,即網管wget 文件地址
下載文件service network restart:重啓網絡服務。
telnet 域名或ip
遠程管理與端口探測
如: telnet 192.168.2.3:80
探測192.168.2.3是否開啓了80端口mount:掛在命令
mount -t iso9660 /dev/sr0 /mnt/cdrom :把sr0掛在到cdrom
9、關機重啓
關機重啓命令======
shutdown:這個關機命令更安全一些,不推薦使用其他關機命令。
-h:關機
shutdown -h now shutdown -h 20:30
-r:重啓
shutdown -r now
-c:取消上次的關機命令重啓:
init 6
reboot關機:
init 0
poweroff系統運行級別:
0 關機
1 單用戶 類似windows安全模式
2 不完全多用戶,不含nfs服務
3 完全多用戶
4 未分配
5 圖形界面
6 重啓
可以通過查看/etc/inittab來查看系統啓動的運行級別
runlevel:查看當前的運行級別
init n:設置系統運行級別logout:退出當前用戶,返回到登錄界面
10、rpm命令管理
=rpm命令管理-包命名與依賴性===========================
- RPM包命名原則
httpd-2.2.15-15.el6.centos.l.i686.rpm
httpd 軟件包名
2.2.15 軟件版本
15 軟件發佈的次數
el6.centos 適合的Linux平臺
i686 適合的硬件平臺
rpm rpm包擴展名
如果名字裏有noarch,則表示所有平臺都可以。2、 rpm包依賴性
樹形依賴: a->b->c 從後往前安裝所依賴的包。
環形依賴: a->b->c->a 解決辦法:一次性安裝三個包
模塊依賴:模塊依賴查詢網站 :www.rpmfind.net 一般以.so.數字結尾的依賴包,是庫依賴包,只需要安裝包括這個庫的軟件就可以自動安裝好這個所需的庫依賴包包全名:操作的包是沒有安裝的軟件包時,使用包全名,而且要注意路徑。安裝、升級時用
包名 :操作已經安裝的軟件包時,使用包名。是搜索/var/lib/rpm中的數據庫。一般查詢,卸載時用
rpm安裝:
rpm-ivh 包全名
-i(install) 安裝
-v(verbose) 顯示詳細信息
-h(hash) 顯示進度
--nodeps 不檢測依賴性 一般都必須要檢測rpm包升級:
rpm -Uvh 包全名
-U(upgrade) 升級
-hrpm -e 包名
-e(erase) 卸載
--nodeps 不檢查依賴性查詢是否安裝
rpm - q 包名 :查詢包是否安裝
-q(query) 查詢
-a(all) 所有
-i(information) 查詢軟件信息
-p(package) 查詢未安裝包信息
rpm -ql 包名:查詢包中文件安裝位置(list) 注:包的安裝路徑在包生成的時候就確定了
rpm -qlp 包全名:查詢未安裝包安裝時會安裝在哪裏。
rpm -qf 系統文件名 :查詢系統文件屬於哪個rpm包 注:系統文件名必須是通過安裝哪個包生成的文件
-f:查詢系統文件屬於哪個包
rpm -qR 包名 查詢已安裝軟件包的依賴性
-r: 查詢軟件包的依賴性(requires)
rpm -qRp:查詢未安裝包的依賴性
-p: 查詢未安裝包的依賴性例如:
rpm -qa | grep httpd 查詢所有Apache的包
rpm包校驗
rpm -V 已安裝的包名 :如果沒有提示則表示沒有被修改過
-V 校驗指定rpm包中的文件(verify)
校驗值的含義:
S:文件大小是否改變
M:文件的類型或文件的權限(rwx)是否被改變
5:文件MD5校驗和是否改變(可以看成文件內容是否改變)
D:設備的中,從代碼是否改變
L:文件路徑是否改變
U:文件的屬主(所有者)是否改變
G:文件的屬組是否改變
T:文件的修改時間是否改變rpm包中文件提取:
rpm2cpio 包全名 |
cpio -div .文件絕對路徑rpm2cpio:講rpm包轉換爲cpio格式的命令
\表示命令沒有輸完,在下一行繼續輸入
cpio:是一個標準工具,它用於創建軟件檔案文件和從檔案文件中提取文件
cpio 選項 <[文件|設備]
-i copy-in模式,還原
-d:還原時自動新建目錄
-v:顯示還原過程例如:
rpm -qf /bin/ls #查看ls命令屬於哪個包
mv /bin/ls /tmp #將ls命令移走
rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls #提取rpm保重ls命令到當前目錄的/bin/ls下
cp /root/bin/ls /bin/ #把ls命令複製到/bin/目錄,修復文件丟失
11、yum在線管理
yum在線管理:
一、 ip地址配置
第1步:setup:使用圖形界面配置ip地址
第2步:vi/etc/sysconfig/network-scripts/ifcfg-eth0 把ONBOOT="no"改爲ONBOOT=“yes” #啓動網卡
第3步:service network restart :重新啓動網絡服務。二、網絡yum源
yum源位置:/etc/yum.repos.d/CentOS-Base.repo,這個是默認的網絡yum源
[base] 容器名稱,一定要放在[]中
name 容器說明,可以自己隨便寫
mirrorlist 鏡像站點,這個可以註釋掉
baseurl 我們的yum源服務器的地址,默認是CentOS官方的yum源服務器,是可以使用的,如果你覺得慢可以改成你喜歡的yum源地址
enabled 此容器是否生效,如果不寫或寫成enable=1都是生效,寫成enable=0就是不生效
gpgcheck 如果是1是指rpm的數字證書生效,如果是0則不生效
gpgkey 數字證書的公鑰文件保存位置。不用修改。yum命令
yum list :獲取服務器上所有可用的軟件的列表
yum search 關鍵字:搜索服務器上所有和關鍵字相關的包
yum -y install 包名:安裝軟件包
install:安裝
-y:自動回答yes
yum -y update 包名:升級軟件包
update:升級
-y:自動回答yes
如果沒有包名,就會升級所有的軟件包,包括Linux內核。慎用
yum -y remove 包名
remove:卸載
-y:自動回答yes
注:yum會自動卸載依賴包,而很有可能這個依賴包也被別的包依賴,所以很危險,慎用。yum grouplist:列出所有可用的軟件組列表
yum groupinstall 軟件組名:安裝指定軟件組,組名可以由grouplist查詢出來 注:如果查詢出來的軟件組名中間有空格,要使用""引起來。
yum groupremove 軟件組名:卸載指定軟件組
- 光盤yum源
- 掛在光盤 mount /dev/sr0 /mnt/cdrom
2) 讓網絡yum源文件失效
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak
mv Centos-Vault.repo Centos-Vault.repo.bak
3) 修改光盤yum源文件
vim CentOS-Media.repo
[c6-media]
name=CentOS-$releaserver -Media
baseurl=file:///mnt/cdrom
#地址爲你自己的光盤掛載地址 #file:///media/cdrom/
#file:///media/cdrecorder/#註釋這兩個不存在的地址
gpgcheck=1
enabled=1 #把enabled=0改爲enabled=1,讓這個yum配置文件生效
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6注意:註釋配置行的時候,#符號一定要寫在開頭,不要隨便在配置文件某一行後面加註釋,也不要隨便加空格。
12、其他命令
其他命令
du -sh 文件名
ps 靜態查看系統進程,系統默認安裝
ps -aux 使用BSD語法查看所有進程
ps -ef 標準語法查看所有進程
UID 程序被該 UID 所擁有
PID 就是這個程序的 ID
PPID 則是其上級父程序的ID
C CPU 使用的資源百分比
STIME 系統啓動時間
TTY 登入者的終端機位置
TIME 使用掉的 CPU 時間。
CMD 所下達的指令爲何
ps -aux --sort -pcpu,-pmem
根據CPU佔用情況和內存佔用情況來顯示進程
watch -n 1 ‘ps -aux --sort -pcpu,-pmem’
每隔1秒監控一次進程情況top 動態查看系統的狀態
lsof -Pti :8000
通過端口號獲得進程pidkill -9 pid
殺死指定pid的進程,強行殺死。history
查看歷史命令執行歷史命令
!! 執行上一條命令
!n 執行歷史命令的中第n條
!-n 執行導數第n條
!string 執行以string開頭的歷史命令行
!?string? 執行包含string的歷史命令行alias
給命令起別名alias 命令=‘別名’
alias -p 查看已存在的別名unlias
取消別名
unlias namecal
查看某一年的日曆,可以是1-9999中的任意一年
cal 88zcat
查看壓縮包中的內容sed -i ‘s#old#new#g’ 文件名
使用new替換文件中的oldssh [email protected] “ifconfig”
遠程執行命令bash -x 腳本名
調試腳本centos6上的三個網絡配置文件
/etc/sysconfig/network-scripts/ifcfg-etho
/etc/sysconfig/network
/etc/resolv.conf # dns
有關如何在linux上安裝mysql7.5-linux數據庫,參考mysql的安裝
https://blog.csdn.net/qq_40749830/article/details/106945816