1、目錄結構 一切從根"/"開始,根"/"是所有目錄的頂點 2、磁碟分區與目錄的關係 Windows里分區和目錄一一對應 Linux里的目錄和分區是分離的。 不同的磁碟使用字母表示 不同分區是用數字表示 IDE磁碟: 不同磁碟表示方法 如:hda1,hda2..... 不同分區表示方法 如:hda1 ...
1、目錄結構
一切從根"/"開始,根"/"是所有目錄的頂點
2、磁碟分區與目錄的關係
- Windows里分區和目錄一一對應
- Linux里的目錄和分區是分離的。
- 不同的磁碟使用字母表示
- 不同分區是用數字表示
- IDE磁碟:
- 不同磁碟表示方法
- 如:hda1,hda2.....
- 不同分區表示方法
- 如:hda1,hda2.....
- 不同磁碟表示方法
- SAS/SATA/SCSI/SSD磁碟
- 不同磁碟表示方法
- sda,sdb.....
- 不同分區表示方法
- sda1,sda2....
- 不同磁碟表示方法
- IDE磁碟:
- Linux里的分區預設是不能訪問的,監獄,黑盒訪問不了。
- 有一個功能把目錄/etc/ 與/dev/sda1進行了鏈接,稱之為掛載
2.1、掛載
為分區找到一個入口,為分區開一個門或者窗戶。
2.2、掛載點
分區入口的目錄名,/etc就是/dev/sda1的掛在點
2.3、掛載命令及其操作
-
mount 掛載
-
用法: mount 設備名稱 掛載目錄
[root@oldboyedu ~]# ls /mnt/ hgfs [root@oldboyedu ~]# cd /dev/cdrom -bash: cd: /dev/cdrom: Not a directory #-bash:cd:/dev/cdrom:不是目錄 [root@oldboyedu ~]# mount /dev/cdrom /mnt/ mount: /dev/sr0 is write-protected, mounting read-only #mount:/dev/sr0是防寫的,掛載是只讀的 [root@oldboyedu ~]# ll /mnt/ total 694 -rw-rw-r--. 1 root root 14 Sep 10 2019 CentOS_BuildTag drwxr-xr-x. 3 root root 2048 Sep 6 2019 EFI -rw-rw-r--. 1 root root 227 Aug 30 2017 EULA -rw-rw-r--. 1 root root 18009 Dec 10 2015 GPL drwxr-xr-x. 3 root root 2048 Sep 10 2019 images drwxr-xr-x. 2 root root 2048 Sep 10 2019 isolinux drwxr-xr-x. 2 root root 2048 Sep 6 2019 LiveOS drwxrwxr-x. 2 root root 671744 Sep 12 2019 Packages drwxrwxr-x. 2 root root 4096 Sep 12 2019 repodata -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Sep 12 2019 TRANS.TBL
-
-
卸載:umount
-
用法:需要退到掛載點上一級目錄,輸入 umount 目錄
[root@oldboyedu ~]# ll /mnt/ total 694 -rw-rw-r--. 1 root root 14 Sep 10 2019 CentOS_BuildTag drwxr-xr-x. 3 root root 2048 Sep 6 2019 EFI -rw-rw-r--. 1 root root 227 Aug 30 2017 EULA -rw-rw-r--. 1 root root 18009 Dec 10 2015 GPL drwxr-xr-x. 3 root root 2048 Sep 10 2019 images drwxr-xr-x. 2 root root 2048 Sep 10 2019 isolinux drwxr-xr-x. 2 root root 2048 Sep 6 2019 LiveOS drwxrwxr-x. 2 root root 671744 Sep 12 2019 Packages drwxrwxr-x. 2 root root 4096 Sep 12 2019 repodata -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Sep 12 2019 TRANS.TBL [root@oldboyedu ~]# cd /mnt/ [root@oldboyedu /mnt]# umount /mut umount: /mut: mountpoint not found [root@oldboyedu /mnt]# umount /mnt umount: /mnt: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) #umount:/mnt:target正忙。(在某些情況下,有關使用該設備由lsof(8)或fuser(1)找到 [root@oldboyedu /mnt]# cd .. [root@oldboyedu /]# umount /mnt [root@oldboyedu /]# ll /mnt/ total 0 drwxr-xr-x. 2 root root 6 Apr 4 18:22 hgfs
-
-
查看掛載
[root@oldboyedu ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 12M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda3 19G 2.0G 18G 11% / /dev/sda1 253M 161M 93M 64% /boot tmpfs 378M 0 378M 0% /run/user/0 # 設備名 總大小 使用大小 剩餘 使用% 掛載點
2.4、FHS目錄標準化
-
根目錄“/”掛載在第一塊盤上,系統相關的內容
-
"/usr"目錄掛載在第二塊盤上 用戶相關的內容
[root@oldboyedu ~]# ls -ld /bin /lib /sbin /tmp lrwxrwxrwx. 1 root root 7 Apr 4 18:05 /bin -> usr/bin lrwxrwxrwx. 1 root root 7 Apr 4 18:05 /lib -> usr/lib lrwxrwxrwx. 1 root root 8 Apr 4 18:05 /sbin -> usr/sbin drwxrwxrwt. 11 root root 4096 Apr 6 17:30 /tmp [root@oldboyedu ~]# ls -ld /usr/bin /usr/lib /usr/sbin /usr/tmp dr-xr-xr-x. 2 root root 28672 Apr 4 18:23 /usr/bin dr-xr-xr-x. 29 root root 4096 Apr 4 18:06 /usr/lib dr-xr-xr-x. 2 root root 12288 Apr 4 18:23 /usr/sbin lrwxrwxrwx. 1 root root 10 Apr 4 18:05 /usr/tmp -> ../var/tmp
3、linux 的目錄結構講解
3.1、Linux目錄定義
- 標有*****是重點記憶
[root@oldboyedu /]# tree -L 1 /
/
├── bin -> usr/bin #binaies二進位,存放命令相關 *****
├── boot #引導分區,系統內核及引導程式 *****
├── dev #device,設備分區所在目錄 *****
├── etc #二進位軟體包配置路徑
├── home #普通用戶的家目錄 *****
├── lib -> usr/lib #32位庫文件
├── lib64 -> usr/lib64 #64位庫文件
├── media #媒體
├── mnt #臨時掛載點 *****
├── opt #option 可選擇軟體包(自定義)
├── proc #虛擬的文件系統,存放進程和內核信息的目錄 *****
├── root #管理員的家目錄 *****
├── run #正在運行程式相關信息文件
├── sbin -> usr/sbin #system binaies 管理員命令所在目錄 *****
├── srv #為用戶提供服務的數據所在的目錄
├── sys #虛擬的文件系統,存放進程和內核信息的目錄
├── tmp #臨時文件坐在目錄 *****
├── usr #系統軟體和用戶相關程式所在目錄,第二層次目錄 *****
└── var #可變化的數據 *****
4、/etc 系統初始化及設置相關文件
4.1、網卡的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0:用於配製上網的文件
-
網卡名稱
- CentOS7:ems33
- CentOS7版本以前:eth0 為第一塊網卡 eth1為第二塊網卡
-
圖形化配置命令:
- CentOS7:nmtui
- CentOS6:setup
-
配置文件內容
[root@oldboyedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 TYPE=Ethernet #網卡類型 PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none #啟用地址協議 –static:靜態協議 –bootp:協議 –dhcp:協議 -none:不指定協議[最好指定] DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0 UUID=a183d342-6fb0-4adc-8aba-7dced2f24643 DEVICE=eth0 #網卡介面名稱 ONBOOT=yes #系統啟動時是否激活 yes|no IPADDR=10.0.0.200 #網卡IP地址 PREFIX=24 #子網掩碼 24=255.255.255.0 GATEWAY=10.0.0.254 #網卡網關地址 DNS1=112.100.100.100 #網卡DNS地址 IPV6_PRIVACY=no
4.2、/etc/resolv.conf Linux系統DNS客戶端配置文件
-
DNS Domain Name System 功能變數名稱系統
- 作用:把瀏覽器里輸入的功能變數名稱,解析為伺服器的IP地址,然後才能找到伺服器,提供內容
- 很久以前上網 直接IP0.0.0.200 記不住。。。。
- 最後發明瞭DNS,公共解析伺服器資源誰想解析誰就請求它的IP
- 重要功能:把瀏覽器里輸入的功能變數名稱,解析為伺服器的IP地址,還有很多別的功能。
- DNS的/etc/resolv.conf配置文件已經基本廢棄了,由網卡配置文件里DNS1=112.100.100.100替代
- 只要在網卡配置裡面設置,自動更新到/etc/resolv.conf里
- 但是如果先更新/etc/resolv.conf文件,網卡如果從前就會自動清除
[root@oldboyedu ~]# echo "nameserver 1.1.1.1" >> /etc/resolv.conf [root@oldboyedu ~]# cat /etc/resolv.conf # Generated by NetworkManager nameserver 112.100.100.100 nameserver 1.1.1.1 [root@oldboyedu ~]# systemctl restart network [root@oldboyedu ~]# cat /etc/resolv.conf # Generated by NetworkManager nameserver 112.100.100.100
4.3/etc/hosts 系統本地的DNS解析文件
10.0.0.200 www.oldboyedu.com
10.0.0.201 www.baidu.com
每個人的電腦必須要有一個HOSTS做解析。
- 瀏覽器再輸入www.baidu.com時候,優先找hosts解析。
- 本地DNS配置文件hosts,優先於公網的DNS解析。
- 區域網開發人員測試。
4.4/etc/fstab:配置開機設備自動掛載的文件
-
設備要掛在才能用,我們掛載過根 /boot麽?
- 系統已經在開機的時候幫我們自動掛載了我們安裝系統時的分區
-
自動掛載的文件就是/etc/fstab
-
比如插入一個U盤,希望下次開機能夠直接訪問。就需要在/etc/fstab配置
[root@oldboyedu ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Sat Apr 4 18:04:58 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=63ff48bb-a38e-4a8a-afad-f24d25c7e442 / xfs defaults 0 0 UUID=00efac36-5fb3-4fcd-9249-a6210a52b5f0 /boot xfs defaults 0 0 UUID=9aa96766-7dd9-4fd4-979c-30ac56a20d57 swap swap defaults 0 0 設備名(UUID) 掛載點 文件系統類型 掛載參數 是否要備份 是否開機檢查磁碟
-
查看設備UUID
-
blkid
[root@oldboyedu ~]# blkid /dev/sda3: UUID="63ff48bb-a38e-4a8a-afad-f24d25c7e442" TYPE="xfs" /dev/sda1: UUID="00efac36-5fb3-4fcd-9249-a6210a52b5f0" TYPE="xfs" /dev/sda2: UUID="9aa96766-7dd9-4fd4-979c-30ac56a20d57" TYPE="swap" /dev/sr0: UUID="2019-09-11-18-50-31-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
-
-
-
設置自動掛載
[root@oldboyedu ~]# cat /etc/fstab # # /etc/fstab # Created by anaconda on Sat Apr 4 18:04:58 2020 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=63ff48bb-a38e-4a8a-afad-f24d25c7e442 / xfs defaults 0 0 UUID=00efac36-5fb3-4fcd-9249-a6210a52b5f0 /boot xfs defaults 0 0 UUID=9aa96766-7dd9-4fd4-979c-30ac56a20d57 swap swap defaults 0 0 UUID="2019-09-11-18-50-31-00" /media iso9660 defaults 0 0
重啟伺服器查看目錄(線上環境不能重啟伺服器)
[root@oldboyedu ~]# mount /dev/cdrom /media/ #手動掛載到自動掛載的目錄,切記不能重啟 mount: /dev/sr0 is write-protected, mounting read-only [root@oldboyedu ~]# ll /media/ total 694 -rw-rw-r--. 1 root root 14 Sep 10 2019 CentOS_BuildTag drwxr-xr-x. 3 root root 2048 Sep 6 2019 EFI -rw-rw-r--. 1 root root 227 Aug 30 2017 EULA -rw-rw-r--. 1 root root 18009 Dec 10 2015 GPL drwxr-xr-x. 3 root root 2048 Sep 10 2019 images drwxr-xr-x. 2 root root 2048 Sep 10 2019 isolinux drwxr-xr-x. 2 root root 2048 Sep 6 2019 LiveOS drwxrwxr-x. 2 root root 671744 Sep 12 2019 Packages drwxrwxr-x. 2 root root 4096 Sep 12 2019 repodata -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Sep 12 2019 TRANS.TBL
Connecting to 10.0.0.200:22... Connection established. To escape to local shell, press 'Ctrl+Alt+]'. WARNING! The remote SSH server rejected X11 forwarding request. Last login: Mon Apr 6 17:58:06 2020 from 10.0.0.1 [root@oldboyedu ~]# ll /media/ total 694 -rw-rw-r--. 1 root root 14 Sep 10 2019 CentOS_BuildTag drwxr-xr-x. 3 root root 2048 Sep 6 2019 EFI -rw-rw-r--. 1 root root 227 Aug 30 2017 EULA -rw-rw-r--. 1 root root 18009 Dec 10 2015 GPL drwxr-xr-x. 3 root root 2048 Sep 10 2019 images drwxr-xr-x. 2 root root 2048 Sep 10 2019 isolinux drwxr-xr-x. 2 root root 2048 Sep 6 2019 LiveOS drwxrwxr-x. 2 root root 671744 Sep 12 2019 Packages drwxrwxr-x. 2 root root 4096 Sep 12 2019 repodata -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r--. 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Sep 12 2019 TRANS.TBL
4.5、/etc/issue和/etc/issue.net:本地視窗顯示內核參數文件
清除這倆文件內容
[root@oldboyedu ~]# > /etc/issue
[root@oldboyedu ~]# > /etc/issue.net
4.6、/etc/redhat-release : 查看系統版本
[root@oldboyedu ~]# uname -r
3.10.0-1062.18.1.el7.x86_64
[root@oldboyedu ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[root@oldboyedu ~]# cat /etc/os-release #這個文件比較詳細也比較複雜
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
4.7、/etc/sysctl.conf:Linux內核參數設置文件
Linux系統內核的配置和優化的文件
4.8、/etc/init.d:軟體啟動程式所在目錄(CentOS7以前)
4.9、/etc/initab:設置開機運行級別以及啟動相應級彆腳本的文件(CentOS7以前)
[root@oldboyedu ~]# cat /etc/inittab
# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To view current default target, run:
# systemctl get-default
#
# To set a default target, run:
# systemctl set-default TARGET.target
#
-
Linux系統運行級別的說明:
運行級別 級別所明 0 關機 1 單用戶模式(用來找回管理員密碼) 2 沒有NFS,多用戶模式 3 命令行模式 文本模式 4 未使用 5 圖形化模式 桌面模式 6 重啟 -
查看運行級別
-
CentOS6:
-
runlevel
[root@oldboyedu ~]# runlevel N 3
-
-
CentOS7:
-
who -r
[root@oldboyedu ~]# who -r run-level 3 2020-04-06 18:02
-
systemctl get-default
[root@oldboyedu ~]# systemctl get-default multi-user.target
-
-
-
CentOS7運行級別
[root@oldboyedu ~]# ll /usr/lib/systemd/system | grep level | grep -v wants lrwxrwxrwx. 1 root root 15 Apr 4 18:22 runlevel0.target -> poweroff.target lrwxrwxrwx. 1 root root 13 Apr 4 18:22 runlevel1.target -> rescue.target lrwxrwxrwx. 1 root root 17 Apr 4 18:22 runlevel2.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Apr 4 18:22 runlevel3.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Apr 4 18:22 runlevel4.target -> multi-user.target lrwxrwxrwx. 1 root root 16 Apr 4 18:22 runlevel5.target -> graphical.target lrwxrwxrwx. 1 root root 13 Apr 4 18:22 runlevel6.target -> reboot.target -rw-r--r--. 1 root root 761 Mar 18 07:46 systemd-update-utmp-runlevel.service
-
切換運行級別
[root@oldboyedu ~]# systemctl set-default graphical.target Removed symlink /etc/systemd/system/default.target. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target. [root@oldboyedu ~]# systemctl get-default graphical.target #圖形化 [root@oldboyedu ~]# systemctl set-default multi-user.target Removed symlink /etc/systemd/system/default.target. Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target. [root@oldboyedu ~]# systemctl get-default multi-user.target #文本
-