1、安裝
a、直接將操作系統安裝在硬件設備上(比較麻煩,不建議)(雙系統模式)
b、使用VMM管理平台來安裝(虛擬機模式)“VMM管理平台:VMware workstation、Virtualbox”
選語言—— 選鍵盤—— 選時區—— 寫主機名—— 定義root密碼(超級用戶)—— 划分磁盤空間(3個分區必須要划分:/boot reboot)
Mac安裝(Mac 上用VMWare虛擬機安裝Linux-Ubuntu)詳細步驟鏈接https://www.cnblogs.com/taostaryu/p/9404615.html
Windows(Windows上用VMWare虛擬機安裝Linux-Ubuntu)詳細步驟鏈接https://blog.csdn.net/meiqi0538/article/details/88406909
Ubuntu映像文件下載地址https://launchpad.net/ubuntu/+cdmirrors?_ga=2.214379024.606055489.1564658320-701372154.1564479660
CentOS映像文件下載地址http://mirrors.aliyun.com/centos/7/isos/x86_64/
c、拍攝快照,如果出錯,可以恢復快照!!!
2、計算機性能:
橫向擴展 集群「人多力量大」:負載均衡集群、高可用集群、高性能集群「應用層」— hadoop集群
縱向擴展(換機器) 應用遷移
系統的啟動
--電源
--BIOS芯片
1、加電自檢,檢查硬件設備是否正常。
2、啟動系統,選擇系統啟動「1、需解決系統所在位置的讀取順序問題:硬盤、網絡(PXE)、U盤、CD/DVD…2、需要將硬盤中的系統文件加載到內存中,讓CPU讀取,並運行。MBR分區(BootLoader『LILO、grub』),尋找並引導系統加載」)
內核程序加載完成,但是,並不能運行普通應用
--init
此時,需要運行第一個應用程序 — init(init:將操作系統分為7「0 - 6」個級別,每一個級別上都會運行對應的應用程序「指定默認啟動級別」)
--讀取默認級別3(命令行)「0:關機 1:單用戶模式(安全模式) 3:命令行 5:圖形界面 6:重啟」 —— chkconfig / rc.*d(每一個級別所需啟動的進程)
--讀取rc.local,系統啟動最后讀取這個文件,管理員可以將需要開機就運行的命令,添加在這里
chkconfig的作用:
指定服務開機時在哪個級別上,啟動或者關閉; -h/—help 查看幫助;list;level 12345 Name <on|off>;
update-rc.d在Ubuntu下控制某些程序開機啟動;-f (force 強制)
Linux命令的基本格式:
Command [選項] [參數]
[]:中括號代表可有可無;指定實現命令的某個特定功能;
<>:代表命令執行的對象;如果沒有加<>代表不能省略;
長整型選項
短整型選項 *短整型可以合並,而長整型不能合並
擴展:命令 子命令【選項】【參數】
常用的Linux命令的基本使用
echo $PATH //環境變量 (變量:一段被命名的內存空間而已)
如果命令不在PATH路徑下,如何解決?
1、通過絕對路徑來運行該命令(絕對路徑執行的是命令本身;而有些命令,是系統默認別名「可以自己添加」 - alias;which command //查找命令的絕對路徑;\ls //使用反斜線直接運行)
2、將這個路徑添加到PATH路徑下(PATH = $PATH:/xxx/xxx)
ls //顯示文件信息
-l //查看文件的詳細信息(屬性),可縮寫為ll;
-i //inode(屬性);
-h //human人類可讀;
-F //顯示文件后面的標記(用來區分文件類型);
-r //倒序顯示文件內容;
-a //顯示所有文件(包括隱藏文件)
pwd //顯示當前路徑;$PWD 默認有一個這個的環境變量;
cd //切換到目標目錄;
~ 當前用戶的家目錄(/root /home);
. 當前目錄(以 . 開頭的文件為隱藏文件);
.. 當前目錄的上一級目錄;
- $OLDPWD存放上一次經過的目錄;
touch //修改時間戳
Stat atime 訪問時間 mtime 修改文件內容的時間 ctime修改文件屬性
touch a.txt
[[CC]YY]MMDDhhmm[.ss]
20 19 0 8 01 16 36 . 22
-a 修改訪問時間;
-m 修改修改時間;
-t 指定修改成什么時間;
-c 修改文件Mtime,如果文件不存在,不創建該文件
mkdir //創建文件夾;
-p 遞歸創建多級子目錄;
-v 詳細顯示創建過程;
tree 以樹狀形式顯示目錄及文件結構(-L NUM 查看多少級子目錄;-d 只顯示目錄文件)
rm //刪除;
-f force強制;
-i 詢問是否刪除文件,默認命令(alias rm = ‘rm -i’);
\rm abc ;/bin/rm abc;
-r 刪除目錄文件
clear //清屏 = ctrl + l
查詢幫助信息
命令分類:
1、內部命令 help Command
2、外置命令 Command --help或者Command -h
b\Man:
man command /向下查找指定內容(Ubuntu)
n向下查找;N向上查找
?向上查找指定內容
Linux的目錄結構
樹狀結構;一切文件都在根下
儲存設備必須掛載才能使用;
fdixk 划分磁盤分區
/dev/sda1
/dev 設備文件存放路徑
sd 代表磁盤類型
df -h 查看磁盤掛載情況
mkfs 創建文件系統(格式化)
mount 實現磁盤掛載
umount 卸載磁盤
/etc/fstab :
通過命令行掛載得到的磁盤是臨時的
dd 創建虛擬磁盤
dd if=/dev/zero of=/root/名 bs=1024k count=10 (使用dd創建虛擬磁盤是必須用zero)
fdisk (磁盤文件)— 做磁盤分區
sd — scsi類型的磁盤(hd IDE)
a — 第一塊磁盤(b,c…)
1 — 第一個分區(2,3,4…)
Linux的主要目錄
/
/bin 存放命令文件
/boot 存放系統啟動文件(內核、grub程序)
/cdrom 光盤目錄
/dev 存放設備文件
/etc 大部分的系統配置文件(c字符設備、d塊設備)
/home 普通用戶的家目錄
/lib /lib64 庫文件(.so結尾的文件)
/lost+found 非正常關機下的碎片文件(空磁盤掛載上來,默認就會有這個目錄)
/mnt /media 專門提供掛載的掛載點
/opt 第三方軟件的安裝目錄
/proc /sys 進程、系統目錄(默認是空的,只有啟動后才會存放對應進程和系統文件)
/root root用戶的家目錄
/sbin 存放命令的目錄
/tmp 臨時文件存放目錄
/usr 常見軟件安裝目錄
/var 文件隨時會被修改的目錄(日志文件)
目錄的常見命令
1、查看目錄內容
終端使用技巧:
自動補全
ls 查看文件內容;
2、搜索使用過的命令
Ls
文件通配符:
*任意長度的任意字符
?任意一個字符
[]取值范圍(只取范圍內的一個字符)
sd[abc] — sda sub sdc
[a-f] — sd[a-f] sda adb … sdf
^托字符,指定以某個字符開頭
$以某個字符結尾
grep命令(行過濾,查看文件中的匹配,過濾某一行)
grep [選項] [匹配的字符] [對象]
-v 反選
^$ 空白行
-i 忽略大小寫
cp -a //攜帶所有文件屬性一塊復制
mv (move) //移動文件;修改文件名稱
mv /tmp/a /root/
4、文件名擴展
{}
創建目錄 姓名-學號 貓南北-001
mkdir{貓南北}-{001}
— 貓南北-001
mkdir{貓南北,狗東西}-{001,002}
— 貓南北-001
貓南北-002
狗東西-001
狗東西-002
5、查看文件內容
cat //一次性查看文件中所有內容
cat /etc/init.d/
more //man命令
/
?
q
less //在更多的情況下,查看大文件,使用less
tail //默認查看倒數10行
-n //tail -n 20 文件名 (簡化 -20)
*-f * 不退出文件,實時查看文件內容
head //查看行首
-n //head -n 20 文件名 (簡化 -20)
6、其他
echo -e -n
echo $PATH
-n //print("Hello World,end='')print("Hello World'')
print("Hello World,end='')
-e //識別\t\n\r
echo -n -e "Hello World"
重定向 > and >>
fd 文件標識符
0 — 標准輸入
1 — 標准輸出
2 — 錯誤輸出
程序 = 指令 + 數據
代碼 變量
變量里面的數據從何而來?通過代碼執行的數據又輸出到哪里?
規定:默認標准輸入為 — 鍵盤;默認標准輸出為 — 顯示器。而重定向就是用來改變輸入和輸出的
輸出重定向
> //覆蓋重定向 默認工作中不能使用 set-C 去掉這個功能,同時 > | 可以進行強制重定向(set + C 開啟覆蓋重定向功能)
> > //追加重定向 //追加重定向在原有的文件上,在添加追加的數據即可;
在Linux中,命令輸出除了默認輸出結果以外,還返回一個命令執行狀態的結果;返回代表命令執行成功,而返回非0則是失敗;$?存儲上一條命令的執行狀態結果;
在工作中,我們往往不需要命令輸出的結果,而只需要命令執行的狀態,我們就會使用 重定向 將輸出結果重定向至 空文件(/dev/null)(cat a.txt > /dev/null)
輸入重定向
< 把后面的文件,交給前面的命令來執行;
tr命令,將前面的內容替換為后面的內容
tr abc ABC < a.txt
<<將多行內容同肘輸入,用在cat命令中
cat >>文件<< EOF
>a
>>EOF
錯誤輸出重定向
2> 需要帶上fd (文件標識符)
2>> 追加的錯誤重定向輸出
擴展優化:
cat a.txt > /dev/null
cat a.txt 2> /dev/null
&> /dev/null無論命令執行正確與否,都將輸出內容指定到/dev/null
&>> [普通文件]
管道
command 1| comand 2| command BI command 4| ..........
將前面的命令的執行結果,輸出給后面一條命名執行;
【Linux思想:結合小功能,完成復雜功能】
tail -7 /etc/fstab |cut -d''-f1
cut切
-d指定分隔符 " "
-f取的列 1-3 1,3 1