Linux系統安裝
1.1磁盤分區
/ 根分區
/boot 系統啓動分區
ps:建議將/boot分區分出,有利於系統奔潰後的排錯
swap 分區 將硬盤的空間模擬成內存空間,提供給計算機使用
ps:分區大小建議內存爲4G,swap分區爲2G
內存爲4G-16G,swap分區爲4G
內存爲16G-64G,swap分區爲16G
/home 分區
/var 分區 用於存放日誌(如果有需要)
1.2 kdump (kernel dump)
主要功能是用於防止內核crash ,開啓後內存會默認少128MB
一般運維人員可以關閉這個功能
-
Linux 使用基礎
2.1 Linux系統登錄
2.1.1 圖形界面登錄
如果登錄方式爲圖形界面 Ctrl+Alt+F2-F6 切換到命令行中,Ctrl+Alt+F1 切回到圖形界面init 3 純字符界面,並未運行圖形界面的應用程序
2.1.2 字符界面登錄
startx ,開始啓用圖形界面程序如果登錄式爲字符界面Ctrl+Alt+F7 圖形界面,Ctrl+Alt+F1-F6 字符界面
2.2 home 目錄
每一個用戶都會在home目錄下生成一個該用戶用戶名的文件夾,用於存放該用戶文件
useradd user1 就會在生成/home/user1
2.3 添加新用戶,添加密碼,修改密碼,刪除用戶
useradd admin 添加用戶
passwd admin XXXX 用戶添加密碼
在本用戶登錄的狀態下 passwd XXXX 修改該用戶密碼
userdel -r admin 刪除用戶
建議不要使用root用戶登錄,使用普通用戶登錄。
2.4 更改用戶身份
2.4.1 命令提示符由組成
[\u@\h \w]# u=用戶變量,h=主機名,w=所在目錄
[root@localhost home]#
2.4.2 切換用戶身份
su - user1
ps: su user1和 su - user1 不同
2.4.3 查看用戶的信息
id
ps:用戶的身份之間不要切來切去,如果要切的話建議
su - admin exit
su - root exit
su - user1 exit
2.5 使用Tab 鍵補齊命令
儘可能多的使用Tab鍵,來保證效率和準確性
2.6 查看歷史記錄,history命令
有一個.bash_history 用來記錄歷史記錄,所以重啓後用戶依然可以看見歷史記錄
使用歷史記錄將參數補齊 Alt+.
vim文本編輯器
3.1 vi和vim的區別
vim是vi的升級版,具備vi所有功能
vi 字體是黑色的
vim 文件有顏色,支持語法檢測。如果語法有問題,顏色會變成紅色
3.2 vim 的三種種模式,命令模式,插入模式和末行模式
3.2.1命令模式
d,刪除一個字符,按u還原一個字符
G 文件中跳到最後一行
dd 刪除整行,使用u還原整行
ps:dd有兩個作用如果你粘貼就是剪切,如果你不粘貼就是刪除
p 粘貼到當前行的下面
P 粘貼到當前行的上面
y y進行復制,粘貼使用p/P
3.2.2 插入模式
i (insert模式) 要修改內容
3.2.3 末行模式
set nu 查看文本中行數
Esc 回到命令模式
:wq!/q! 保存退出/不保退出
-
man幫助
4.1命令的組成
SYNOPSIS
ls [OPTION]... [FILE]...
ls -l /etc/ ls爲命令 -l爲選項 /etc/ 參數
選項是帶- 參數是不帶-ls --help 代表後面是一個整體不可以拆分
ls -la ls -l -a 多個選項可以寫在一起,也可以分開寫
ls -l ; cp /etc/passwd /tmp 使用;將兩個命令在一跳命令中實現
(cal 2007 ; cal 2008 )>cal.txt 輸出重定向
4.2 語法規則
4.2.1 date: 用於顯示時間和日期
date --help
man date
4.2.2 date語法結構
date [OPTION]... [+FORMAT]
OPTION 後面有...代表可以跟多個選項
FORMAT 後面沒有...,只有添加一個FORMAT
date +%Y-%m-%d%H:%M:%S
date +'%Y-%m-%d %H:%M%S'
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 修改date日期
4.2.3 cal 語法結構
cal [-smjy13] [[[day] month] year]
4.3 man 文檔
q 退出
/ -q 用於查找-q
n 往下找
N 往上找
5 文件系統管理
5.1 文件系統的結構
windows中每一個分區是一棵獨立的數,互相不會有影響
Linux 所有的一切都從根開始
文件系統結構
/
/root
/home/username
/bin ,/user/bin,/user/local/bin 用戶可執行命令
/sbin,/usr/sbin,/usr/local/sbin 管理員可執行的命令
/media ,/mnt 掛載點
/etc 配置目錄
/tmp 臨時文件
PS:可以刪除tmp下的所有文件但最好不要刪除/tmp文件
/boot 啓動目錄和引導程序
/var, /srv 存放服務數據
/proc, /sys 系統啓動過程中和內存有關
/dev 所有的設備都在/dev下
/dev/sda1
/dev/sda2
PS:s:scsi類型的設備 d:disk a:第幾塊硬盤 1/2 :分區
inux下面沒有註冊表,所以linux沒有擴展名的概念
所有的文件名嚴格區分大小寫
所有的命令嚴格區分大小寫
5.2 文件系統管理
5.2.1 相對路徑 絕對路徑
絕對路徑是一切從根開始
cp /etc/passwd /data/ 絕對路徑的寫法
相對路徑是從當前的位置做爲起點
cp ../etc/passwd . 相對路徑的寫法
.當前目錄 ..上級目錄
cd (Changing Directories) 進入目錄
cd .. 回到上一層目錄cd - 回到上一次的目錄
cd /etc/yum 從根目錄下/etc/yum目錄
cd etc 從當前目錄進入etc目錄
ls 查看當前目錄下的文件
cd 目錄名
5.2.2 文件管理命令
pwd ls touch cp mv rm stat
pwd 查看當前的工作目錄
ls 列出目錄下的內容
ls -a 顯示目錄下的所有文件,所有隱藏文件都會被顯示出來 PS: 刪除文件時,隱藏文件不會被刪除
ls -l 列出文件的詳細信息
PS:藍色代表文件夾,黑色代表普通文件,綠色代表可執行文件,淡藍色代表快捷方式,紅色黃色代表具有特殊權限
touch 創建文件
touch text.txt
cp source destination 拷貝
cp /root/cal.txt /tmp/ 拷貝單個文件
cp /root/cal.txt /root/inital.setup-ks.cfg /tmp/ 拷貝多個文件
cp -r /etc/ /tmp/ 拷貝文件夾時,使用遞歸拷貝,目錄下所有子文件一併拷貝過去
cp -p cal.txt /tmp/ 拷貝文件時不修改原文件用戶權限
cp -rp cal.txt /tmp 拷貝文件夾又可以保留權限
mv 剪切文件還可以改名
mv /etc/ /data/
rm 刪除文件
rm -rf etc/ 遞歸刪除當前目錄下,etc下的所有文件
stat 查看文件時間戳
5.2.3 目錄管理命令
mkdir rmdir
mkdir 創建文件夾
mkdir redhat
rmdir 刪除文件
5.2.4 看文本命令
cat、tac、more、less、head、tail
cat 連接並顯示,將文本文件的內容完全顯示出來
cat -n 顯示時對每一行進行編號
tac 反過來顯示文本文件
more、less 分屏顯示命令
more 支持向後翻,不支持向前翻
less 支持向前翻,按q纔會退出
head 查看文件的前n行(n默認爲10)
head -n 1 /etc/initab 查看前一行
head -n 2 /etc/initab 查看前兩行
tail 查看文件的後n行
tail -n 5 /etc/initab
-
用戶組權限
6.1 用戶
用戶:每創建一個用戶就會爲其創建一個唯一的user ID (UID)
UID 0 爲root
UID RH7從1000開始分配 RH6從500開始分配
PID 進程號#useradd -u 1003 zhangsan 指定用戶的UID
系統只認識數字,而人是通過文件名或者系統名來識別的
系統識別一個用戶是通過UID來識別,而人是通過用戶名來識別
6.1.1 用戶信息存放在 /etc/passwd
cat /etc/passwd |grep admin
admin:x:501:501::/home/admin:/bin/bash
admin 代表用戶名
x 代表是否需要身份驗證
501:501 UID GID
/home/admin 用戶家目錄
/bin/bash shell,解釋語言
6.2 用戶組
用戶組: 將用戶添加到組中,對組添加對應的權限 (GID)
6.2.1 用戶組的信息存放 /etc/group
cat /etc/group |grep users
admin:x:501:user
admin 代表組名
x 代表是否需要身份驗證
501 代表GID
user 組裏面有哪些成員
6.3 創建用戶和用戶組
6.3.1 創建用戶
useradd user1 創建過程
創建user1用戶
2.創建user1的/home/user1
3.創建user1組
4.將user1用戶加入user1組中
6.3.2 修改用戶組
usermod -aG admin user1 將user1 加入到了admin這個組中,並且保留原來組
Id user 查看添加的組
6.3.3 創建用戶組
groupadd user2
6.3.4 刪除用戶組
groupdel user2
6.3.5 修改用戶組
groupmod -g 修改GID
-n 修改用戶組名
6.4 如何查看和設置文件權限
每一個文件應該擁有一個UID 和GID
每一個進程也應該擁有一個UID和GIDs
6.4.1 Linux 將訪問文件的用戶分爲三類
文件屬主(user) u
文件屬組(group) g
其他用戶(other) o
6.4.2 普通文件和目錄文件權限
ls -l /etc/passwd
-rw-r--r--. 1 root root 1463 Jul 10 17:10 /etc/passwd
dr-xr-xr-x. 5 root root 1024 Jun 28 14:18 boot
- 代表普通文件
r :代表有讀該文件內容
w:代表有修改該文件內容內容
x:可以執行該文件
d 代表目錄文件
r:代表可以ls 列出目錄中的內容
w:可以在該文件夾中創建和刪除文件
x:執行權限,cd進入該目錄
PS:對於目錄文件來說r-x是在一起的,單獨沒有意義
6.4.3 改變文件屬主
chown :change owner 修改文件的擁有人
chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown user1 group
chown user1 /data/ 只修改文件本身
chown -R user1 /data/ 遞歸修改
chown zhangsan:user2 /data 一併把擁有人和擁有組
6.4.4 改變文件屬組
chgrp : change group 修改文件擁有組
chgrp [OPTION]... GROUP FILE...
chgrp admin /data/
6.4.5 chmod 修改文件的讀寫執行權限
chmod: change mode 修改文件權限
6.4.5.1 修改某類用戶某位或某些位權限
u,g,o,a
chmod 用戶類別+|- MODE file...
chmod u-w /data/
chmod ugo-w /data/
chmod ugo-rx /data/
chmod ugo+r /data/
chmod -R ugo-x /data/
6.5.5.2 修改某類用戶或者某些類用戶的權限
u,g,o,a
chmod 用戶類別=MODE file,...
chmod u=rwx /tmp/abc
chmod g=rwx /tmp/abcbn
chmod g=r,o=r /tmp/abc
chmode go=wrx /tmp/abc
6.4.5.3 修改三類用戶的權限
用數字來代表不同的權限
r:4
w:2
x:1
chmod MODE file,...
-R
chmod 755 /data/
7:擁有人的權限
5:擁有組的權限
5:其他人的權限
alias 別名
alias ll=‘ls-l --color=auto’
-
標準I/O和管道
7.1 三種標準I/O
標準輸入:默認鍵盤輸入標準輸出:默認顯示器輸出
標準錯誤輸出:默認顯示器輸出
7.2 輸出重定向
當我們想將標準輸出或者標準錯誤倒給另外一個文件 ,這時我們就需要輸出重定向
命令格式:command operator filename 命令 操作符 文件名
:正確的輸出重定向 find /etc/ -name passwd >find.out
2> :錯誤的輸出重定向 find /etc/ -name passwd 2>find.err
&> :所有輸出重定向 find /etc/ -name passwd &>find.all
find /etc/ -name passwd >find.out 2>find.err
echo hello
echo hello > find.out
當我們進行輸出重定向時,默認會將原文件覆蓋
7.3 追加重定向
> :追加 如果目標文件中已經有內容我們使用追加,將新內容添加到目標文件最後,原內容不變
2>>:錯誤追加
&>>:全部追加
7.4 管道符
我們希望將一個命令的結果輸出給另一個命令,我們使用管道
command1 |command2:將command1 執行的結果作爲command2的輸入
7.5 grep 過濾
grep 'user1' /etc/passwd
'關鍵字'
cat /etc/passwed |grep user1
cat /etc/passwed |grep -w user1 完全匹配關鍵字
cat /etc/passwed |grep -i user1 忽略大小寫
cat /etc/passwed |grep -v user1 反向選擇
rpm -qa |grep ftp
軟件包的安裝、卸載、升級、查詢
9.1 RPM包的格式和
mount /dev/cdrom /media/ 將光驅掛載到media目錄下
RPM包的格式: zsh-4.3.11-4.el6.x86_64.rpm
rpm file /package
version 版本
release 發行版
arch 操作系統內核版本,32/64
rpm 擴展名
uname -r 查看操作系統內核版本
1.軟件包的安裝 install /upgrade
rpm -i | -U rpmfile
rpm -i vsftpd-3.0.2-9.el7.x86_64.rpm i代表安裝
rpm -ivh ivh 這個安裝的進度
-
軟件包卸載
rpm -e pakage e代表卸載
刪除rpm包時,系統會自動幫你保存一份配置文件
如果重新安裝該文件後,將備份文件重定向到配置中文件中 -
重新安裝rpm包
rpm -ivh rpmfile --force - 將軟件包降級 --oldpackage
5.忽略軟件包之間的衝突 --replacefile
6.忽略包的依賴性關係 --nodeps
7.軟件包的查詢
rpm -q vsftp/httpd
-q 必須要知道軟件包完整的名字,不可以模糊
rpm -qa 查詢系統中所有的軟件包
rpm -qa |vsft
查詢軟件包文件列表
rpm -ql vsftpd
查看軟件包配置文件
rpm -qc vsftp
rpm -qf
5