第二章 Linux入門,第二章linux入門
linux的核心版本由三部分組成:
[root@centos7 ~]#uname -r3.10.0-693.el7.x86_64
以.分隔所代表的意思依次是:
主要版本號 次版本號碼 末版本號碼 編譯版本號碼 廠商版本 CPU架構
其中後面部分是發行商發行版本添加上的
Linux哲學思想:
1、一切皆檔案;
把幾乎所有資源,包括硬體裝置都組織為檔案格式;
2、由眾多單一目的小程式組成;一個程式只實現一個功能,而且要做好;
組合小程式完成複雜任務;
3、盡量避免跟使用者互動;
目標:實現指令碼編程,以自動完成某些功能;
4、使用純文字檔案儲存配置資訊;
目標:一款使用的文本編程器即能完成系統配置工作;
[root@centos7 ~]#sha1sum /dev/sr0b9d9feace8d3b01527114f15eda5b29c64a7a60c /dev/sr0
查看在網站上下載的鏡像是否完整,與網站上的加密檔案比較。
虛擬機器的三種網路模式:
Bridged(橋接模式):虛擬機器網路功能和真機一樣,最接近真是主機,虛擬機器和主機交換資料需要經過路由器,虛擬機器的IP容易和其他真機的IP衝突
NAT(地址轉換模式):通過宿主機上網和交換資料,宿主機IP地址改變,虛擬機器不變。同時公網無192.169.163.131(我的虛擬機器ip)地址,
出網需要轉為區域網路然後轉為公網地址
Host-only:宿主機不為虛擬機器提供上網路由服務,不能上網,只能與真主機交換資料,或內部虛擬機器之間。
[root@centos7 ~]#cat /proc/meminfo
按住shift+pageup向上翻頁,查看系統資訊
[root@centos7 ~]#cat /proc/partitionsmajor minor #blocks name 8 0 209715200 sda 8 1 1048576 sda1 8 2 52428800 sda2 8 3 20971520 sda3 8 4 1 sda4 8 5 2097152 sda5 11 0 8491008 sr0
查看分區資訊命令,sda4擴充分區不能存放資料,容量很小
[root@centos7 ~]#lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 200G 0 disk├─sda1 8:1 0 1G 0 part /boot├─sda2 8:2 0 50G 0 part /├─sda3 8:3 0 20G 0 part /app├─sda4 8:4 0 1K 0 part└─sda5 8:5 0 2G 0 part [SWAP]sr0 11:0 1 8.1G 0 rom /run/media/root/CentOS 7 x86_64
查看磁碟大小和分區的掛載資訊
終端terminal:
鍵盤滑鼠顯示器
控制台console(一般情況下用不到,救援模式顯示的console)
- 虛擬終端(tty:teletypewriters,/dev/tty# #為[1-6])
tty可有n個,Ctrl+Alt+F[1-6]
- 圖形終端(/dev/tty7) startx,xwindows
CentOS6:Ctrl+Alt+F7
CentOS7:在哪個終端啟動,即位於哪個虛擬終端
關閉圖形介面:init 3,如果是位於層級且用startx開啟的圖形介面,直接在圖形介面logout就行
ttyS
- 偽終端(pty:pseudo-tty,/dev/pts/#)
pty,SSH遠端連線
[root@localhost ~]#whoamiroot
查看目前使用者
[root@centos7 ~]#who am iroot pts/2 2017-11-09 13:09 (192.168.27.1)
查看當前終端的使用者和終端號
[root@centos7 ~]#whoroot :0 2017-11-09 08:51 (:0)root pts/1 2017-11-09 13:01 (:0)root pts/2 2017-11-09 13:09 (192.168.27.1)
查看有多少人在哪個終端登入
[root@centos7 ~]#who -r run-level 5 2017-11-09 08:51[root@centos7 ~]#runlevelN 5
查看當前的運行層級及從哪個運行層級切換過來的
[root@centos7 ~]#echo $SHELL/bin/bash
查看當前使用的shell
[root@centos7 ~]#cat /etc/shells/bin/sh/bin/bash/sbin/nologin/usr/bin/sh/usr/bin/bash/usr/sbin/nologin/bin/tcsh/bin/csh
查看所有的shell,如果想使用其他的shell,直接輸入路徑即可
什麼是Shell?
Shell是Linux系統的使用者介面,提供了使用者與核心進行互動操作的一種介面。它接受使用者的輸入的命令並把它送
入核心去執行。
Shell也被稱為Linux的命令直譯器(command interpreter)
Shell 是一種進階程式設計語言
在Shell中可執行檔命令有兩類:
內建命令:由shell內建的,而且通過某命令形式提供;
外部命令:在當前系統的某檔案系統路徑下有對應的可執行程式檔案;
which,whereis
區別內部或外部命令:
# type COMMAND
[root@centos7 ~]#strace cat[root@centos7 ~]#lstrace cat
strace查看的是程式調用的系統庫,lstrace查看是程式調用的函數庫
[root@centos7 ~]#cat /etc/profile.d/env.shPS1="\[\e[1;35m\][\u@\h \w]\\$\[\e[0m\]"
在/etc/profile.d目錄下建立一個以.sh結尾的檔案,即為提示符格式控制,對所有使用者有效。