liunx基礎命令使用

 

 

虛擬網卡的絕對路徑
/etc/sysconfig/network-scripts/ifcfg-eth0

設置IP後重啓網路服務命令 service network restart

改Ip時主要改這幾個地方

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.30.200
NETMASK=255.255.255.0
GATEWAY=192.168.30.2
DNS1=211.100.225.34
DNS2=114.114.114.114

echo $PATH查看環境變量,命令都從哪些路徑目錄裏找
ip link 查看網卡信息
ifconfig 查看Linux網絡網卡信息
ifconfig eth0 up 啓動網卡物理設備
ifup eth0 開啓網卡  ifdown eth0 關閉網卡
修改主機名字 /etc/sysconfig/network   /etc/hosts
IPADDR 地址ip  NETMASK 子網掩碼
GATEWAY 網關  DNS1  DNS2

基礎命令

備註:路徑都需要用絕對路徑

seq 隨機數 可以直接重定向到文件裏
seq 20 > 文件名 文件內容裏輸入1到20個數字
stat 文件名 查看文件的所有時間  
reboot重啓服務器
whoami 看我是誰 w 查詢登陸到主機的用戶信息
echo $? 檢查上一條命令是否成功
history 查看歷史命令記錄 -c 清空
which 查找自己安裝的命令在哪裏,有沒有這個命令
pwd 查看當前在哪的位置 
cd** 移動到哪裏去
cd . . 返回上級目錄  . . 代表上級目錄
cd ~ 直接回到用戶家目錄  mv 移動(源)到(目標)
cp -r 全部複製(源位置)到(目標位置)
cp -p 文件目錄名 複製文件和目錄,文件屬性和時間等不變
touch 創建文件  mkdir 創建目錄
{ . . } 表示序列,可以用的方式創建文件和目錄{1..9}
mkdir -p 連續創建目錄  rm -f 強制刪除文件
rm -r 刪除目錄  rm -rf 強制刪除目錄
echo “輸出” > 輸出重定向,清楚原文件裏的內容,然後把內容追加到文件的末尾
">>" 輸出追加重定向,追加內容到文件的尾部  "1>>" 正確追加重定向
"2>>" 錯誤追加重定向  "&>>" 正確錯誤都追加重定向
type 命令 查看屬於內部命令還是外部命令
命令 help 查看命令的幫助
alias 命令=命令 別名,修改替代改名命令
grep 過濾  grep -c 過濾的時候計數
grep -v 過濾的時候取反
grep -n “條件” 加行號  grep -w “條件”精確匹配
grep -l “條件” 顯示匹配到內容的文件的名字
grep -c "^$" 文件名 | wc -l 過濾一個文件有多少空行
Xargs 默認將
|傳遞過來的字符串轉換爲文件名

ls所有參數和各種看##

ls 查看當前位置裏的所有文件
ls -l = ll 以列表形式查看詳細信息  
ls -t 按時間顯示文件和目錄
ls -a 查看隱藏文件和目錄
ls -d 常用 ll -d 顯示目錄本身的屬性
du -sh 文件名 查看文件的大小  wc -l 文件名 統計有多少行
stat 文件名 看一下文件的詳細信息  cat 查看文件全部內容
tac 文件名 倒着看  nl 文件名 行號橫着看
more 文件名 一頁一頁的看,只能往下移動不能往上
less 文件名 一頁一頁的看,可以上下移動
tail -f 文件名 動態查看文件信息,實時監測
head 默認只看文件前十行!例如:head -20 看前20行文件內容
tail 默認只看文件後十行!例如:tail -30 看後30行文件內容

find參數搭配

-type d 代表目錄,-type f 代表文件
find 配合 -size 按大小查找文件或者目錄
find 配合 mtime 按時間查找文件和目錄

文件目錄精確查找
find 路徑 -name "文件名字" 精確查找某個文件
find 路徑 -type f -name "文件名字" 精確查找某個文件
例如:find . -type f -name "yunjisuan.txt"

模糊查找某些文件
例如:find .-type f -name "bent*"

精確刪除一個文件
find 路徑 -type f -name "文件名" | xargs rm -rf
例如:find . -type f -name "yunjisuan.txt" | xargs rm -f

批量刪除一堆文件
find 路徑 -type f -name "*"| xargs rm -rf
例如:find . -type f -name "*" | xargs rm -rf

精確移動某一個文件目錄:
find -type f -name "文件名" | xargs -i mv {} 移動的路徑
例如:find -type f -name "bent.txt" | xargs -i mv {} /root/
find -type f -name "文件名" -exec mv {} 移動的路徑 ;

例如:find -type f -name "bent.txt" -exec mv {} /root \;

文件內保留一個其他全部刪除:!和 -v 取反保留的意思
find 路徑 ! -name “文件名” -type f | xargs rm - rf
例如:find . ! -name "bent.txt" -type f | xargs rm -rf
例如:grep -v "bent.txt" | xargs rm -f

tar打包解壓

gzip 文件名 壓縮 -- gzip -d 文件名 解壓縮  
bzip2 文件名 壓縮 -- bzip2 -d 文件名 解壓縮

打包 tar jcvf 和 tar zcvf (v可加可不加代表過程)
z 代表調用gzip  j 代表調用bzip2

打包:打包以後的路徑包名 源包名路徑  
例如:tar jcf /root/fang.tar.gz fang
打包排出某個文件不打:tar jcf 路徑包名.tar.gz 源包名字 --exclude=排出的文件名字  
例如:tar jcf /root/fang.tar.gz fang --exclude=/fang/yunjisuan.txt

解包:tar xf 包名
例如:tar xf fang.tar.gz直接解壓到當前目錄
指定目錄解包:tar xf 包名 -C 解包路徑
例如:tar xf fang.tar.gz -C /root/bent

vim用法

vim 三種模式 1.末行模式 2.正常模式 3.輸入模式  正常模式只能正常上下移動
i 進入輸入模式  esc 進去正常模式  :末行模式  q保持  w保存  wq保存退出  q!強退不保存
G 跳到末行  gg回到第一行  參數+gg到指定行  a光標後面插入字符  i 光標前面插入字符
光標移動到某個字符 r 不用進入出入模式直接改某個字符  I 立刻調到行首  A 立刻調到行尾
o 另起下一行輸入  O 另起上一行輸入  dd 刪除當前行  參數+dd剪切  p移動到末尾粘貼
參數+yy複製  h向前 j向下 k向上 l向後  Ctal c 回到正常模式 shift zz 保存並退出

rmp參數

mkdir -p /media/cdrom 創建掛光盤名字路徑 /dev/sr0 光盤的路徑
mount /dev/sr0 /media/cdrom 掛光盤唯一路徑 umount /dev.sr0 卸載掛的光盤
rpm -q 軟件包名字 精確查找某個軟件包的名字是否已經安裝了
rpm -qa 查看系統中所有已安裝的rpm軟件包
rpm -qa | grep 包名 模糊查找某一個軟件包
rpm -qf 命令路徑 查看命令所屬的軟件包的名字
rpm -ivh rpm 軟件包的路徑 軟件包安裝
rpm -e 軟件包名字 卸載軟件包
rpm -e 包名 --nodeps 強制卸載軟件包

yum倉庫安裝搭建和安裝

/etc/yum.repos.d/ yum 倉庫的路徑位置 1.創建光盤目錄,掛載光盤 2.進入/etc/yum.repos.d/目錄下,備份目錄下所有配置文件 3.利用還有大寫M的配置文件作爲配置文件的模板 4.在模板裏將enabled改爲1保存退出 5.清空就yum緩存:yum -y clean all 6.生成新yum緩存:yum makecache yum -y install 軟件包名 yum 倉庫安裝軟件包 查看 yum 安裝歷史紀錄 yum hsisory list 進行回滾,安裝操作回退 yum -y history undo 序號

源碼編譯

源碼(開發寫的代碼)編譯安裝軟件程序
1.安裝編譯環境支持程序 gcc gcc-c++ make
2.解壓縮源碼包 第三方源程序解壓縮一般放到 /usr/src/
3.預配置安裝程序的安裝目錄
第三方源程序安裝路徑 路徑/文件名 --prefix=/usr/locar/目錄名字
4.make 編譯成二進制格式 5.安裝 make install

增刪用戶和權限

超級用戶root含有一個組也叫root

用戶賬號路徑有兩個/etc/passwd  /etc/shadow

/etc/passwd
root:      x:      0:  0:  root:    /root:   /bin/bash
賬戶名:密碼佔位符:UID:GID:空備註:家目錄路徑:是否可登陸系統
/bin/bash可登陸操作系統  /sbin/nologin 不能登陸操作系統
/etc/shadow
root:$6$VwcbTSr3XgtUuAgN$YNh3W5KIQdjomr0IUbH0OAf/Lnh/55/sWLAFCrHRL/3VHqquk5Zwg3O5Z.Kwot2RL9AZJXqS24muL0hVBV5sG.:17822:0:99999:7:::
賬戶名:密碼暗文:上次修改密碼已過多少天:0表示隨時可以修改密碼:密碼永久有效

修改登錄賬號權限: chsh 用戶名 改成/sbin/nologin
剛創建一個用戶的初始化目錄路徑是/etc/skel/

-M 不爲用戶建立家目錄  -s 指定用戶的登陸shell  -e 指定賬號失效時間 

useradd 名字 創建用戶  passwd 用戶名 字創建密碼  userdel -r 用戶名 刪除用戶
echo "密碼" | passwd --stdin 用戶名字 一次性創建密碼 passwd -l 用戶名 鎖定密碼(!!) -U 解鎖用戶賬號

用戶組 /etc/group /etc/gshadow
id 賬號名 看這個賬號有沒有和基本信息  finger 賬號名 看這個賬號的詳細信息

stat -c %A 文件名 查看權限
-(類型)rw-(屬主)r-x(屬組)r-x(其他所有權限)
(r讀 4表示)(w寫 2表示)(x執行 1表示)(-代表0)
chmod 改文件的權限  chown 修改屬主  liunx規定目錄最高權限是777,文件最高權限是666
目錄和文件的權限受umask影響,所以創建目錄和文件的最高權限就是
666-umask 或 777-umask  umask 權限掩碼默認0022

硬盤分區詳解

硬盤每個扇區可存放512字節 MBR一個扇區前446字節叫做mbr引導區,64字節是分區表, 後2字節是校驗碼。
磁盤路徑 /dev/sda1(a表示第幾個塊硬盤)(1表示第幾個分區)邏輯分區從5開始 fdisk -l 查看磁盤情況
fdisk磁盤分區只能分2T以下的硬盤  fdisk 磁盤路徑 磁盤分區

p打印磁盤分區表
m幫助 n創建一個磁盤分區 p分主分區 e分擴展分區從4開始 l虛擬分區從5開始 d刪除一個分區
q不保存分區直接退出 w保存磁盤分區退出 t改分區名字 L看分區名字 partx 如果分區沒出來刷新一下

blkid 查看硬盤是否有UUID號 格式化 mkfs. ext4 /磁盤路徑
parted 無論多大都可以直接分區 quit 退出不用保存  df -h 看磁盤掛載情況

lvm邏輯卷

pvcreate 將磁盤那些盤創建pe化 例:pvcreate /dev/sd[bcd]那些盤 pvs查看 pe化
vgcreate -s 多大 vg0 /dev/sd[bcd]路徑 將pe化的盤組成卷組 vgs 查看卷組
lvcreate -L 多大 -n 名字 從哪割的卷組名字 將卷組割出一部分組成LVM lvs 查看lvm
lvextend -L +多大 lvm盤路徑 在線擴容磁盤容量
resize2fs 探測擴容磁盤沒有格式化的自動格式化
/etc/rc.local個人配置腳本自動開機執行

所有內存剩餘大小是緩存+緩衝=所剩的內存
| Mem | 內存 |
| ----- | :---😐
| used | 使用 |
| free | 空閒 |
| buffer | 緩衝 |
| cache | 緩存 |

raid詳解

raid 0 擁有極高的讀寫效率,幾塊盤組合近似幾倍的讀寫速度,數據非常不安全,某一塊盤出現問題,所有硬盤的數據全都用了
raid 1 非常安全,自動備份,可修復,成本高,多少塊盤容量不變,讀寫速度都不變,最少2塊
raid 5 安全性和性能兼顧的raid組合,突出性價比,近似n-1倍的讀寫速度,可用容量近似n-1 最少3塊
raid 10 突出安全性,近似支持壞一半數量的硬盤,可容量只用一半,只能有偶數盤來組合,最少4塊,偏貴

有硬raid和軟raid 硬raid一般是在工作做服務器上做
軟raid 組成步驟
mdadm -Cv /dev/md5 -l5 -n3 -x1 /dev/sd[那幾塊盤]
mdadm -D /dev/md5 或 cat/proc/mdstat 查看同步率
mkfs.ext4 /dev/md5
mdadm /dev/md5 -r /dev/sdb (-a插盤)取盤命令

程序服務啓動項

Linux七種啓動級別:
0.關機模式 1.單用戶模式 2.沒有NFS文件系統的多用戶模式 3.命令行模式 4.保留模式 5.桌面模式 6.重啓模式
開機十項啓動項:
① 開機自檢(BIOS)主板啓動 ② MBR(硬盤)引導 ③ 操作系統(GRUB)菜單 ④ 加載內核(Kernel)|啓動操作系統核心 ⑤ init進程初始化 | 執行kernel的任務 (init是主進程) ⑥ 讀取/etc/inittab 配置文件(開機以哪個模式啓動) ⑦ 執行/etc/rc.d/rc.sysinit 初始化腳本 ⑧ 執行/etc/rc.d/ 腳本 通腳本過這個文件以大S來判定是否開機自啓動 ⑨ 執行/etc/rc.d/rc.local 個人配置腳本 ⑩ 啓動 mingetty 進程
runlenel 查看當前系統的啓動級別 init 快速切換啓動級別
&>/dev/null 黑洞文件,什麼文件到這個文件裏都會消失
/dev/zero 無線數據流 無論取多大數據都可以取出來,取出來只有大小,沒有任何內容
用法格式:從那取數據 放到哪裏 取多少 取幾次
dd if=/dev/zero 0f=路徑 bs=多大 count=幾次 來測試磁盤的讀寫速度

chkconfig --list 指定某一個服務名,單一看
chkconfig 服務名 默認執行2,3,4,5,模式,開機自啓動和關閉
chkconfig --level 模式 服務名 (on 開)(0ff 關)指定一個模式自啓動和關閉
service 服務名 status查看狀態 stop關閉 start開啓
/etc/init.d/ 服務名 stop 關閉 start 開啓
exit 關閉現在界面返回上一個界面

進程服務和終止進程

sshd這個進程主要是負責遠程連接服務的進程 socket進程是24小時不間斷監聽某個固定端口的進程
ps查看進程  ps aux查看所有進程的內存和cpu  ps -u單一查看某個進程服務
ps -elf | grep 服務名 過濾某個進程在沒在啓動狀態  pgrep 服務名 -l 查看某個服務的pid
ctri z切換後臺  fg 1切回前臺 jobs查看所有後臺 命令運行 & 進程開啓直接在後臺運行
查看殭屍進程: ps aux | head -1  top看右上角  ps -aux | grep “^Zz$”| wc -l
netstat -antup 查看發訪問服務器和進程 | grep 查看單個進程訪問 netstat 等於 ss
netstat -an | grep ESTAB | wc -l(端口號)查看有幾個併發的進程連接處
route -n ; netstat -rn ; ip route 3種查看路由器
殺進程:
kill PID號 需要根據PID號殺進程 -9 強殺
killall 需要根據服務名殺,因爲還會子進程全部殺死 -9強殺
pkill -9 根據服務器名殺,不殺子進程後代,它能踢人還能根據終端名殺

定時任務介紹

定時任務服務名:crond 必須開啓這個服務 定時任務的配置文件路徑/etc/crontab/
date -s "01:01:01 20180826" 設置當前系統全部時間
/var/spool/cron/ 定時任務存放文件的目錄
tail -f /var/log/cron 定時任務日誌存放目錄
定時任務以/爲起始HOME=/ 定時任務默認/bing/bash
定時任務的環境變量和bash的環境變量作用範圍不同
如果定時任務有信息輸出默認給root發郵件MAILTO=root
輸出默認發送郵件到/var/spool/mail/*這個目錄
如果系統postfix被關閉郵件發送失敗,就會在此目錄下生成瑣碎小文件/var/spool/postfix/maildrod/ *
定時任務書寫格式:

  • (分0-59)* (時0-23)* (日1-31)* (月1-12) *(周0-6)
    定時任務裏的命令必須用絕對路徑
    定時任務如果產生輸出要重定向到 &>/dev/null 垃圾箱
    crontab -e 進入定時編輯模式
    crontab -l 查看當前系統的定時任務
    crontab -u 用戶名 -l 查看指定某個用戶定時任務
    crontab -r 刪除定時任務

sudo的用法和i鎖

lsattr 查看i鎖 chattr +i 文件名 加i鎖後只有只讀權限 chattr +a 文件名 加a鎖後普通用戶不能vim寫內容,只能追加
su - 賬戶名 切換用戶賬號 su - 用戶名字 -c 臨時切換一次 su安全日誌文件路徑/var/log/secure
visudo 打開sudo的配置文件 sudo代表授權
sudo的配置文件裏在98行 第一個ALL= 代表IP地址 第二個ALL帶表所有命令進行免密登陸加上PASWWD=ALL
sudo的配置文件裏命令要求絕對路徑來表示 (,表示隔離)(!表示取反不讓)

indoe號block存儲

ll -i 可以看文件的inode的號
文件格式化就是爲了生成inode和block
inode是爲了來存存蓄這些數據的屬性信息爲了區分,一般佔256字節
block是爲了存蓄文件的內容 ,一般一個字節4K  df -i看inode的容量 df -h看block容量

軟硬連接

ln 原文件 硬鏈接名 硬鏈接組成 inode號是一個,刪除一個都沒影響,不能硬連接目錄
ln -s 源文件 軟連接名 軟連接組成有自己的inode號
刪除源鏈接軟連接無法使用  目錄只能做軟連接不能做硬連接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章