Linux 高級(jí)教程(上)
一、Linux用戶與權(quán)限
1. ?用戶和權(quán)限的基本概念
1.1、基本概念
用戶 是Linux系統(tǒng)工作中重要的一環(huán), 用戶管理包括 用戶 與 組
管理 在Linux系統(tǒng)中, 不論是由本級(jí)或是遠(yuǎn)程登錄系統(tǒng), 每個(gè)系統(tǒng)都必須擁有一個(gè)賬號(hào), 并且對(duì)于不同的系統(tǒng)資源擁有不同的使用權(quán)限
對(duì) 文件 / 目錄 的權(quán)限包括:

在 Linux中 ,可以指定 每一個(gè)用戶 針對(duì) 不同的文件或者目錄 的 不同權(quán)限

1.2、組
為了方便用戶管理, 提出了 組 的概念, 如下圖所示

1.3、ls -l擴(kuò)展

ls -l 可以查看文件夾下文件的詳細(xì)信息, 從左到右 依次是:
權(quán)限, 第一個(gè)字符如果是 d 表示目錄
硬鏈接數(shù), 通俗的講就是有多少種方式, 可以訪問當(dāng)前目錄和文件
擁有者, 家目錄下 文件 / 木蘭路 的擁有者通常都是 當(dāng)前用戶
組, 在linux中, 很多時(shí)候, 會(huì)出現(xiàn)組名 和 用戶名 相同的情況, 后續(xù)會(huì)講
大小
時(shí)間
名稱


2. ?終端命令:組管理
本質(zhì): 給 同一類型用戶 分配權(quán)限

提示:
組信息保存在 /etc/group 文件中
我們以root:x:0:root,linuxsir 為例: 用戶組root,x是密碼段,表示沒有設(shè)置密碼,GID是0,root用戶組下包括root、linuxsir以及GID為0的其它用戶。
在實(shí)際應(yīng)用中, 可以預(yù)先針對(duì) 組 設(shè)置好權(quán)限, 然后 將不同的用戶添加到對(duì)應(yīng)的組中, 從而不用依次為每一個(gè)用戶設(shè)置權(quán)限
演練目標(biāo):
1、在 指定目錄下 創(chuàng)建 aaa 目錄
2、新建 dev 組
3、將 aaa 目錄的組修改為 dev chgrp dev aaa
3. ?終端命令:用戶管理
3.1 創(chuàng)建用戶 、 設(shè)置密碼 、刪除用戶

提示:
創(chuàng)建用戶時(shí), 默認(rèn)會(huì)創(chuàng)建一個(gè)和用戶名同名的組名
用戶信息保存在 /etc/passwd 文件中
/etc/passwd 文件存放的是用戶的信息, 由6個(gè)分好組成的7個(gè)信息, 分別是

用戶名
密碼 (x, 表示加密的密碼)
UID (用戶標(biāo)志)
GID(組標(biāo)志)
用戶全名或本地賬號(hào)
家目錄
登錄使用的Shell, 就是登錄之后, 使用的終端命令
3.2 查看用戶信息

3.3 su切換用戶

因?yàn)?普通用戶 不能使用某些權(quán)限, 所以需要 切換用戶

su 不接用戶名, 可以切換到 root , 但是不推薦使用, 因?yàn)椴话踩?/p>
exit 示意圖如下:

3.4 sudo
雖然 通過 su -u root 可以切換到 root用戶, 但是 存在嚴(yán)重的 安全隱患
linux系統(tǒng)中的 root 賬號(hào)通常 用于系統(tǒng)的維護(hù)和管理, 對(duì)操作系統(tǒng)的所有資源 具有訪問權(quán)限
如果不小心使用 rm -rf ... ... , 就可能將系統(tǒng)搞癱瘓
在大多數(shù)版本的linux中, 都不推薦 直接只用 root 賬號(hào)登錄系統(tǒng)
sudo 命令用來以其他身份來執(zhí)行命令, 預(yù)設(shè)的身份為 root
用戶使用 sudo 時(shí), 必須先輸入密碼, 之后5分鐘的有效期限, 超過期限則必須重新輸入密碼
提示: 若其未經(jīng)授權(quán)的用戶企圖使用 sudo, 則會(huì)發(fā)出警告郵件給管理員
3.4.1 給 指定用戶 授予 權(quán)限
本質(zhì): 通知 服務(wù)器 給 特定用戶 分配 臨時(shí)管理員權(quán)限
visudo
3.4.2 使用 用戶 zhangsan 登錄, 操作管理員命令
本質(zhì): 使用臨時(shí)管理員權(quán)限
4. ?修改用戶權(quán)限

準(zhǔn)備工作: 使用root用戶操作
4.1 方式一
chmod 可以修改 用戶/組 對(duì) 文件/目錄 的權(quán)限
命令格式如下:
提示: 已上方式會(huì)一次向修改 擁有者 / 組權(quán)限
目標(biāo)演練:
4.2 方式二
雖然 方式一 直接修改文件|目錄的 讀|寫|執(zhí)行 權(quán)限, 但是不能精確到 擁有者|組|其他 權(quán)限
命令格式如下:( u 表示所屬用戶 / g 表示所屬組 / o 表示其他)

4.3 方式三
第一個(gè)數(shù)字 是 擁有者權(quán)限, 第二個(gè)數(shù)字 是 組權(quán)限, 第三個(gè)數(shù)字 是 其他用戶權(quán)限

二、Linux系統(tǒng)信息
本節(jié)內(nèi)容主要是為了方便通過遠(yuǎn)程終端維護(hù)服務(wù)器時(shí), 查看服務(wù)器上當(dāng)前 系統(tǒng)日期和時(shí)間 / 磁盤空間占用情況 /程序執(zhí)行情況
本小結(jié)學(xué)習(xí)終端命令都是查詢命令, 通過這些命令對(duì)系統(tǒng)資源的使用情況有個(gè)了解
1. ?時(shí)間和日期
1.1. date時(shí)間

第一步: 顯示當(dāng)前時(shí)間
第二步:設(shè)置系統(tǒng)時(shí)間
1.2. cal日歷

2. ?磁盤、內(nèi)存信息

選項(xiàng)說明

3. ?進(jìn)程信息

ps 默認(rèn)只會(huì)顯示當(dāng)前用戶通過終端啟動(dòng)的應(yīng)用程序
Linux下顯示系統(tǒng)進(jìn)程的命令ps,最常用的有ps -ef 和ps aux。這兩個(gè)到底有什么區(qū)別呢?兩者沒太大差別,討論這個(gè)問題,要追溯到Unix系統(tǒng)中的兩種風(fēng)格,System V風(fēng)格和BSD 風(fēng)格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中,兩者輸出略有不同?,F(xiàn)在的大部分Linux系統(tǒng)都是可以同時(shí)使用這兩種方式的。
ps 選項(xiàng)說明功能

提示: 使用kill命令時(shí), 最好只終止由當(dāng)前用戶開啟的進(jìn)程, 而不要終止root身份開啟的進(jìn)程, 否則可能導(dǎo)致系統(tǒng)崩潰
要退出 top 可以直接輸入 q
三、Linux軟件安裝
1. ?rpm軟件包管理器
rpm(英文全拼:redhat package manager) 原本是 Red Hat Linux 發(fā)行版專門用來管理 Linux 各項(xiàng)軟件包的程序,由于它遵循GPL規(guī)則且功能強(qiáng)大方便,因而廣受歡迎。逐漸受到其他發(fā)行版的采用。RPM 套件管理方式的出現(xiàn),讓Linux易于安裝升級(jí),間接提升了 Linux的適用度。
命令格式: rpm -參數(shù) ?軟件包名 ?

示例1:查詢已安裝的rpm列表,通常通過管道命令配合grep進(jìn)行查找

示例2:查詢軟件包信息
示例3:顯示軟件包中的文件列表 rpm -ql 軟件包名稱
示例4:查看指定文件歸屬于哪個(gè)軟件包 rpm -qf ?文件絕對(duì)路徑
1.1. rpm包的卸載
rpm卸載命令:

示例:卸載tree
1.2. rpm包的安裝
rpm包安裝命令:

安裝命令參數(shù):

2. ?yum軟件包管理器
yum( Yellow dog Updater, Modified)是一個(gè)在 Fedora 和 RedHat中的 Shell 前端軟件包管理器?;赗PM包管理,能夠從指定的服務(wù)器自動(dòng)下載 RPM 包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。
yum 提供了查找、安裝、刪除某一個(gè)、一組甚至全部軟件包的命令,而且命令簡潔而又好記。
yum 語法:
yum [options] [command] [package ...]
options:可選,選項(xiàng)包括-h(幫助),-y(當(dāng)安裝過程提示選擇全部為 "yes"),-q(不顯示安裝的過程)等等、command:要進(jìn)行的操作、package:安裝的包名。
2.1. yum常用命令
列出所有可更新的軟件清單命令:yum check-update
更新所有軟件命令:yum update
僅安裝指定的軟件命令:yum install
僅更新指定的軟件命令:yum update
列出所有可安裝的軟件清單命令:yum list
刪除軟件包命令:yum remove
查找軟件包命令:yum search
列出當(dāng)前可用倉庫信息:yum repolist all
清楚倉庫緩存信息:yum clean all
2.2. yum在線安裝軟件案例

2.3. yum在線刪除軟件案例

3. ?Linux安裝JDK
3.1. 統(tǒng)一軟件安裝路徑
理論上來說,可以把軟件安裝在Linux的任意路徑下,但是企業(yè)為了規(guī)范化管理,通常會(huì)設(shè)置約束相關(guān)的目錄用來安裝軟件、存儲(chǔ)軟件運(yùn)行的數(shù)據(jù)、日志。
3.2. JDK安裝
4. ?Linux安裝、卸載MySQL
4.1. 安裝MySQL
step1:安裝MySQL:
step2:初始化MySQL:
step3:修改root密碼 授權(quán)遠(yuǎn)程訪問 設(shè)置開機(jī)自啟動(dòng)
4.2. 卸載MySQL