1. 程式人生 > 其它 >Linux目錄結構資訊

Linux目錄結構資訊

一、系統目錄結構介紹

1.1 常見系統目錄結構

Windows下:

C:\windows
D:\Program Files

Linux下:

/etc/sysconfig
/usr/local

1.2 Linux目錄結構特點

  1. Linux目錄結構從根開始

    • 絕對路徑
    • 相對路徑
  2. Linux目錄結構擁有層次——層次結構類似倒掛的一棵樹

  3. Linux目錄需要掛載使用

    • 系統目錄可以掛載任何磁碟裝置上

    • 磁碟空間沒有被掛載是不能使用的

1.3 目錄掛載初識

  1. 定義掛載裝置資訊

    光碟機裝置 --- /cd/cdrom
    
  2. 完成裝置掛載操作

    進行掛載 --- mount /dev/cdrom  /mnt/
    
  3. 檢查測試掛載結果

    掛載檢查 --- df -h
    
  4. 掛載完成進行解除安裝

    完成解除安裝 --- umount /mnt
    

1.4 目錄結構發展

  1. 第一塊磁碟:用來存放系統程式

    /
    
  2. 第二塊磁碟:存放使用者自己程式(資料盤)

    /usr
    
  3. 第三塊磁碟:用於分類管理使用者

    /home
    
    ls -ld  檢視目錄本身資訊
    

1.5 目錄結構初識

1.6 關閉selinux

  • 臨時關閉

    [root@localhost ~]# setenforce 0
    
  • 永久關閉

    [root@localhost ~]# vim /etc/selinux/config
    SELINUX=disabled
    

二、目錄結構知識詳述

2.1 重要目錄資料說明(目錄:/etc)

2.1.1 重要檔案——網絡卡配置檔案
  • 檔案資訊:

    /etc/sysconfig/network-scripts/ifcfg-eth0
    /etc/sysconfig/network-scripts/ifcfg-eth1
    /etc/sysconfig/network-scripts/ifcfg-ens32
    /etc/sysconfig/network-scripts/ifcfg-ens33
    
  • 作用說明:

    1. 用於檢視配置網絡卡資訊:

      ip address show
      
      nmtui
      
    2. 網路服務程序載入檔案(過載網絡卡資訊):

      systemctl restart network
      
      ifdown [網絡卡名稱] && ifup [網絡卡名稱]
      
  • 故障排查:

    1. 確認閘道器地址是否通暢;

    2. 確認網絡卡配置是否正確:

      vim /etc/sysconfig/network-scripts/ifcfg-eth0
      
    3. 確認網路管理服務是否關閉(因為已經有了network):

      systemctl  stop NetworkManager
      systemctl  disable NetworkManager
      或
      systemctl  disable --now  NetworkManager
      
    4. 確認虛擬網路編輯配置;

    5. 確認虛擬軟體服務是否開啟:

      判斷SSH服務是否開啟:
      [root@localhost ~]# systemctl status sshd
      
    6. 確認虛擬網絡卡配置資訊;

2.1.2 重要檔案——解析配置檔案
  • 檔案資訊:

    /etc/resolv.conf : 臨時DNS配置檔案
    
    nameserver 114.114.114.114
    
  • 作用說明:

    用於設定DNS解析地址,網絡卡中配置優先於此檔案配置。

    常用DNS:

    114.114.114.114 中國電信

    223.5.5.5/223.6.6.6 中國阿里雲
    8.8.8.8 谷歌雲

2.1.3 重要檔案——主機名稱檔案
  • 檔案資訊:

    /etc/hostname
    
  • 作用說明:

    配置主機名稱資訊,永久生效

  • 配置名稱:

    1. 檢視當前主機名稱資訊:

      hostname
      
    2. 修改當前主機名稱資訊:

      臨時修改: hostname oldboyedu
      永久修改(需要重啟生效): vim /etc/hostname
      

      也可以利用centos7特殊命令修改主機名(立即生效):

      hostnamectl set-hostname oldboyedu.com
      

      說明:即臨時修改好了主機名,又同時修改了主機名配置檔案。

2.1.4 重要檔案——解析對映檔案
  • 檔案資訊:

    /etc/hosts
    
  • 作用說明:

    用於設定DNS域名與IP地址對應關係。

2.1.5 重要檔案——磁碟掛載檔案
  • 檔案資訊:

    /etc/fstab
    
  • 作用說明:

    實現指定裝置檔案資訊,進行開機自動掛載。

2.1.6 重要檔案——開機載入指令碼
  • 檔案資訊:

    /etc/rc.local
    
  • 作用說明:

    實現系統啟動後,讀取檔案中的命令,從而實現一些操作隨系統啟動自動執行。

  • 使用方法:

    1、編輯開機自啟動指令碼
    	vim /etc/rc.local
    2、設定開機自啟動許可權
    	chmod +x /etc/rc.d/rc.local (centos7中需要執行此命令,才能使用此檔案)
    3、重啟系統
    
2.1.7 重要檔案——啟動級別檔案
  • 檔案資訊:

    centos6-/etc/inittab
    
    centos7-/usr/lib/systemd/system/runlevel*level
    
  • 檢視修改:

    centos6檢視方式: cat /etc/inittab
    centos6修改方式: vim /etc/inittab
    
    centos7檢視方式: systemctl get-default
    centos7設定方式: systemctl set-default [系統啟動級別]
    

    臨時設定:

    init [系統啟動級別編號]
    
  • 作用說明:

    • 設定啟動系統啟動級別:

      0: halt (Do NOT set initdefault to this)	關機
      1: Single user mode    單使用者模式(無法通過Xshell的方式使用)
      2: Multiuser, without NFS (The same as 3, if you do not have networking)	多使用者無網路模式,沒有NFS(類似級別3,如果你不需要網路時)
      3: Full multiuser mode		完全多使用者模式
      4: unused		未使用(待定)
      5: X11    圖形介面模式(桌面模式)
      6: reboot (Do NOT set initdefault to this)    重啟
      
    • 通過單使用者模式修改密碼:

      1、重啟虛擬機器
      2、在啟動選擇系統核心介面,按 e 鍵進入單使用者模式
      3、找到 linux16 開頭行,刪除 ro , 並且在 ro 處新增 rw init=/sysroot/bin/sh
      4、按 ctrl + x 進行系統重新引導
      5、執行 chroot /sysroot
      6、執行 passwd root
      7、執行 touch /.autorelabel
      8、重啟系統
      
2.1.8 重要檔案——變數載入檔案
  • 檔案資訊:

    檔案:

    國法(針對全體):
    /etc/profile
    /etc/bashrc
    
    家規(針對個體):
    ~/.bash_profile
    ~/.bash_rc
    

    資料夾:

    /etc/profile.d/
    
  • 作用說明:

    配置環境變數和別名檔案。

  • 使用方法:

    • 增加環境變數有兩種方式:

      1. 臨時新增:

        增加環境變數的格式:

        export PYTHON_HOME='D:/python'
        

        檢視本機的環境變數:

        echo $PYTHON_HOME 	 : 檢視某一個環境變數
        printenv    	   : 檢視所有的環境變數
        
      2. 永久新增:修改上述檔案或資料夾即可

  • 讀取環境變數的幾種情況

    前提:在每個檔案內都提前寫好相應的echo語句,profile.d資料夾內則新建一個指令碼,並賦予可執行許可權。

    下面是不同情況下,各檔案內語句的輸出情況排序:

    • 重啟

      /etc/profile.d  
      /etc/profile  
      /etc/bashrc  
      ~/.bashrc  
      ~/.bash_profile
      
    • 切換使用者

      /etc/profile.d  
      /etc/bashrc
      ~/.bashrc
      
    • 重新登入使用者

      1. su - [使用者名稱]
      /etc/profile.d  
      /etc/profile  
      /etc/bashrc  
      ~/.bashrc  
      ~/.bash_profile
      
      1. ssh root@虛擬機器ip
      /etc/profile.d  
      /etc/profile  
      /etc/bashrc  
      ~/.bashrc  
      ~/.bash_profile
      
    知識儲備(新增使用者與切換使用者):
        useradd [使用者名稱]
        su [使用者名稱]
    
2.1.9 重要檔案——登入提示檔案
  • 檔案資訊:

    /etc/motd
    

    作用說明:檔案中內容,會在使用者登入系統之後進行顯示。

  • 檔案資訊:

    /etc/issue
    /etc/issue.net
    

    作用說明:檔案中內容,會在使用者登入系統之前進行顯示。

2.2 重要目錄資料說明(目錄:/usr)

2.2.1 重要檔案——編譯安裝目錄
  • 檔案資訊:

    # 安裝第三方軟體的目錄
    /usr/local
    
  • 作用說明:編譯安裝軟體的預設目錄。

    Linux系統中安裝軟體方法:

    • rpm安裝軟體方法:rpm -ivh 軟體包名稱.rpm

      優點:單獨安裝軟體(半成品);

      缺點:不能解決依賴關係;

    • 編譯安裝軟體:./configure && make && make install

      優點:單獨定製安裝軟體(定製化);

      缺點:不能解決依賴關係;

    • yum安裝軟體方法:yum install 軟體包名稱

      優點:解決軟體依賴關係(成品);

      缺點:不能靈活定製化;

2.3 重要目錄資料說明(目錄:/var)

2.3.1 重要檔案——重要日誌檔案
  • 檔案資訊:

    /var/log/messages
    

    作用說明:軟體安裝執行以及系統執行異常日誌檔案。

  • 檔案資訊:

    /var/log/secure
    

    說明:此檔案具有日誌切割功能

    作用說明:系統使用者登入情況日誌資訊

    檔案使用:

    grep 'Failed' /var/log/secure
    

目錄資料說明(目錄:/proc)

2.4.1 重要檔案——重要資訊檔案
  • 檔案資訊:

    /proc/cpuinfo
    
  • 作用說明:

    用於檢視系統CPU資訊情況檔案。

  • 相關命令:

    lscpu
    
2.4.2 重要檔案——重要資訊檔案
  • 檔案資訊:

    /proc/meminfo
    
  • 作用說明:

    用於檢視系統記憶體資訊情況檔案。

  • 相關命令:

    free -h
    
2.4.3 重要檔案——重要資訊檔案
  • 檔案資訊:

    /proc/loadavg
    
  • 作用說明:

    用於檢視系統負載資訊情況檔案,用於衡量系統繁忙程度。

    負載:當前系統的所有程序佔用CPU的時間比。

  • 相關命令:

    w
    
2.4.4 重要檔案——重要資訊檔案
  • 檔案資訊:

    /proc/mounts
    
  • 作用說明:

    用於檢視系統掛載資訊情況檔案。

  • 相關命令:

    column -t  根據檔案型別進行對齊
    
    mount
    umount