Linux系統基礎入門與配置指南

Linux基本概述與配置

一、我們為什么使用Linux(Linux的優點)
  1. 開源與自由

    • 免費: 無需支付許可費用,任何人都可以自由下載、安裝和使用。
    • 源代碼開放: 任何人都可以查看、修改和分發源代碼。這帶來了極高的透明度、安全性和定制性。
    • 自由: 用戶可以自由地運行、研究、修改和重新分發系統,不受商業公司的限制。
  2. 卓越的穩定性與可靠性:

    • 服務器首選: Linux服務器以長時間穩定運行(數年無需重啟)而聞名,宕機率極低,是數據中心、云計算平臺、網絡設備等的基石。

    • 崩潰少: 內核設計精良,內存管理高效,進程隔離性好,單個程序崩潰通常不會導致整個系統癱瘓。

  3. 強大的安全性:

    • 開源審查: 龐大的開發者社區持續審查代碼,漏洞通常能被更快發現和修復。
    • 權限管理嚴格: 基于用戶和組的權限模型(最小權限原則)非常完善,默認情況下普通用戶權限有限,惡意軟件難以獲得系統級控制。
    • 病毒威脅少: 市場占有率(尤其是桌面端)相對較低、權限模型嚴格以及軟件來源可控(主要來自官方倉庫),使得針對Linux的惡意軟件遠少于Windows。
    • 快速安全更新: 發行版維護者能迅速響應漏洞,并通過包管理系統高效推送更新。
  4. 出色的性能與效率:

    • 資源占用低: 許多發行版(尤其是輕量級版本)對系統資源需求極低,能在老舊或低配硬件上流暢運行。
    • 高效: 內核和系統設計優化良好,在相同硬件上往往能比Windows提供更快的啟動速度、響應速度和更高的吞吐量。
    • 可擴展性: 從最小的嵌入式設備到最大的超級計算機集群,Linux都能勝任。

除上述4點之外,Linux還有極高的靈活性與可定制性強大的命令行與腳本能力豐富的軟件生態(尤其對于開發者和服務器)活躍的社區支持隱私保護等眾多的優點。

Linux的核心優勢在于其開源自由、穩定可靠、安全堅固、高效靈活、強大的命令行和包管理,以及活躍的社區。這些優點使其在服務器、云計算、開發、嵌入式系統等領域占據絕對主導地位,在桌面領域也為用戶提供了一個強大、安全、隱私友好且高度可定制的替代選擇。

二、Linux的組成
  1. 誕生:1991.10 linus.torvalds 發布第一個linux公開版

  2. 標準:企鵝

  3. Linux系統組成

    • Linux內核:是一個特殊的軟件程序,用于實現CPU、內存分配、進程調度和設備驅動等核心操作,以面向硬件為主。

      • 角色: 操作系統的核心
      • 職責:
        • 直接與硬件對話: 管理 CPU、內存、硬盤、網卡、USB 設備等所有物理資源。包含設備驅動程序。
        • 資源管理者: 分配 CPU 時間給進程、管理系統內存、處理文件系統讀寫、管理網絡通信。
        • 安全基石: 實施基本的進程隔離、用戶/組權限控制。
        • 提供基礎服務: 為上層程序提供進程創建、文件操作、網絡通信等核心功能。
      • 運行模式: 運行在內核態(最高特權級別 Ring 0),擁有對硬件的完全訪問權。
      • 接口: 通過系統調用向用戶空間程序提供服務。-
    • 外圍程序:包括分析用戶指令的解釋器、網絡服務程序和圖形化桌面程序等各種應用型的軟件程序,以面向用戶為主。

      • 角色: 運行在用戶空間的所有程序。
      • 范圍: 包括除內核本身以外的所有軟件組件:
        • Shell: bash, zsh, fish 等命令行解釋器。
        • 核心系統工具: ls, cp, mv, rm, grep, awk, sed, ps, top, mount, useradd, ping, ssh 等(大部分來自 GNU 項目或類似項目)。
        • 系統守護進程: 在后臺運行的系統服務,如 systemd(init 系統)、sshd(SSH 服務器)、cron(定時任務)、dbus(消息總線)等。
        • 桌面環境/窗口管理器: GNOME, KDE Plasma, XFCE, i3 等。
        • 應用程序: 文本編輯器(vim, nano)、瀏覽器(Firefox, Chrome)、辦公軟件(LibreOffice)、媒體播放器(VLC)、開發工具(GCC, Python, VSCode)、數據庫(MySQL, PostgreSQL)、Web 服務器(Apache, Nginx)等任何你安裝和運行的軟件。
      • 運行模式: 運行在用戶態(較低特權級別 Ring 3),無法直接訪問硬件。
      • 與內核交互: 所有對硬件資源或核心系統服務的請求(如讀寫文件、申請內存、網絡通信、創建進程),都必須通過系統調用這個受控接口向內核發起。內核執行請求的操作并返回結果。
    • linux內核由3部分組成:主版本號、次版本號、末版本號

    • linux內核的2種類型:開發版本(次版本號為奇數)、穩定版本(次版本號為偶數

    • linux系統的外圍程序大部分都是由GNU組織開發的。

      GNU:在1984年由著名的美國黑客理查德.斯托曼發起的,由自由軟件基金會(FSF)的資金支持,主要是為了建立免費的開源的UNIX類系統,基本原則是程序源代碼開放和軟件思想共享。

    • GPL、LGPL協議

      • GPL:通用公共許可證(General Public License),為了確保GNU項目所發布的軟件經過傳播、改寫后仍然具有“自由”的特性,GNU項目提出了針對自由軟件的授權許可協議。
      • LGPL:寬通用公共許可證(Lesser General Pubilc License),是GPL授權協議的一個變種,是GNU項目為了得到更多開發者(包括商用軟件開發商)的支持而提出的。
三、常見linux的發行版本
  1. linux常見的發行版本–RHEL、SUSE linux、debian linux
  2. redhat系列的linux–RHEL 企業版、Fedora 社區版、centos企業版
  3. redhat linux認證 RHCSA 、RHCE、RHCA
四、系統文件和目錄
  1. **文件類型 **
    • 普通文件 -
    • 目錄文件 d
    • 鏈接文件 l
    • 特殊文件 c b
  2. 文件:通過顏色來判斷文件類型權限
    • 綠色文件:可執行文件,可執行的程序
    • 紅色文件:壓縮文件或者包文件
    • 藍色文件:目錄
    • 白色文件:一般性文件,如文本文件,配置文件,源碼文件等
    • 淺藍色文件:鏈接文件,主要是使用ln命令建立的文件
    • 紅色閃爍:表示鏈接的文件有問題
    • 黃色:表示設備文件
    • 灰色:表示其他文件
  3. linux常見的后綴名(擴展名)
    • .conf 配置文件
    • .log 日志文件
    • .syslog 系統日志文件
    • .cfg 系統配置文件
    • .i686 系統文件
    • .sh 腳本文件
五、目錄
  1. 目錄
/根目錄是linux文件系統的起點
/binbinary,二進制存放linux系統中最基本的命令,普通用戶有權限執行
/bootboot,引導;/boot目錄通常被劃分為獨立的分區,稱為/boot分區存放啟動linux系統所必需的的文件,包括內核文件、啟動的配置文件
/devdevice,裝置、設備存放linux系統中的磁盤、光驅等各種設備
/etcEditable Text Configuration,可編輯的文本配置存放linux系統及各種配置文件
/home家目錄存放所有普通用戶的默認工作目錄,也叫普通用戶的家目錄
/liblibrary庫文件存放目錄
/mediamedia ,媒體類windows的其他設備,例如U盤、光驅等等,識別后linux會把設備放到這個目錄下
/mntmount,臨時文件系統的安裝點臨時掛載別的文件系統的,我們可以將光驅掛載在/mnt/上,然后進入該目錄就可以查看光驅里的內容了
/optOptional application software packages,可選的應用軟件包有些軟件包會被安裝在這里
/procProcesses ,進程系統進程目錄 比如cpu、內存的信息都存放在該目錄中
/root管理員的主目錄
/run是一個臨時文件系統,存儲系統啟動以來的信息。當系統重啟時,這個目錄下的文件應該被刪掉或清除
/sbinSuperuser Binaries超級用戶可以使用的命令的存放目錄
/srv存放服務啟動后需要提取的數據
/sys該目錄下的所有子目錄代表著系統中當前被發現的所有塊設備
/tmpTemporary這個目錄是用來存放一些臨時文件的
/usrUnix Shared Resources,用于存放共享的系統資源存放其他用戶應用程序,通常被劃分成很多子目錄,用戶存放不同類型的應用程序,這個目錄就好比 windows的program files
/varVariable,變量存放系統中經常需要變化的一些文件,比如系統日志文件、緩沖緩存文件等等
  1. 重要目錄
/bin存放普通用戶有權限執行的命令
/sbin存放管理員用戶有權限執行的命令
/home普通用戶的用戶家目錄
/root超級管理員用戶root用戶的家目錄
/boot存放系統啟動的引導文件和內核文件
/etc存放配置文件
/dev存放設備文件
/proc系統進程目錄,cpu、內存的相關信息存放在這里
/mnt臨時掛載點
/var主要存放日志文件
六、[root@wiltjer ~]#解析
  • root–代表當前用戶

  • wiltjer–主機名稱

  • ~ —當前的工作目錄,其中~代表當前用戶的家目錄

  • #----代表著當前用戶是超級管理員用戶

  • $—代表著當前用戶是個普通用戶

root用戶的用戶家目錄是/root/目錄
普通用戶的家目錄是/home/普通用戶名命名的目錄名稱
比如chenyu用戶的家目錄是/home/chenyu/

七、常見的系統命令
  1. 查看內核版本

    uname -r
    

    4.18.0-80.el8.x86_64
    主版本號:4
    次版本號:18----偶數(穩定版本)—奇數(開發版本)
    末版本號(修訂版本號):0-80
    el8—enterprise Linux 8
    x86_64—支持的架構

  2. 查詢cpu信息

    cat /proc/cpuinfo
    //或
    lscpu
    

    cat— 一次性顯示(查看)文件的所有內容

  3. 查看內存

    cat /proc/meminfo
    //或
    free  -m
    
  4. 查看設置主機名

    hostname  //查看主機名
    hostname  cy.example.com  //(臨時生效)臨時修改主機名,臨時的意思是,重啟后就失效了
    hostnamectl set-hostname rhel8.example.com //(永久生效)---永久修改主機名
    
  5. 查看IP地址

    ifconfig  
    //查看所有網卡的ip信息   
    ip addr(簡寫 ip a)
    
    ifconfig ens160
    //查看ens160網卡的ip信息
    ip addr show ens160
    
  6. 重啟

    shutdown -r now 
    //或  
    reboot
    
  7. 關機

    shutdown -h now  
    //或  
    poweroff
    
  8. 延遲啟動

    shutdown -r +15 'the system will be rebooted!!!'
    

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/915763.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/915763.shtml
英文地址,請注明出處:http://en.pswp.cn/news/915763.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何刪除VSCode Marketplace中的publisher

網頁上并沒有提供刪除的按鈕,需要通過命令的形式刪除。 vsce delete-publisher [要刪除的名字]# 鍵入token # y 確認這里的token是之前在Azure DevOps中創建的token,忘了的話可以重建一個 刷新網頁看一下 成功刪除了。

Windows安裝git教程(圖文版)

Git 是一個分布式版本控制系統,用于跟蹤文件的變化,特別是在軟件開發中。它使得多個開發者可以在不同的機器上并行工作,然后將他們的改動合并在一起。是在開發過程中,經常會用到的一個工具。本章教程,主要介紹Windows上…

Remote Framebuffer Protocol (RFB) 詳解

RFC 6143 規范文檔:The Remote Framebuffer Protocol 文章目錄1. 引言2. 初始連接流程2.1 TCP連接建立2.2 協議版本協商2.3 安全握手3. 顯示協議機制3.1 核心概念3.2 像素格式4. 輸入協議4.1 鍵盤事件(KeyEvent)4.2 鼠標事件(PointerEvent)5. 協議消息詳解5.1 握手消…

從 DeepSeek-V3 到 Kimi K2:八種現代大語言模型架構設計

編譯:青稞社區Kimi 原文:https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison 首發:https://mp.weixin.qq.com/s/lSM2jk1UxJVz1WllWYQ4aQ 自原始 GPT 架構開發以來已經過去了七年。乍一看,從 2019 年的…

linux驅動開發筆記--GPIO驅動開發

目錄 前言 一、設備樹配置 二、驅動編寫 三、用戶空間測試 總結 前言 開發平臺:全志A133,開發環境:linux4.9andrio10,開發板:HelperBoard A133_V2.5。 一、設備樹配置 打開板級設備樹配置文件,路徑&a…

騰訊iOA:企業軟件合規與安全的免費守護者

人們眼中的天才之所以卓越非凡,并非天資超人一等而是付出了持續不斷的努力。1萬小時的錘煉是任何人從平凡變成超凡的必要條件。———— 馬爾科姆格拉德威爾 目錄 一、為什么要使用騰訊iOA? 二、中小企業軟件合規痛點 三、騰訊iOA解決方案 3.1 核心技…

C#定時任務實戰指南:從基礎Timer到Hangfire高級應用

高效管理后臺作業,讓定時任務成為應用的可靠引擎 在C#應用開發中,定時任務是實現數據同步、報表生成、系統維護等后臺作業的核心技術。本文將深入探討C#生態中主流的定時任務解決方案,從基礎的內置Timer到強大的Quartz.NET和Hangfire框架&…

軟件開發、項目開發基本步驟

? 立項階段:項目定義、需求收集與分析、可行性分析、風險評估與規劃、項目團隊組建、制定項目計劃、獲取批準與支持。? 需求評審與分析:? 項目團隊(包括產品經理、開發人員、測試人員等)共同參與,明確項目的目標、功…

慢 SQL接口性能優化實戰

在對某電商項目進行接口性能壓測時,發現 /product/search 接口響應緩慢,存在明顯性能瓶頸。通過慢查詢日志排查和 SQL 優化,最終實現了接口響應速度的顯著提升。本文完整還原此次優化過程,特別強調操作步驟和問題分析過程&#xf…

【C#】在WinForms中實現控件跨TabPage共享的優雅方案

文章目錄一、問題背景二、基本實現方案1. 通過修改Parent屬性實現控件移動三、進階優化方案1. 創建控件共享管理類2. 使用用戶控件封裝共享內容四、方案對比與選擇建議五、最佳實踐建議六、完整示例代碼一、問題背景 在Windows窗體應用程序開發中,我們經常遇到需要…

Android Camera openCamera

由頭 今日調休,終于終于閑下來了,可以寫一下博客了,剛好打開自己電腦,就有四年前下的谷歌Android 12源碼,不是很舊,剛好夠用,不用再另外下載新源碼了,不得不感慨這時間過得真快啊~廢…

神經網絡——池化層

目錄 池化層 最大池化層 MaxPool2d 最大池化操作圖示 最大池化操作代碼演示 綜合代碼案例 池化層 池化層(Pooling Layer) 核心作用:通過降采樣減少特征圖尺寸,降低計算量,增強特征魯棒性。 1. 常見類型 …

Android 默認圖庫播放視頻沒有自動循環功能,如何添加2

Android 默認圖庫播放視頻沒有自動循環功能, 如何添加 按如下方式修改可以添加 開發云 - 一站式云服務平臺 --- a/packages/apps/Gallery2/src/com/android/gallery3d/app/MovieActivity.java +++ b/packages/apps/Gallery2/src/com/android/gallery3d/app/MovieActivity.java…

數字孿生賦能智慧能源電力傳輸管理新模式

在“雙碳”戰略和能源數字化轉型的雙重驅動下,智慧能源系統亟需更高效、精細和智能的管理手段。數字孿生技術作為融合物理世界與數字空間的橋梁,為電力傳輸系統的全生命周期管理提供了強有力的技術支撐。本文聚焦數字孿生在智慧能源電力傳輸中的應用&…

Jmeter的元件使用介紹:(二)線程組詳解

Jmeter線程組默認包含三種:線程組、setUp線程組、tearDown線程組。線程組之間的執行順序為:setUp線程組->線程組->tearDown線程組。多數情況都是選用線程組,setUp線程組用于做一些腳本的前置準備,比如:跨線程組設…

AI替代人工:浪潮中的沉浮與覺醒

當AlphaGo以4:1的比分戰勝圍棋大師李世石之時,人機博弈的疆界被重新劃定;當工廠車間里機械臂以驚人精度與不知疲倦的姿態取代了工人重復的手勢;當客服電話那頭響起的不再是溫存人聲,而成了準確但缺乏溫度的AI語音;當算…

數學建模--matplot.pyplot(結尾附線條樣式表格)

matplotlib.pyplot繪圖接口 1. 用法 導入模塊 import matplotlib.pyplot as plt import numpy as np # 用于生成示例數據繪制簡單圖表 # 生成數據 x np.linspace(0, 10, 100) y np.sin(x)# 創建圖形和坐標軸 plt.figure(figsize(8, 4)) # 設置圖表大小 plt.plot(x, y, …

NumPy 實現三維旋轉變換

在三維空間中,物體的旋轉變換是計算機圖形學、機器人學以及三維建模等領域中一個至關重要的操作。這種變換可以通過構造特定的旋轉矩陣并將其應用于三維點或向量來實現。本文將深入探討如何利用 NumPy 這一強大的 Python 科學計算庫來實現三維旋轉變換,從基本的數學原理到具體…

基于Springboot的中藥商城管理系統/基于javaweb的中藥材銷售系統

管理員:登錄,個人中心,用戶管理,藥材分類管理,藥材信息管理,藥材入庫管理, 藥材出庫管理,訂單管理,云端藥館,系統設置用戶:注冊,登錄&…

試用SAP BTP 02A:試用SAP HANA Cloud

進入SAP BTP主控室 -> 子賬 -> 服務市場,選擇【數據和分析】-> 點擊SAP HANA Cloud點擊創建選擇服務、計劃、運行時環境、空間,輸入實例名稱,點擊下一步在JSON文件中配置HANA管理員密碼,點擊下一步審核hana 實例信息&…