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