1、cd 切換目錄
切換目錄 cd
------------------------------
# cd /home/alice/ //絕對路徑
# cd . //相對路徑, .為當前路徑
# cd .. //上級目錄
# cd - //上次目錄
# cd //直接到家
2、touch 創建文件
創建文件 touch
------------------------------
# touch file1.txt //無則創建,有則修改時間
# touch file3 file4
# touch /home/file10.txt
# touch /home/file5 file6
# touch /home/{zhuzhu,gougou}
# touch file{1..20}
# touch file{a..c}
# touch yang{a,b,c} //{}集合,等價touch yanga yangb yangc
3、mkdir 創建目錄
目錄 mkdir -v 詳細 -p 遞歸
------------------------------
# mkdir dir1
# mkdir /home/dir2 /home/dir3
# mkdir /home/{dir4,dir5}
# mkdir -v /home/{dir6,dir7} //顯示詳細信息,遍歷
# mkdir -v /home/dir8/111/22
# mkdir -pv /home/dir8/111/222 //包括其父母的創建,不會有任何消息輸出
# mkdir -pv /home/{yang/{dir1,111},tianyun}
4、cp 復制
復制 cp -r 目錄 -v 詳細 -f 強制 -n 靜默
----------------------------------
Usage: cp [OPTION]... [-T] SOURCE DEST
# cd
# mkdir /home/dir{1,2}
# cp -v install.log /home/dir1 //-v 顯示詳細信息
# cp -v install.log /home/dir1/yang.txt
# cp -rv /etc /home/dir1 //-r 拷貝文件夾
# cp -v install.log /home/dir2
#cp -rv 源文件1 源文件2 源文件N 目標文件 //將多個文件拷貝到同一個目錄
# cp -rv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/grub.conf /etc/hosts .
# cp -r /etc /tmp
# cp -rf /etc /tmp //-f, --force 強制
# cp -r /etc /tmp
5、mv 移動
移動 mv
Usage: mv [OPTION]... [-T] SOURCE DEST
# mv file1 /home/dir3 將file2移動到/home/dir3
# mv file2 /home/dir3/file20 將file2移動到/home/dir3,並改名為file20
# mv file4 file5 將file4重命名為file5,當前位置的移動就是重命名
6、rm 刪除
刪除 rm -r 遞歸 -f force強制 -v 詳細過程 *通配符
--------------------------------------------
示例1:刪除/home/dir1
# cd /home
# rm -rf dir1
-r 遞歸
-f force強制
-v 詳細過程
示例2:
[root@tianyun ~]# mkdir /home/dir10
[root@tianyun ~]# touch /home/dir10/{file2,file3,.file4}
[root@tianyun ~]# rm -rf /home/dir10/* //不包括隱藏文件
[root@tianyun ~]# ls /home/dir10/ -a
. .. .file4
示例3:
[root@tianyun ~]# rm -rf file*
[root@tianyun ~]# rm -rf *.pdf
7、cat 查看全部
cat
-n 顯示行號
-A 包括控制字符(換行符/制表符)
linux $
Windows ^M$
[root@tianyun ~]# cat >file4 <<EOF
> 111
> 222
> 333
> EOF
8、more翻頁
9、head頭部
[root@tianyun ~]# head /etc/passwd
[root@tianyun ~]# head -2 /etc/passwd
10、tail尾部 -f =tailf
[root@tianyun ~]# tail /etc/passwd
[root@tianyun ~]# tail -1 /etc/passwd
[root@tianyun ~]# tail /var/log/messages
[root@tianyun ~]# tail -20 /var/log/messages
[root@tianyun ~]# tail -f /var/log/secure //-f 動態查看文件的尾部
[root@tianyun ~]# tail -F /var/log/secure //-F 動態查看文件的尾部
注:vim, gedit編輯文件時,索引號會改變
#tailf 動態查看尾部文件
11、grep過濾
grep 針對文件內容進行過濾
# grep 'root' /etc/passwd
# grep '^root' /etc/passwd
# grep 'bash$' /etc/passwd
# grep 'failure' /var/log/secure
12、vi、vim、gedit
13、stat查看文件信息
[root@tianyun ~]# ls -l install.log
-rw-r--r-- 1 root root 34793 10-23 13:49 install.log
[root@tianyun ~]# stat install.log
File: “install.log”
Size: 34793 Blocks: 80 IO Block: 4096 一般文件
Device: 802h/2050d Inode: 65282 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2012-10-23 16:53:20.000000000 +0800
Modify: 2012-10-23 13:49:46.000000000 +0800
Change: 2012-10-23 13:49:52.000000000 +0800
訪問時間:atime,查看內容 //RHEL6會延后修改atime
修改時間:mtime,修改內容
改變時間:ctime,文件屬性,比如權限
刪除時間:dtime,文件被刪除的時間
14、ls -l 查詢示例 ll
ls -l 文件名 僅看的是文件的修改時間
15、which及type顯示命令的目錄或者類型,which內置別名,type需要yum安裝
[root@localhost ~]# type passwd
passwd 是 /usr/bin/passwd
[root@localhost ~]# type which
which 是 `alias | /usr/bin/which --tty-only --read-ali
16、file顯示文件類型
[root@localhost ~]# file passwd.txt
passwd.txt: ASCII text, with CRLF line terminators
3day用戶管理章節
17、查看當前登錄的用戶信息
[root@tianyun ~]# id
uid=0(root) gid=0(root) groups=0(root)
18、useradd創建用戶
[root@tianyun ~]# useradd user02 -u 1503 //創建用戶usr02,指定uid
[root@tianyun ~]# useradd user03 -d /aaa //創建用戶user03 指定家目錄
[root@tianyun ~]# useradd user05 -s /sbin/nologin //創建用戶並指定shell
[root@tianyun ~]# useradd user07 -G hr,it,fd //創建用戶,指定附加組
[root@tianyun ~]# useradd user10 -u 4000 -s /sbin/nologin
19、userdel 刪除用戶
[root@tianyun ~]# userdel user10
//刪除用戶user10,但不刪除用戶家目錄和mail spool
[root@tianyun ~]# ll -d /home/user10/
drwx------ 3 506 510 4096 09-01 21:14 /home/user10/
[root@tianyun ~]# ll /var/spool/mail/user10
-rw-rw---- 1 506 mail 0 09-01 21:14 /var/spool/mail/user10
[root@tianyun ~]# userdel -r user2
//刪除用戶user2,同時刪除用戶家目錄和mail spool
20、passwdd修改密碼
方法一:root修改其他用戶(alice)密碼
[root@tianyun ~]# passwd alice
方法二:用戶(zhuzhu)登錄,自己修改密碼。
[zhuzhu@tianyun ~]$ passwd
[root@tianyun~]# echo 123456 |passwd --stdin maomao100
強制用戶在下一次登錄時修改密碼
[root@tianyun~]# chage -d 0 maomao100
21、usermod只針對已存在的用戶添加用戶組
注意:只針對已存在的用戶 -G 組名 組名 ... 用戶名
[root@tianyun ~]# usermod -G hr niuniu2 //覆蓋原有的附加組
[root@tianyun ~]# usermod -G fd,it niuniu2
[root@tianyun ~]# usermod -aG hr niuniu2 //增加新的附加組
[root@tianyun ~]# usermod -s /sbin/nologin niuniu2
修改登錄SHELL
22、groupadd 創建用戶組
[root@tianyun ~]# groupadd hr
[root@tianyun ~]# groupadd net01 -g 2000
//添加組net01,並指定gid 2000
[root@tianyun ~]# grep 'net01' /etc/group
//查看/etc/group中組net01信息
23、groupdel刪除用戶組
[root@tianyun ~]# groupdel net01
//刪除組net01
24、su切換用戶
[alice@tianyun ~]$ su - root
password:
25、sudo提權
[root@tianyun ~]# useradd xulei -G wheel
[root@tianyun ~]# id xulei
uid=504(xulei) gid=504(xulei) 組=504(xulei),10(wheel)
# passwd xulei
切換用戶xulei登陸
[xulei@tianyun ~]$ useradd gougou10
-bash: /usr/sbin/useradd: 權限不夠
[xulei@tianyun ~]$ sudo useradd gougou10
[xulei@tianyun ~]$ id gougou10
uid=505(gougou10) gid=505(gougou10) 組=505(gougou10)
26、chage設置個別用戶
1.設置用戶密碼最小天數(-m),最大天數(-M),提醒天數(-W),不活躍天數(-l)
chage -m 0 -M 90 -W 7 -I 14 username
2.設置用戶下次登錄立刻更改密碼。
chage -d 0 username
3.列出用戶密碼策略信息。
chage -l username
4.設置用戶密碼過期日期。
chage -E YYYY-MM-DD username
27、gpasswd 添加用戶組
[root@localhost ~]# useradd user1
[root@localhost ~]# useradd user2
[root@localhost ~]# useradd user3
[root@localhost ~]# groupadd group1
[root@localhost ~]# gpasswd -a user1 group1
正在將用戶“user1”加入到“group1”組中
[root@localhost ~]# gpasswd -a user2 group1
[root@localhost ~]# cat /etc/group
group1:x:1011:user1,user2
[root@localhost ~]# gpasswd -M user2,user3 group1
[root@localhost ~]# cat /etc/group
group1:x:1011:user2,user3
原組中有三個用戶,刪除其中一個用戶。
[root@localhost ~]# grep group1 /etc/group
group1:x:1011:user3,user1,user2
[root@localhost ~]# gpasswd -d user1 group1
正在將用戶“user1”從“group1”組中刪除
[root@localhost ~]# grep group1 /etc/group
group1:x:1011:user3,user2
-
權限管理
28、chmod權限
使用符號:u用戶 g組 o其他 r讀 w寫 x執行
語法: chmod 對象(u/g/o/a) 賦值符(+/-/=) 權限類型(r/w/x) 文本對象\目錄
[root@localhost ~]# cd /tmp
[root@localhost tmp]# chmod u+x file1 //屬主增加執行
[root@localhost tmp]# chmod a=rwx file1 //所有人等於讀寫執行
[root@localhost tmp]# chmod a=- file1 //所有人沒有權限
[root@localhost tmp]# chmod ug=rw,o=r file1 //屬主屬組等於讀寫,其他人只讀
[root@localhost tmp]# ll file1 //以長模式方式查看文件權限
-rw-rw-r-- 1 alice it 17 10-25 16:45 file1 //顯示的結果
suid,sgid,sticky
[root@tianyun ~]# chmod u+s /usr/bin/cat
[root@tianyun ~]# chmod g+s /home/hr
[root@tianyun ~]# chmod o+t /home/dir1
4讀 2寫 1執行
[root@localhost ~]# chmod 644 file1
[root@localhost ~]# ll file1
-rw-r--r-- 1 alice it 17 10-25 16:45 file1
suid,sgid,sticky
chmod 4777 file
chmod 2770 dir
chmod 1770 dir
29、chown設置屬主、屬組
=chown: 設置一個文件屬於誰,屬主
語法: chwon 用戶名.組名 文件
[root@localhost ~]# chown alice.hr file1 //改屬主、屬組
[root@localhost ~]# chown alice file1 //只改屬主
[root@localhost ~]# chown .hr file1 //只改屬組
=chgrp: 設置一個文件屬於哪個組,屬組
語法: chgrp 組名 文件 -R是遞歸的意思
[root@localhost ~]# chgrp it file1 //改文件屬組
[root@localhost ~]# chgrp -R it dir1 //改文件屬組及遞歸修改目錄內的屬性
30、chgrp更改屬組
[root@localhost ~]# groupadd hr
[root@localhost ~]# useradd hr01 -G hr
[root@localhost ~]# useradd hr02 -G hr
[root@localhost ~]# mkdir /home/hr
[root@localhost ~]# chgrp hr /home/hr #修改附屬組
[root@localhost ~]# chmod 770 /home/hr
[root@localhost ~]# ll -d /home/hr/
drwxrwx---. 2 root hr 4096 3月 13 14:26 /home/hr/
31、setfacl設置acl
設置: [root@tianyun ~]# touch /home/test.txt [root@tianyun ~]# ll /home/test.txt -rw-r--r-- 1 root root 0 10-26 13:59 /home/test.txt [root@tianyun ~]# getfacl /home/test.txt//查看文件有哪些ACL權限。 [root@tianyun ~]# setfacl -m u:alice:rw /home/test.txt //增加用戶alice權限 [root@tianyun ~]# setfacl -m u:jack:- /home/test.txt //增加用戶jack權限 [root@tianyun ~]# setfacl -m o::rw /home/test.txt 6.設置掩碼mask權限,為無權限。 [root@localhost ~]# setfacl -m m::--- /tmp/filemask default: 繼承(默認) 要求: 希望alice能夠對/home以及以后在/home下新建的文件有讀、寫、執行權限 思路: 步驟一: 賦予alice對/home讀、寫、執行權限 [root@tianyun ~]# setfacl -m u:alice:rwx /home 步驟二: 賦予alice對以后在/home下新建的文件有讀、寫、執行權限 (使alice的權限繼承) d default 繼承 [root@tianyun ~]# setfacl -m d:u:alice:rwx /home
32、getfacl查看acl權限
如何刪除一條acl,如何刪除所有acl呢? [root@tianyun ~]# ll /home/test.txt -rw-rw-r--+ 1 root root 0 10-26 13:59 /home/test.txt [root@tianyun ~]# getfacl /home/test.txt [root@tianyun ~]# setfacl -m g:hr:r /home/test.txt [root@tianyun ~]# setfacl -x g:hr /home/test.txt //刪除組hr的acl權限 [root@tianyun ~]# setfacl -b /home/test.txt //刪除所有acl權限 [root@tianyun ~]# getfacl file1 |setfacl --set-file=- file2 //復制file1的ACL權限給file2
33、man手冊
man + 命令 --help help
34、mask掩碼
6.設置掩碼mask權限,為無權限。 [root@localhost ~]# setfacl -m m::--- /tmp/filemask
35、chattr 添加特殊權限
[root@tianyun ~]# man chattr [root@tianyun ~]# chattr +a file100 //只能追加 [root@tianyun ~]# chattr +i file200 //不能更改,重命名,刪除 [root@tianyun ~]# chattr +A file300 //不能更改訪問時間。 將屬性還原。 [root@tianyun ~]# chattr -a file100 [root@tianyun ~]# chattr -i file200 [root@tianyun ~]# chattr -A file300
36、umask細則
shell (vim,touch) =======umask======> 新文件或目錄權限 vsftpd =======umask======> 新文件或目錄權限 samba =======umask======> 新文件或目錄權限 useradd =======umask======> 用戶HOME
umask //查看當前用戶的umask權限 0022 [root@tianyun ~]# touch file800 [root@tianyun ~]# mkdir dir800 [root@tianyun ~]# ll -d dir800 file800 drwxr-xr-x. 2 root root 4096 3月 11 19:40 dir800 -rw-r--r--. 1 root root 0 3月 11 19:40 file800 示例2:修改shell umask值(臨時) [root@tianyun ~]# umask 000 [root@tianyun ~]# mkdir dir900 [root@tianyun ~]# touch file900 [root@tianyun ~]# ll -d dir900 file900 drwxrwxrwx. 2 root root 4096 3月 11 19:44 dir900 -rw-rw-rw-. 1 root root 0 3月 11 19:44 file900
進程管理
37、ps
靜態查看進程 ps [root@tianyun ~]# ps aux |less USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.6 128096 6708 ? Ss 16:20 0:01 /usr/lib/systemd/systemd ———————————————————————————— USER: 運行進程的用戶 PID: 進程ID %CPU: CPU占用率 %MEM: 內存占用率 VSZ: 占用虛擬內存 RSS: 占用實際內存 TTY: 進程運行的終端 //可以開啟vim 查詢到終端名稱 STAT: 進程狀態 man ps (/STATE) ——————————————————————————— R 運行 S 可中斷睡眠 Sleep,(休眠中, 受阻, 在等待某個條件的形成或接受到信號) D 不可中斷睡眠,(收到信號不喚醒和不可運行, 進程必須等待直到有中斷發生) T 停止的進程 Z 僵屍進程 X 死掉的進程 ———————————————————————————— [了解] Ss s進程的領導者,父進程 S< <優先級較高的進程 SN N優先級較低的進程 R+ +表示是前台的進程組 Sl 以線程的方式運行 ———————————————————————————— START: 進程的啟動時間 //可以開啟vim ,在用date驗證。 TIME: 進程占用CPU的總時間 COMMAND: 進程文件,進程名
———————————————————————————— 1 以CPU占比降序排列 [root@tianyun ~]# ps aux --sort %cpu |less //--sort排序,升序 2 以CPU占比升序排列 [root@tianyun ~]# ps aux --sort -%cpu |less //-%CPU降序 3 以駐留內存升序排列 [root@tianyun ~]# ps aux --sort rss |less 4 以駐留內存降序排列 [root@tianyun ~]# ps aux --sort -rss |less ——————————————————————————————
//自定義顯示字段 -------------------------------- [root@tianyun ~]# ps axo user,pid,ppid,%mem,command //xo指定列顯示 [root@tianyun ~]# ps axo user,pid,ppid,%mem,command |grep httpd root 8310 1 0.1 /usr/sbin/httpd apache 8311 8310 0.0 /usr/sbin/httpd apache 8312 8310 0.0 /usr/sbin/httpd apache 8313 8310 0.0 /usr/sbin/httpd apache 8314 8310 0.0 /usr/sbin/httpd apache 8315 8310 0.0 /usr/sbin/httpd apache 8316 8310 0.0 /usr/sbin/httpd apache 8318 8310 0.0 /usr/sbin/httpd apache 8319 8310 0.0 /usr/sbin/httpd root 9236 6798 0.0 grep httpd ----------------------------------------------------------- [root@tianyun ~]# ps axo user,pid,ppid,%mem,%cpu,command --sort -%cpu |less //針對某些程序,顯示某些列,再進行排序。簡潔明了
//查看指定進程的PID,四種方法———————— 第一種。cat [root@localhost ~]$ cat /run/sshd.pid 830 第二種。ps [root@localhost ~]# ps aux |grep sshd root 10180 0.0 0.0 7224 1024 ? Ss 16:00 0:00 /usr/sbin/sshd 第三種。pgrep [root@localhost ~]# pgrep -l sshd 10180 sshd [root@localhost ~]# pgrep sshd 10180 第四種。pidof [root@localhost ~]# pidof sshd 10180
[root@localhost ~]# pstree\\樹
38、top
第一部分:系統整體統計信息 top - 11:45:08 up 18:54, 4 users, load average: 0.05, 0.05, 0.05 Tasks: 176 total, 1 running, 175 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 3865520 total, 1100000 free, 580268 used, 2185252 buff/cache KiB Swap: 4063228 total, 4063228 free, 0 used. 2917828 avail Mem 負載加權值解釋:—小於1正常———————————— load average: 0.86, 0.56, 0.78 系統最近 1分鍾,5分鍾,15分鍾平均負載
動態查看進程 top,像windows的任務管理器 [root@tianyun ~]# top //回車,立刻刷新。按z彩色顯示,按F,通過光標設置列的順序。 [root@localhost ~]# top -d 1 //每1秒刷新。 [root@localhost ~]# top -d 1 -p 10126 查看指定進程的動態信息 [root@localhost ~]# top -d 1 -p 10126,1 查看10126和1號進程 [root@localhost ~]# top -d 1 -u apache 查看指定用戶的進程 [root@localhost ~]# top -d 1 -b -n 2 > top.txt //-b附加參數,只看2次top信息后寫入到文件 [root@localhost ~]#vim top.txt //最后打開文件詳細閱讀
Ctrl+L 擦除並且重寫屏幕。 h或者? 顯示幫助畫面,給出一些簡短的命令總結說明。 k 終止一個進程。系統將提示用戶輸入需要終止的進程PID,以及需要發送給該進程什么樣的信號。一般的終止進程可以使用15信號;如果不能正常結束那就使用信號9強制結束該進程。默認值是信號15。在安全模式中此命令被屏蔽。 i 忽略閑置和僵死進程。這是一個開關式命令。 q 退出程序。 r 重新安排一個進程的優先級別。系統提示用戶輸入需要改變的進程PID以及需要設置的進程優先級值。輸入一個正值將使優先級降低,反之則可以使該進程擁有更高的優先權。默認值是10。 S 切換到累計模式。 s 改變兩次刷新之間的延遲時間。系統將提示用戶輸入新的時間,單位為s。如果有小數,就換算成m s。輸入0值則系統將不斷刷新,默認值是5 s。需要注意的是如果設置太小的時間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。 f或者F 從當前顯示中添加或者刪除項目。 o或者O 改變顯示項目的順序。 l 切換顯示平均負載和啟動時間信息。 m 切換顯示內存信息。 t 切換顯示進程和CPU狀態信息。 c 切換顯示命令名稱和完整命令行。 M 根據駐留內存大小進行排序。 P 根據CPU使用百分比大小進行排序。 T 根據時間/累計時間進行排序。 W 將當前設置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。
39、kill
給進程發送信號 [root@tianyun ~]# kill -l //列出所有支持的信號 編號 信號名 1) SIGHUP 重新加載配置 2) SIGINT 鍵盤中斷Ctrl+C 3) SIGQUIT 鍵盤退出Ctrl+\,類似SIGINT 9) SIGKILL 強制終止,無條件 15) SIGTERM 終止(正常結束),缺省信號 18) SIGCONT 繼續 19) SIGSTOP 停止,該進程還未結束, 只是暫停執行 20)SIGTSTP 暫停Ctrl+Z
40、nice設置優先級
[root@localhost ~]# nice -n -5 sleep 6000 & [1] 2220 [root@localhost ~]# nice -n -10 sleep 7000 & [2] 2229 [root@localhost ~]# ps axo command,pid,nice | grep sleep sleep 6000 2220 -5 sleep 7000 2229 -10 grep --color=auto sleep 2233 0
使用shell更改nice級別 1 創建一個睡眠程序。 [root@localhost ~]# sleep 7000 & [2] 2669 2 修改他的nice值。 [root@localhost ~]# renice -20 2669 2669 (進程 ID) 舊優先級為 0,新優先級為 -20 觀察修舊的nice值。
42、jobs后台運行^z,&,及殺死
[root@tianyun ~]# sleep 3000 & //運行程序(時),讓其在后台執行 [root@tianyun ~]# sleep 4000 //^Z,將前台的程序掛起(暫停)到后台 [2]+ Stopped sleep 4000 3 只查看后台進程。 [root@tianyun ~]# jobs //查看后台作業 [1]- Running sleep 3000 & [2]+ Stopped sleep 4000 4 執行暫停程序,和調動后台程序至前台。 [root@tianyun ~]# bg 2 //讓作業2在后台,從暫停到運行 [root@tianyun ~]# fg 1 //將作業1調回到前台 [root@tianyun ~]# kill %1 //kill %1,結束后台作業1. 注意,kill 1 和 kill %1 不同,前者終止PID為1的進程,后者殺死作業。
43、管理遠程主機
示例2:如何管理遠程主機 [root@tianyun ~]# ssh 172.16.50.240 [root@www ~]# yum -y install screen [root@www ~]# screen -S install_apache //-S啟動會話的名字 sleep 9000 ==斷網后,重新連接== [root@www ~]# screen -list There are screens on: 28958.install_nginx (Detached) 29013.install_apache (Detached) 2 Sockets in /var/run/screen/S-root. [root@www ~]# screen -r 29013
&符號在程序的末尾才是后台運行,請看下面的例子,命令中的&並不是后台運行的意思。 while :; do date; sleep 2; done //查詢時間,間隔兩秒。ctrl+C停止。 [root@tianyun ~]# (while :; do date; sleep 2; done) & //進程在后台運行,但輸出依然在當前終端(使用fg調到前台,ctrl+C終止。) [root@tianyun ~]# (while :; do date; sleep 2; done) &>/dev/null &
44、dd
45、
-
磁盤管理 基本分區
50、查看基本磁盤/dev/sd* //真實的sata;scsi;sas 、/dev/vd*//虛擬
方法1、注意:kvm虛擬化磁盤vda,真實服務器上sda [root@localhost ~]# ll /dev/sd* brw-rw----. 1 root disk 8, 0 1月 25 09:35 /dev/sda brw-rw----. 1 root disk 8, 1 1月 25 09:35 /dev/sda1 brw-rw----. 1 root disk 8, 2 1月 25 09:35 /dev/sda2 brw-rw----. 1 root disk 8, 16 1月 25 09:35 /dev/sdb brw-rw----. 1 root disk 8, 32 1月 25 09:35 /dev/sdc brw-rw----. 1 root disk 8, 48 1月 25 09:35 /dev/sdd
方法2、[root@server0 ~]# lsblk //比較一目了然 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 10G 0 disk └─vda1 253:1 0 10G 0 part / vdb 253:16 0 10G 0 disk vdc 252:32 0 8G 0 disk 名稱 設備類型 序號 是否可移動設備 大小 是否只讀 磁盤或分區 掛載點 [root@localhost ~]# lsblk --output NAME,MAJ:MIN,RM,SIZE,RO,TYPE,MOUNTPOINT,FSTYPE自定義輸出顯示、可以查看到FSTYPE磁盤格式
方法3、未掛載的分區,如何查詢文件系統 [root@localhost ~]# parted /dev/sdc Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdc: 2147MB Sector size (logical/physical): 512B/512B Partition Table: gpt <<--------顯示格式嘍 Disk Flags: 之后輸入print打印信息,可以看到嘍,q退出
51、創建磁盤分區fdisk(MBR)
MBR 管理分區 1.創建分區 [root@localhost ~]# fdisk /dev/sdb n //創建新分區 p //主分區 1 //1號分區 回車 //起始扇區 +100M //結束大小 w //保存分區設置。
52、mkfs.ext4 格式化
[root@localhost ~]# mkfs.ext4 /dev/sdc1 格式化磁盤//centos默認xfs格式
53、mount掛載分區
[root@localhost ~]# mkdir /mnt/sdc1 [root@localhost ~]# ll /mnt/ 總用量 0 drwxr-xr-x. 2 root root 6 5月 4 20:05 disk1 drwxr-xr-x. 2 root root 6 5月 6 10:36 sdc1 [root@localhost ~]# mount /dev/sdc1 /mnt/sdc1/ [root@localhost ~]# cd /mnt/sdc1/ [root@localhost sdc1]# ls lost+found # mount -t ext4 /dev/sdb1 /mnt/disk1(了解) //手動不推薦
54、blkid查看硬盤ID標識
[root@localhost sdc1]# blkid /dev/sdb1: UUID="ddb6f34d-4e91-4b5a-96c5-b725e7af04ed" TYPE="ext4" /dev/sda1: UUID="d55118c9-0a29-4ea1-9f78-05e04741155c" TYPE="xfs" /dev/sda2: UUID="OoYo0e-wfDn-bzEi-yxbo-yoEc-AZO3-QkAqtN" TYPE="LVM2_member" /dev/sdc1: UUID="e001ed1a-1801-4a4e-88a3-363a7311e87a" TYPE="ext4" /dev/mapper/cl-root: UUID="00caa88f-c026-470a-b4fc-27cba6700f0e" TYPE="xfs" /dev/mapper/cl-swap: UUID="06cce5d7-c59c-4605-8b1e-f118d957e7f8" TYPE="swap"
55、mount -a刷新\永久設置磁盤掛載
第一步:查看分區的ID # blkid 第二步:使用UUID來自動掛載分區 # vim /etc/fstab UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" /mnt/disk1 auto defaults 0 0 UUID="4d26172c-7aff-4388-baa5-c6756c014d52" /mnt/disk2 ext4 defaults 0 0 分區信息 掛載點(文件夾) 文件系統類型 屬性(默認) 壓縮 檢測 第三步:手動刷新 # mount -a
56、查看掛載信息
[root@server0 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on 文件系統 類型 容量 已用 可用 已用% 掛載點 /dev/sdb1 xfs 197M 48M 150M 24% /mysql_data
*57、查看磁盤特殊權限
[root@server0 ~]# mount /dev/sdb1 on /mysql_data type xfs (rw,relatime,seclabel,attr2,inode64,noquoa) /dev/sdb3 on /mnt/disk1/disk2/disk3/disk4 type ext4 (rw,relatime,seclabel,dta=ordered) mount 看的是磁盤有沒有特殊屬性
58、GPT創建分區表
GPT 128個主分區 1.創建分區 # gdisk -l /dev/vdc # gdisk /dev/vdc # partprobe /dev/vdc # ll /dev/vdc* brw-rw----. 1 root disk 253, 32 Jun 6 17:38 /dev/vdc brw-rw----. 1 root disk 253, 33 Jun 6 17:38 /dev/vdc1 brw-rw----. 1 root disk 253, 34 Jun 6 17:38 /dev/vdc2 2、格式 3、掛載
mklabel msdos //將分區轉為mbr mklabel gpt //將分區轉為GPT
-
重定向及管道
59、重定向
[root@tianyun ~]# date 1> date.txt \\輸出重定向(覆蓋) [root@tianyun ~]# date >> date.txt \\輸出重定向(追加) [root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt 2>error.txt //重定向到不同的位置\\錯誤輸出重定向:2> [root@tianyun ~]# ls /home/ /aaaaaaaaa &> list.txt //混合輸出\\正確和錯誤都輸入到相同位置 [root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt 2>&1 //重定向到相同的位置\\正確和錯誤都輸入到相同位置
假如回收站丟失。
1 重啟即可恢復。 2 手動創建 mknod -m 666 /dev/null c 1 3 1 主設備號,類型 3 從設備號,序號
如果已經有了現成的郵件內容呢,如何快速輸入郵件內容。 就可以用重定向創建郵件!!! [root@tianyun ~]# mail -s "test01" alice < /mail.txt //輸入重定向,來自於文件mail.txt是通用郵件。
60、dd命令
[root@tianyun ~]# dd if=/dev/zero of=/file1.txt bs=1M count=2 ll -h /file1.txt 可以看到文件大小。 [root@tianyun ~]# dd </dev/zero >/file2.txt bs=1M count=20
61、mysql
案例4:mysql表結構導入 [root@tianyun ~]# mysql -uroot -p123 < bbs.sql 該案例,需要mysql數據庫技術的職稱。了解一下即可。
62、at任務計划
[root@tianyun ~]# at now +5 min at> useradd yang99 at> <EOT> //ctrl+D結束 job 1 at 2015-06-09 11:57
[root@tianyun ~]# vim at.txt sudo useradd yang100 sudo useradd yang102 [root@tianyun ~]# at now +2 min < at.txt job 2 at 2015-06-09 11:55
-
subshell是不是可以這樣做,()括起來作為整體。
[root@tianyun ~]# (ls; date) &>/dev/null\\如果不希望某些命令的執行對當前shell環境產生影響,請在subshell中執行!
63、sort排序
[root@tianyun ~]# sort -t":" -k3 -n /etc/passwd //以: 分隔,將第三列按字數升序 [root@tianyun ~]# sort -t":" -k3 -n /etc/passwd -r //逆序 -t 指定字段分隔符--field-separator -k 指定列 -n 按數值 -r 倒序
64、awk
案例3:統計當前/etc/passwd中用戶使用的shell類型 思路:取出第七列(shell) | 排序(把相同歸類)| 去重 [root@tianyun ~]# awk -F: '{print $7}' /etc/passwd [root@tianyun ~]# awk -F: '{print $7}' /etc/passwd |sort [root@tianyun ~]# awk -F: '{print $7}' /etc/passwd |sort |uniq [root@tianyun ~]# awk -F: '{print $7}' /etc/passwd |sort |uniq -c 131 /bin/bash 1 /bin/sync 1 /sbin/halt 63 /sbin/nologin 1 /sbin/shutdown -F: 指定字段分隔符 $7 第七個字段 uniq 去重 -c 統計
65、top
案例4: 統計網站的訪問情況 top 20 1.該實驗,需要先部署網站,再需要人訪問網站。 yum install -y httpd //安裝網站 systemctl start httpd //啟動網站 ifconfig //查看自己的IP setenforce 0 //關閉防火牆 systemctl stop firewalld //關閉防火牆2 2。使用管道過濾出訪問量前20名用戶。 思路: 打印所有訪問的連接 | 過濾訪問網站的連接 | 打印用戶的IP | 排序 | 去重 [root@tianyun ~]# ss -an |grep :80 |awk -F":" '{print $8}' |sort |uniq -c 4334 192.168.0.66 1338 192.168.10.11 1482 192.168.10.125 44 192.168.10.183 3035 192.168.10.213 375 192.168.10.35 362 192.168.10.39 再看看前20用戶。 [root@tianyun ~]# ss -an |grep :80 |awk -F":" '{print $8}' |sort |uniq -c |sort -k1 -rn |head -n 20
66、ip
案例5: 打印當前所有IP [root@tianyun ~]# ip addr |grep 'inet ' |awk '{print $2}' |awk -F"/" '{print $1}' 127.0.0.1 192.168.2.115
67、tee
[root@tianyun ~]# ip addr |grep 'inet ' |tee ip.txt |awk -F"/" '{print $1}' |awk '{print $2}' 127.0.0.1 172.16.60.1 [root@tianyun ~]# cat ip.txt inet 127.0.0.1/8 scope host lo inet 172.16.60.1/24 brd 172.16.60.255 scope global eth0 想追加到某個文件,使用-a [root@tianyun ~]# ip addr |grep 'inet ' |tee -a ip.txt |awk -F"/" '{print $1}' |awk '{print $2}' 127.0.0.1 172.16.60.1 [root@localhost ~]# date 2017年 9月 04日 星期三 08:18:15 CST [root@localhost ~]# date > 1.txt [root@localhost ~]# date | tee 1.txt 2017年 9月 04日 星期三 08:18:24 CST [root@localhost ~]# cat 1.txt 2017年 9月 04日 星期三 08:18:24 CST [root@localhost ~]#
68、xarges
## 加-i 參數直接用 {}就能代替管道之前的標准輸出的內容; ## 加 -I 參數 需要事先指定替換字符 貌似之前的不行。下面加上xargs [root@localhost ~]# cat files.txt |xargs ls -l -rw-r--r--. 1 root root 0 Mar 11 10:35 /home/file1 -rw-r--r--. 1 root root 0 Mar 11 10:35 /home/file2 -rw-r--r--. 1 root root 0 Mar 11 10:35 /home/file4 -rw-r--r--. 1 root root 0 Mar 11 10:35 /home/file5 [root@localhost ~]# cat files.txt |xargs rm -rvf removed ‘/home/file1’ removed ‘/home/file2’ removed ‘/home/file4’ removed ‘/home/file5’ 案例2:xargs -I 指定輸出標記 1 准備一些環境。創建多個文件。 [root@localhost ~]# touch /home/file{1..5} 2 加入-I標記。進行查看。 [root@localhost ~]# cat files.txt |xargs -I {} ls -l {} -rw-r--r--. 1 root root 0 Mar 11 10:40 /home/file1 -rw-r--r--. 1 root root 0 Mar 11 10:40 /home/file2 -rw-r--r--. 1 root root 0 Mar 11 10:40 /home/file4 -rw-r--r--. 1 root root 0 Mar 11 10:40 /home/file5 3 加入-I標記。進行復制。 [root@localhost ~]# cat files.txt |xargs -I {} cp -rvf {} /tmp ‘/home/file1’ -> ‘/tmp/file1’ ‘/home/file2’ -> ‘/tmp/file2’ ‘/home/file4’ -> ‘/tmp/file4’ ‘/home/file5’ -> ‘/tmp/file5’ 4 加入-I標記,可以使用字符代替。 [root@localhost ~]# cat files.txt |xargs -I XULEI cp -rvf XULEI /var/tmp ‘/home/file1’ -> ‘/var/tmp/file1’ ‘/home/file2’ -> ‘/var/tmp/file2’ ‘/home/file4’ -> ‘/var/tmp/file4’ ‘/home/file5’ -> ‘/var/tmp/file5’
-
匿名管道
1. 創建命名管道 mkfifo a touch b 2 觀察命名管道文件與普通文件的不同。 ll a b 3 查看命名管道的文件類型 file a fifo name pipe 4 傳統文件和管道文件不同之處,匿名管道使用完畢內容消失。 而命名管道文件使用后不會消失,並且可以被其他程序讀取。
-
命名管道
同樣有兩種方式訪問FIFO文件。 命令行方式。首先用cat命令讀取剛才創建的FIFO文件: cat < a 這個時候,cat命令將一直掛起,直到終端或者有數據發送到FIFO中。 6 . 然后嘗試向FIFO中寫數據(在另外一個終端執行這個命令) echo "FIFO test" > a 這個時候cat將會輸出內容。
-
磁盤管理 LVM分區
名詞PV:物理卷(Physical volume);VG:卷組(Volume Group);LV:邏輯卷(Logical Volume);PE:物理塊(Physical Extent);LE:邏輯塊(Logical Extent)
59、pv創建、查看
1 將物理磁盤,轉換成物理卷-PV\\也先可以分區,之后轉 [root@localhost ~]# pvcreate /dev/sdc2 Physical volume "/dev/sdc2" successfully created.
2 查看 [root@localhost ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 cl lvm2 a-- 19.00g 0 /dev/sdc2 lvm2 --- 100.00m 100.00m
60、vg創建卷組
1.創建卷組-VG
[root@localhost ~]# vgcreate vg1 /dev/sdc2 Volume group "vg1" successfully created
2、顯示卷組信息
方法1、[root@localhost ~]# vgscan Reading volume groups from cache. Found volume group "vg1" using metadata type lvm2 Found volume group "cl" using metadata type lvm2
方法2、[root@localhost ~]# vgdisplay --- Volume group --- VG Name vg1 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size 96.00 MiB PE Size 4.00 MiB Total PE 24 Alloc PE / Size 0 / 0 Free PE / Size 24 / 96.00 MiB VG UUID jVwRwf-LOzr-NUiH-L3VS-wkwA-EvQL-OiZw2h --- Volume group --- VG Name cl System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 19.00 GiB PE Size 4.00 MiB Total PE 4863 Alloc PE / Size 4863 / 19.00 GiB Free PE / Size 0 / 0 VG UUID xgc20b-mZag-Lbwe-82pO-gSZl-zBNW-pjAi2z
方法3、[root@server0 ~]# vgs\\簡單 VG #PV #LV #SN Attr VSize VFree vg1 1 0 0 wz--n- 2.00g 2.00g
61、lv創建、查看
[root@server0 ~]# lvcreate -L 200M -n lv2 vg1 指定大小,單位M,G
[root@server0 ~]# lvscan ACTIVE '/dev/vg1/lv1' [400.00 MiB] inherit ACTIVE '/dev/vg1/lv2' [200.00 MiB] inherit
62、partprobe刷新磁盤
[root@localhost lv2]# partprobe
63、掛載分區
創建文件系統 [root@server0 ~]# mkfs.ext4 /dev/vg1/lv2 創建掛載點 [root@server0 ~]# mkdir /mnt/lv2 掛載 [root@server0 ~]# mount /dev/vg1/lv2 /lv2
64、VG管理擴展增加
==擴大VG vgextend== 步驟1,創建PV。而后使用第二步,將PV增加到VG中。 [root@server0 ~]# pvcreate /dev/sdd1 步驟2:擴展VG,同時包含方法1. [root@server0 ~]# vgextend vg1 /dev/sdd1 Volume group "vg1" successfully extended
65、vg磁盤縮減
卷組vg1物理卷sdc,sdd1和sde(查看物理卷pvs命令)sdc物理卷中有數據為了避免vg縮減影響數據,請先將sdd中的數據移動到sde中。
1、查看使用情況 [root@server0 ~]# pvs PV VG Fmt Attr PSize PFree /dev/sdc vg1 lvm2 a-- 2.00g 1.76g /dev/sdd1 vg1 lvm2 a-- 2.00g 2.00g /dev/sde vg1 lvm2 a-- 2.00g 2.00g 注意觀察,PV的空間。一個是使用過的,一個是滿的。 2、將sdd中的數據,移動到sdezhon [root@server0 ~]# pvmove /dev/sdc /dev/sdc: Moved: 16.7% /dev/sdc: Moved: 100.0% 可以看到移動過程。 3、二次查看 [root@localhost ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 /dev/sdc vg1 lvm2 a-- <2.00g <2.00g /dev/sdd1 vg1 lvm2 a-- <2.00g 1.80g /dev/sde vg1 lvm2 a-- <2.00g <2.00g 4、vg刪減 [root@server0 ~]# vgreduce vg1 /dev/sdd Removed "/dev/sdd" from volume group "vg1" 5、再次觀察 [root@server0 ~]# vgs VG #PV #LV #SN Attr VSize VFree vg1 1 2 0 wz--n- 2.00g 1.76g 觀察,PV的數量變少了。
66、lv減容、擴容
1、lv擴容
1.查看VG空間。 [root@server0 ~]# vgs VG #PV #LV #SN Attr VSize VFree vg1 2 2 0 wz--n- 1.88g 1.00g 請觀察,VG是否有剩余空間。 2.擴容LV。 [root@server0 ~]# lvextend -L +200M /dev/vg1/lv2 增加200M空間,給lv2 ## lvextend -L --size 100% /dev/vg1/lv2
查看 [root@server0 ~]# lvscan ACTIVE '/dev/vg1/lv1' [768.00 MiB] inherit ACTIVE '/dev/vg1/lv2' [300.00 MiB] inherit 觀看LV大小已經發生改變。
2、fs擴容
1.查看VG空間 [root@server0 ~]# vgs VG #PV #LV #SN Attr VSize VFree vg1 2 2 0 wz--n- 1.88g 1.00g 請觀察,VG是否有剩余空間。 2.擴容LV [root@server0 ~]# lvextend -L +200M /dev/vg1/lv2 增加200M空間,給lv2 3.查看lv [root@server0 ~]# lvscan ACTIVE '/dev/vg1/lv1' [768.00 MiB] inherit ACTIVE '/dev/vg1/lv2' [300.00 MiB] inherit 觀看LV大小已經發生改變。
先觀察文件系統當前容量。 [root@server0 ~]# df -Th /dev/mapper/vg1-lv2 ext4 240M 32M 192M 15% /mnt/lv2 . ext2/3/4文件系統擴容 [root@server0 ~]# resize2fs /dev/vg1/lv2 再次觀察df -hT 的分區大小。和上一次的對比一下。大小已經發生改變。
xfs文件系統擴容請注意,不同的文件系統,擴容指令不同。 [root@server0 ~]# xfs_growfs /dev/vg1/lv1
3、lv減容先備份數據
1.首先查看磁盤使用情況 [root@localhost ~]# df -hT 文件系統 類型 容量 已用 可用 已用% 掛載點 /dev/mapper/vg2-lv2 ext4 47M 42M 1.4M 97% /mnt/lv2 2、取消掛載\\注意目錄位置 [root@localhost ~]# umount /mnt/lv2/ 3、運行e2fsck命令,該命令是用來檢查邏輯卷是否有問題 e2fsck -f /dev/vg1/lv2 4、縮小的文件系統大小為 resize2fs -p /dev/vg1/lv2 20M 5、縮小邏輯卷LV2空間為20 lvreduce -L 20M /dev/vg1/lv2 6、掛載上/mnt/lv2,查看磁盤使用情況 mount /dev/vg1/lv2 /mnt/lv2/
67、LVM快照snapshot創建與查看
1. 創建快照 卷(EXT4) [root@server0 ~]# lvcreate -L 128M -s -n lv2-snap /dev/vg1/lv2 或者這樣看呢,創建LV,名字lv2-snap,根據lv2進行快照,大小128M lvcreate -n lv2-snap -s /dev/vg1/lv2 -L 128M 2 查詢快照卷大小。 [root@server0 ~]# lvs LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert lv1 vg1 -wi-ao---- 768.00m lv2 vg1 owi-aos--- 512.00m lv2-snap vg1 swi-aos--- 128.00m lv2 5.92 實驗到這里就結束了。 3 將快照卷掛載,拷貝出數據。可以用作回復數據使用了。 [root@server0 ~]# mkdir /mnt/lv2-snap [root@server0 ~]# mount -o ro /dev/vg1/lv2-snap /mnt/lv2-snap/
1 查看兩個卷的掛載情況。 [root@server0 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/vg1-lv2 ext4 488M 32M 429M 7% /mnt/lv2 /dev/mapper/vg1-lv2--snap ext4 488M 32M 429M 7% /mnt/lv2-snap 2 查看兩個卷的關系 [root@server0 ~]# lvscan ACTIVE '/dev/vg1/lv1' [768.00 MiB] inherit ACTIVE Original '/dev/vg1/lv2' [512.00 MiB] inherit ACTIVE Snapshot '/dev/vg1/lv2-snap' [128.00 MiB] inherit 3 查看文件內容。根據情況進行使用。 [root@server0 ~]# ls /mnt/lv2 etc lost+found [root@server0 ~]# ls /mnt/lv2-snap/ etc lost+found 4. 觀察Snapshot [root@server0 ~]# lvs LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert lv1 vg1 -wi-ao---- 768.00m lv2 vg1 owi-aos--- 512.00m lv2-snap vg1 swi-aos--- 128.00m lv2 30.56
XFS:不識別uuid ,所以需要單獨加上一個-o nouuid 來忽略掉。就可以使用xfs的快照了。 [root@server0 ~]# mount -o nouuid,ro /dev/vg1/lv1-snap /mnt/lv1-snap/ 掛載快照,盡量使用ro的方式,將不會破壞快照卷中的數據
先刪除pv,后刪除vg時報錯。
vgreduce --removemissing --force vg1
68、交換分區管理 Swap
一、查看當前的交換分區 [root@server0 ~]# free -m total used free shared buff/cache available Mem: 489 140 145 4 202 304 Swap: 0 0 0 [root@server0 ~]# swapon -s 當前系統中,沒有swap。如果你的系統中有,請觀察大小,后續實驗會增加swap大小。 ===分區=== 1. 准備分區(准備將/dev/sde磁盤,划分為1G分區) [root@server0 ~]# fdisk /dev/sde (t轉換分區的ID 82) [root@server0 ~]# partprobe /dev/sde [root@server0 ~]# ll /dev/sde* brw-rw----. 1 root disk 253, 16 12月 6 10:18 /dev/sde brw-rw----. 1 root disk 253, 17 12月 6 10:18 /dev/sde1 2.格式化 [root@server0 ~]# mkswap /dev/sde1 3.掛載 [root@server0 ~]# blkid /dev/sde1 /dev/sde1: UUID="ea5b1c77-e540-463c-9644-0d75450f8b4c" TYPE="swap" [root@server0 ~]# vim /etc/fstab UUID="ea5b1c77-e540-463c-9644-0d75450f8b4c" swap swap defaults 0 0 [root@server0 ~]# swapon -a (讀取/etc/fstab) [root@server0 ~]# swapon -s Filename Type Size Used Priority /dev/vdb1 partition 524284 0 -1
===File===了解 [root@server0 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/vda1 xfs 10G 3.3G 6.8G 33% / [root@server0 ~]# dd if=/dev/zero of=/swap2.img bs=1M count=512 或者 [root@server0 ~]# dd </dev/zero >/swap2.img bs=1M count=512 [root@server0 ~]# mkswap /swap2.img [root@server0 ~]# vim /etc/fstab /swap2.img swap swap defaults 0 0 由於文件型擴展SWAP會提示權限不夠。所以擴大一下權限。 [root@server0 ~]# swapon -a swapon: /swap2.img: insecure permissions 0644, 0600 suggested. [root@server0 ~]# chmod 600 /swap2.img [root@server0 ~]# swapon -a [root@server0 ~]# swapon -s Filename Type Size Used Priority /dev/vdb1 partition 524284 0 -1 /swap2.img file 524284 0 -2
設置優先級
多個交換分區分布在不同的磁盤 掛載時,使用相同的優先級 [root@server0 ~]# vim /etc/fstab UUID="ea5b1c77-e540-463c-9644-0d75450f8b4c" swap swap defaults,pri=1 0 0 UUID="ea5b1c77-e540-465c-9644-0d75457f8b45" swap swap defaults,pri=1 0 0 pri是優先級的意思,設置相同即可。 [root@server0 ~]# swapon -a [root@server0 ~]# swapon -s Filename Type Size Used Priority /dev/sdb1 partition 524284 0 1 /dev/sdc1 partition 524284 0 1
fuser /``var``/www/html/centos/
顯示占用的信息
可以用這條命令殺死本地登錄用戶。前提是用w找到用戶終端序號。pkill -kill -t tty3