Linux計算機基礎-入門2016-07-19
計算機系統的組成部分
計算機系統由硬件系統和軟件系統兩大部分組成
硬件系統
馮.諾依曼體系結構:
1946年數學家馮.諾依曼提出運算器,控制器,存儲器,輸入設備,輸出設備。
具體變現為一下硬件:
運算器,控制器 ——> CPU
存儲器 ——> 內存(斷電數據清空),硬盤(可永久存儲數據)
輸入設備 ——> 鍵盤,鼠標等
輸出設備 ——> 顯示器 打印機等
軟件系統
OS : Operating System,通用的軟件程序
操作系統需要提供以下功能:
硬件驅動
進程管理
內存管理
網絡管理
安全管理
文件管理
OS 分類:
服務器OS :
RHEL, Centos ,Windows Server ,AIX
桌面OS :WIN 7 , WIN 10 ,Mac OS ,fedora
移動設備OS :Andoriod ,IOS ,YunOS
開發接口標準:
如果需要用戶直接和硬件打交道很困難,由于硬件只能識別二進制文件,離人類語言相對比較遙遠,所有就定義了相關標準:
ABI :應用二進制接口,它描述了應用程序與OS之間底層接口,允許編譯好的目標代碼在使用兼容的ABI的系統中無需改動就可以運行;
API :應用程序接口,它定義了源碼和庫之間的接口,因此同樣的源代碼可以在支持這個API的任何系統中編譯。
POSIX : 可移植性操作系統接口(有時間好好研究下)
服務器三大系統
Windows :windows 2012 windows 2010
Linux :GUN/Linux
Slackware :SUSE linux Enterprise Server (SLES)
Opensuse (桌面)
Debian : ubuntu ,mint
Redhat : rhel
Centos
Fedora
Unix :System (Bell Lab)
AIX (IBM)
Solaris (SUN)
HP-UX (HP)
BSD:(Berkeley System Distribution)
NetBSD
OpenBSD
FreeBSD
Linux 哲學思想:
1.一切都是一個文件(包括硬件);
2.小型,單一用途的程序;
3.連接程序,共同完成復雜的任務;
4.避免令人困惑的用戶界面;
5.配置數據存儲在文本中。
服務器架構
以前的服務器架構的(OIE):
數據庫:oracle數據庫
服務器:IBM的小計
數據存儲:EMC數據存儲
現在服務架構:
數據庫:mysql(免費開源數據庫)
服務器:X86服務器
數據存儲:自定義存儲服務器
關于單位換算:
計算機最小單位: b bit 位
字節byte:1byte = 8 b
2^10=1024=1K
2^20=1024K=1M
2^30=1024M=1G
2^40=1024G=1T
2^50=1024T=1P
2^60=1024P=1E
2^70=1024E=1Z
2^80=1024Z=1Y
2^901024Y=1B
Linux分區概括
關于Linux識別硬盤后,硬盤的顯示型式
sata scsi sas 塊設備 字符設備
/dev/sda,sdb………….sdz.sdaa.sdab
文件系統
文件系統:
硬盤文件系統:ntfs , fat , ext2 , ext3 , ext4 , xfs , btrfs
光盤文件系統:iso9660
分區類型:(擴展分區不一定是sda4 開始的)
MBR : 主引導記錄(master boot record)
主分區: 1 disk <= 4 個;
擴展分區: 1 disk <= 1個;
邏輯分區:/sda5-
GPT:
UEFI:
Linux分區要求:(Linux分區一個/就行)
/dev/sda1 /boot :
/dev/sda2 / :
/dev/sda3 swap :
/dev/sda4 擴展分區
/dev/sda5 /testdir :
Linux 在分區和安裝系統時,可以看見后臺的數據顯示
ctrl+alt+f2: 可以切化命令界面
ctrl+alt+f6: 可以切化圖形界面
基礎知識還需要加強(只是基本的了解還多需要深入了解):
1.關于操作系統與電腦的通信過程(機器語言,匯編語言,C語言等等);
2.關于不同操作系統的磁盤分區及存儲數據方式學習;
學習的Linux的命令(后期慢慢做整理)
lscpu , file ,cat , yes , strace yes ,ltrace yes , lsblk ,df
lscpu命令
功能說明:顯示關于CPU的信息
[root@Centos7 ~]# lscpu
Architecture: x86_64 #架構x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Model name: Intel(R) Core(TM) i5-4210M CPU @ 2.60GHz
Stepping: 3
CPU MHz: 2594.040
BogoMIPS: 5188.08
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
NUMA node0 CPU(s): 0,1
file命令
功能說明:該命令用來識別文件類型,也可用來辨別一些文件的編碼格式。它是通過查看文件的頭部信息來 獲取文件類型,而不是像Windows通過擴展名來確定文件類型的。
執行權限 :All User
指令所在路徑:/usr/bin/file
語法: file [ -bchikLnNprsvz ] [ -f namefile ] [ -F separator ] [ -m magicfiles ] file …
參數:
參數 |
長參數 |
描敘 |
-b |
列出文件辨識結果時,不顯示文件名稱。 |
|
-c |
詳細顯示指令執行過程,便于排錯或分析程序執行的情形 |
|
-f |
列出文件中文件名的文件類型 |
|
-F |
使用指定分隔符號替換輸出文件名后的默認的“:”分隔符。 |
|
-i |
輸出mime類型的字符串 |
|
-L |
查看對應軟鏈接對應文件的文件類型 |
|
-z |
嘗試去解讀壓縮文件的內容 |
|
–help |
顯示命令在線幫助 |
|
–version |
顯示命令版本信息 |
舉例:
[root@localhost bin]# file dd —->查看命令dd的文件類型
dd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
[root@localhost bin]# file cut —->查看命令dd的文件類型
cut: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
[root@localhost bin]# file link —->查看命令dd的文件類型
link: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
[root@localhost tmp]# file vgauthsvclog.txt.0
vgauthsvclog.txt.0: ASCII text
[root@localhost tmp]# file yum.log
yum.log: empty
[root@localhost tmp]# file yum_save_tx-2016-07-21-16-547yikMQ.yumtx —->查看普通文件類型
yum_save_tx-2016-07-21-16-547yikMQ.yumtx: ASCII text
cat:看文本文件的命令
[root@localhost tmp]# cat /etc/issue
CentOS release 6.8 (Final)
Kernel \r on an \m
==============================
Welcome to my hostname SA!
Welcome to my hostname SC
==============================
lsblk : 查看硬盤數量
功能說明:
lsblk(列出塊設備)命令用于列出所有可用塊設備的信息,但是,它不會列出RAM盤的信息。塊設備有硬盤,閃存盤,CD-ROM等等。
sblk命令包含在util-linux-ng包中,現在該包改名為util-linux。這個包帶了幾個其它工具,如 dmesg。要安裝lsblk,請在此處下載util-linux包。
語法:
lsblk [options] [device…]
參數:
-a : 默認選項
-m :Output info about device owner, group and mode(顯示設備的屬主,屬組和權限)
-s :逆序選項
舉例:
[root@Centos7 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 190M 0 part /boot
├─sda2 8:2 0 46.6G 0 part /
├─sda3 8:3 0 3.7G 0 part [SWAP]
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 18.6G 0 part /testdir
sr0 11:0 1 7.2G 0 rom /run/media/root/CentOS 7 x86_64
說明:
7個欄目名稱如下:
NAME : 這是塊設備名。
MAJ:MIN : 本欄顯示主要和次要設備號。
RM : 在本例中設備sdb和sr0的RM值等于1,這說明他們是可移動設備。
SIZE : 本欄列出設備的容量大小信息。例如298.1G表明該設備大小為298.1GB,而1K表明該設備大小為1KB。
RO : 該項表明設備是否為只讀。在本案例中,所有設備的RO值為0,表明他們不是只讀的。
TYPE :本欄顯示塊設備是否是磁盤或磁盤上的一個分區,在本例中,sda和sdb是磁盤,而sr0是只讀存儲(rom)。
MOUNTPOINT : 本欄指出設備掛載的掛載點。
df : 查看磁盤空間
功能說明:linux中df命令的功能是用來檢查linux服務器的文件系統的磁盤空間占用情況??梢岳迷撁顏?/span> 獲取硬盤被占用了多少空間,目前還剩下多少空間等信息。
語法: df [選項] [文件]
參數:
必要參數:
-a :全部文件系統列表
-h :方便閱讀方式顯示
-H :等于“-h”,但是計算式,1K=1000,而不是1K=1024
-i :顯示inode信息
-k :區塊為1024字節
-l :只顯示本地文件系統
-m :區塊為1048576字節
–no-sync :忽略 sync 命令
-P :輸出格式為POSIX
–sync :在取得磁盤信息前,先執行sync命令
-T :文件系統類型
選擇參數:
–block-size=<區塊大小> :指定區塊大小
-t<文件系統類型> :只顯示選定文件系統的磁盤信息
-x<文件系統類型> :不顯示選定文件系統的磁盤信息
–help :顯示幫助信息
–version :顯示版本信息
舉例:
[root@Centos7 ~]# df —->顯示所有磁盤信息
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 48803552 3297940 45505612 7% /
devtmpfs 486148 0 486148 0% /dev
tmpfs 500680 88 500592 1% /dev/shm
tmpfs 500680 7204 493476 2% /run
tmpfs 500680 0 500680 0% /sys/fs/cgroup
/dev/sda5 19520512 32928 19487584 1% /testdir
/dev/sda1 191148 141200 49948 74% /boot
tmpfs 100136 12 100124 1% /run/user/0
/dev/sr0 7587292 7587292 0 100% /run/media/root/CentOS 7 x86_64
[root@Centos7 ~]# df -TH —->文件類型,人類可讀的方式
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 xfs 50G 3.4G 47G 7% /
devtmpfs devtmpfs 498M 0 498M 0% /dev
tmpfs tmpfs 513M 91k 513M 1% /dev/shm
tmpfs tmpfs 513M 7.4M 506M 2% /run
tmpfs tmpfs 513M 0 513M 0% /sys/fs/cgroup
/dev/sda5 xfs 20G 34M 20G 1% /testdir
/dev/sda1 xfs 196M 145M 52M 74% /boot
tmpfs tmpfs 103M 13k 103M 1% /run/user/0
/dev/sr0 iso9660 7.8G 7.8G 0 100% /run/media/root/CentOS 7 x86_64
讓Centos自動開機登錄,修改文件配置如下:
gedit /etc/gdm/custom.conf
[daemon]
AutomaticLoginEnable=True
AutomaticLogin=root
學習過的其它小命令
cat:看文本文件的命令
yes:屏幕上無限出現Y
strace yes:(查看系統調用YES命令程序)
Ltrace yes:(查看函數庫調用YES命令程序)
原創文章,作者:linux_root,如若轉載,請注明出處:http://www.www58058.com/27672