Linux系統管理這是Linux的網絡管理,軟件安裝,進程管理,內存和磁盤管理。網絡管理網絡狀態查看工具net-tools VS iproutenet-toolsifconfigroutenetstatiproute2ipss網卡(網絡接口)命令查看網卡狀態i...
這是Linux的網絡管理,軟件安裝,進程管理,內存和磁盤管理。
net-tools VS iproute
net-tools
ifconfig
route
netstat
iproute2
ip
ss
ifconfig
復制代碼 隱藏代碼ifconfig //全部網卡 ifconfig eth0 //指定網卡eth0
eth0 第一塊網卡(網絡接口)
也可能是以下名字:
eno1 板載網卡
ens33 PCI-E網卡
enp0s3 ?法獲取物理信息的 PCI-E 網卡
lo 第二塊網卡 —— 用于本地環回
virbr0 第三塊網卡 —— 用于虛擬化
CentOS 7 使用了一致性網絡設備命名,以上都不匹配則使用 eth0
網卡命名則受 biosdevname 和 net.ifnames 兩個參數影響 | biosdevname | net.ifnames | 網卡名 | |
---|---|---|---|---|
默認 | 0 | 1 | ens33 | |
組合1 | 1 | 0 | em1 | |
組合2 | 0 | 0 | eth0 |
步驟如下:
編輯 /etc/default/grub 文件,增加 biosdevname=0 net.ifnames=0
更新 grub
復制代碼 隱藏代碼grub2-mkconfig -o /boot/grub2/grub.cfg
重啟
復制代碼 隱藏代碼reboot
注:如果上述方法無效,則需要手動修改
復制代碼 隱藏代碼vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 //enp0s3為當前網卡名稱
修改文件中的NMAE=和DEVICE=為eth0,同時修改文件名后綴為eth0,保存后重啟。
ifconfig <接口>
ifup <接口> //打開網卡
ifdown <接口> //關閉網卡
復制代碼 隱藏代碼ifconfig eth0 10.0.21.1 //修改網卡地址為10.0.21.1 ifconfig eth0 10.0.21.1 netmask 255.255.255.0 //修改網卡地址和掩碼 ifup eth0 //打開網卡 ifdown eth0 //關閉網卡
route
復制代碼 隱藏代碼route //解析主機名 route -n //不解析主機名
route add/del default gw <網關ip> 添加/刪除默認網關
route add/del -host <指定ip> gw <網關ip> //添加/刪除指定IP網關
route add/del -net <指定網段> netmask <子網掩碼> gw <網關ip> //添加/刪除指定網段網關
復制代碼 隱藏代碼route del default gw 10.0.2.2 //刪除默認網關 route add default gw 10.0.2.1 //添加默認網關 route add -host 10.0.4.2 gw 10.0.2.1 //添加明細網關 route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.2.5添加網段網關
ip addr ls
—— ifconfig
ip link set dev eth0 up
—— ifup eth0
ip addr add 10.0.0.1/24 dev eth1
—— ifconfig eth1 10.0.0.1 netmask 255.255.255.0
ip route add 10.0.0/24 via 192.168.0.1
—— route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1
mii-tool 查看網卡物理連接狀態
復制代碼 隱藏代碼mii-tool eth0 //查看網卡eth0物理連接狀態
ping 檢測目標主機是否暢通
復制代碼 隱藏代碼ping www.baidu.com //ctrl+c停止
traceroute 數據包經過中間路由狀態
復制代碼 隱藏代碼traceroute -w 1 www.baidu.com //-w 1 表示中間路由等待1s
mtr 數據包經過中間路由狀態(內容更豐富)
復制代碼 隱藏代碼mtr //直接回車進入,ctrl+c退出
nslookup 查看DNS解析
復制代碼 隱藏代碼nslookup www.baidu.com //由域名獲得IP
telnet 檢測目標端口是否暢通
復制代碼 隱藏代碼telnet www.baidu.com 80 //檢測到百度服務器的80端口是否暢通,quit退出
tcpdump tcp 協議網絡抓包
復制代碼 隱藏代碼tcpdump -i any -n port 80 //-i any:任意網卡;port 80:80端口,可省略;-n:不解析為域名 tcpdump -i any -n host 10.0.0.1 //-i any:任意網卡;host 10.0.0.1:10.0.0.1主機,可省略;-n:不解析為域名 tcpdump -i any -n host 10.0.0.1 and port 80 //-i any:任意網卡;-n:不解析為域名 tcpdump -i any -n host 10.0.0.1 and port 80 -w /afile //-i any:任意網卡;-n:不解析為域名;-w /afile:將捕獲信息保存到文件afile
netstat 查看服務(端口)的連接狀態
復制代碼 隱藏代碼netstat -ntpl //查看服務監聽端口
ss 顯示處于活動狀態的套接字信息
復制代碼 隱藏代碼ss -ntpl //查看服務監聽端口
服務管理程序分為兩種,分別為SysV(service命令)和systemd(systemctl命令)。
centos7的網絡管理服務有兩個,分別為network服務和NetworkManage服務,其中network服務只支持service管理。
service
復制代碼 隱藏代碼service network ststus|start|stop|restart //查看或修改network服務的狀態
chkconfig
復制代碼 隱藏代碼chkconfig --list network //查看network服務具體狀態 chkconfig -level 2345 network off|on //修改network服務具體狀態
systemctl
復制代碼 隱藏代碼systemctl list-unit-files NetworkManager.service //查看NetworkManager服務的狀態 systemctl start|stop|restart NetworkManager //修改NetworkManager服務的狀態 systemctl enable|disable NetworkManager //修改NetworkManager服務的狀態
hostname
復制代碼 隱藏代碼hostname //查看主機名 hostname c7.test //臨時修改主機名為c7.test hostnamectl set-hostname c7.test //永久修改主機名為c7.test
注:當主機名變化時,需要修改/etc/hosts文件,添加IP到主機名的映射,否則解析較慢。
網絡配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0 //網卡配置文件
/etc/hosts //主機配置文件
/etc/rc.local //路由配置文件
包管理器是方便軟件安裝、卸載,解決軟件依賴關系的重要工具
CentOS、RedHat 使用 yum 包管理器,軟件安裝包格式為 rpm
Debian、Ubuntu 使? apt 包管理器,軟件安裝包格式為 deb
rpm使用步驟
掛載光盤,獲取rpm包
復制代碼 隱藏代碼ls /dev/sr0 -l //sr0為光盤,塊設備 mount /dev/sr0 /mnt //將光盤掛載到/mut //若要取消掛載使用: umount /mut 或 umount /dev/sr0 ls /mnt/Packages //查看光盤中的rpm包 ls /mnt/Packages | more //分頁查看光盤中的rpm包,按空格鍵下一頁 mkdir /root/rpms //新建rpms文件夾 cp vim-common-7.1.10-el7.x86-64.rpm /root/rpms //復制rpm包到指定文件夾
查詢、安裝、卸載rpm包
復制代碼 隱藏代碼rpm -q vim-common //查詢指定安裝包 rpm -qa //查詢全部安裝包 rpm -i vim-common-7.1.10-el7.x86-64.rpm //安裝軟件安裝包,需要安裝包完整名稱 rpm -e vim-common //卸載安裝包
注:rpm安裝需要手動安裝依賴關系的安裝包。
yum源
CentOS yum源
http://mirror.centos.org/centos/7/
國內鏡像
https://opsx.alibaba.com/mirror
yum配置文件
/etc/yum.repos.d/CentOS-Base.repo
修改yum配置文件
復制代碼 隱藏代碼//備份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup //下載新的yum源 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo //更新緩存 yum makecache
安裝、卸載、升級軟件包
復制代碼 隱藏代碼yum install vim-enhanced //安裝vim-enhanced并安裝依賴關系 yum remove vim //卸載vim yum list //查看已安裝軟件包 yum update //檢查當前的全部安裝包是否升級
以安裝openresty軟件為例:
wget https://openresty.org/download/openresty-1.15.8.1.tar.gz //下載軟件包
tar -zxf openresty-VERSION.tar.gz
cd openresty-VERSION/ //進入軟件包
./configure --prefix=/usr/local/openresty //運行腳本,軟件安裝到指定目錄
make -j2 //編譯,-j2表示使用兩個虛擬處理器
make install //安裝
注:以上為通用安裝步驟,個別軟件略有不同。
查看內核版本
復制代碼 隱藏代碼uname -r
rpm 安裝
復制代碼 隱藏代碼 rpm -i kernel-3.10.0
yum 安裝
復制代碼 隱藏代碼yum install kernel-3.10.0 yum update
源代碼安裝
安裝依賴包
復制代碼 隱藏代碼yum install gcc gcc-c++ make ncurses-devel openssl-devel elfutils-libelf-devel
下載并解壓內核
內核地址:https://www.kernel.org
復制代碼 隱藏代碼tar xvf linux-5.1.10.tar.xz -C /usr/src/kernels
配置內核編譯參數
復制代碼 隱藏代碼//1.使用新的內核配置cd /usr/src/kernels/linux-5.1.10/ make menuconfig/allyesconfig/allnoconfig //分別表示:菜單選擇配置,全部配置,全部不配置 //2.使用當前系統內核配置 cp /boot/config-3.10.0-957.el7.x86_64 /usr/src/kernels/ linux-5.1.10/.config
編譯
復制代碼 隱藏代碼make -j2 all
安裝內核
復制代碼 隱藏代碼make modules_install //先安裝內核模塊 make install //再安裝內核
注:查看cpu信息:lscup
grub是啟動引導軟件,有grub1和grub2兩個版本,現使用grub2。
grub2的配置文件:
/boot/grub2/grub.cfg //一般不直接修改此文件
通常使用以下步驟修改:
修改以下文件的grub配置
/etc/default/grub //grub初級配置
/etc/grub.d //grub詳細配置
其中GRUB_DEFAULT項配置啟動時默認選擇的內核
復制代碼 隱藏代碼grub2-editenv list //查看saved指代的內核 grep ^menu /boot/grub2/grub.cfg //文件中查找內核 grub2-set-default 0 //修改saved指代的內核
其中GRUB_CMDLINE_LINUX中rhgb表示圖形用戶界面,quiet表示靜默安裝
使用命令產生新的grub2文件
復制代碼 隱藏代碼grub2-mkconfig -o /boot/grub2/grub.cfg
linux啟動時,選擇內核,按e進入編輯,找到
復制代碼 隱藏代碼linux64 .x.x.x.x.x.x. 結尾添加single或rb.break_
ctrl+x開始
復制代碼 隱藏代碼ls /sysroot //查看根目錄 ls / //查看系統根目錄,不是實際根目錄 mount -o remount,rw /sysroot //掛載根目錄 chroot /sysroot 重新root ls / //是實際根目錄echo 111111 //顯示到屏幕echo 111111 | passwd --stdin root //傳遞到root密碼
最后reboot
ps
復制代碼 隱藏代碼ps //當前終端的進程 ps -e //查看全部進程 ps -e | more //查看全部進程,分頁顯示 ps -ef //查看較詳細進程信息 ps -eLF //查看最詳細進程信息
pstree
復制代碼 隱藏代碼pstree //顯示進程樹
top
復制代碼 隱藏代碼top //動態顯示進程信息 top -p 1234 //查看進程號為1234的進程信息
其中NI表示進程優先級
按1顯示多核CPU狀態
按s修改刷新時間
按E修改顯示單位
按?x顯示幫助
nice :范圍從-20到19,值越?優先級越?,搶占資源就越多
復制代碼 隱藏代碼nice -n 10 ./a.sh //設置a.sh的優先級,進程未運行時
renice:重新設置優先級
復制代碼 隱藏代碼renice -n 15 1234 //設置1234(PID)的優先級,進程運行時
&:進程后臺運行
jobs:獲取后臺進程編號
fg:調到前臺
復制代碼 隱藏代碼./a.sh & //進程后臺運行jobs //獲取后臺進程編號fg 1 //將編號為1的后臺進程調到前臺bg 1 //將編號為1的進程調到后臺運行
按ctrl+z將前臺進程調入后臺,并暫停。
進程通信:管道,信號。
kill -l //查看全部信號
-- SIGINT 通知前臺進程組終?進程 ctrl + c
-- SIGKILL ?即結束程序,不能被阻塞和處理 kill -9 pid
nohup
nohup 命令使進程忽略 hangup(掛起)信號
復制代碼 隱藏代碼nohup ./a.sh & //關閉終端,進程不停止
daemon(守護進程)
一種特殊的進程,沒有控制終端也不和前臺交互,一般用于服務的管理,通過對daemon進程發不同的信號,控制它對應的進程起停,無終端啟動。父進程是1。
不受會話關閉影響
復制代碼 隱藏代碼srceen //進入screen環境 screen -ls //查看 screen 的會話 screen -r 31557 //恢復31557會話exit //退出screen環境
/var/log
messages 系統錯誤信息
dmesg 內核相關信息
cron 計劃任務信息
secure 系統安全信息
ctrl+ad退出 (detached) screen 環境
service
路徑:/etc/init.d/
systemctl
路勁:/usr/lib/systemd/system/
復制代碼 隱藏代碼systemctl start xx.service systemctl stop xx.service systemctl restart xx.service systemctl reload xx.service systemctl enable xx.service systemctl disable xx.service
復制代碼 隱藏代碼cd /lib/systemd/system //服務文件目錄 ls -l runlevel*.target //查看服務級別,文件映射 systemctl get-default //獲取當前啟動級別 systemctl set-default multi-user.target //修改啟動級別為字符界面
systemctl 的服務配置
復制代碼 隱藏代碼[Unit]Requires = 新的依賴服務After = 新的依賴服務[Service][Install]
查看 SELinux 的命令
復制代碼 隱藏代碼getenforce //查看SELinux狀態 setenforce 0 //臨時改變狀態
編輯/etc/selinux/config永久修改狀態,reboot生效。
復制代碼 隱藏代碼//查看安全信息 ps -Z ls -Z id -Z
free
復制代碼 隱藏代碼free //單位為k free -m //單位為M free -g //單位為G
top
見上節進程查看命令
fdisk
復制代碼 隱藏代碼fdisk -l //查看磁盤信息 parted -l //查看分區信息 ls -l /dev/sd? //查看磁盤類型,分塊 ls -l /dev/sd?? //查看磁盤類型,分區
df、du、dd
復制代碼 隱藏代碼df -h //分區使用和掛載信息 ls -l /data/filename //查看文件大小,單位byte ls -lh /data/filename //查看文件大小,顯示單位,文件開始到結束的大小 du -h /data/filename //查看文件設計大小,顯示單位,不計空洞文件 dd if=afile bs=4M count=10 of=bfile //復制afile到bfile,指定塊大小為4M,數量為10 dd if=afile bs=4M count=10 seek=20 of=bfile //復制和轉換一個文件,帶空洞
Linux支持的文件系統:
EXT4
XFS
NTFS(有版權,需額外軟件)
EXT4文件系統
超級塊
記錄整個文件系統或分區的文件總信息
超級塊副本
超級塊的備份,不止一份
i 節點(inode)
記錄每個文件的名稱,編號,大小,權限等
復制代碼 隱藏代碼ls -l //查看文件權限等 ls -i //查看文件所屬inode編號,第一個
文件名記錄到父目錄的inode中,其他信息記錄在文件的inode中
數據塊(datablock)
記錄數據信息,掛在inode后,ls查看的是inode,du查的是datablock
復制代碼 隱藏代碼touch afile //新建普通文件echo 123 > afile //將123寫入afile;du、ls大小為4k,即一個datablock大小 cp afile bfile //復制aflie,afile的inode編號不變 mv afile cfile //同目錄移動afile,inode編號不變,只是改名 mv afile /data/cfile //跨目錄移動afile,inode編號改變 vim afile //修改文件內容,inode編號改變,新建inode,將文件名重新鏈接到新inode中echo 123 > afile //修改文件內容,inode編號不變 rm afile //刪除文件,只斷開文件名和inode的鏈接
鏈接(硬鏈接及符號鏈接)
復制代碼 隱藏代碼ln afile bfile //將bfile文件名鏈接到afile的inode上,硬鏈接,不能跨文件系統和分區 ln -s afile cfile //新建cfile的inode,cfile的inode中保存afile的路徑,符號鏈接,可跨文件系統和分區
鏈接文件的權限是777,對鏈接文件的權限操作會加到原文件。
facl
復制代碼 隱藏代碼getfacl afle //獲取文件ACL權限 setfacl -m u:username:rw afile //賦予用戶username對afile文件rw的ACL權限 setfacl -m g:groupname:rx afile //賦予用戶組groupname對afile文件rx的ACL權限 setfacl -x u:username:w afile //回收用戶username對afile文件w的ACL權限
fdisk(小于2T磁盤分區)
復制代碼 隱藏代碼fdisk /dev/sdc //進入fdisk界面
幫助:m
增加分區:n
打印分區:p
保存分區:w
退出不保存:q
刪除分區:d
mkfs
復制代碼 隱藏代碼mkfs[tab][tab] //查看可設置的文件系統類型 mkfs.ext4 /dev/sdc1 //將分區sdc1設置為ext4類型
mkdir
復制代碼 隱藏代碼mkdir /data //新建目錄,用于掛載分區
mount
復制代碼 隱藏代碼mount // 查看mount信息 mount /dev/sdc1 /data //將分區sdc1掛載到/data目錄,自動識別文件系統類型 mount -t ext4 /dev/sdc1 /data //將分區sdc1掛載到/data目錄,指定文件系統類型為ext4 mount -t auto /dev/sdc1 /data //將分區sdc1掛載到/data目錄,自動識別文件系統類型
總結:
添加磁盤 sdc
磁盤分區 sdc1
格式化 ext4
掛載 mount
注:僅臨時保存在內存中,需在/etc/fstab文件中添加才能永久生效
在文件中添加一行:
復制代碼 隱藏代碼/dev/sdc1 /data ext4 defaults 0 0 //被掛載點 掛載點 文件類型 . . .
parted(大于2T磁盤分區)
復制代碼 隱藏代碼parted /dev/sdc //進入parted界面
幫助:help
首先格式化xfs分區 /dev/sdb1
掛載時指定用戶配額,組配額
復制代碼 隱藏代碼mount -o uquota, gquota /dev/sdb1 /mnt/data
目錄賦權
復制代碼 隱藏代碼chmod 1777 /mnt/data
xfs_quota報告配額
復制代碼 隱藏代碼xfs_quota -x -c ‘report -ugibh’ /mnt/data //報告u用戶,g組,i節點的磁盤配額
xfs_quota限制磁配額
復制代碼 隱藏代碼xfs_quota -x -c ‘limit -u isoft=5 ihard=10 username’ /mnt/data //對u用戶、g組,的i節點、b塊,添加soft軟限制、hard硬限制配額
增加交換分區
新建分區 /dev/sdd1或 新建文件 /swapfile
復制代碼 隱藏代碼dd if=/dev/zero bs=4M count=1024 of=/swapfile //建文件
格式化交換分區
復制代碼 隱藏代碼mkswap /dev/sdd1 mkswap /swapfile
打開交換分區
復制代碼 隱藏代碼swapon /dev/sdd1
關閉交換分區
復制代碼 隱藏代碼swapoff /dev/sdd1
注:僅臨時保存在內存中,需在/etc/fstab文件中添加才能永久生效
在文件中添加一行:
復制代碼 隱藏代碼/swapfile swap swap defaults 0 0 //被掛載點 虛擬掛載點 文件類型 . . .
RAID 的常?級別及含義
RAID 0 striping 條帶?式,提?單盤吞吐率,至少兩塊硬盤
RAID 1 mirroring 鏡像?式,提?可靠性,至少兩塊硬盤
RAID 5 有奇偶校驗,至少三塊硬盤
RAID 10 是RAID 1 與 RAID 0 的結合
RAID有軟件RAID(mdadm)和硬件RAID兩種實現方式
邏輯卷在磁盤上層。
一、新建邏輯卷
添加三個硬盤并分區
組成物理卷
復制代碼 隱藏代碼pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 //創建物理卷 pvs //查看物理卷
創建卷組
復制代碼 隱藏代碼vgcreate vgname /dev/sdb1 /dev/sdc1 //創建卷組 vgs //查看卷組
創建邏輯卷
復制代碼 隱藏代碼lvcreate -L 100M -n lvname vgname //在卷組vgname中添加邏輯卷lvname,大小為100M lvs //查看邏輯卷
格式化
復制代碼 隱藏代碼mkfs.xfs /dev/vgname/lvname //格式化邏輯卷lvname
掛載
復制代碼 隱藏代碼mount /dev/vgname/lvname /data //掛載邏輯卷lvname到目錄/data
注:僅臨時保存在內存中,需在/etc/fstab文件中添加才能永久生效
在文件中添加一行:
復制代碼 隱藏代碼/dev/vgname/lvname /data ext4 defaults 0 0 //被掛載點 掛載點 文件類型 . . .
二、擴展邏輯卷
復制代碼 隱藏代碼vgextend vgname /dev/sdd1 //擴大卷組 lvextend -L +50G /dev/vgname/lvname //擴大邏輯卷 xfs_growfs /dev/vgname/lvname //擴大文件系統中邏輯卷
ifstat iftop //網絡狀況
iostat iotop //io狀況
vmstat
pidstat
uptime
w
復制代碼 隱藏代碼sar -u 1 10 //查看cup狀態,每隔1秒采樣一次,采樣10次 sar -r 2 20 //查看內存狀態,每隔2秒采樣一次,采樣20次 sar -b 1 10 //查看IO狀態,每隔1秒采樣一次,采樣10次 sar -d 1 10 //查看磁盤狀態,每隔1秒采樣一次,采樣10次 sar -q 1 10 //查看進程狀態,每隔1秒采樣一次,采樣10次
鏈接地址:https://www.52pojie.cn/thread-1817855-1-1.html
來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。
Copyright?2013-2024 JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利
蘇公網安備32010402000125
蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司
南京思必達教育科技有限公司版權所有 百度統計