一.liunx目錄結構: (1)/bin中 用戶二進位文件 包含二進位可執行文件。 在單用戶模式下,你需要使用的常見Linux命令都位於此目錄下。系統的所有用戶使用的命令都設在這裡。 (2)/sbin目錄 系統二進位文件 就像/bin,/sbin同樣也包含二進位可執行文件。 但是,在這個目錄下的li ...
一.liunx目錄結構:
(1)/bin中 - 用戶二進位文件
包含二進位可執行文件。
在單用戶模式下,你需要使用的常見Linux命令都位於此目錄下。系統的所有用戶使用的命令都設在這裡。
(2)/sbin目錄 - 系統二進位文件
就像/bin,/sbin同樣也包含二進位可執行文件。
但是,在這個目錄下的linux命令通常由系統管理員使用,對系統進行維護。例如:iptables、reboot、fdisk、ifconfig、swapon命令
(3)/etc - 配置文件
包含所有程式所需的配置文件。
也包含了用於啟動/停止單個程式的啟動和關閉shell腳本。例如:/etc/resolv.conf、/etc/logrotate.conf
(4)/dev - 設備文件
包含設備文件。
這些包括終端設備、USB或連接到系統的任何設備。例如:/dev/tty1、/dev/usbmon0
(5)/proc - 進程信息
包含系統進程的相關信息。
這是一個虛擬的文件系統,包含有關正在運行的進程的信息。例如:/proc/{pid}目錄中包含的與特定pid相關的信息。
這是一個虛擬的文件系統,系統資源以文本信息形式存在。例如:/proc/uptime
(6)/var - 變數文件
var代表變數文件。
這個目錄下可以找到內容可能增長的文件。
這包括 - 系統日誌文件(/var/log);包和資料庫文件(/var/lib);電子郵件(/var/mail);列印隊列(/var/spool);鎖文件(/var/lock);多次重新啟動需要的臨時文件(/var/tmp);
(7)/tmp - 臨時文件
包含系統和用戶創建的臨時文件。
當系統重新啟動時,這個目錄下的文件都將被刪除。
(8)/usr - 用戶程式
包含二進位文件、庫文件、文檔和二級程式的源代碼。
/usr/bin中包含用戶程式的二進位文件。如果你在/bin中找不到用戶二進位文件,到/usr/bin目錄看看。例如:at、awk、cc、less、scp。
/usr/sbin中包含系統管理員的二進位文件。如果你在/sbin中找不到系統二進位文件,到/usr/sbin目錄看看。例如:atd、cron、sshd、useradd、userdel。
/usr/lib中包含了/usr/bin和/usr/sbin用到的庫。
/usr/local中包含了從源安裝的用戶程式。例如,當你從源安裝Apache,它會在/usr/local/apache2中。
(9)/home - HOME目錄
所有用戶用home目錄來存儲他們的個人檔案。
例如:/home/john、/home/nikita
(10)/boot - 引導載入程式文件
包含引導載入程式相關的文件。
內核的initrd、vmlinux、grub文件位於/boot下。
例如:initrd.img-2.6.32-24-generic、vmlinuz-2.6.32-24-generic
(11)/lib - 系統庫
包含支持位於/bin和/sbin下的二進位文件的庫文件.
庫文件名為 ld或lib.so.*
例如:ld-2.11.1.so,libncurses.so.5.7
(12)/opt - 可選的附加應用程式
opt代表可選的。
包含從個別廠商的附加應用程式。
附加應用程式應該安裝在/opt/或者/opt/的子目錄下。
(13)/mnt - 掛載目錄
臨時安裝目錄,系統管理員可以掛載文件系統。
(14)/media - 可移動媒體設備
用於掛載可移動設備的臨時目錄。
舉例來說,掛載CD-ROM的/media/cdrom,掛載軟盤驅動器的/media/floppy;
(15)/srv - 服務數據
srv代表服務。
包含伺服器特定服務相關的數據。
例如,/srv/cvs包含cvs相關的數據。
二.常用命令:
1、查看當前所在的工作目錄的全路徑 pwd
2、查看當前系統的時間 date
date +%Y-%m-%d
3、查看有誰線上(哪些人登陸到了伺服器)
who 查看當前線上
last 查看最近的登陸歷史記錄
last -3
4、關機/重啟
關機(必須用root用戶)
shutdown -h now ## 立刻關機
shutdown -h +10 ## 10分鐘以後關機
shutdown -h 12:00:00 ##12點整的時候關機
halt # 等於立刻關機
重啟
shutdown -r now
reboot # 等於立刻重啟
5、清屏
clear ## 或者用快捷鍵 ctrl + l
6、退出當前進程
ctrl+c 有些程式也可以用q鍵退出
7、掛起當前進程
ctrl+z ## 進程會掛起到後臺
8、echo
相當於java中System.out.println(userName)
三.目錄、文件操作
1 查看目錄信息
ls / ## 查看根目錄下的子節點(文件夾和文件)信息
ls -al ## -a是顯示隱藏文件 -l是以更詳細的列表形式顯示
ls -l 有一個別名: ll 可以直接使用ll
2 切換工作目錄
cd /home/test ## 切換到用戶主目錄
cd ~ ## 切換到用戶主目錄
cd 什麼路徑都不帶,則回到用戶的主目錄
cd - ## 回退到上次所在的目錄
3 創建文件夾
mkdir aaa ## 這是相對路徑的寫法
mkdir /data ## 這是絕對路徑的寫法
mkdir -p aaa/bbb/ccc ## 級聯創建目錄
4 刪除文件夾
rmdir aaa ## 可以刪除空目錄
rm -r aaa ## 可以把aaa整個文件夾及其中的所有子節點全部刪除
rm -rf aaa ## 強制刪除aaa
5 修改文件夾名稱
mv aaa angelababy
mv本質上是移動
mv install.log aaa/ 將當前目錄下的install.log 移動到aaa文件夾中去
rename 可以用來批量更改文件名
rename .txt .txt.bak *
6.## 創建一個空文件 touch somefile.1
7.拷貝/刪除/移動
cp somefile.1 /home/
rm /hom/somefile.1
rm -rf /homep/somefile.1
mv /home/somefile.1 ../
8.查看文件內容
cat somefile 一次性將文件內容全部輸出(控制台)
分頁查看文件的命令:
more somefile 可以翻頁查看, 下翻一頁(空格) 上翻一頁(b) 退出(q)
less somefile 可以翻頁查看,下翻一頁(空格) 上翻一頁(b),上翻一行(↑) 下翻一行(↓) 可以搜索關鍵字(/keyword)
跳到文件末尾: G
跳到文件首行: gg
退出less : q
tail -10 install.log 查看文件尾部的10行
tail +10 install.log 查看文件 10-->末行
tail -f install.log 小f跟蹤文件的唯一inode號,就算文件改名後,還是跟蹤原來這個inode表示的文件
tail -F install.log 大F按照文件名來跟蹤
head -10 install.log 查看文件頭部的10行
四.VI編輯器
1、最基本用法
vi somefile
1/ 首先會進入“一般模式”,此模式只接受各種命令快捷鍵,不能編輯文件內容
2/ 按i鍵,就會從一般模式進入編輯模式,此模式下,敲入的都是文件內容
3/ 編輯完成之後,按Esc鍵退出編輯模式,回到一般模式;
4/ 再按:,進入“底行命令模式”,輸入wq命令,回車即可保存退出
2、常用快捷鍵
一些有用的快捷鍵(在一般模式下使用):
a 在游標後一位開始插入
A 在該行的最後插入
I 在該行的最前面插入
gg 直接跳到文件的首行
G 直接跳到文件的末行
dd 刪除一行
3dd 刪除3行
yy 複製一行
3yy 複製3行
p 粘貼
u undo
ctrl + r redo
v 進入字元選擇模式,選擇完成後,按y複製,按p粘貼
ctrl+v 進入塊選擇模式,選擇完成後,按y複製,按p粘貼
shift+v 進入行選擇模式,選擇完成後,按y複製,按p粘貼
3、查找並替換
(在底行命令模式中輸入)
1顯示行號
:set nu
2 隱藏行號
:set nonu
3 查找關鍵字
:/you ## 效果:查找文件中出現的you,並定位到第一個找到的地方,按n可以定位到下一個匹配位置(按N定位到上一個)
4 替換操作
:s/sad/bbb 查找游標所在行的第一個sad,替換為bbb
:%s/sad/bbb 查找文件中所有sad,替換為bbb
五.打包壓縮
1、gzip壓縮
gzip a.txt
2、解壓
gunzip a.txt.gz
gzip -d a.txt.gz
3、bzip2壓縮
bzip2 a
4、解壓
bunzip2 a.bz2
bzip2 -d a.bz2
5、打包:將指定文件或文件夾
tar -cvf bak.tar ./aaa
將/etc/password追加文件到bak.tar中(r)
tar -rvf bak.tar /etc/password
6、解壓
tar -xvf bak.tar
7、打包並壓縮
tar -zcvf a.tar.gz aaa/
8、解包並解壓縮(重要的事情說三遍!!!)
tar -zxvf a.tar.gz
解壓到/usr/下
tar -zxvf a.tar.gz -C /usr
六、查找命令
1 常用查找命令的使用
1、查找可執行的命令所在的路徑:
which ls
2、查找可執行的命令和幫助的位置:
whereis ls
3、從某個文件夾開始查找文件
find / -name "test"
find / -name "test" -ls
5、查找並刪除
find / -name "test" -ok rm {} \;
find / -name "test" -exec rm {} \;
6、查找用戶為test的文件
find /usr -user test-ls
7、查找用戶為test的文件夾
find /home -user test -type d -ls
8、查找許可權為777的文件
find / -perm -777 -type d -ls
**、顯示歷史命令
history
2 grep命令
1/ 基本使用
查詢包含test的行
grep test/etc/password
grep aaa ./*.txt
2/ cut截取以:分割保留第七段
grep test/etc/passwd | cut -d: -f7
3/ 查詢不包含test的行
grep -v test/etc/passwd
查找不是以#開頭的行
grep -v '^#' a.txt | grep -v '^$'
以h或r開頭的
grep '^[hr]' /etc/passwd
不是以h和r開頭的
grep '^[^hr]' /etc/passwd
不是以h到r開頭的
grep '^[^h-r]' /etc/passwd
七、文件許可權的操作
1 linux文件許可權的描述格式解讀
drwxr-xr-x (也可以用二進位表示 111 101 101 --> 755)
d:標識節點類型(d:文件夾 -:文件 l:鏈接)
r:可讀 w:可寫 x:可執行
第一組rwx: ## 表示這個文件的擁有者對它的許可權:可讀可寫可執行
第二組r-x: ## 表示這個文件的所屬組用戶對它的許可權:可讀,不可寫,可執行
第三組r-x: ## 表示這個文件的其他用戶(相對於上面兩類用戶)對它的許可權:可讀,不可寫,可執行
2 修改文件許可權
chmod g-rw haha.dat ## 表示將haha.dat對所屬組的rw許可權取消
chmod o-rw haha.dat ## 表示將haha.dat對其他人的rw許可權取消
chmod u+x haha.dat ## 表示將haha.dat對所屬用戶的許可權增加x
chmod a-x haha.dat ## 表示將haha.dat對所用戶取消x許可權
也可以用數字的方式來修改許可權
chmod 664 haha.dat
就會修改成 rw-rw-r--
如果要將一個文件夾的所有內容許可權統一修改,則可以-R參數
chmod -R 770 aaa/
3 修改文件所有權
<只有root許可權能執行>
chown angela aaa ## 改變所屬用戶
chown :angela aaa ## 改變所屬組
chown angela:angela aaa/ ## 同時修改所屬用戶和所屬組
補充:
r: 對文件來說,是可讀取內容; 對文件夾來說,是可以ls
w: 對文件來說,是可修改文件的內容;對文件夾來說,是可以在其中創建或者刪除子節點
x: 對文件來說,是能否運行這個文件;對文件夾來說,是能否cd進入這個目錄
八 基本的用戶管理
添加一個用戶:
1、 useradd spark
2、 passwd spark 根據提示設置密碼;
即可
刪除一個用戶:
userdel -r spark 加一個-r就表示把用戶及用戶的主目錄都刪除
3.為用戶配置sudo許可權
用root編輯 vi /etc/sudoers
在文件的如下位置,為text添加一行即可
root ALL=(ALL) ALL
test ALL=(ALL) ALL
然後,text用戶就可以用sudo來執行系統級別的指令
[text@shizhan ~]$ sudo useradd huangxiaoming
九系統管理操作
1 掛載外部存儲設備
可以掛載光碟、硬碟、磁帶、光碟鏡像文件等
1/ 掛載光碟機
mkdir /mnt/cdrom 創建一個目錄,用來掛載
mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 將設備/dev/cdrom掛載到 掛載點 : /mnt/cdrom中
2/ 掛載光碟鏡像文件(.iso文件)
mount -t iso9660 -o loop /home/test/Centos-6.7.DVD.iso /mnt/centos
註:掛載的資源在重啟後即失效,需要重新掛載。要想自動掛載,可以將掛載信息設置到/etc/fstab配置文件中,
3/ 卸載 umount
umount /mnt/cdrom
** 存儲空間查看
df -h
4.系統服務管理
service --status-all # 查看系統所有的後臺服務進程
service sshd status # 查看指定的後臺服務進程的狀態
service sshd stop
service sshd start
service sshd restart
配置後臺服務進程的開機自啟
chkconfig httpd on ## 讓httpd服務開機自啟
chkconfig httpd off ## 讓httpd服務開機不要自啟
5.進程管理
top
free
ps -ef | grep ssh
kill -9 2358 ## 將指定進程號的進程殺死