Linux核心檔案

Linux小菜鸟發表於2024-11-12

Linux常見核心檔案

檔案 說明
/etc/hostname 主機名
/etc/os-release 系統版本資訊

【1】、檢視linux基本資訊

  • 面試題:你拿到一個linux後一般做什麼? 檢查,最佳化
  • 主機名
  • ip
  • 系統版本
  • 核心版本
  • 。。。。

1、檢視與修改主機名

xu@xu-ubuntu:~$ hostnamectl 
 Static hostname: xu-ubuntu
       Icon name: computer-vm
         Chassis: vm
      Machine ID: 456b183040c3434ba98a1bc9697bf4c0
         Boot ID: f7077f6ab7f34a3c85cbcffb7e178214
  Virtualization: vmware
Operating System: Ubuntu 22.04.4 LTS              
          Kernel: Linux 5.15.0-94-generic
    Architecture: x86-64
 Hardware Vendor: VMware, Inc.
  Hardware Model: VMware Virtual Platform
  
[root@kylin-xu ~]# hostnamectl 
   Static hostname: kylin-xu
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 0750c8190cbf41ca87bc3b4853fe5114
           Boot ID: 36c9d52b995f4cb599b58459ef38aab0
    Virtualization: vmware
  Operating System: Kylin Linux Advanced Server V10 (Lance)
            Kernel: Linux 4.19.90-52.22.v2207.ky10.x86_64
      Architecture: x86-64

修改主機名

[root@kylin-xu ~]# hostnamectl set-hostname  kylin-xu

專門檢視主機名 hostname

[root@kylin-xu ~]# hostname
kylin-xu

2、ip

[root@kylin-xu ~]# ip a show ens33
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:b0:55:89 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.99/24 brd 192.168.121.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::3603:161e:150e:b73a/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

3、版本資訊

xu@xu-ubuntu:~$ cat /etc/os-release 
PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy


[root@kylin-xu ~]# cat /etc/os-release 
NAME="Kylin Linux Advanced Server"
VERSION="V10 (Lance)"
ID="kylin"
VERSION_ID="V10"
PRETTY_NAME="Kylin Linux Advanced Server V10 (Lance)"
ANSI_COLOR="0;31"

4、核心版本

[root@kylin-xu ~]# uname -a
Linux kylin-xu 4.19.90-52.22.v2207.ky10.x86_64 #1 SMP Tue Mar 14 12:19:10 CST 2023 x86_64 x86_64 x86_64 GNU/Linux
[root@kylin-xu ~]# uname -r
4.19.90-52.22.v2207.ky10.x86_64


xu@xu-ubuntu:~$ uname -a
Linux xu-ubuntu 5.15.0-94-generic #104-Ubuntu SMP Tue Jan 9 15:25:40 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
xu@xu-ubuntu:~$ uname -r
5.15.0-94-generic

【2】、 /etc/

/etc/下
/etc/sysconfig/network-scripts/ifcfg-ens33 紅帽系列網路卡配置檔案 ip地址,DNS,閘道器
/etc/resolv.conf DNS
/etc/hosts 第2階段搭建網站必會
ip與域名關係
/etc/profile 配置別名,環境變數
/etc/motd /etc/issue 歡迎資訊
/etc/rc.local 開機自動執行命令

1、網路卡配置檔案

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=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=ens33
UUID=e8a156c8-a8cb-4a4b-bac9-c063a7e40411
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.121.99
PREFIX=24
GATEWAY=192.168.121.2
DNS1=114.114.114.114
IPV6_PRIVACY=no

關鍵配置:

  1. 獲取IP方式 自動獲取還是固定
    BOOTPROTO=none 或static 固定IP
    BOOTPROTO=dhcp自動獲取IP

  2. IP地址 IPADDR 指定IP地址 固定的

  3. GATEWAY 閘道器 網路出入口 大樓的大門。 10.0.0.2 vmware虛擬路由器

  4. DNS 域名解析服務 域名-->ip
    DNS1=223.5.5.5
    DNS2=223.6.6.6

瞭解下Ubuntu的網路卡配置檔案

root@xu-ubuntu:~# cat /etc/netplan/00-installer-config.yaml 
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses:
      - 192.168.121.88/24
      nameservers:
        addresses:
        - 114.114.114.114
        search: []
      routes:
      - to: default
        via: 192.168.121.2
  version: 2

2、/etc/resolv.conf

[root@kylin-xu ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 114.114.114.114

配置DNS

dns配置 網路卡 resolv.conf
共同點 配置DNS 配置DNS
區別 網路卡DNS重啟網路卡生效 實時生效,會被網路卡配置檔案覆蓋(網路卡重啟之後)

3、/etc/hosts

域名(名字) 與ip對應關係 ,相當於是本地DNS(當前機器)

透過主機名訪問對應的主機。

Windows hosts檔案

C:\Windows\System32\drivers\etc\hosts

4、 /etc/motd /etc/issue

說明 說明
/etc/motd 使用者登入後輸出資訊
/etc/issue 使用者登入之前輸出資訊 清空即可

https://www.yuque.com/lidao996/sre/vw00b434kl1ygl95?singleDoc# 《老男孩教育-/etc/motd內容參考》

5、/etc/profile、/etc/rc.local

/etc/ 說明
/etc/profile 配置系統環境變數,別名
/etc/rc.local 開機自啟動,開機後自動執行服務,命令。

(1)、/etc/profile

  • 環境變數:系統定義好,供我們使用
  • PATH環境變數:系統中命令的位置。
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
常見路徑

export  PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
  • 故障案例:
    • 一不小心,清空了PATH變數內容
  • 解決方案:
    • 方案🅰️執行export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin,繼續操作即可
    • 方案🅱️ 使用命令的絕對路徑 比如 /bin/ls , /bin/vi , /bin/vim

小結:

  • /etc/profile配置環境變數
  • PATH作用,存放命令的位置.

(2)、/etc/rc.local

  • 配置開機自啟動
    • 這是個軟連結,對應的原始檔案叫:/etc/rc.d/rc.local
    • ubt/debian中這個檔案不存在,手動建立 /etc/rc.local
  • 這個檔案使用前對原始檔 增加執行許可權 chmod +x /etc/rc.d/rc.local /etc/rc.local (講解許可權專題再說)

【3】、/proc

  • process 程序 放系統的程序資訊,核心資訊,系統資訊。
  • 不佔用磁碟空間
/proc/ 說明
/proc/cpuinfo cpu資訊
/proc/meminfo mem記憶體(memory) 執行記憶體
/proc/loadavg 系統負載資訊(衡量系統繁忙程度指標)
/proc/mounts 系統磁碟掛載資訊(磁碟專題)
.....

1、cpu資訊

cpu與核心的關係

graph LR subgraph CPU0 core1 core2 core3 core4 end subgraph CPU1 core5 core6 end
# processor	: 0   #第1個核心
# physical id: 0   #第1個cpu
root@xu-ecs:~# cat /proc/cpuinfo | grep processor   # 有兩個cpu
processor       : 0
processor       : 1

root@xu-ecs:~# cat /proc/cpuinfo | grep physical  # 1核心
physical id     : 0
address sizes   : 46 bits physical, 48 bits virtual
physical id     : 0
address sizes   : 46 bits physical, 48 bits virtual

lscpu

root@xu-ecs:~# lscpu
CPU(s):                   2   # cpu數量
  On-line CPU(s) list:    0,1
Model name:             Intel(R) Xeon(R) Platinum  intel 至強鉑金系列
Virtualization features:   # 虛擬化 KVM技術
  Hypervisor vendor:      KVM
  Virtualization type:    full

2、記憶體資訊

[root@oldboyedu-hard-stone ~]# free  -h 
              total        used        free      shared  buff/cache   available
Mem:          1.9Gi       224Mi       547Mi       8.0Mi       1.2Gi       1.5Gi
Swap:         2.0Gi          0B       2.0Gi
#linux特點 把檔案快取到記憶體中,加速下次使用.
#快取到buff/cache 記憶體中的區域 
  • Swap: 交換分割槽(windows虛擬記憶體)

    • 記憶體不足的時候臨時充當記憶體.
    • 磁碟上的空間。
  • (麒麟系統) kdump功能:系統異常當機,系統程序資訊匯出儲存到檔案中。這個功能會佔用一部分記憶體,會出現我們給了 2G 記憶體但是真實存在的不足 2G

#1.關閉
systemctl  disable  --now kdump
#2.檢查  
systemctl  status   kdump
#3.修改檔案
vim /boot/grub2/grub.cfg 
搜尋: crashkernel=1024M,high 行   
crashkernel=1024M,high 刪除即可

#4.儲存退出後檢查結果
grep  'crashkernel='   /boot/grub2/grub.cfg  #沒有輸出就OK了。

#5.重啟linux
reboot

相關文章