Linux基礎概念和基礎命令

計算機基礎:

    一、計算機系統組成

          QQ圖片20160722202702.png

    二、馮諾依曼體系

        QQ圖片20160722203206.png

    三、服務器存儲類型

        DAS:直接連接存儲,存儲直接與服務器相連,類似于在服務器上直接加個存儲,用IDE、SATA線等線纜進行連接

        NAS:網絡連接存儲,通過局域網,在多個服務器之間實現了文件共享,類似于NFS、windows共享的模式,

        SAN:存儲區域網絡,有SAN的服務端和SAN的客戶端,客戶端通過網絡連到存儲上,效果類似在本地加上一塊磁盤,通過光纖或網線相連

    

    四、ABI和API:

        ABI:應用程序二進制接口,在應用程序和而操作系統之間

        API:應用程序調用接口,在底層和操作系統之間

    

    五、文件系統:

         ntfs、fat、iso9660

         ext2、3、4 CentOS6.X系統默認的文件系統

         xfs、btrfs CentOS7默認用的是xfs文件系統

    六、分區方案:

         MBR:

             主分區:一個磁盤主分區的數量 <=4,系統要裝在主分區上,如果服務器上有兩塊磁盤,那么其中一塊磁盤可以沒有主分區

             擴展分區:一個磁盤只能有一個擴展分區,擴展分區數量+主分區數量 <=4,擴展分區不能存儲數據,只能用來劃分邏輯分區

             邏輯分區:邏輯分區分區號從5開始編號,sda5

             主分區和擴展分區的編號可以認為指定,但是擴展分區里面的邏輯分區的編號是系統自動指定的

             分區后需要掛載后才能使用

        

         swap分區在以前內存比較小的情況下,一般是內存的兩倍

         但目前服務器內存比較大,一般測試環境給2G就夠了,生產環境中8G以上的內存,可以分10G左右就夠了

    

    七、Linux哲學思想:

         1、一切皆文件

         2、小型、單一用途的程序

         3、鏈接程序,共同完成復雜的任務

         4、避免令人困惑的用戶界面

         5、配置數據存儲在文本中

    八、shell類型

        shell:功能可以理解為將命令翻譯成計算機能夠識別的0101代碼,翻譯器

        shell的種類:sh、csh、tcsh、ksh、bash、zsh

        /etc/shell  配置文件中保存了當前系統支持的shell類型

        

    九、用到的一些命令

        lscpu 可以查看cpu的信息

        md5sum /dev/sr0 可以計算出來指定文件的md5值

        whoami 可顯示當前是哪個用戶登錄

        tty 可以顯示出當前登錄的是哪個終端

        chvt 1-6  表示利用終端切換界面

        hostname  可顯示完整的主機名

        lsb_release -a  查看當前操作系統的版本信息

        uname -r  查看內核版本

        id -u 可查看當前登錄用戶的UID

        id -u USERNAME  可查看指定用戶的UID

        echo $SHELL 可查看默認shell類型

        getent passwd ftp  可以查看ftp用戶的/etc/passwd中的條目

        type COMMAND  可以查看指定的命令是外部命令還是內部命令

        hash  可以將外部命令的路徑結果緩存下來

            

    十、相關命令詳解

        cd:改變工作目錄

          語法:cd /PATH/TO/SOMEDIR  切換到指定目錄

            cd  切換回家目錄

            cd ~   切換回自己家目錄

            cd ~USERNAME   切換到指定用戶的家目錄(只有管理員才有權限切換到其他用戶的家目錄)

            cd –    在上一次所在目錄與當前目錄之間來回切換

                PWD   用來記錄當前工作目錄的環境變量

                OLDPWD   用來記錄上一次工作目錄的環境變量

        

        ls:列出指定目錄下的內容

           語法:ls [OPTION]…[FILE]…

             常用選項:

                 -a 顯示所有文件,包括隱藏文件

                 -A  顯示除.和..之外的所有文件

                 -l  長格式列表,表示顯示文件的詳細屬性信息

                     顯示出來的信息為

                    -rw-r-x—  1  root  root  8827  10月15 20:34 testa.log

                      -rw-r-x—該文件的文件類型和相應的權限

                   最前面一個-表示文件的類型,后面9位表示相應的權限

                     文件類型:

                         -:表示是普通文件,

                         d:表示是目錄

                         b:表示是塊設備文件,支持以“block”為單位進行隨機訪問

                         c:表示是字符設備文件,支持以“character”為單位進行線性訪問

                         l:表示是符號鏈接(軟鏈接)文件

                         p:表示是管道文件,有名字的管道文件

                         s:表示是套接字文件

                         1 表示文件被硬鏈接的次數

                     root  表示文件的屬主

                     root  表示文件的屬組

                     8827  表示文件的大小

                     但是如果對ll /dev 該處顯示的是兩個數字,類似brw-rw—-. 1 root cdrom    11, 0   7月13 00:34 sr0

                     這里的數字前一個表示主設備號,后一個表示次設備號,一個標識設備類型,后一個標識同一類不同設備

                      10月15 20:34 表示文件最后一次被修改的時間

                -h 表示對文件大小做單位換算,換算后的結果可能為非精確值(1000和1024的區別)

                -d 表示僅顯示目錄自身,而不是目錄下面每個文件的屬性,要與-l一起使用,顯示目錄自身的屬性信息

                -r ,–reverse 表示顯示時以逆序的方式進行顯示,默認是升序顯示

                -R ,–recursive 表示遞歸顯示

        

        cat:顯示文本文件的文件內容

        語法:cat [OPTION]…[FILE]…

         選項:

             -n 給顯示的文本行編號

             -E  顯示行結束符,Linux行結束符為$

             FILE可以有多個,顯示的時候將多個文件全部列出來

        

        echo:回顯命令

        語法:echo [OPTION]…[STRING]…

         選項:

             -n 顯示完成后不自動進行換行

             -e  讓轉意符生效,而不是顯示出來

             轉意符:\n 表示換行

                     \b 表示退格

                     \t 表示制表符

                     \0nnn插入nnn(八進制)代表的ASCII編碼

                     利用上述的可以改顏色,顏色配置文件在/etc/DIR_COLORS

                     echo -e “\033[背景顏色;字體顏色m字符串\033[0m”   背景顏色可省略

                     echo -e “\033[43;31m nihao \033[0m”

                     43;31表示前景色和背景色

                     字體顏色:30-37分別表示:黑、紅、綠、黃、藍、紫、天藍、白色

                     背景顏色:40-47分別表示:黑、紅、綠、黃、藍、紫、天藍、白色

                     \033[0m是控制選項,0m表示無屬性,1m表示高亮度,4m表示下劃線,5m表示閃爍,7m表示反顯,8m表示隱藏顯示

                                     echo -e "\033[5m\033[44;32m*\033[0m"  顯示為*號閃爍,如果寫到最后面\033[0m這里,

                                    則會變成顯示完成后換行后的命令提示符閃爍

             STRING:可以使用引號,單引號和雙引號均可使用

                 單引號:強引用,變量引用不執行替換;

                 雙引號:弱引用,變量引用執行替換;

                 如:echo “$SHELL”

                 顯示出來的信息為 /bin/bash

                  echo ‘$SHELL’

                  顯示出來的信息為  $SHELL

                     echo echo $USER結果為echo root

                     echo ‘echo $USER’結果為 echo $USER

                     echo “echo $USER”結果為 echo root

                     echo `echo $USER`結果為root

        

         注意:變量引用中的正規引用表示法為 ${SHELL},只是很多時候{}可以被省略

        

        

        shutdown: 關機或重啟命令

            語法:shutdown [OPTIONS…][TIME][WARNING…]

            選項:

                 -h:表示關機

                 -r:表示重啟

                 -c:表示取消之前定義的關機或重啟操作

            TIME:

                 now:表立即

                 hh:mm  表示指定的時間點

                 +m  表示在當前時刻的多少分鐘之后

        WARNING:

             表示提示信息

         例如:shutdown -r +10 “system is going to reboot after 10 minutes”

        

        日期相關的命令:date、clock、hwclock、cal

         Linux有兩套時間,一套是硬件時鐘,一套是系統時鐘,系統啟動時,從硬件讀取日期和時間信息;讀取完成以后,就不在與硬件相關

         date:顯示或設置系統時間(顯示和設定系統時鐘)

         語法:date [OPTION]… [+FORMAT]  用來顯示時間日期

               date [MMDDhhmm[[CC]YY][.ss]]  用來設置時間日期

              date -d “STRING” :顯示指定字符串的日期

                 例如:date -d yesterday

                 date -d “10 days ago”  顯示10天以前的日期

                 date -d “1 month 10 days ago” 顯示1個月10天之前的日期

                 date -d “20 days”  顯示20天之后的日期

                 date –set 20160725  可以將日期設置為2016年7月25日

                 date –set “20160726 17:25:26”可以設定日期和時間

         +FORMAT:表示顯示為指定格式的日期,+為固定格式

             FORMAT支持的常用格式有:

                 %F:顯示為例如2016-07-20的日期格式

                 %T:顯示為例如08:58:15這樣的時間顯示格式

                 %Y:顯示年

                 %m:顯示月

                 %d:顯示日

                 %H:顯示幾點

                 %M:顯示幾分

                 %S:顯示幾秒

                 %j:顯示當前數一年中的第多少天,值為1-356

                 %D:顯示為07/22/16這樣月/日/年格式

                 %s:顯示時間戳,也就是從1970年1月1號0點0分0秒到當前時間所經歷的秒數

               多個格式之間用空格分隔,可以將整個格式用雙引號引起來

                 例如:date +“%F %T”

                 例如:date +“%Y%m%d %H%M%S”

                 date +“YEAR:%Y Month:%m”

             設定時間的例子:

             date 072008522016.25 表示修改時間為07月20日08點52分鐘2016年 25秒

        clock,hwclock:查詢和設定硬件時鐘(硬件時鐘,可理解為BIOS時鐘)

        clock和hwclock為同一套命令,clock是hwclock的硬鏈接

         clock不跟任何信息,表示顯示硬件時鐘

         -s,–hctosys  表示將系統時間設置為跟硬件時間一樣的時間

         -w,–systohc  表示將硬件時間設置為跟系統時間一樣的時間

         cal:顯示日歷

             cal  表示顯示當前這個月的日歷

             cal 2016  表示顯示指定年的全年的日歷

             cal 07 2016  表示顯示指定年的指定月的日歷

    

        type:顯示命令的類型,是內建命令還是外部命令

         例如:type ls

         如果原始命令被隱藏,要想使用原始命令,可以使用\ls

        whatis COMMAND可以顯示命令的大致功能說明

        which:用來顯示命令的完整路徑

             語法:which [OPTION]…COMMAND

             例如:which ls

             選項:

         –skip-alias  忽略命令別名,而直接顯示命令本身

        

        whereis:顯示命令的路徑以及相關幫助文件的路徑信息

             語法:whereis [OPTIONS] NAME

             例如:whereis ls

             選項:

         -b僅顯示二進制文件程序的路徑

         -m僅顯示幫助文件的程序的路徑

         who:顯示當天系統的有哪些登錄用戶

         語法:who [OPTIONS]…

             who  顯示當前系統的所有登錄用戶的信息

             who -b  顯示系統啟動的時間

             who -r  顯示系統啟動的時間,以及當前的系統運行級別

             who -d  顯示系統死亡進程的信息

             who -u  顯示各個登錄用戶的信息,包括顯示登錄持續時常和登錄的進程號

        

        w:增強版的who命令,用于顯示當前所有登錄的用戶,及其在操作的動作等詳細信息

        

    命令別名:

     alias  可以顯示當前系統上的命令別名信息

     定義命令別名:

         alias NAME='COMMAND'  只對當前shell有效,立即生效,重啟后失效

         例如 alias cds=‘cd /etc/sysconfig/network-scripts/’

     撤銷別名:

         umalias NAME

         例如 unalias cds

       hash命令:可以對命令的路徑緩存至內存中

         hash 可以查看緩存的列表

         hash -d COMMAND 可以將hash緩存中包含COMMAND的條目刪除

         hash -r 可以清空hash路徑緩存的緩存表

    

        screen命令:字符界面實現遠程協助(前提是:連到同一臺機器,使用同一個賬號)需要安裝該screen軟件,yum install screen

             打開新共享桌面:screen -S 共享會話的名稱

             顯示共享桌面會話列表:screen -ls 

             對方連到建立的共享會話上:screen -x 會話名稱

             退出會話ctrl+a,d

             退出后再次連接上 screen -r 會話的進程號

             退出并完全關閉會話exit

             在遠程登錄的時候,運行一個執行過程比較長的程序(例如備份),為了防止斷網后,

                    程序斷開,無法知道程序運行的狀態,可以單獨開個screen來運行該程序

        

        命令執行的優先級:命令別名>內部>外部命令緩存(hash)>外部命令

    十一、課后作業

       1、 用echo顯示閃爍的,帶顏色的倒三角

            echo -e “\033[背景顏色;字體顏色m字符串\033[0m”   背景顏色可省略

             echo -e “\033[43;31m nihao \033[0m”

             43;31表示前景色和背景色

             字體顏色:30-37分別表示:黑、紅、綠、黃、藍、紫、天藍、白色

             背景顏色:40-47分別表示:黑、紅、綠、黃、藍、紫、天藍、白色

             \033[0m是控制選項,0m表示無屬性,1m表示高亮度,4m表示下劃線,5m表示閃爍,7m表示反顯,8m表示隱藏顯示

             echo -e "\033[5m\033[44;32m*\033[0m"  顯示為*號閃爍,如果寫到最后面\033[0m這里,

             則會變成顯示完成后換行后的命令提示符閃爍

            故可以用echo -e "\033[5m\033[31m*******\n ***** \n  ***  \n   *    \033[0m"來顯示一個紅色,閃爍的倒三角

        

        2、date顯示前十天前的日期,后20天的日期信息

          date -d "10 days ago" +%F   顯示10天前的日期

          date -d "20 days" +%F  顯示20天后的日期

        

        3、screen命令:字符界面實現遠程協助(前提是:連到同一臺機器,使用同一個賬號)需要安裝該screen軟件,yum install screen

             打開新共享桌面:screen -S 共享會話的名稱

             顯示共享桌面會話列表:screen -ls 

             對方連到建立的共享會話上:screen -x 會話名稱

             退出會話ctrl+a,d

             退出后再次連接上 screen -r 會話的進程號

             退出并完全關閉會話exit

             在遠程登錄的時候,運行一個執行過程比較長的程序(例如備份),為了防止斷網后,

                    程序斷開,無法知道程序運行的狀態,可以單獨開個screen來運行該程序

        

原創文章,作者:M20-1倪文超,如若轉載,請注明出處:http://www.www58058.com/25291

(0)
M20-1倪文超M20-1倪文超
上一篇 2016-07-22
下一篇 2016-07-22

相關推薦

  • Linux命令1

    7-13 Linux命令   一、進入終端terminal 1..C1trl+Alt 釋放鼠標 2.ifconfig 查詢ip地址 3.Ping (IP地址) 查看聯網狀態 4.ls 查看            -l 列出文件 5.tty、who am i  查看當前的登錄終端名…

    Linux干貨 2017-07-15
  • 馬哥教育網絡班21期+第2周課程練習

    第二周練習 1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp、mv、rm、touch cp:copy,復制    SYNOPSIS        cp [OPTION]… [-T] SOURC…

    Linux干貨 2016-07-07
  • 3rd work

    1、列出當前系統上所有已經登陸的用戶名,注意同一個用戶登陸多次,則只顯示一次即可。 [root@localhost ~]# w 11:50:45 up 24 min, ?3 users, ?load average: 0.04, 0.04, 0.10 USER ? ? TTY ? ? ?FROM ? ? ? ? ? ? LOGIN@ ? IDLE ? JCP…

    Linux干貨 2017-10-08
  • loganalyzer——日志分析工具

    Loganalyzer是一款syslog日志和其他網絡事件數據的Web前端。它提供了對日志的簡單瀏覽、搜索、基本分析和一些圖表報告的功能。數據可以從數據庫或一般的syslog文本文件中獲取,所以LogAnalyzer不需要改變現有的記錄架構?;诋斍暗娜罩緮祿梢蕴幚韘yslog日志消息,Windows事件日志記錄,支持故障排除,使用戶能夠快速查找日志數…

    Linux干貨 2016-10-18
  • keepalived實現lvs的高可用

    lvs可以做到內核級別的四層負載均衡,具有非常強悍的負載均衡能力。但是,當我們構建lvs的負載均衡集群的時候也會面臨一些很嚴重的問題: lvs的單點故障:當lvs負載均衡器出現故障的時候,那么后端所有的服務器都將無法訪問; lvs對后臺服務器沒有健康監測機制:當后臺服務器宕機之后lvs還是會調度服務到后臺的服務器; 所以我們就需要一款工具來解決以上問題。 k…

    2017-07-03
  • grub文件文件修復

    首先我們先破壞一下grub文件 這里我們先查看一下電腦是哪塊硬盤啟動的 這里我們就直接破壞硬盤的二進制數據,以達到grub的破壞。 要記住我們只能破壞前446字節,也就是bootloader。后面64字節是分區表。 我們可以查看一下前512字節的二進制文件 hexdump -C -n 512 /dev/sda 先破壞/boot/grub/stage1的前44…

    2017-07-28
欧美性久久久久