1. 程式人生 > 實用技巧 >etc下重要配置檔案

etc下重要配置檔案

1./etc 服務的配置檔案

etc/重要目錄

​ /etc/sysconfig/network-scripts/ifcfg-eth0 #網絡卡
​ /hostname #主機名
​ /resolv.conf #配置DNS的IP地址,優先與網絡卡使用
​ /hosts #存放域名與IP地址的關係,本地域名解析
​ /issue #登入系統顯示的內容
​ /motd #登入系統後顯示的內容
​ /inittab #系統執行的等級
​ /fstab #開機自動掛載磁碟
​ /rc.local #開機自動執行命令或某些服務
​ /var #存放服務日誌的檔案

​ /profile #配置環境變數的檔案

1./etc/sysconfig/network-scripts/ifcfg-eth0 網絡卡

[root@oldboy-lnb ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 #檢視網絡卡
TYPE=Ethernet # 乙太網 快速乙太網
BOOTPROTO=none # 獲取IP地址的方式 1 none靜態 2 static 3.dhcp(路由器 三層交換機 192.168.1.2-192.168.1.254)
NAME=eth0 # 網絡卡的名稱 在系統中顯示的名稱
UUID=2ccba174-21d0-4cb4-810f-93b5e16d1768 # 裝置的唯一標識 系統會為每個硬體裝置 分配一個UUID作為裝置的唯一標識
DEVICE=eth0 # 網絡卡的硬體名稱
ONBOOT=yes # 自動啟動 自動啟用該網絡卡
IPADDR=10.0.0.200 # IP地址 類似家的地址 唯一的
PREFIX=24 # 子網掩碼 決定了當前網路中可用的主機數量 24--> 10.0.0.1-10.0.0.254 255.255.255.0
GATEWAY=10.0.0.254 # 閘道器 類似於 樓宇的大門 想要上網 必須配置閘道器 不配置閘道器只能在區域網內傳送資料
DNS1=223.5.5.5 # 域名解析協議 負責把域名解析成IP地址 什麼是域名 www.bidu.com www.sina.com

精簡網絡卡配置後重啟1.systemctl restart network 2.ifdown eth0&&ifup eth0

重啟網絡卡錯誤

錯誤資訊:Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

解決方法:在 /etc/sysconfig/network-scripts目錄下刪除掉別的ifcfg-xxx(只保留一個你網絡卡同名的文件)

​ 再把NetworkManager停用

NetworkManager停用命令 systemctl stop NetworkManager
systemctl disable NetworkManager

2./hostname 主機名

​ 如何檢視主機名:

​ hostname 或 cat /etc/hostname

​ 如何修改主機名:

​ 1.臨時修改 重啟失效:hostname 名字

​ 2.永久修改

​ 1)直接修改配置檔案,再重啟

​ vi /etc/hostname

​ reboot

​ 2)使用命令方式修改主機名 推薦使用

​ hostnamectl set-hostname 名字

yum源

下載阿里雲YUM源網站opsx.alibaba.com

檢視當前源:yum repolist

3.resolv.conf #配置DNS伺服器IP地址

​ 作用: 配置DNS IP地址 解析域名為IP地址

resolv.conf和網絡卡的dns配置區別

  1. resolv.conf 配置優先於網絡卡的配置
    resolv.conf 223.5.5.5 ----> 優先使用223.5.5.5解析域名 #連不上網可以先配置一個DNS上網
    網絡卡-----> 114.114.114.114
  2. 如果網絡卡中存在dns 重啟網絡卡會覆蓋掉resolv.conf中的配置
  3. 如果網絡卡中不配置DNS 不影響resolv.conf配置檔案
  4. nslookup www.baidu.com #解析域名,檢視當前使用的DNS IP地址

​ 找不到命令就安裝命令yum -y install nslookup #No package nslookup available找不到包

​ 找nslookup在那個包裡 yum provides nslookup,找到之後安裝包

DNS伺服器 共用的DNS:
223.5.5.5
223.5.5.6
114.114.114.114 電信
8.8.8.8 谷歌
202.106.0.20 聯通

4.hosts #存放著域名和IP地址的對應關係

​ 檔案作用: 本地域名解析 訪問域名的時候 先檢視hosts下有沒有對應的域名解析 測試環境使用

​ Windows hosts路徑:C:\Windows\System32\drivers\etc

5.issue #登入系統顯示的內容

​ issue.net #存放著登入後的系統版本號和核心版本

清空,以免暴露核心資訊,命令:> /etc/issue > /etc/issue.net

6.motd # 登入系統後顯示的內容 使用xshell連線後顯示的內容

​ 編輯:vi /etc/motd

7.inittab #系統的執行級別 當前預設級別3

0 #關機 配置檔案不能設定為0

1 # 單使用者模式 救援模式 密碼忘記了 # 如何進入單使用者模式修改密碼 作業!
2 # 多使用者模式 沒有NFS 網路檔案系統
3 # 完全多使用者模式 當前預設的級別 執行3級別
4 # 保留 未開發
5 # 桌面模式 desktop centos不安裝桌面 浪費資源
6 # 重啟

​ init 0 #關機 init 6 #重啟

​ 檢視當前執行級別runlevel

​ 設定執行級別systemctl set-default runlevel3.target #不要更改

8.fstab #開機自動掛載裝置

​ UUID=cd3ad562-0789-4384-b0fa / xfs defaults 0 0

​ 裝置的唯一標識(也可以寫裝置名) 目錄掛載點 檔案系統 掛載引數 磁碟是否備份 開機是否自檢

​ 0為關閉,1為開啟。

​ 如何讓cdrom開機自動掛載

​ 獲取磁碟的UUID命令:blkid #裝置名: /dev/cdrom /dev/sr0

​ 寫入vi /etc/fstab 開機自動掛載

​ /dev/cdrom /mnt iso9660 defaults 0 0

​ 檢查是否開機自動掛載df -h

9.rc.local #開機自動執行命令或者自動執行某個服務

​ 三種許可權:讀r 寫w 執行x

​ rc.local必須給執行許可權 chomd +m /etc/rc.d/rc.local #可通過ll /etc/rc.local看執行檔案位置

案例:
第一個步驟: 停止ssh服務 並設定為開機禁止啟動
systemctl disable sshd #disable禁止開機執行
reboot
第二步驟:
測試xshell是否能夠連線 無法連線
第三步: 測試 /etc/rc.local
vi /etc/rc.local
systemctl start sshd # 開機後執行這條命令

進行測試 發現無法連線
第四步: 給/etc/rc.d/rc.local 執行許可權
chmod +x  /etc/rc.d/rc.local 
第五步: 重啟 測試 正常連線

測試完後把sshd重新加入開機自動執行
[root@oldboyedu ~]# systemctl enable sshd	#enbale開機自動執行	

檢視服務的狀態: systemctl status sshd

10.var #存放服務的日誌檔案

​ var/log/messages #系統相關的一些日誌 記錄到messages

​ var/log/secure #登入系統相關的日誌 記錄到secure日誌

tail # 預設顯示檔案後10行
-n 顯示n行 n為數字 簡寫 tail -4
-f 時時顯示檔案內容的變化 檢視最新的日誌 簡寫 tailf
head # 預設顯示檔案前10行

​ 使用head和tail命令 取出檔案中的第7行:head -7 /var/log/messages |tail -1

11.profile #配置環境變數

​ 1.定義字串或者數字使用單引號或者雙引號(能解析變數命令)

​ 變數賦值:a="/etc/sysconfig/network-scripts/"

​ 檢視呼叫變數使用$:cd $a

​ 2.定義命令變數使用反引號``

​ time=date +%F-%H-%M-%S

​ echo $time

​ linux中所有在檔案中的命令 都屬於子shell, source 和 . /etc/profile執行檔案 相當於把子shell中的命令在父shell中執行

​ 3.shell執行命令的過程

​ 1)檢視命令的位置which cat命令

​ 2)當我們執行cat命令 會先去查詢PATH變數中的所有的目錄

​ 如果找到 則執行命令 如果找不到則返回命令找不到 command not found

​ 3)測試:把cat命令移動到/tmp目錄,執行cat命令 無法執行

​ 解決方法:1.將cat移回原來的目錄

​ 2.把新的位置增加到PATH變數中

​ #臨時生效:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp"

​ #永久生效:編輯vim /etc/profile 把/tmp目錄寫入PATH中後,再source /etc/profile即可