1. Linux系統(tǒng)目錄結(jié)構(gòu)詳解
[root@template /]# tree -L 1
.
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
目錄 | 說(shuō)明 |
---|---|
/bin | 常用的二進(jìn)制命令所在的目錄蝗蛙,是/usr/bin目錄的軟鏈接 |
/boot | Linux內(nèi)核及系統(tǒng)引導(dǎo)程序所需的文件目錄 安裝系統(tǒng)分區(qū)時(shí)一般就要單獨(dú)分一個(gè)boot分區(qū) 該分區(qū)的數(shù)據(jù)增長(zhǎng)量很小,/boot就是引導(dǎo)分區(qū)的掛載點(diǎn) |
/dev | 設(shè)備文件目錄纽绍,比如聲卡、磁盤础芍、光驅(qū)等 |
/etc | 使用yum或者RPM方式安裝的軟件的默認(rèn)配置目錄 CentOS6存放服務(wù)啟停命令的目錄旗闽,主要存放在/etc/init.d目錄下 例如/etc/init.d/sshd |
/home | 普通用戶的家目錄 |
/lib /lib64 |
啟動(dòng)系統(tǒng)和運(yùn)行命令所需的共享庫(kù)文件和內(nèi)核模塊存放的目錄 |
/media | 可移除媒體的掛載點(diǎn),例如鲸郊,CD-ROM和U盤等的掛載,不常使用 |
/mnt | 文件系統(tǒng)的臨時(shí)掛載點(diǎn)货邓,使用頻率較高 |
/opt | 用于安裝額外的應(yīng)用軟件包 |
/proc | 操作系統(tǒng)運(yùn)行時(shí)秆撮,進(jìn)程信息及內(nèi)核信息(比如CPU、硬盤分區(qū)换况、內(nèi)存信息等)存放的目錄 /proc不是真正的文件系統(tǒng)职辨,而是虛擬文件系統(tǒng)的掛載點(diǎn),此目錄下的文件其實(shí)都在內(nèi)存中 /proc/loadavg:系統(tǒng)負(fù)載信息文件 /proc/meminfo:系統(tǒng)內(nèi)存使用信息文件 /proc/cpuinfo:系統(tǒng)CPU使用信息文件 /proc/mounts:系統(tǒng)掛載信息 |
/root | 超級(jí)權(quán)限用戶root的家目錄 |
/sbin | 超級(jí)用戶可執(zhí)行命令存放的目錄戈二,大多都是系統(tǒng)管理命令舒裤,用/usr/local/sbin目錄類似 |
/tmp | 臨時(shí)文件目錄,一些程序運(yùn)行期間產(chǎn)生的臨時(shí)文件默認(rèn)存放在這里觉吭,/var/tmp目錄有類似的作用 |
/usr | 系統(tǒng)存放程序的目錄腾供,例如Linux發(fā)行版官方提供的軟件包大多安裝在這里 /usr/local:使用源碼編譯方式安裝軟件時(shí)的默認(rèn)安裝目錄 /usr/src:程序源碼目錄 |
/var | 經(jīng)常變化的文件存放的目錄 /var/log:系統(tǒng)日志存放目錄 /var/www:Apache服務(wù)器站點(diǎn)目錄 /var/lib:存放一些庫(kù)文件 |
/srv | 存放為用戶提供服務(wù)的數(shù)據(jù)所在的目錄,例如www鲜滩、ftp數(shù)據(jù) |
/sys | 與/proc類似台腥,也是虛擬的文件系統(tǒng),用于存放內(nèi)核等信息的目錄绒北,包含內(nèi)核、總線察署、設(shè)備闷游、模塊組、電源選項(xiàng)等 |
/lost+found | 在ext3文件系統(tǒng)中贴汪,當(dāng)系統(tǒng)發(fā)生意外崩潰或者機(jī)器意外關(guān)機(jī)時(shí)脐往,會(huì)在這里產(chǎn)生一些文件碎片 系統(tǒng)在開機(jī)的過(guò)程中,fsck工具會(huì)檢查這個(gè)目錄扳埂,并修復(fù)已經(jīng)損壞的文件系統(tǒng) 當(dāng)系統(tǒng)發(fā)生問(wèn)題時(shí)业簿,可能有文件被移動(dòng)到這個(gè)目錄,這些文件可能需要手動(dòng)修復(fù) |
2. Linux重要的系統(tǒng)配置文件
2.1 /etc/sysconfig/network-scripts/ifcfg-eth0
作用:網(wǎng)卡配置文件
TYPE=Ethernet # 網(wǎng)絡(luò)類型阳懂,現(xiàn)在都是Ethernet梅尤,以太網(wǎng)柜思,還有FastEthernet等類型
PROXY_METHOD=none
BROWSER_ONLY=no
# 主機(jī)獲取IP的方式
# none/static:用戶手動(dòng)設(shè)置IP
# dhcp:系統(tǒng)自動(dòng)獲取
BOOTPROTO=none
DEFROUTE=yes # 使用默認(rèn)路由
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0 # 第一塊網(wǎng)卡的邏輯設(shè)備名,第二塊為eth1
## UUID:通用唯一識(shí)別碼巷燥,用于對(duì)一些硬件設(shè)備做唯一標(biāo)識(shí)赡盘,使用VMware安裝的虛擬機(jī)可以刪除
UUID=8asd128-jhasd12nnd-197hjda2j1mn2
DEVICE=eth0 # 第一塊網(wǎng)卡的物理設(shè)備名,第二塊為eth1
ONBOOT=yes # 這個(gè)地方必須為yes缰揪,才能保證下次開機(jī)啟動(dòng)時(shí)自動(dòng)激活網(wǎng)卡設(shè)備
IPADDR=10.0.0.10 # 靜態(tài)配置的IP地址
PREFIX=24 # 子網(wǎng)掩碼位數(shù)陨享,掩碼作用:定義此網(wǎng)絡(luò)中可以有多少主機(jī)
GATEWAY=10.0.0.2 # 局域網(wǎng)網(wǎng)關(guān)地址,網(wǎng)關(guān):一個(gè)網(wǎng)絡(luò)到另一個(gè)網(wǎng)絡(luò)的必經(jīng)之路
DNS1=223.5.5.5 # 主NDS钝腺,優(yōu)先于/etc/resolv.conf文件中的配置
IPV6_PRIVACY=no
相關(guān)命令:
ifup eth0 # 啟動(dòng)網(wǎng)卡
ifdown eth0 # 禁用網(wǎng)卡
ifdown eth0 && ifup etho # 重啟網(wǎng)卡
systemctl start network # 啟動(dòng)網(wǎng)絡(luò)服務(wù)
systemctl stop network # 停止網(wǎng)絡(luò)服務(wù)
systemctl restart network # 重啟網(wǎng)絡(luò)服務(wù)
systemctl status network # 查看網(wǎng)絡(luò)服務(wù)狀態(tài)
# 重啟網(wǎng)絡(luò)服務(wù)后配置還是無(wú)法生效抛姑,可以關(guān)閉NetworkManager再試
systemctl stop NetworkManager
systemctl disable NetworkManager
2.2 /etc/resolv.conf
作用:DNS(Domain Name System)配置文件,DNS主要負(fù)責(zé)將網(wǎng)站域名解析為對(duì)應(yīng)的IP地址艳狐,從域名到IP的解析過(guò)程定硝,稱作A記錄,即Address Record
一般只在網(wǎng)卡配置文件中配置DNS即可僵驰,這個(gè)文件的功能逐漸變?nèi)跖缯R姷墓肈NS如下:
nameserver 223.5.5.5
nameserver 223.6.6.6
nameserver 114.114.114.114
nameserver 114.114.115.115
nameserver 8.8.8.8
nameserver 202.106.0.20
2.3 /etc/hostname
作用:主機(jī)名配置文件,CentOS6的主機(jī)名配置文件為/etc/sysconfig/network
臨時(shí)修改:
# 主機(jī)名修改為www
hostname www
永久修改:
hostnamectl set-hostname www
修改完之后蒜茴,斷開遠(yuǎn)程連接星爪,再連接就會(huì)生效
Tips:在CentOS6中,主機(jī)名配置文件是/etc/sysconfig/network
2.4 /etc/hosts
作用:設(shè)置用戶IP與域名的對(duì)應(yīng)解析表粉私,相當(dāng)于本地或者局域網(wǎng)內(nèi)的DNS解析文件
主機(jī)名的命名必須規(guī)范顽腾,要反應(yīng)出這臺(tái)機(jī)器的明確用途,例如:
# IPV4本地名稱解析記錄
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
# IPV6本地名稱解析記錄
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.38.18.23 realtime-search.config-vip.taobao.com
172.26.58.40 vafd.china.alibaba.com
2.5 /etc/fstab
作用:配置開機(jī)設(shè)備自動(dòng)掛載诺核,Linux設(shè)備必須要掛載才能使用抄肖,剛開機(jī)的時(shí)候,磁盤都是沒(méi)有掛載的窖杀,系統(tǒng)開機(jī)后會(huì)加載/etc/fstab
文件漓摩,實(shí)現(xiàn)對(duì)系統(tǒng)分區(qū)的自動(dòng)掛載
相關(guān)命令:
# 查看設(shè)備id
[root@www ~]# blkid
/dev/sda1: UUID="44704023-2d9a-475b-827f-bfa9dea8140b" TYPE="xfs"
/dev/sda2: UUID="3188f9cb-ac2b-42c0-b676-1f8c7bc8a030" TYPE="swap"
/dev/sda3: UUID="a6089313-afa0-4a71-b342-207a5cce759c" TYPE="xfs"
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
# 查看磁盤使用情況
[root@www ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 17G 1.6G 16G 10% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.7M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda1 1014M 127M 888M 13% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.3G 4.3G 0 100% /mnt
2.6 /etc/rc.local
作用:是用于存放開機(jī)自啟動(dòng)程序命令的文件,Linux開機(jī)時(shí)會(huì)將etc/rc.local
文件中的內(nèi)容全部執(zhí)行一遍入客,所以用戶自己開發(fā)的程序管毙,如果想要讓其開機(jī)就執(zhí)行,就可以執(zhí)行命令寫到這個(gè)文件中
注意:
- 此文件默認(rèn)沒(méi)有執(zhí)行權(quán)限桌硫,需要手動(dòng)修改:
chmod 755 /etc/rc.local
- 此文件是一個(gè)軟鏈接夭咬,真實(shí)文件是
/etc/rc.d/rc.local
2.7 /etc/inittab
作用:設(shè)定系統(tǒng)啟動(dòng)時(shí)init進(jìn)程將系統(tǒng)設(shè)置成什么運(yùn)行級(jí)別
-
CentOS6以前的
/etc/inittab
這個(gè)文件是一個(gè)指導(dǎo)系統(tǒng)啟動(dòng)的重要文件,其中可以設(shè)置系統(tǒng)運(yùn)行級(jí)別铆隘、加載系統(tǒng)初始化腳本卓舵、加載各個(gè)運(yùn)行級(jí)別的對(duì)應(yīng)腳本、禁止三鍵重啟膀钠、加載不同級(jí)別的TTY以及桌面設(shè)置等信息掏湾。
CentOS6的
/etc/inittab
文件解讀
# 此文件只能用來(lái)設(shè)置默認(rèn)的系統(tǒng)運(yùn)行級(jí)別
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# 系統(tǒng)初始化轉(zhuǎn)到/etc/init/rcS.conf
# System initialization is started by /etc/init/rcS.conf
#
# 單個(gè)運(yùn)行級(jí)別轉(zhuǎn)到/etc/init/rc.conf
# Individual runlevels are started by /etc/init/rc.conf
#
# 禁止重啟的配置轉(zhuǎn)到/etc/init/control-alt-delete.conf
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# 終端的配置也轉(zhuǎn)移了
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this) # 關(guān)機(jī)(不要將系統(tǒng)運(yùn)行級(jí)別設(shè)置為0)
# 1 - Single user mode # 單用戶模式裹虫,忘記root密碼時(shí),使用此模式找回
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 沒(méi)有NFS的多用戶模式
# 3 - Full multiuser mode # 多用戶模式忘巧,當(dāng)沒(méi)有網(wǎng)絡(luò)的時(shí)候恒界,3 = 2
# 4 - unused # 未使用
# 5 - X11 # 圖形化模式、桌面模式
# 6 - reboot (Do NOT set initdefault to this) # 系統(tǒng)重啟砚嘴,不要將系統(tǒng)運(yùn)行級(jí)別設(shè)置為6
#
# 系統(tǒng)啟動(dòng)時(shí)十酣,設(shè)置為固定的的運(yùn)行級(jí)別
id:5:initdefault:
- CentOS7的
/etc/inittab
文件解讀
# 當(dāng)使用systemd方式啟動(dòng)系統(tǒng)的時(shí)候,此文件就不再使用了
# inittab is no longer used when using systemd.
#
# 在此文件中添加任何配置都不起作用了
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# 禁止三鍵啟動(dòng)功能在/usr/lib/systemd/system/ctrl-alt-del.target中
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target
#
# systemd啟動(dòng)方式使用targets际长,而不是runlevel耸采,默認(rèn)情況下有兩個(gè)主要的targets
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# 多用戶文本模式,3級(jí)別
# multi-user.target: analogous to runlevel 3
# 圖形模式工育,5級(jí)別
# graphical.target: analogous to runlevel 5
#
# 使用systemctl get-default查看當(dāng)前默認(rèn)的運(yùn)行級(jí)別
# To view current default target, run:
# systemctl get-default
#
# 使用systemctl set-default TARGET.target來(lái)修改系統(tǒng)默認(rèn)運(yùn)行級(jí)別
# 例如systemctl set-default graphical.target
# 對(duì)應(yīng)的級(jí)別如下
# 0 poweroff.target
# 1 rescue.target
# 2 multi-user.target
# 3 multi-user.target
# 4 multi-user.target
# 5 graphical.target
# 6 reboot.target
# To set a default target, run:
# systemctl set-default TARGET.target
#
- 查看系統(tǒng)運(yùn)行級(jí)別
[root@www ~]# runlevel
N 3
[root@www ~]# systemctl get-default
multi-user.target
- 臨時(shí)修改系統(tǒng)運(yùn)行級(jí)別
init 0 # 執(zhí)行此命令會(huì)立即關(guān)機(jī)
init 6 # 執(zhí)行此命令會(huì)立即重啟
-
永久修改系統(tǒng)運(yùn)行級(jí)別
CentOS6需要修改
/etc/inittab
文件虾宇,修改最后一行id:5:initdefault:
中的這個(gè)數(shù)字,然后重啟系統(tǒng)CentOS7使用如下命令修改:
systemctl set-default multi-user.target # 將默認(rèn)運(yùn)行級(jí)別設(shè)置為mulit-user systemctl isolate multi-user.target # 不重啟系統(tǒng)的情況下如绸,將運(yùn)行級(jí)別切換至mulit-user systemctl isolate graphical.target # 不重啟系統(tǒng)的情況下嘱朽,將運(yùn)行級(jí)別切換至圖形模式 # 查看CentOS7支持的系統(tǒng)運(yùn)行級(jí)別target [root@www ~]# ll /usr/lib/systemd/system/runlevel*target lrwxrwxrwx. 1 root root 15 Apr 5 21:32 /usr/lib/systemd/system/runlevel0.target -> poweroff.target lrwxrwxrwx. 1 root root 13 Apr 5 21:32 /usr/lib/systemd/system/runlevel1.target -> rescue.target lrwxrwxrwx. 1 root root 17 Apr 5 21:32 /usr/lib/systemd/system/runlevel2.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Apr 5 21:32 /usr/lib/systemd/system/runlevel3.target -> multi-user.target lrwxrwxrwx. 1 root root 17 Apr 5 21:32 /usr/lib/systemd/system/runlevel4.target -> multi-user.target lrwxrwxrwx. 1 root root 16 Apr 5 21:32 /usr/lib/systemd/system/runlevel5.target -> graphical.target lrwxrwxrwx. 1 root root 13 Apr 5 21:32 /usr/lib/systemd/system/runlevel6.target -> reboot.target
-
CentOS7在單機(jī)模式下修改root密碼
2.8 /etc/profile和/etc/bashrc
作用:配置系統(tǒng)的環(huán)境變量和別名
系統(tǒng)啟動(dòng)后加載環(huán)境變量的順序:
/etc/profile -> ~/.bash_profile -> ~/.bashrc -> /etc/bashrc
后面的配置文件中的變量或者別名會(huì)覆蓋前面的配置文件中的相同配置
/etc/profile
和/etc/bashrc
中的設(shè)置作用于整個(gè)系統(tǒng),而~/.bash_profile
和 ~/.bashrc
中的設(shè)置只作用于當(dāng)前用戶
查看系統(tǒng)命令別名:
[00:26:33 root@www ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
臨時(shí)修改系統(tǒng)別名:
# 修改ll別名怔接,加上--time-style=long-iso搪泳,讓它顯示的時(shí)間更加人性化
[00:26:34 root@www ~]# alias ll='ls -l --time-style=long-iso --color=auto'
[00:27:29 root@www ~]# ll -a
total 32
dr-xr-x---. 2 root root 128 2020-04-24 00:21 .
dr-xr-xr-x. 17 root root 245 2020-04-23 22:43 ..
-rw-------. 1 root root 2672 2020-04-24 00:17 .bash_history
-rw-r--r--. 1 root root 18 2013-12-29 10:26 .bash_logout
-rw-r--r--. 1 root root 176 2020-04-23 23:59 .bash_profile
-rw-r--r--. 1 root root 176 2020-04-23 23:59 .bashrc
-rw-r--r--. 1 root root 100 2013-12-29 10:26 .cshrc
-rw-r--r--. 1 root root 129 2013-12-29 10:26 .tcshrc
-rw-------. 1 root root 6046 2020-04-24 00:21 .viminfo
永久修改別名:
# 編輯/etc/bashrc文件
# System wide functions and aliases
# Environment stuff goes in /etc/profile
# 加入自定義的別名
alias ll='ls -l --time-style=long-iso --color=auto'
# 重新加載,讓別名生效
source /etc/bashrc
取消別名:
# 如果別名已經(jīng)寫到環(huán)境變量配置文件中扼脐,那么這個(gè)操作只是暫時(shí)取消別名
# 再次source配置文件之后岸军,這個(gè)別名還是會(huì)生效
unalias ll
在別名存在的情況下不執(zhí)行別名:
[23:21:21 root@www tmp]# alias rm="echo not support operator"
[23:21:57 root@www tmp]# rm
not support operator
# 現(xiàn)在就不是使用別名而是使用命令本身了
[23:22:01 root@www tmp]# /rm -rf ./test.txt
-bash: /rm: No such file or directory
# 在別名存在的情況下也可以使用命令本身的絕對(duì)路徑來(lái)執(zhí)行原命令
[23:24:33 root@www tmp]# /usr/bin/rm ./test.txt
/usr/bin/rm: cannot remove ‘./test.txt’: No such file or directory
Tips:
內(nèi)置命令和外置命令:內(nèi)置命令,在沒(méi)有設(shè)置PATH環(huán)境變量的情況下瓦侮,不寫命令的絕對(duì)路徑也可以執(zhí)行
查看一個(gè)命令是否是內(nèi)置命令:
# cd是內(nèi)置命令
[23:56:38 root@www ~]# type cd
cd is a shell builtin
# vi就不是內(nèi)置命令
[00:24:22 root@www ~]# type vi
vi is /usr/bin/vi
2.9 /etc/profile.d
作用:用戶登錄后執(zhí)行的腳本所在的目錄艰赞,此目錄的腳本文件將在用戶登錄之后自動(dòng)執(zhí)行
2.10 /etc/issue和/etc/issue.net
作用:顯示用戶登錄真實(shí)終端之后的信息
[23:35:57 root@www ~]# cat /etc/issue
\S
Kernel \r on an \m
[23:36:05 root@www ~]# cat /etc/issue.net
\S
Kernel \r on an \m
[23:36:08 root@www ~]#
/etc/issue
:作用于本地登錄的終端,本地登錄的終端就是直接上服務(wù)器上登錄
/etc/issue.net
:作用于遠(yuǎn)程連接登錄前的提示肚吏,需要與/etc/ssh/sshd_config
文件配合使用
# 默認(rèn)為Banner none方妖,而且是注釋的
# 只有這里與/etc/issue.net文件綁定,才會(huì)在遠(yuǎn)程登錄之前顯示預(yù)先設(shè)置好的提示信息
Banner /etc/issue.net
/etc/issue.net
文件不支持轉(zhuǎn)義字符罚攀,所以它的效果為:
在企業(yè)環(huán)境中吁断,為了防止服務(wù)器版本泄露,一般會(huì)把/etc/issue.net
文件清空坞生,即遠(yuǎn)程登錄的時(shí)候,不提示系統(tǒng)版本信息掷伙。
常用的轉(zhuǎn)義字符的含義:
\d # 本地日期(Sat Apr 25 2020)
\t # 本地時(shí)間(01:19:43)
\l # 顯示當(dāng)前終端名稱(tty1)
\m # 顯示硬件的等級(jí)(i386/i486/i586/i686/x86_64/...)
\n # 顯示主機(jī)名
\o # 顯示域名
\r # 操作系統(tǒng)的版本(3.10.0-957.el7.x86_64)
\v # 操作系統(tǒng)的版本和發(fā)行日期等信息(#1 SMP Thu Nov 8 23:39:32 UTC 2018)
\s # 操作系統(tǒng)的名稱(Linux)
\S # 操作系統(tǒng)的版本(CentOS Linux 7 (Core))
\u # 當(dāng)前登錄的用戶是目前在線的用戶中第幾個(gè)登錄的
\U # 系統(tǒng)目前有幾個(gè)在線用戶是己,如果只有一個(gè),提示"1 user"任柜,否則提示"n users"卒废,n為具體的在線人數(shù)
2.11 /etc/motd
作用:設(shè)置用戶登錄之后的提示信息的文件沛厨,默認(rèn)是空的,可以在這個(gè)文件中編寫一些運(yùn)維注意事項(xiàng)摔认,然后用戶登錄之后就會(huì)顯示出來(lái)
2.12 /etc/init.d
作用:此目錄是通過(guò)yum或者rpm包安裝的軟件的默認(rèn)啟動(dòng)腳本存放的目錄逆皮,例如,該目錄下有個(gè)network
腳本参袱,可以對(duì)網(wǎng)絡(luò)服務(wù)進(jìn)行操作:
/etc/init.d/network start
/etc/init.d/network stop
/etc/init.d/network restart
系統(tǒng)管理人員人為開發(fā)的服務(wù)啟停腳本也可以放在這里电谣,在CentOS7之后,這個(gè)目錄已經(jīng)廢棄了抹蚀,服務(wù)器啟停統(tǒng)一使用systemctl start/stop/restart some.service
命令來(lái)管理
2.13 /etc/redhat-release
作用:聲明Red Hat版本號(hào)和名稱信息
[00:49:58 root@www ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
# 另一個(gè)查看系統(tǒng)版本的方法
# 3.10.0-957.el7.x86_64是系統(tǒng)的內(nèi)核版本
[root@www ~]# uname -a
Linux www 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
2.14 /etc/sysctl.conf
作用:這是一個(gè)設(shè)計(jì)Linux系統(tǒng)性能調(diào)優(yōu)的重要配置文件剿牺,用于設(shè)置Linux內(nèi)核參數(shù)
查看默認(rèn)的內(nèi)核參數(shù):
sysctl -a
修改之后使配置生效的命令:
sysctl -p
3. Linux常用系統(tǒng)目錄
3.1 /usr/local
這個(gè)目錄一般是用來(lái)存放用戶自編譯安裝軟件,對(duì)于通過(guò)源碼包安裝的軟件环壤,如果沒(méi)有特別指定安裝目錄的話晒来,一般會(huì)默認(rèn)安裝到這個(gè)目錄中,相當(dāng)于Windows中的C:\Program files
3.2 /usr/src
這個(gè)目錄一般被用來(lái)存放在網(wǎng)上下載的軟件源代碼
3.3 /var/log
這是記錄系統(tǒng)日志和軟件運(yùn)行信息文件的目錄郑现,其中有大量的記錄系統(tǒng)及軟件服務(wù)運(yùn)行的日志文件湃崩,其中常見的日志文件如下:
messages
:系統(tǒng)默認(rèn)的日志文件,這個(gè)文件非常重要接箫,當(dāng)系統(tǒng)及軟件遇到運(yùn)行故障時(shí)攒读,可以查看這個(gè)文件獲取異常信息,改文件默認(rèn)按周滾動(dòng)列牺,滾動(dòng)規(guī)則通過(guò)/etc/logrotate.conf
和/etc/logrotate.d/syslog
文件來(lái)控制-
secure
:這個(gè)一個(gè)有關(guān)系統(tǒng)安全的日志文件整陌,日志中記錄了"誰(shuí),在什么時(shí)候瞎领,從哪里登錄到系統(tǒng)泌辫,登錄成功沒(méi)有",ssh九默、telnet震放、ftp等服務(wù)的用戶登錄信息都會(huì)記錄在此,默認(rèn)也是按周滾動(dòng) dmesg
:記錄硬件加載情況的日志文件驼修,當(dāng)硬件和系統(tǒng)內(nèi)核出現(xiàn)問(wèn)題的時(shí)候殿遂,可以查看這個(gè)日志,此外乙各,dmesg
也是一個(gè)命令墨礁,用于收集記錄硬件加載情況的信息,實(shí)際上系統(tǒng)啟動(dòng)后就是通過(guò)dmesg
命令將收集到的信息寫入到/var/log/dmesg
文件中的cron
:定時(shí)任務(wù)的日志文件-
wtmp
:二進(jìn)制文件耳峦,記錄登陸者信息恩静,執(zhí)行last
命令自動(dòng)讀取該文件[root@www log]# last root pts/0 10.0.0.1 Sat Apr 25 14:37 still logged in root pts/0 10.0.0.1 Sat Apr 25 14:35 - 14:37 (00:02) reboot system boot 3.10.0-957.el7.x Sat Apr 25 14:32 - 15:00 (00:28) root pts/1 10.0.0.1 Sat Apr 25 01:11 - crash (13:21) root pts/3 10.0.0.1 Sat Apr 25 00:49 - crash (13:42) root pts/2 10.0.0.1 Sat Apr 25 00:49 - 01:10 (00:20) root pts/1 10.0.0.1 Sat Apr 25 00:45 - 01:05 (00:20) root pts/1 10.0.0.1 Sat Apr 25 00:44 - 00:45 (00:00)
-
lastlog
:二進(jìn)制文件,記錄用戶近期的登錄情況,執(zhí)行lastlog
命令自動(dòng)讀取該文件[root@www log]# lastlog Username Port From Latest root pts/0 10.0.0.1 Sat Apr 25 14:37:41 +0800 2020 bin **Never logged in** daemon **Never logged in** adm **Never logged in** lp **Never logged in** sync **Never logged in** shutdown **Never logged in**
3.4 /proc
/proc
是一個(gè)虛擬文件系統(tǒng)驶乾,目錄下的文件中記錄著內(nèi)核和進(jìn)程方方面面的的信息邑飒,是一個(gè)很重要的信息庫(kù)
-
/proc/loadavg
:系統(tǒng)負(fù)載信息文件 -
/proc/meminfo
:系統(tǒng)內(nèi)存使用信息文件 -
/proc/cpuinfo
:系統(tǒng)CPU使用信息文件 -
/proc/mounts
:系統(tǒng)掛載信息 -
/proc/interrupts
:當(dāng)前系統(tǒng)中斷信息文件
查看CPU信息:
[root@www ~]# cat /proc/cpuinfo
processor : 0
model name : Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
processor : 1
model name : Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
processor : 2
model name : Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
physical id : 1
siblings : 2
core id : 0
cpu cores : 2
processor : 3
model name : Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
physical id : 1
siblings : 2
core id : 1
cpu cores : 2
# physical id是0和1,代表系統(tǒng)有2顆CPU
# 每個(gè)CPU有兩個(gè)核级乐,因?yàn)槊總€(gè)CPU都有兩個(gè)processor疙咸,其編號(hào)分別為0和1
# cpu cores為2,以physical id為單位风科,統(tǒng)計(jì)一顆CPU的總核數(shù)
# 整個(gè)系統(tǒng)有4個(gè)核
# lscpu和cat /proc/cpuinfo作用一樣
[root@www ~]# lscpu
CPU(s): 4 # 系統(tǒng)總共有幾個(gè)核
Core(s) per socket: 2 # 每顆CPU有幾個(gè)核
Socket(s): 2 # 系統(tǒng)有幾顆CPU
查看內(nèi)存信息:
[root@www ~]# cat /proc/meminfo
MemTotal: 995924 kB # 內(nèi)存總量
MemFree: 723720 kB # 空閑內(nèi)存
MemAvailable: 701628 kB # 可用內(nèi)存
Buffers: 2076 kB # buffer已使用內(nèi)存
Cached: 84524 kB # cache已使用內(nèi)存
SwapCached: 0 kB # 交換空間已使用空間
[root@www ~]# free -h
total used free shared buff/cache available
Mem: 972M 125M 706M 7.5M 140M 685M
Swap: 2.0G 0B 2.0G
查看掛載信息:
[root@www ~]# cat /proc/mounts | grep sda
/dev/sda3 / xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0
/dev/sda1 /boot xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0
[root@www ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 17G 1.8G 16G 11% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda1 1014M 127M 888M 13% /boot
tmpfs 98M 0 98M 0% /run/user/0
查看系統(tǒng)負(fù)載信息:
[root@www ~]# cat /proc/loadavg
# 第1個(gè)數(shù)字:1min內(nèi)的平均負(fù)載
# 第2個(gè)數(shù)字:5min內(nèi)的平均負(fù)載
# 第3個(gè)數(shù)字:15min內(nèi)的平均負(fù)載
# 負(fù)載值和CPU核數(shù)有關(guān)
# 4核的服務(wù)器撒轮,當(dāng)這個(gè)值到達(dá)3的時(shí)候就要關(guān)注了
# 128核的服務(wù)器,當(dāng)這個(gè)值大于100的時(shí)候就要關(guān)注了
0.00 0.03 0.05 1/128 7032
[root@www ~]# w
# up 14 min:服務(wù)器持續(xù)運(yùn)行14min
# 1 user:當(dāng)前有一個(gè)用戶連接系統(tǒng)
22:28:06 up 14 min, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 22:14 6.00s 0.09s 0.02s w