說下你常用的 Linux 命令?
文件與目錄操作:
ls
:列出當前目錄的文件和子目錄,常用參數如-l
(詳細信息)、-a
(包括隱藏文件)cd
:切換目錄,用于在文件系統中導航mkdir
:創建新目錄rm
:刪除文件或目錄,用于刪除文件時加上-f
參數,刪除目錄時加上-r
參數cp
:復制文件或目錄,cp -r
用于遞歸復制目錄mv
:移動或重命名文件或目錄
文件內容查看:
cat
:查看文件內容,常用于查看小型文本文件more / less
:分頁查看文件內容,less
支持向上翻頁,適合查看大文件tail
:查看文件末尾的若干行,tail -f
用于實時監控文件內容變化,如日志文件head
:查看文件的開頭幾行
系統管理:
ps
:顯示當前運行的進程列表,ps aux
可以查看所有用戶的進程top / htop
:實時查看系統中的進程狀態和資源使用情況kill / killall
:終止進程,kill
后跟進程ID,killall
后跟進程名df
:顯示文件系統的磁盤使用情況du
:統計目錄或文件所占用的磁盤空間,du -h
以人類可讀的格式顯示
網絡配置與調試:
ping
:測試與目標主機的連通性ifconfig / ip
:查看和配置網絡接口信息,ifconfig
已逐漸被ip
命令替代netstat / ss
:查看網絡連接和端口使用情況,ss
是netstat
的替代品,提供更詳細的信息。curl / wget
:發送HTTP請求或下載文件,curl
更適合進行API調試,wget
則用于下載文件
文件權限與用戶管理:
chmod
:修改文件或目錄權限,常用模式如chmod 755
chown
:更改文件或目錄的所有者useradd / userdel
:添加或刪除用戶passwd
:修改用戶密碼
什么是分段、什么是分頁?
分段(Segmentation)和分頁(Paging)是操作系統中用于內存管理的兩種方式,目的是提高內存利用率并簡化程序的管理。
分段(Segmentation):
- 是一種根據程序邏輯結構劃分內存的方式,例如將程序分為若干個段(如代碼段、數據段、堆棧段等),每個段有獨立的段號和段內偏移量。
- 每個段可以有不同的大小,段的長度取決于程序的實際需求,段與段之間可能不連續。
- 分段管理提供了一種更貼近程序結構的內存管理方式,有助于提高程序的可讀性和維護性。
分頁(Paging):
- 是一種將物理內存和邏輯內存劃分為固定大小的頁(Page)和頁框(Frame)的方式,每個頁和頁框的大小相同。
- 邏輯地址空間被劃分為若干個固定大小的頁,物理內存則被劃分為相同大小的頁框,頁通過頁表映射到頁框。
- 分頁管理解決了內存碎片問題,但程序的邏輯結構和內存的物理結構不再一致。
什么是軟中斷、什么是硬中斷?
軟中斷和硬中斷是操作系統處理外部或內部事件的兩種中斷方式:
-
硬中斷(Hardware Interrupt):是由硬件設備(如鍵盤、網絡卡、定時器等)觸發的中斷信號。當硬件設備需要與CPU交互(如數據傳輸完成、定時中斷等),會通過硬中斷通知CPU。硬中斷具有高優先級,通常會立即打斷當前執行的程序,進行中斷處理。
-
軟(件)中斷(Software Interrupt):是由軟件(程序)觸發的中斷,通常是通過執行特定指令(如int指令)或系統調用產生的。軟中斷用于在程序運行中請求操作系統的服務,如文件讀寫、進程調度等。軟中斷的優先級一般低于硬中斷。