目錄 | 簡介 |
---|---|
/bin | Binary的縮寫,存放最經(jīng)常使用的命令 |
/sbin | s代表Super user,存放系統(tǒng)管理員使用的系統(tǒng)管理程序 |
/home | 存放普通用戶的主目錄,每個用戶都有專屬的目錄且一般以用戶名命名 |
/root | 為系統(tǒng)管理員所有,也稱作超級權(quán)限者的用戶主目錄 |
/lib | 系統(tǒng)開機所需最基本的動態(tài)連接共享庫,其作用類似于Windows里的DLL文件 |
/lost+found | 此目錄一般情況下是空的,當(dāng)系統(tǒng)非法關(guān)機后,才存放一些文件 |
/etc | 所有系統(tǒng)管理所需的配置文件和子目錄,例如安裝mysql數(shù)據(jù)庫-my.conf |
/usr | 非常重要的目錄,存放用戶的應(yīng)用程序和文件,類似于Windows的program files |
/boot | 存放啟動Linux時使用的核心文件,包括鏈接、鏡像文件等 |
/proc | 虛擬的目錄,系統(tǒng)內(nèi)存的映射,通過訪問此目錄以獲取系統(tǒng)信息 |
/srv | service的縮寫,存放一些服務(wù)啟動之后需要提取的數(shù)據(jù) |
/sys | Linux2.6內(nèi)核的一大改動,該目錄安裝了2.6內(nèi)核中一個新文件系統(tǒng) sysfs |
/tmp | 存放臨時文件 |
/dev | 類似于windows的設(shè)配管理器,只不過Linux將所有的硬件都用文件的方式存儲 |
/media | Linux系統(tǒng)會自動識別一些設(shè)備,如U盤、光驅(qū)等,識別后將其掛在于此目錄 |
/mnt | 系統(tǒng)提供此目錄用以臨時掛載別的文件系統(tǒng),用戶可以將外部的存儲掛載于/mnt |
/opt | 系統(tǒng)提供用以安裝其他軟件,如安裝ORACLE數(shù)據(jù)庫等,默認(rèn)為空 |
/usr/local | 系統(tǒng)提供用以使用編譯源碼方式安裝程序的目錄 |
/var | 該目錄存放經(jīng)常被修改的文件及目錄,例如各種日志文件 |
/selinux | 系統(tǒng)的一種安全子系統(tǒng),控制程序只能訪問特定文件,有三種可設(shè)置的工作模式 |
關(guān)機&重啟
指令 | 簡介 |
---|---|
shutdown -h now | 立刻進(jìn)行關(guān)機 |
shutdown -h 1 | 1分鐘后進(jìn)行關(guān)機 |
shutdown -r now | 立即進(jìn)行重啟 |
halt | 關(guān)機 |
reboot | 現(xiàn)在重新啟動計算機 |
sync | 將內(nèi)存數(shù)據(jù)同步到磁盤上 |
注意:不論是重啟系統(tǒng)或者關(guān)閉系統(tǒng),都應(yīng)先手動運行sync命令進(jìn)行內(nèi)存數(shù)據(jù)同步
即使目前的shutdown/reboot/halt等命令均在關(guān)機前進(jìn)行了sync命令,但應(yīng)謹(jǐn)慎為上
用戶管理
用戶登錄和注銷
盡量少使用root賬戶登錄,因為它是系統(tǒng)管理員,擁有最大的權(quán)限。為了避免誤操作,一般使用普通賬戶登錄,如若需要相應(yīng)的權(quán)限,可以使用su - root命令臨時切換為系統(tǒng)管理員身份。
在提示符下輸入logout即可注銷賬戶
添加用戶
基本介紹:Linux系統(tǒng)是一個多用戶多任務(wù)的操作系統(tǒng),任何一個要使用系統(tǒng)資源的用戶,都必須首先向系統(tǒng)管理員申請一個賬戶,然后用這個賬號的身份進(jìn)入系統(tǒng)
基本語法
useradd 用戶名
當(dāng)創(chuàng)建用戶成功以后,會自動的創(chuàng)建和用戶名同名的家目錄
也可以通過useradd -d 指定目錄 新的用戶名,給新創(chuàng)建的用戶指定家目錄
指定/修改密碼
passwd 用戶名
刪除用戶
基本語法
userdel 用戶名
默認(rèn)保留home目錄,僅刪除用戶
user -r 用戶名 ,刪除用戶以及用戶home目錄
查詢用戶
基本語法
id 用戶名 ,即可顯示用戶信息
說明,當(dāng)用戶不存在時,返回?zé)o此用戶
切換用戶
基本介紹
在Linux系統(tǒng)中,如果當(dāng)前用戶的權(quán)限不夠,可以通過su - 更高權(quán)限用戶,切換用戶執(zhí)行
基本語法
su - 切換用戶名
細(xì)節(jié)說明
從高權(quán)限用戶切換到低權(quán)限用戶,不需要輸入密碼,反之需要
當(dāng)需要返回原來用戶時,使用exit/logout指令
查看當(dāng)前用戶
基本語法
whoami/who am i
用戶組
介紹: 類似于角色,系統(tǒng)可以對有共性/權(quán)限的多個用戶進(jìn)行統(tǒng)一管理
新增組
groupadd 組名
刪除組
groupdel 組名
創(chuàng)建用戶時指定用戶組
useradd -g 用戶組 用戶名
如果創(chuàng)建用戶時,并未指定用戶組,則默認(rèn)與用戶名同名的用戶組
修改用戶組
usermod -g 用戶組 用戶名
用戶和組相關(guān)文件
/etc/passwd
用戶(user)的配置文件,用于記錄用戶的各種信息
每行含義: 用戶名:口令:用戶標(biāo)識號:組標(biāo)識號:注釋性描述:主目錄:登錄shell
/etc/shadow
口令的配置文件
每行含義: 登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:不活動時時間:失效時間:標(biāo)志
/etc/group
組(group)的配置文件, 記錄Linux包含的組信息
每行含義: 組名:口令:組標(biāo)識號:組內(nèi)用戶列表
指定運行級別
基本介紹
運行級別說明:
0 : 關(guān)機
1 : 單用戶(找回丟失密碼)
2 : 多用戶狀態(tài)沒有網(wǎng)絡(luò)服務(wù)
3 : 多用戶狀態(tài)有網(wǎng)絡(luò)服務(wù)
4 : 系統(tǒng)未使用保留給用戶
5 : 圖形界面
6 : 系統(tǒng)重啟
說明: 常用運行級別是3和5, 也可以指定默認(rèn)運行級別
命令: init[0123456]
通過init來切換不同的運行級別
CentOS7運行級別說明
在/ect/inittab文件中進(jìn)行了簡化, 如下:
multi-user.target: analogous to runlevel 3
graphical.target: analogous to runlevel 5
-# To view current default target, run:
systemctl get-default
-# To set a default target, run:
systemctl set-default TARGET.target
重置root密碼
重啟系統(tǒng), 進(jìn)入開機界面, 按"e"進(jìn)入編輯界面
?
進(jìn)入編輯界面, 使用鍵盤上下鍵移動光標(biāo), 找到以"Linux16"開頭內(nèi)容所在的行數(shù), 將ro改為rw,并在行末輸入: init=/bin/sh
輸入完成后,直接按快捷鍵: Ctrl+x, 進(jìn)入單用戶模式
輸入: "passwd root", 回車, 接著輸入密碼與確認(rèn)密碼, 顯示passwd.....,說明密碼修改成功
在鼠標(biāo)閃爍位置輸入: touch /.autorelabel, 按下回車
輸入: exec /sbin/init
幫助指令
man獲得幫助信息
man [命令或配置文件] (功能描述: 獲得幫助信息)
例如: 查看ls命令的幫助信息 man ls (在Linux系統(tǒng)中, 隱藏文件是以"."開頭)
help指令
help 命令 (功能描述: 獲得shell內(nèi)置命令的幫助信息)
例如: 查看cd命令的幫助信息 help cd
文件目錄
pwd
pwd ,顯示當(dāng)前工作目錄的絕對路徑
ls
ls [選項] [目錄或是文件]
常用選項
-a : 顯示當(dāng)前目錄所有的文件和目錄, 包括隱藏文件
-l : 以列表的方式顯示信息
cd
cd [參數(shù)] (功能描述: 切換到指定目錄, 絕對路徑,相對路徑皆可)
cd ~ 或者 cd : 回到自己的家目錄, 例如當(dāng)前用戶為root, 則cd ~ 切換到/root
cd.. 回到當(dāng)前目錄的上一級目錄
mkdir
mkdir [選項] 創(chuàng)建的目錄
mkdir -p 創(chuàng)建多級目錄
例如(下例中僅/home/目錄存在):
mkdir /home/dog 創(chuàng)建/home/dog目錄
mkdir -p /home/animal/cat 創(chuàng)建/home/animal/cat目錄
rmdir
mkdir的反向操作, 用于刪除目錄
rmdir [選項] 要刪除的目錄
rmdir /home/dog 刪除/home/dog目錄
上例僅能刪除空目錄, rm -rf 要刪除的非空目錄
rm指令能夠刪除文件和目錄
選項r表示遞歸刪除目錄
f表示強制刪除, 不會顯示刪除確定提示
rmdir -p 要刪除的目錄, 是當(dāng)子目錄被刪除后使它也成為空目錄的話,則順便一并刪除
touch
創(chuàng)建空文件
touch 文件名稱
cp
拷貝文件
cp [選項] source dest
source: 源文件
dest: 目標(biāo)目錄
常用選項: -r, 用于遞歸復(fù)制整個文件夾
rm
刪除文件或目錄
rm [選項] 要刪除的文件或目錄
常用選項:
-r : 遞歸刪除整個文件夾
-f : 強制刪除不提醒
應(yīng)用實例:
rm /home/HelloWorld.java : 刪除/home/HelloWorld.java
rm -rf /home/dir_java : 遞歸刪除/home/dir_java目錄
提示: 刪除的目錄有多個文件或目錄時, 加上-f選項, 避免不必要的刪除確認(rèn)提示
mv
移動文件與目錄或者重命名
mv oldFileName newFileName (當(dāng)前目錄下, 執(zhí)行重命名操作)
mv /temp/sourceFile /opt/destFile (移動文件)
cat
查看文件內(nèi)容
cat [選項] 要查看的文件
常用選項: -n, 顯示行號
more
其是基于vi編輯器的文本過濾器, 以全屏幕的方式按頁顯示文本文件的內(nèi)容
more 要查看的文件
詳細(xì)操作:
操作 功能說明 空格鍵(space) 表示向下翻頁 回車鍵(Enter) 表示向下一行 q 退出more指令 Ctrl + F 向下滾動一屏 Ctrl + B 返回上一屏 = 輸出當(dāng)前行號 :f 輸出文件名和當(dāng)前行號 less
less指令用來分屏查看文件內(nèi)容, 功能與more指令類似, 但比more指令更加強大, 支持各種顯示終端.
使用less指令查看文件內(nèi)容時, 并不是一次性將整個文件加載到內(nèi)存, 而是按需動態(tài)加載內(nèi)容, 使用查看較大的文件
less 要查看的文件
詳細(xì)操作
操作 功能說明 空格鍵 向下翻動一頁 [pagedown] 向下翻動一頁 [pageup] 向上翻動一頁 /字符 向下查找[字符], n : 下一個匹配字符, N : 上一個匹配字符 ?字符 向上查找[字符], n : 上一個匹配字符, N : 下一個匹配字符 q 退出less echo
輸出內(nèi)容到控制臺
echo [選項] [輸出內(nèi)容]
echo $PATH : 輸出環(huán)境變量
echo hello, world! : 輸出hello, world!
head
用于顯示文件開頭部分的內(nèi)容
head 文件 : 查看文件前10行內(nèi)容(默認(rèn)為10行)
head -n 5 文件 : 查看文件前5行內(nèi)容
tail
用于輸出文件尾部內(nèi)容, 默認(rèn)情況下顯示文件的后10行內(nèi)容
tail 文件 : 查看文件后10行內(nèi)容
tail -n 5 文件 : 查看文件后5行內(nèi)容
tail -f 文件 : 實時追蹤該文檔的所有更新
>和>>
.> : 輸出重定向, >> : 追加
ls -l > ls.txt : 將列表的內(nèi)容寫入文件ls.txt中(覆蓋寫)
ls -al >> lsa.txt : 將列表的內(nèi)容追加到文件lsa.txt的末尾
cat 文件1 > 文件2 : 將文件一的內(nèi)容覆蓋寫到文件2中
ln
軟連接也稱為符號連接, 類似于Windows里的快捷方式, 用于鏈接其它文件
ln -s [原文件或目錄] [軟鏈接名] : 給原文件創(chuàng)建一個軟鏈接
說明: 使用pwd指令查看目錄時, 仍然是軟鏈接所在的目錄
history
查看已經(jīng)歷史命令, 也可以再次執(zhí)行歷史命令
應(yīng)用實例:
history : 顯示所有的歷史命令
history 10 : 顯示最近使用過的10個命令
!5 : 執(zhí)行歷史編號為5的命令
時間日期
date
顯示當(dāng)前日期
指令 功能說明 date 顯示當(dāng)前時間 date +%Y 顯示當(dāng)前年份 date +%m 顯示當(dāng)前月份 date +%d 顯示當(dāng)前是哪一天 date "+%Y-%m-%d %H:%M:%S" 顯示年月日時分秒
設(shè)置日期
date -s 字符串時間
cal
查看日歷指令
cal [選項] : 不加選項, 顯示本月日歷
搜索查找
find
find指令將從指定目錄向下遞歸地遍歷其各個子目錄,將滿足條件的文件或目錄顯示在終端
基本語法
find [搜索范圍] [選項]
選項 功能 -name<查詢方式> 按照指定的文件名查找模式查找文件 -user<用戶名> 查找屬于指定用戶名所有文件 -size<文件大小> 按照指定的文件大小查找文件 應(yīng)用實例
案例一: 按文件名,根據(jù)名稱查找/home/目錄下的hello.txt文件
find /home -name hello.txt
案例二:按擁有者:查找/opt目錄下,用戶名稱為noboby的文件
find /opt -user nobody
案例三:查找整個linux系統(tǒng)下大于200M的文件(+n大于 -n小于 n等于,單位有k, M, G)
find / -size +200M
locate
locate指令可以快速定位文件路徑。locate指令利用事先建立的系統(tǒng)中所有文件名稱及路徑的locate數(shù)據(jù)庫實現(xiàn)快速定位給定的文件。locate指令無需遍歷整個文件系統(tǒng),查詢速度較快。為了保證查詢結(jié)果的準(zhǔn)確性,管理員必須定期更新locate數(shù)據(jù)庫
基本語法:
locate 搜索文件
特別說明:由于locate指令基于數(shù)據(jù)庫進(jìn)行查詢,所以第一次運行前,必須使用updatedb指令創(chuàng)建locate數(shù)據(jù)庫
which指令,可以查看某個指令在哪個目錄下,比如ls指令在那個目錄
grep和|
grep過濾查找,管道符 |,表示將前一個命令的處理結(jié)果輸出傳遞給后面的命令處理
基本語法
grep [選項] 查找內(nèi)容 源文件
常用選項
選項 功能 -n 顯示匹配行及行號 -i 忽略字母大小寫 應(yīng)用實例
請在hello.txt文件中,查找“yes"所在行,并且顯示行號
cat /home/hello.txt | grep "yes"
grep -n "yes" /home/hello.txt
解壓縮
gzip/gunzip
gzip用于壓縮文件, gunzip用于解壓
基本語法
gzip 文件 (只能將文件壓縮為*.gz文件)
gunzip 文件.gz (解壓gz文件)
應(yīng)用實例
案例一:gzip壓縮,將/home/hello.txt文件進(jìn)行壓縮
gzip /home/hello.txt
案例二:gunzip解壓,將/home/hello.txt.gz文件進(jìn)行解壓
gunzip /home/hello.txt.gz
zip/unzip
zip用于壓縮文件,unzip用于解壓文件,這個在項目打包發(fā)布中很有用
基本語法
zip [選項] xxx.zip 要壓縮的內(nèi)容 (壓縮文件和目錄)
unzip [選項] xxx.zip (解壓文件)
常用選項
-r,遞歸壓縮,及壓縮目錄
-d<目錄> 指定解壓后文件的存放目錄
應(yīng)用實例
案例一:將/home/目錄及其所有子文件,子文件目錄進(jìn)行壓縮為myhome.zip
zip -r myhome.zip /home/
案例二:將myhome.zip解壓到/opt/tmp目錄下
mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip
tar
tar指令是打包指令,最有打包后的文件類型是.tar.gz
基本語法
tar [選項] xxx.tar.gz 打包的內(nèi)容
選項 功能 -c 產(chǎn)生.tat打包文件 -v 顯示詳細(xì)信息 -f 指定壓縮后的文件名 -z 打包同時壓縮 -x 解壓.tar文件 應(yīng)用實例
案例一:壓縮多個文件,將/home/pig.txt和/home/cat.txt壓縮成 pc.tar.gz
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
案例二:將/home文件夾壓縮成myhome.tar.gz
tar -zcvf myhome.tar.gz /home/
案例三:將pc.tar.gz解壓到當(dāng)前目錄
tar -zxvf pc.tar.gz
組、權(quán)限管理
組
在Linux中的每個用戶都必須屬于某一個組
Linux中文件也有組的概念,且不局限于一個組
所在組
其它組
文件/目錄所有者
一般為文件/目錄的創(chuàng)建者,誰創(chuàng)建了該文件/目錄,就為其所有者
查看所有者
ls -lah
修改所有者
chown 用戶名 文件名
文件/目錄所在組
當(dāng)某個用戶創(chuàng)建了一個文件后,該用戶所在組就是文件所在組
查看文件/目錄所在組
ls -lah
修改文件所在組
chgrp 組名 文件名
其它組
除文件的所有者和所在組的用戶外,系統(tǒng)的其他用戶都是文件的其它組
改變用戶所在組
usermod -g 新組名 用戶名
usermod -d 目錄名 用戶名 改變該用戶登錄的初始目錄。
特別說明,用戶需要有進(jìn)入新目錄的權(quán)限
權(quán)限
通常,ls -l顯示內(nèi)容如下:
-rwxrw-r-- 1 root root 121 Feb 2 12:12 hello.txt
說明(0~9):
第0位:文件類型(d, -, l, c, b)
-:普通文件
d:目錄,也就是文件夾
c:字符設(shè)備文件,鼠標(biāo),鍵盤
b:塊設(shè)備,例如,硬盤
第1~3位:所有者權(quán)限,---User
第4~6位:所屬組權(quán)限,---Group
第7~9位:其它用戶權(quán)限,---Other
rwx權(quán)限說明
對于文件
r:表示可讀(read),可以讀取、查看
w:表示可寫( write),可以修改,但是并不代表可以刪除該文件,刪除需要有對該文件所在目錄具有寫權(quán)限
x:表示可執(zhí)行(execute),可以被執(zhí)行
對于目錄
r:表示可讀(read),可以讀取、ls查看目錄內(nèi)容
w:表示可寫( write),可以修改,對目錄內(nèi)創(chuàng)建、刪除、重命名目錄/文件
x:表示可執(zhí)行(execute),可以進(jìn)入該目錄
數(shù)字表示權(quán)限
r=4,w=2,x=1,因此rwx=4+2+1=7
其它說明
-rwxrw-r-- 1 root root 121 Feb 2 12:12 hello.txt
1:文件:硬連接數(shù),目錄:子目錄數(shù)
root:用戶
root:組
121:文件大?。ㄗ止?jié)),如果是文件夾,顯示4096字節(jié)
Feb 2 12:12:最后修改時間
hello.txt:文件名
修改權(quán)限
通過chmod指令,可以修改文件或者目錄的權(quán)限
chmod u=rwx,g=rx,o=x 文件/目錄名
chmod o+x 文件/目錄名
chmod a-x 文件/目錄名
說明:u:所有者,g:所有組,o:其他人,a:所有人(u,g,o的總和)
+:增加權(quán)限,-:減少權(quán)限,=賦予權(quán)限
案例演示
設(shè)置hello.txt文件的所有者讀寫執(zhí)行權(quán)限,所在組讀執(zhí)行,其它組讀執(zhí)行
chmod u=rwx,g=rx,o=rx hello.txt
設(shè)置hello.txt文件所有者除去執(zhí)行權(quán)限,增加所在組寫權(quán)限
chmod u-x,g+w hello.txt
設(shè)置hello.txt文件所有用戶添加讀權(quán)限
chmod a+r hello.txt
使用數(shù)字方式變更權(quán)限
r=4,w=2,x=1
數(shù)字 相應(yīng)權(quán)限 0 --- 1 x 2 w 3 wx 4 r 5 rx 6 rw 7 rwx
例如:chmod u=rwx,g=rx,o=x hello.txt == chmod 751 hello.tx
修改文件所有者
基本用法
chown newowner 文件/目錄 改變所有者
chown newowner:newgroup 文件/目錄 改變所有者和所在組
-R,如果是目錄,則是其下所有子文件或目錄遞歸生效
案例演示
將/home/abc.txt文件的所有者修改為tom
chown tom /home/abc.txt
將/home/test目錄下所有的文件和目錄的所有者都修改為tom
chown -R tom /home/test
修改文件/目錄所在組
基本用法
chgrp newgroup 文件/目錄
案例演示
將/home/abc.txt文件的所在組修改成sh
groupadd sh
chgrp sh /home/abc.txt
將/home/kkk目錄下的所有文件和目錄所在的組都修改成sh
本文摘自 :https://www.cnblogs.com/