linux基礎總結002
【1】passed
1.只輸入passwd,修改當前使用者的密碼(對長度有要求)
2.sudo passwd 使用者名稱 修改指定使用者的密碼
3.sudo passwd 修改超級使用者密碼
【2】su
切換使用者
sudo --- 給當前使用者臨時新增超級使用者許可權
1.su -- 預設切換到超級使用者
2.su - 使用者名稱 :切換帶指定使用者
注意:1.普通使用者切換到超級使用者需要密碼
2.超級使用者切換到普通使用者不需要密碼
【3】echo
在標準輸出上列印指定內容
echo beijing huaqing
列印兩個字串,字串之間用空格隔開
echo "beijing huaqing" 雙引號括起來的表示一個字串,字串有一個字元是空格
【4】date
顯示和設定系統時間
【5】clear(ctrl +l)
清屏
【6】使用者管理
1./etc/passwd檔案
是系統能夠識別的使用者清單
使用者登陸時,系統查詢這個檔案,確定使用者的UID並驗證使用者口令
檔案包括以下幾個欄位(欄位之間用:隔開)
登陸名
經過加密的口令
UID 使用者ID
預設的GID
個人資訊
家目錄:指定登入使用者是預設進入的路徑
登陸shell
2./etc/shadow
加密的使用者清單,只有超級使用者可以訪問這個檔案,用來保護加密口令的安全
欄位:
登入名
經過加密的口令
上次修改口令的時間
兩次修改口令最短期限(天數)
兩次修改口令最短期限(天數)
提前幾天提醒口令過期
口令過期多少天禁用賬號(禁止使用者登入)
賬號過期日期
保留欄位
3./etc/group檔案
包含了LUNIX組的名稱和每個組中成員列表
每一行代表一個組,包括4個欄位:
組名
加密的口令
GID號
成員列表,彼此用逗號隔開
如果使用者與所屬的組同名,則在第四個欄位中省略
一、新增使用者
sudo adduser + 使用者名稱
4.etc/adduser.conf 是adduser命令配置檔案
FIRST_UID=1000
LAST_UID=29999
USERS_GID=100
DHOME=/home 指定使用者的工作目錄
DSHELL=/bin/bash
SKEL=/etc/skel
SKEL模板
etc/skel目錄是被 /usr/sbin/useradd使用
使用adduser 命令新增使用者時,Linux系統會自動將/etc/skel/下的所有檔案和目錄拷貝到新建使用者的主目錄下。這些都是一些配置檔案:
.bash_profile
.bashrc
.bash_logout
dircolors
.inputrc
.vimrc
注意:1.建立使用者時。首先建立同名的使用者組,將該使用者置於組中
二、修改使用者屬性
-d <登入目錄>:修改使用者登入時的目錄(修改~表示的絕對路徑)
-g <群組>:修改使用者所屬的組
注意:只能修改成已存在的組ID
-G <群組>:修改使用者所屬的附加組
-l <賬號名稱>:修改使用者賬號名稱(登入名)
注意:只能修改配置檔案中的登入名,但無法修改使用者工作目錄
-u :修改使用者ID
sudo usermod -d /home farsight
sudo usermod -g 1000 farsight
三、刪除使用者
deluser --remove-home user1
刪除使用者user1的同時刪除使用者的工作目錄
注意:刪除時如果使用者所屬組是同名組,且該組中沒有其他使用者,則同時將使用者組也刪除
四、新增組
sudo addgroup 組名
五、刪除組
sudo delgroup 組名
【7】程序管理
程式的一次執行就是一個程序
區別:程式是靜態,程序是動態的
程序控制塊的組成
程序名
特徵資訊
程序狀態資訊
排程優先權
通訊資訊
現場保護區
資源需求、分配和控制方面的資訊
程序實體資訊
族系關係
暫存器,程式計數器,控制器
必要的堆疊
ps -- 只顯示依賴於當前終端視窗的程序狀況
-A 列出所有的程序
-au 顯示較詳細的資訊(只顯示執行在終端機的程序)
-aux 顯示所有包含其他使用者的程序
-可以被省略
TTY :程序依賴的終端
終端視窗 用pts/n 表示,
TTY1-6 :文字介面
tty7:圖形介面
如果是?表示不依賴於人終端
S:阻塞狀態
s:包含子程序
R:可執行
就緒態(只有在該狀態下才可能被cpu執行)
執行態
+:程序在前臺執行
top
動態監視程序
預設沒3秒重新整理一次
-d + time 指定重新整理時間間隔
pstree
將所有程序以樹狀圖顯示,
【8】訊號
Linux系統支援了一些給程序傳送訊號,
kill -l 列出系統支援的訊號清單
kill [-signal] PID 傳送序列號指定的訊號給PID
2) SIGINT
程式終止(interrupt)訊號, 在使用者鍵入INTR字元(通常是Ctrl-C)時發出,用於通知前臺程序組終止程序。
9) SIGKILL
用來立即結束程式的執行. 本訊號不能被阻塞、處理和忽略。如果管理員發現某個程序終止不了,可嘗試傳送這個訊號。
【9】檔案系統
提供儲存、管理、檢索檔案的方式
用於組織和管理計算機儲存裝置上的大量檔案,並提供使用者互動介面。
Linux特點:支援多種檔案系統
開發更加靈活,系統可以根據不同的功能自動選擇要使用的檔案系統。
Linux是一種相容性很高的作業系統,支援的檔案系統格式很多,大體可分以下幾類:
1.磁碟檔案系統:指本地主機中實際可以訪問到的檔案系統,包括硬碟、CD-ROM、DVD、USB儲存器、磁碟陣列等。
Windows常用:FAT16,FAT32,NTFS
linux常用:ext系列,ext4\ext6
2.網路檔案系統:是可以遠端訪問的檔案系統,這種檔案系統在伺服器端仍是本地的磁碟檔案系統,客戶機通過網路遠端訪問資料。NFS
3.專有/虛擬檔案系統(VFS):不駐留在磁碟上的檔案系統。 VFS 作為 Linux核心中的一個軟體抽象層,用於給應用程式提供檔案系統介面,Linux允許不同的檔案系統很好地共存,任何要使用這些實際檔案系統的程式都必須通過這層介面來使用它。它只存在於記憶體中,不存在於任何外存空間。VFS在系統啟動時建立,在系統關閉時消亡。 VFS 使 Linux 同時安裝、支援許多不同型別的檔案系統成為可能。常見格式有:TMPFS(臨時檔案系統)
檔案系統的分割槽
sudo fdisk -l
hd”代表IDE硬碟
“sd”表示SCSI或SATA硬碟
window在磁碟分割槽中建立目錄結構
Linux是將磁碟分割槽抽象成檔案掛在相應目錄下
檔案系統邏輯結構:
Linux的檔案組織模式猶如一顆倒置的樹
頂層目錄:根目錄 /
/bin:存放系統中最常用的可執行檔案(二進位制)
/dev 存放所有裝置檔案,包括硬碟、分割槽、鍵盤、滑鼠、USB、tty等
/etc 存放系統的所有配置檔案,例如passwd存放使用者賬戶資訊,hostname存放主機名等
絕對路徑和相對路徑
絕對路徑:指檔案在檔案系統中的準確位置。通常在本地主機上,以根目錄為起點。例如“/usr/games/gnect”就是絕對路徑。
相對路徑:指相對於使用者當前位置的一個檔案或目錄的位置。例如,使用者處在usr目錄中時,只需要“games/gnect”就可確定這個檔案。
. 表示當前目錄
.. 表示上層目錄
【10】檔案屬性
-rw-rw-r-- 1 linux linux 27 Sep 23 16:29 file
第一部分:前10個字元
第一個字元:檔案型別(b、c、d、-、l、s、p)
-:普通檔案,指ASCII文字檔案、二進位制可執行檔案,以及硬體連結
b: 塊裝置檔案
c:原始輸入/輸出裝置檔案,每次I/O操作僅傳送一個字元
d:包含若干檔案或子目錄
l:符號連結檔案,只保留了檔案地址,而不是檔案本身
p:管道(pipe),一種程序間通訊的機制,用於程序間通訊的暫時檔案
s:套接字檔案,用於程序間通訊,兩臺計算機間通訊的應用程式介面(API)
file:檢視檔案型別
第一組:當前使用者對檔案的許可權
第二組:使用者所屬組中其他使用者對檔案的許可權
第三組:其他使用者對檔案的許可權
r:可讀
w:可寫
x:可執行
許可權位在計算機中以二進位制表示
許可權掩碼umask
檔案預設許可權是666
目錄預設許可權是777
建立檔案或目錄時預設許可權-許可權掩碼值得出當前許可權位
修改檔案屬性
1.chmod命令
chmod 764 filename
chmod 777 filename
chmod u+x filename
u-改擁有者許可權(前三位)
g-改同組使用者
o-改其他使用者的許可權(後三位)
chmod a+x filename 統一修改三組對應許可權位
chmod也可以改目錄的許可權
2.chown修改檔案擁有者、所屬組
sudo chown newusername filename : 將filename檔案的擁有者改為newusername使用者
Sudo chown :newgroup filename : 將filename檔案的所屬組改為newgroup
3. chgrp:
sudo chgrp newgroup filename :將filename檔案的所屬組改為newgroup
【11】mkdir
建立目錄
mkdir -p 建立級聯目錄
【12】cp
複製
cp -r 複製目錄
【13】mv
1.剪下檔案和目錄
2.重新命名檔案和目錄
【14】rm
刪除檔案
rm -r 刪除目錄
【15】head
檢視檔案前幾行,預設列印檔案前10行內容
head [-n] 列印前n行內容
【16】tail
檢視檔案後幾行,預設列印檔案後10行內容
tail [-n] 列印前n行內容
【17】建立連結檔案
Linux中有兩種型別的連結:
1.硬連結 ln
利用Linux中為每個檔案分配的物理編號——inode建立連結。因此,硬連結不能跨越檔案系統(ls -l)。
注意:1.如果檔案沒有任何的硬連結檔案,則檔案屬性中的硬連結數為1,沒建立一個硬連結檔案連結數加1
2.不能跨越檔案系統
2.軟連結(符號連結)ln -s
利用檔案的路徑名建立連結。通常建立軟連結使用絕對路徑而不是相對路徑,以最大限度增加可移植性。
類似於Windows下的快捷方式
區別:
1.硬連結不可以跨檔案系統,軟連線可以
2.inode節點問題
硬的不管有多少個,均指向一個inode,每建立一個硬連結,會產生一個(大小、許可權、inode、時間)一致的檔案,並增加1個連結數,它們是絕對平等的,可以通過ls -i命令檢視詳細的inode和連線數。
軟連結,是產生一個很小的具有新inode的檔案,有點類似win中的“快捷方式”,它存放的是指向原始檔路徑的指標,是個全新的檔案
刪除一個硬連結,只會減少連線數,直到刪除最後一個連線數為1的檔案,就是徹底刪除了此檔案;刪除一個軟連結檔案,無區別。刪除原始檔的話,軟連線則指向了一個空檔案,相當於快捷方式失效
3.軟的可以連結目錄,而硬的不行
【18】檔案壓縮和歸檔
首先需要明確兩個概念:
1.歸檔檔案是將一組檔案或目錄儲存在一個檔案中。
2.壓縮檔案也是將一組檔案或目錄儲存一個檔案中,並按照某種儲存格式儲存在磁碟上,所佔磁碟空間比其中所有檔案總和要少。
---壓縮和解壓
-- gzip
功能:壓縮指定檔案但不儲存原始檔;只能壓縮檔案,無法將多個檔案壓縮為一個檔案,也無法壓縮目錄
字尾名:.gz
eg.gzip file 壓縮檔案
解壓檔案:
gunzip file.gz 或者 gzip -d file.gz 選項: -l(小寫l):檢視壓縮檔案資訊
gzip -l file.gz 該命令只能檢視,不能壓縮
--bzip2:用法和gzip相同
字尾名:.bz2
--zip :類似於Windows下的壓縮命令
格式:zip 指定壓縮包名 需要壓縮的檔案
注意:1.儲存原始檔
2.字尾名.zip
3.可以壓縮目錄(-r 可加可不加)
4.可以將多個檔案壓縮成同一個壓縮包
unzip: 解壓縮
unzip -Z all.zip 檢視壓縮包的內容
tar命令、、
主要用於將若干檔案或目錄合併為一個檔案,以便備份和壓縮
字尾名:.tar
-c 建立一個新的歸檔檔案
-f 使用者指定歸檔檔案的檔名,否則使用預設名稱
tar -cf file.zip file
.儲存原始檔
-v 顯示歸檔和釋放的過程資訊
-x 釋放歸檔檔案
tar -xvf file.tar 釋放歸檔檔案
-j 由tar生成歸檔,然後由bzip2壓縮
-z 由tar生成歸檔,然後由gzip壓縮
tar -czf file2.tar.gz file2
tar -cjf file1.tar.bz file
tar -xvjf myExamples.tar.bz
tar -xvzf myExamples.tar.gz
【19】網路配置
IP地址通常用點分十進位制(用“.”隔開的四個十進位制數)
ping:檢測網路連線狀況
ifconfig:顯示和配置網絡卡
eth0:第一個乙太網卡
lo(loop):迴環地址
【20】Shell指令碼
本質:shell命令的有序集合
1.存放shell命令
2.通過語法格式來管理命令
字尾名:.sh
基本過程分為三步:
1. 建立 shell 檔案
包含任意多行作業系統命令或shell命令的文字檔案;
2. 賦予shell檔案執行許可權
用chmod命令修改許可權;
3. 執行shell檔案
直接在命令列上呼叫shell程式.
【21】shell變數
Shell允許使用者建立變數儲存資料,但不支援資料型別(整型、字元、浮點型),將任何賦給變數的值都解釋為一串字元
四種變數:
1.使用者自定義變數
2.環境變數
HOME: /etc/passwd檔案中列出的使用者主目錄
PATH:shell搜尋路徑
3.位置變數即 命令列引數
$0 : 與鍵入的命令列一樣,包含指令碼檔名
$1~$9 :分別包含第一個到第九個命令列引數
${10}~${n}: 存放第十個到第n個命令列引數。
4.預定義變數
shell直譯器預先定義好的變數,使用者只能根據定義使用,而不能修改變數的定義
$# 包含命令列引數的個數,不包含指令碼檔名
[email protected] 包含所有命令列引數:“$1,$2,……$9”
$? 包含前一個命令的退出狀態
如果命令正常執行,則值為0;否則為非0值
$* 包含所有命令列引數:“$1,$2,……$9”
$$ 包含正在執行程序 的ID號