一:Linux的登錄
打開終端,輸入登錄用戶和密碼即可完成登錄。Linux的超級管理員用戶是root,密碼不會回顯。如果登錄的是root賬號則命令窗口會顯示#,如果是普通賬戶登錄,則顯示$
如果需要切換到root賬戶,可使用 su root進行切換,需要輸入密碼。理論上我們使用Linux應該使用普通賬號登錄,因為安全。為了方便,我們會選擇使用root賬戶。
二:網絡連接
1. 通過客戶端遠程連接Linux
1.1 Linux客戶端工具
我們通常使用的Linux客戶端工具有SecureCRT、Xshell,可以通過客戶端工具遠程操作Linux。但是遠程工具只提供了字符界面,通過命令來操作Linux。
我們的SecureCRT和Xshell遠程連接所采用協議主要有:SSH或telnet協議。
1.2 創建遠程連接
創建遠程連接需要提供的內容有:主機IP、端口、用戶名和密碼。用戶名有自建的用戶名和系統管理(root),如果登錄成功。自建用戶(普通用戶)其終端會出現$,如果是root用戶則會在終端出現#
2. 網絡相關內容
2.1 查看Linux IP地址:
在終端輸入 ifconfig 可以查看到其IP地址,如果輸入的是ifconfig -a則會顯示IP地址的詳情。我們的IP地址會在 inet addr: xxx.xxx.xxx.xx 這個位置顯示
但查看結果如果出現127.0.0.1則表示Linux沒有正確配置ip地址,則需要配置ip地址。
如果虛擬使用的是橋接模式則會出現192.168.1.x網址,如果是NAT模塊,則會出現192.168.xx.xxx的網址。否則就是錯誤的IP地址,需要重新配置IP地址。
2.2 更換IP地址
配置ip地址有兩種,一種是設置固定ip,一種是設置自動獲取ip地址。為了簡單,一般會選擇設置自動IP地址,設置自動IP的命令為:dhclient
如果輸入dhclient,提示dhclient(1551) is already running,則關閉這個進程方可啟動dhclient,其操作為:kill -9 1551 其中1551是dhclient這個進程的編號
再次使用ifconfig便可獲取到由系統生成的ip地址,如果是192.168.xx.xxx則表示成功獲取了ip地址。
2.3 關於橋接模式和NAT模式
橋接模式是由網關來分配IP地址,其分配的IP地址和物理機的IP地址是同一網段(即IP前三段相同)。NAT模式是由物理機給虛擬機分配IP,所以會出現IP地址前兩段相同后兩不同的情況。
2.4 檢查網絡連通性
ping命令的原理是本機往目標電腦扔一個網絡數據包,如果目標電腦能接收到這個數據包則會返回一個對應的網絡數據包。如果我能看到對應的網絡數據包,我就知道網絡的連通情況。
三:Linux基本操作
1. 文件和文件夾操作
1.1 Linux文件系統說明
在Linux系統會有如下的目錄:
- bin:是Linux中的可執行文件所在目錄,一般Linux命令文件在此目錄中。除此還有一個sbin,這是系統級的可執行文件所在目錄。
- boot:Linux的啟動文件都在該目錄下,相當於windows中的c:\windows目錄
- dev:是設備文件,在Linux中所有的硬件設備在操作系統層面是以文件的方式進行管理的。
- home:每一個Linux普通用戶都會在home目錄下創建一個自己用戶名命名的文件夾。一般用戶文件都會默認存儲在home目錄下。如果是root賬戶其以自己名稱命名的文件夾在根目錄下,即/root。我們可以使用 cd ~ 切換到home目錄
- lib:是第三方擴展文件
- mnt:相當於光盤驅動器
- opt:操作文件,一般也是用來放置一些需要被操作的文件,這里對文件沒有特殊要求。
- proc:是一些進程數據信息,進程數據信息理論上可以查看也可以修改
- usr:Linux中很多軟件安裝之后,會在該目錄下。即軟件默認安裝在usr目錄下
- var:是軟件的一些文件,包含配置文件等信息。
1.2 Linux的幾個基本操作
ls操作
我們輸入ls可以顯示當前目錄的文件和文件夾,但是我們展示效果不明顯,可以使用 ls -l進行顯示,效果會更好。ls -l操作我們會用得特別多,在Linux中使用了 ll 這個命令來簡化ls -l操作。下列顯示了當前文件下的詳細信息,第1位表示文件屬性如果第1位是-表示普通文件,如果是 d 表示目錄,如果是 l 表示快捷方式
平時我們用得特別多提ls -alt用來按時間倒序排序顯示這個文件夾下所有的信息。也可以使用ll這個命令來替代ls -l
cd 操作
cd是切換工作目錄的操作,其命令為: cd 目錄名稱 要求當前工作目錄有這個目錄名稱。
已知當前目錄下有Desktop這個目錄,要切換到這個目錄下來可使用:cd Desktop即可。
如果我們要切換到home目錄,在當前目錄下是沒有的,所以我們切換不過去。這時候我們要使用絕對路徑,已知home的絕對路徑為: /home 所以可以使用cd /home來實現。注意:第一個 / 是根目錄,所以一定要注意。
我們可以通過cd ..回到上一級目錄,可以使用cd /回到根目錄,可以使用cd ~回到該用戶的home目錄,可以使用cd -回到上一次的工作目錄。
pwd操作
可以使用pwd操作來查看當前工作目錄在哪里,直接輸入pwd即可。print work directory打印當前工作路徑
當前顯示/root表示在根節點的root目錄下,第1個/表示根目標,后面的/都表示分隔符。
先查看當前工作路徑在哪里,再查看當前目錄有哪些文件和文件夾
分別使用cd操作,檢查都cd到哪里去了,那些目錄都有哪些文件。
clear清屏
輸入clear,可以清除屏幕上的文字,讓光標回到第1行。
1.3 目錄管理
mkdir創建目錄
該命令是make dir即為創建目錄,創建目錄的命令為: mkdir 目錄名稱
小練習:在/home目錄下創建一個administrator的目錄,在這個目錄創建test1和test2兩個目錄。
rmdir刪除目錄
rmdir是刪除目錄的意思,但是只能刪除空目錄。其命令為:rmdir 目錄名稱
1.4 文件操作
touch創建文件
mkdir只能創建目錄,touch只能創建文件。創建文件命令為:touch 文件名.擴展名
小練習:分別在test1和test2中創建file和file.txt兩個文件
rm刪除文件
rm是刪除文件的操作,同時也能夠刪除文件夾。其操作為:rm 文件名稱 。其有三個參數分別是: i(詢問) r(遞歸) f(強制),如果是rm -i 文件名稱 則表示會讓用戶確認是否刪除。 如果是rm -rf 文件名稱 則表示不會讓用戶確認,同時喜歡用這個操作來完成對目錄的刪除。
cp 拷貝文件
cp是copy拷貝文件的意思,拷貝文件是指將一個文件拷貝到另外一個目錄下。所以其操作為cp 源文件 目標位置
這時候我們可以實現將administrator的test1目錄中的內容拷貝到/root下。如果使用提cp test1 /root是無法拷貝test1中的內容,會略過目錄。解決方案可以是cp test1/* /root是可以完成的。也可以使用-r參數實現遞歸,即把test1中的所有文件和文件夾都拷貝過去。
mv移動、重命名
mv和cp是差不多的,只是有是否保存源文件的區別。所以mv是移動操作,其操作為:mv 源文件 目標位置,完成的是剪切操作。但是mv也有重命名操作,命令為:mv 文件名 新文件名
小練習:將file文件重命名為:file.log
find查找文件
find是在文件夾中查找文件,其最常用的語法為:find / -type f -name 文件名
find后面直接跟文件路徑,即在哪里開始進行查找。-type表示查找的文件類型,如果是f表示普通文件,如果是d表示文件夾,也可以查找快捷方式(l)。但到的是文件的絕對路徑。
小練習:在Linux中查找stdio.h文件,並把這個文件復制到/home目錄下。
ln軟連接和硬連接
Linux的軟連接相當於快捷方式,可以通過ln -s 文件 另一個目錄/文件名 的方式創建軟連接,我們在另一個目錄會得到此文件的快捷方式,因為可以正常操作這個文件。
1.5 文件查看
cat查看文件
cat是查看文件全部內容,其命令為:cat 文件名 。但是我們也可以在顯示全部內容的時候,同時顯示行號,其命令為:cat -n 文件名。
wc字符統計
wc是字符統計操作,統計某個文件有多少行、多少個單詞、多少個字符。其操作為:wc 文件名,它有很多參數,但沒有參數是最全的。
more和less分頁顯示
more和less都可以進行分頁顯示文件內容,more和less的操作基本相似:more 文件名 或 less 文件名 。會分頁顯示內容,要翻到下一頁可以是回車和空格,要退出可以是:q ctrl+c或esc中的某一個。
head顯示文件頭
head顯示文件的前面若干行內容,如果只要顯示一部分內容並且是文件最前面,用head是最合適的。其操作為:head -num 文件名,其中num為任意數字。例如要查看文件的前30行內容,則為:head -30 stdio.h
tail 顯示文件尾
tail是顯示文件末尾若干行內容,其操作為:tail -num 文件名,num也為任意數字。例如要查看最后50行內容,則為:tail -50 stdio.h
查看文件中間
查看文件中間沒有一個專門的命令,由head和tail組合使用來完成。例如查看文件第30到50行內容,其操作為先顯示前50行內容,再從這中間顯示后20行內容即為中間30-50行內容。其操作為:head -50 stdio.h | tail -20 ,用 | 管道符來組合我們的操作。
小練習:查看文件末尾50行,同時顯示行號。
grep命令
是在文件中查找指定內容,如果某行包含指定內容,則顯示整行。其命令為:grep 關鍵字 文件名。例如在stdio.h中查詢帶include關鍵字的行。如果同時要顯示行號,可以grep -n 關鍵字 文件名 即可。
grep可以與其他命令組合使用,例如要查看ip地址,可以組合到grep。用ifconfig查到所有內容,然后再用grep顯示帶關鍵字的行。參考命令:ifconfig | grep "192"
2. 權限及用戶操作
2.1 關於用戶操作
useradd創建用戶
可以使用useradd來創建用戶,其命令為:useradd 用戶名即可。但是只能在root用戶下進行創建,其他用戶沒有此權限。
passwd更改密碼
使用passwd更改用戶密碼,其命令為:passwd 用戶名,回車后輸入密碼即可,密碼不會在終端顯示。
su切換用戶
使用su可以切換用戶,其命令為:su 用戶名即可切換用戶。切換用戶之后可能需要輸入密碼。如果是su - root,多加一個 - 是同時更改環境變量。
userdel刪除用戶
其命令為:userdel 用戶名
2.2 權限相關命令
chown命令
chown修改文件擁有者,我們通過ls -l命令可以查看到這個文件的所有者和所屬組,可以通過chown修改文件的所有者。其操作為chown 用戶 文件 例如:chown qianli stdio.h
chmod修改權限
通過ls -l命令查看文件信息,會得到如下顯示:
第一段總十位,其中2-10位表示文件的權限,權限是每3位一段,共3段。每段表示擁有的權限分別為:rwx即讀寫執行,第一段表示文件所有者的權限user(一般最大),第二段表示文件所屬組group的權限,第三段表示其他用戶other權限(一般最小)
修改權限的命令為:chmod +權限 文件 或chmod -權限 文件 ,例如要給stdio.h文件增加執行權限,則操作為:chmod ug+x stdio.h,想弄到rwxr-xr--權限,如何操作?在Linux中允許使用數字來表示權限,chmod 754 stdio.h,最大權限是:777
我們也可以將一個文件下所有文件的權限設置為某個:chmod -R 777 www,使用大寫R做遞歸操作,表示將文件夾所有文件進行權限設置。
3. vi文件編輯
vi是對Linux中的文件進行編輯操作,相當於Windows中的記事本。它的操作包含4個部分:
用vi打開文件
用vi打開文件,其操作為:vi 文件名稱,注意文件名稱必須為文件的全稱,即帶擴展名的,否則會創建一個新文件,vi也不能夠編輯一個目錄。
用vi修改文件內容
vi編輯器不能直接修改文件內容,要修改需要先輸入: i I a A的任意一個字符,可進入到Insert模式,在Insert模式下可以做出編輯行為。
退出vi編輯器
要退出之前,先按ESC鍵確保vi不在INSERT模式,再按 :wq 保存退出,:不可少。w是寫入,q是退出,!保存強制行為。
vi的編輯操作:
可以通過一些快捷操作完成,整行拷貝、整行刪除、查找文件內容、撤銷等操作。
注:copy拷貝 paste粘貼 delete刪除 word單詞 undo撤銷 next下一個
- 如果進行整行拷貝,先退出INSERT模式,再輸入yy,再輸入p會在光標下粘貼內容。
- 如果要刪除整行內容,則輸入dd即可整行刪除。也可以輸入dw刪除一個單詞。
- 如果要撤銷操作:則輸入u
- 如果要查找,輸入 /要查詢的內容 即可進行查找,輸入n查找下一個
如果要找上一個shift+n或N,如果是要從下往上查找,可以輸入shift+/ - 在vi中可以直接跳轉至某行,輸入numG,num為任意數字例如:5G
- 在vi中可以顯示行號,輸入:set nu,如果不要顯示行號,輸入:set nonu
在/var/www/html目錄下創建一個test.html文件,然后再寫一段內容,保存后退出。
<html>
<head>
<title> this is title</title>
</head>
<body>
<h1>hello world</h1><br/>
<maquee>china hunan changsha luguqiye squ</marquee>
</body>
</html>
四:Linux下軟件安裝和運行
搭建測試環境就是在Linux系統中安裝一個軟件,並且運行起來。在Linux中的軟件類型rpm程序等可執行文件和壓縮文件。
Linux中的文件來源,還可以上傳文件。上傳文件可以通過FTP工具上傳,也可以通過rz命令來完成。
4.1 Linux中的可執行文件
rpm是Linux中常見的一種可執行文件,其可以通過rpm進行安裝、卸載、升級等操作。
- rpm的安裝命令為:rpm -ivh xx.rpm(軟件名)
- rpm的卸載命令為:rpm -e xx(應用程序名)
- 查看應用程序:rpm -qa|grep 關鍵字
4.2 Linux中的壓縮文件
在Linux中還有一種通過解壓縮的軟件,解壓縮后只需要進行編譯就可運行。通常這種軟件都會能tar.gz的方式進行壓縮。
tar.gz文件
我們需要解壓縮tar.gz文件,tar.gz文件的解壓縮方式為:tar -zxvf xx.tar.gz 。
- z是解決gz文件類型的
- x是extract解壓縮的意思,
- v是view,在可視模式下執行
- f是format,使用默認格式
zip文件
我們如果涉及到解壓縮zip文件的方法是:unzip xx.zip即可。
源文件編譯
編譯安裝需要經歷3步分別是:./configure配置,和make編譯以及make install安裝
crontab定時任務
可以在Linux中創建定時任務,讓Linux自動執行。我們可以使用crontab -e來編輯定時任務,可以通過crontab -l來查看定時任務。編寫語法是:
* * * * * 要執行的文件,注一般為.sh文件
我們先在/home目錄創建一個hello.sh文件,里面的內容為:
cd /home
ls -l >> a.txt
將其保存,並設置shell.sh文件擁有可執行權限。接下來使用crontab -e來編輯定時任務,定時任務中如下表達: * * * * * /home/hello.sh,再:wq保存退出即可。此時hello.sh文件會每分每時每日每月每周運行一次。
定時任務的核心就是這五顆星,我們可以設置各種特色任務。例如:每5分鍾執行一次,周一到周五運行,每日1號運行都可以。
- 星號(*):代表所有可能的值,如month字段為星號,則表示在滿足其它字段的制約條件后每月都執行該命令操作。
- 逗號(,):可以用逗號隔開的值指定一個列表范圍,例如,“1,2,5,7,8,9”
- 中杠(-):可以用整數之間的中杠表示一個整數范圍,例如“2-6”表示“2,3,4,5,6”
- 正斜線(/):可以用正斜線指定時間的間隔頻率,例如“0-23/2”表示每兩小時執行一次。