linux基本命令


Linux

1.1   Linux的簡介

開源,穩定,漏洞少,一般的靠譜一點的公司都用它.

Linux是一套免費的使用和自由傳播的類Unix操作系統

 

  1. Linux的文件結構

 

 

 

 

1.2   項目結構

  • /bin (/usr/bin 、 /usr/local/bin)
    • 是Binary的縮寫, 這個目錄存放着最經常使用的命令
    • /sbin    (/usr/sbin 、 /usr/local/sbin)
      • s就是Super User的意思,這里存放的是系統管理員使用的系統管理程序。
    • /home
      • 存放普通用戶的主目錄,在Linux中每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。
    • /root
      • 該目錄為系統管理員,也稱作超級者的用戶主目錄。
    • /lib
      • 系統開機所需要最基本的動態連接共享庫,其作用類似於Windows里的DLL文件。幾乎所有的應用程序都需要用到這些共享庫。
    • /lost+found
      • 這個目錄一般情況下是空的,當系統非法關機后,這里就存放了一些文件。
    • /etc
      • 所有的系統管理所需要的配置文件和子目錄
    • /usr  
      •  這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似與windows下的program files目錄。
    • /boot ★
      • 這里存放的是啟動Linux時使用的一些核心文件,包括一些連接文件以及鏡像文件,自己的安裝別放這里
    • /proc
      • 這個目錄是一個虛擬的目錄,它是系統內存的映射,我們可以通過直接訪問這個目錄來獲取系統信息。
    • /srv
      • service縮寫,該目錄存放一些服務啟動之后需要提取的數據。
    • /sys
      •  這是linux2.6內核的一個很大的變化。該目錄下安裝了2.6內核中新出現的一個文件系統 sysfs 。
    • /tmp
      • 這個目錄是用來存放一些臨時文件的。
    • /dev
      • 類似於windows的設備管理器,把所有的硬件用文件的形式存儲。
    • /media
      • linux系統會自動識別一些設備,例如U盤、光驅等等,當識別后,linux會把識別的設備掛載到這個目錄下。
    • /mnt
      • 系統提供該目錄是為了讓用戶臨時掛載別的文件系統的,我們可以將外部的存儲掛載在/mnt/上,然后進入該目錄就可以查看里的內容了。
    • /opt       
      • 這是給主機額外安裝軟件所擺放的目錄。比如你安裝一個ORACLE數據庫則就可以放到這個目錄下。默認是空的。
    • /usr/local
      • 這是另一個給主機額外安裝軟件所擺放的目錄。一般是通過編譯源碼方式安裝的程序。
    • /var  
      • 這個目錄中存放着在不斷擴充着的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日志文件。
    • /selinux
      • SELinux是一種安全子系統,它能控制程序只能訪問特定文件。

1.3三種模式:

  1. 一般模式
  2. 編輯模式
  3. 命令模式

1.1.1三種模式之間的切換

 

 

 

  1. 幫助手冊

a)       Man

b)       –help

  1. 日期類

a)       Date , cal

date +%Y-%m-%d' '%H:%M:%S

 

  1. 現實當前目錄 : pwd
  2. cd切換目錄

a)       cd.. 返回上一層目錄

b)       cd / 返回至/

c)        cd~ 返回家目錄

d)       cd /etc/sysconfig 通過結對路徑訪問(利用tab鍵)

e)       cd ./sysconfig 通過相對路徑訪問

  1. ls

a)       -a全部文件,連同隱藏文件

b)       -l 列出詳細的列表 別名ll

c)        列表信息

 

 

d)      

e)       D開頭就是目錄

f)         -是文件

  1. Grep

a)       配合顯示內容得名,根據跟隨的內容現實,該行內容

b)       例如:ls-l | grep xxx

10.  mkdir     (建立一個新的子目錄(DOS命令))

-p  可以一下建好多級目錄

例: mkdir 目錄名

  1. Touch(接觸)

a)       新建一個文件

b)       touch  aa.conf

  1. rmdir(刪除目錄)

a)       刪除一個空目錄

b)       例: rmdir  dirname

 

  1. Rm

a)    移除文件或目錄

b)   -rf 遞歸刪除所有目錄內容,不提示

  1. Cp(復制)

a)   cp  【要復制的文件】 【到哪里】

b)   -r 遞歸復制整個文件夾

c)    -v 顯示復制過程中文件的列表

d)   強制覆蓋不提示的方法

                                                i.        臨時方法:用\cp

  1. mv

a)   mv   oldFileName   newFileName      重命名

b)   mv    /temp/movefile      /targetFolder     移動文件

  1. cat

a)   cat  文件名   查看輕量級的文本文件

b)   cat  文件1  文件2   連接顯示多個文件

c)    cat 文件1  文件2 > 文件3 合並為新文件

  1. more(更多)

a)   查看較長的文件

b)   空白鍵 (space):代表向下翻一頁

c)    Enter:代表向下翻一行

d)   q:代表立刻離開 more ,不再顯示該文件內容。

e)   Ctrl+F 向下滾動一屏

f)     b 返回上一屏

  1. Less(較少)

a)       同more類似,比more功能更多。

b)       [pagedown]:向下翻動一頁;

c)        [pageup] :向上翻動一頁;

d)       /字串    :向下搜尋『字串』的功能;

e)       ?字串    :向上搜尋『字串』的功能;

f)         n        :重復前一個搜尋 (與 / 或 ? 有關!)

g)       N        :反向的重復前一個搜尋 (與 / 或 ? 有關!)

  1. Tail(尾部) head(頭部 )

a)       從尾部開始查看,比較適合查看日志

b)       -f 跟隨查看,實時查看數據

c)        -n200  顯示的行數,n可以省略。

  1. History(歷史)

a)       查看歷史命令

  1. echo

a)       輸出環境變量

b)       在shell腳本中當system.out.print用

  1. Find(發現)

a)       查找文件,提供了豐富的模糊搜索及條件搜索

b)       find+搜索路徑+參數+搜索關鍵字

c)        按文件名:find   /home/esop   -name   '*.txt'    根據名稱查找/目錄下的filename.txt文件。

  1. Locate(定位)

a)       查找文件,查詢速度更快,使用更方便。

b)       運行前需要 執行updatedb來更新文件索引。

  1. 軟鏈接

a)       也成為符號鏈接,類似於windows里的快捷方式,有自己的數據塊,主要存放了鏈接其他文件的路徑。

b)        命令  ln –s 原文件或目錄名   軟鏈接名

c)        查詢:通過 ls -l  就可以查看,列表屬性第1位是l,尾部會有位置指向。

25. yum install para  yum安裝軟件

1.4 vi和vim的區別:

Vi是白色

Vim是彩色

 

軟連接

       也成為符號

 

1.5       分區  (磁盤分區類)

一.   Mbr

  1. 只支持4個主分區
  2. 系統只安裝主分區
  3. 擴展分區占一個主分區

二.   Gpt

  1. Win7  64位以后支持
  2. 無線主分區
  3. 支持4t以上的硬盤

 

 

 

  • 查看所有設備掛載情況
    • 命令 :lsblk  或者 lsblk -f
    •  

       

1.1.1           向虛擬機增加一塊硬盤

  1. 1.      虛擬機插硬盤

a)       虛擬機增加硬盤

b)       在【虛擬機】菜單中,選擇【設置】,然后設備列表里添加硬盤,然后一路【下一步】,中間只有選擇磁盤大小的地方需要修改,至到完成。然后重啟系統!

c)      

 

 

  1. 2.      分區

a)       分區命令       fdisk /dev/sdb

                                i.            開始對/sda分區

  1. 1.       m   :顯示命令列表
  2. 2.       p     :顯示磁盤分區
  3. 3.       n     :新增分區
  4. 4.       d     :刪除分區
  5. 5.       w    :寫入並退出

b)       開始分區后輸入n:(新增分區),然后選擇p分區類型為主分區.兩次回車默認剩余全部空間,最后w:(寫入分區並退出),如果不保存就按p退出

c)      

 

 

d)      

 

 

  1. 3.      格式化

a)       格式化磁盤

                                i.            分區命令: mkfs -t ext4 /dev/sdb1

                               ii.            其中ext4是分區的類型

  1. 4.      掛載

a)       掛載

                                i.            將一個分區與一個目錄聯系起來

                               ii.            Mount 設備名稱 掛載目錄

  1. 1.       例如: mount /dev/sdb1 /newdisk
  2. 2.       Umount 設備名稱 或者 掛載目錄

a)       例如: umount /dev/sdb1 或者 umount /newdisk

  1. 3.       命令行掛載重啟后會失效

b)       永久掛載

                                i.            通過修改/ect/fstab實現掛載

                               ii.            添加完成后 執行mount -a 立即成效

  1. 5.      磁盤情況查看

a)       hf -h

                                i.            查詢系統整體使用情況

 

 

 

b)       du -h  /目錄

  1.                                  i.            查詢指定目錄的磁盤占用情況,默認為當前目錄
  2.                                ii.            -s 指定目錄占用大小匯總
  3.                               iii.            -h 帶計量單位
  4.                               iv.            -a 含文件
  5.                                v.            --max-depth=1  子目錄深度
  6.                               vi.            -c 列出明細的同時,增加匯總值

例:  du  -ach  --max-depth=1   /opt

1.6       Ifconfig  (網絡配置)

1.1.1           查看網絡配置ip addr

c)        查看網絡配置

d)       如何修改IP

e)       圖形化操作

f)         命令行方式   vi  /etc/sysconfig/network-scripts/ifcfg-en0s3

 

DEVICE=eth0    #接口名(設備,網卡)

BOOTPROTO=static     

# IP的配置方法[none|static|bootp|dhcp](引導時不使用協議|靜態分配IP|BOOTP協議|DHCP協議)

BROADCAST=192.168.1.255    #廣播地址

HWADDR=00:0C:2x:6x:0x:xx   #MAC地址

IPADDR=192.168.1.23                 #IP地址

NETMASK=255.255.255.0            # 網絡掩碼

NETWORK=192.168.1.0                #網絡地址

ONBOOT=yes              #系統啟動的時候網絡接口是否有效(yes/no)

TYPE=Ethernet                       #網絡類型(通常是Ethemet)

 

g)       vim /etc/sysconfig/network-scripts/ifcfg-eth0

h)       刷新網絡設置

i)         service  network restart

1.7       ps   (進程類)

  •  ps
    • ps –aux|grep xxx
      • System V展示風格
      • USER:用戶名稱
      • PID:進程號
      • %CPU:進程占用CPU的百分比
      • %MEM:進程占用物理內存的百分比
      • VSZ:進程占用的虛擬內存大小(單位:KB)
      • RSS:進程占用的物理內存大小(單位:KB)
      • TT:終端名稱,縮寫 .
      • STAT:進程狀態,其中S-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短期等待,Z-僵死進程,T-被跟蹤或者被停止等等
      • STARTED:進程的啟動時間
      • TIME:CPU時間,即進程使用CPU的總時間
      • COMMAND:啟動進程所用的命令和參數,如果過長會被截斷顯示
    • ps
      • ps -ef|grep xxx
        • 是BSD風格
        • UID:用戶ID
        • PID:進程ID
        • PPID:父進程ID
        • C:CPU用於計算執行優先級的因子。數值越大,表明進程是CPU密集型運算,執行優先級會降低;數值越小,表明進程是I/O密集型運算,執行優先級會提高
        • STIME:進程啟動的時間
        • TTY:完整的終端名稱
        • TIME:CPU時間
        • CMD:啟動進程所用的命令和參數

綜上:

  • 如果想查看進程的CPU占用率和內存占用率,可以使用aux
  • 如果想查看進程的父進程ID可以使用ef

 

  • pid
    • 每個進程都有一個pid作為唯一標識。
    • Kill
      • Kill pid 通過唯一標識pid殺死進程的工程
    • Killall
      • Killall name 通過進程名殺死進程
    • 運行級別(runlevel)

 

 

 

 

 

    • 查看運行級別 : vi /ect /inittab
    • 1.5       Linux用戶與權限管理

      • 用戶

      Linux系統是一個多用戶多任務的操作系統,任何一個要使用系統資源的用戶,都必須首先向系統管理員申請一個賬號,然后以這個賬號的身份進入系統。

      • 新增用戶:useradd  新用戶名
      • 設置密碼: passwd  用戶名
      • 用戶是否存在:id  用戶名
      • 切換用戶:su  –  切換用戶名
      • 查看當前用戶/登錄用戶:whoami/ who am I
      • 刪除用戶:userdel
      • 用戶組
        • 類似於角色,系統可以對有共性的多個用戶進行統一的管理。
        • 新增組:groupadd 組名
        • 刪除組:groupdel 組名
        • 修改用戶的組:usermod  –g 用戶組 用戶名
        • 增加用戶時直接加上組:useradd  –g 用戶組 用戶名
      • 系統中用戶和組的相關文件
        • 用戶(user)的配置文件: /etc/passwd
        • 每行的含義:用戶名:口令:用戶標識號:組標識號:注釋性描述:主目錄:登錄Shell
        • 口令的配置文件: /etc/shadow
        • 每行的含義:登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:不活動時間:失效時間:標志
        • 組(group)的配置文件: /etc/group
        • 每行含義:組名:口令:組標識號:組內用戶列表
      • 文件的全限管理
      •  

         

        • 再說ls -l
        • 0-9位說明
        • 第0位確定文件類型(d, - , l , c , b)
        • 第1-3位確定所有者(該文件的所有者)擁有該文件的權限。---User
        • 第4-6位確定所屬組(同用戶組的)擁有該文件的權限,---Group
        • 第7-9位確定其他用戶擁有該文件的權限 ---Other
      • 作用到文件
        • 作用到文件
        • [ r ]代表可讀(read): 可以讀取,查看
        • [ w ]代表可寫(write): 可以修改,但是不代表可以刪除該文件,刪除一個文件的前提條件是對該文件所在的目錄有寫權限,才能刪除該文件.
        • [ x ]代表可執行(execute):可以被系統執行
      • 作用到目錄
        • 作用到目錄
        • [ r ]代表可讀(read): 可以讀取,ls查看目錄內容
        • [ w ]代表可寫(write): 可以修改,目錄內創建+刪除+重命名目錄
        • [ x ]代表可執行(execute):可以進入該目錄
      • chmod
        • 第一種方式:+ 、-、= 變更權限
        • u:所有者  g:所有組  o:其他人  a:所有人(u、g、o的總和)
        •  chmod   u=rwx,g=rx,o=x   文件目錄名
        •  chmod   o+w    文件目錄名
        •  chmod   a-x    文件目錄名
        • 第二種方式:通過數字變更權限
        •  r=4 w=2 x=1        rwx=4+2+1=7
        •  chmod u=rwx,g=rx,o=x    文件目錄名
        • 相當於 chmod   751  文件目錄名

       

       

       

      • chown
        • chown  newowner  file  改變文件的所有者
        • chown newowner:newgroup  file  改變用戶的所有者和所有組
        • -R   如果是目錄 則使其下所有子文件或目錄遞歸生效
        • chgrp
          • chgrp newgroup file  改變文件的所有組


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM