Xshell
下載 xShell 工具,進行遠程連接使用!還有需要下載xFTP(這是上傳文件到服務器需要的)
下載地址:https://xshell.en.softonic.com/
然后選擇免費注冊就可以了
下載之后安裝。
使用Xshell連接虛擬機
1、新建
2、填寫信息
這里的主機是在Centos里面獲取的,
打開虛擬性輸入 ip addr
3、輸入用戶名和密碼
這里的用戶名和密碼可以是你root賬戶的也可以是我們前面自己設置的管理員賬戶和密碼。
4、連接成功
上傳文件(Xftp)
1、點擊Xftp文件
Xftp界面
3、文件轉移
我傳了2個文件過去:
4、去Xshell界面查看
5、解壓文件
解壓zip文件命令:
unzip xxx
然后查看
因為我們要運行Tomcat需要Java環境!所有等我們安裝了JDK在運行Tomcat
走進Linux系統
開機登錄
開機會啟動許多程序。它們在Windows叫做"服務"(service),在Linux就叫做"守護進程"(daemon)。
開機成功后,它會顯示一個文本登錄界面,這個界面就是我們經常看到的登錄界面,在這個登錄界面中會提示用戶輸入用戶名,而用戶輸入的用戶將作為參數傳給login程序來驗證用戶的身份,密碼是不顯示的,輸完回車即可!
一般來說,用戶的登錄方式有三種:
- 命令行登錄
- ssh登錄
- 圖形界面登錄
最高權限賬戶為 root,可以操作一切!
關機(命令)
在linux領域內大多用在服務器上,很少遇到關機的操作。畢竟服務器上跑一個服務是永無止境的,除非特殊情況下,不得已才會關機。
關機指令為:shutdown ;
注意:sync
這不很重要。
sync # 將數據由內存同步到硬盤中。
shutdown # 關機指令,你可以man shutdown 來看一下幫助文檔。例如你可以運行如下命令關機:
shutdown –h 10 # 這個命令告訴大家,計算機將在10分鍾后關機
shutdown –h now # 立馬關機
shutdown –h 20:25 # 系統會在今天20:25關機
shutdown –h +10 # 十分鍾后關機
shutdown –r now # 系統立馬重啟
shutdown –r +10 # 系統十分鍾后重啟
reboot # 就是重啟,等同於 shutdown –r now
halt # 關閉系統,等同於shutdown –h now 和 poweroff
最后總結一下,不管是重啟系統還是關閉系統,首先要運行 sync 命令,把內存中的數據寫到磁盤中。
系統目錄結構
- 一切皆文件
- 根目錄/,所有的文件都掛載在這個節點下。
登錄系統后,在當前命令窗口下輸入命令:
ls /
我們就能看見:
樹狀目錄結構:(Linux的一切資源都掛載在這個 / 根節點下)
以下是對這些目錄的解釋:
-
/bin:bin是Binary的縮寫, 這個目錄存放着最經常使用的命令。(不要動)
-
/boot: 這里存放的是啟動Linux時使用的一些核心文件,包括一些連接文件以及鏡像文件。(不要動)
-
/dev : dev是Device(設備)的縮寫, 存放的是Linux的外部設備,在Linux中訪問設備的方式和訪問文件的方式是相同的。
-
/etc: 這個目錄用來存放所有的系統管理所需要的配置文件和子目錄。
-
/home:用戶的主目錄,在Linux中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。
-
/lib:這個目錄里存放着系統最基本的動態連接共享庫,其作用類似於Windows里的DLL文件。(不要動)
-
/lost+found:這個目錄一般情況下是空的,當系統非法關機后,這里就存放了一些文件。(一般不要用,這是存放突然關機的文件)
-
/media:linux系統會自動識別一些設備,例如U盤、光驅等等,當識別后,linux會把識別的設備掛載到這個目錄下。
-
/mnt:系統提供該目錄是為了讓用戶臨時掛載別的文件系統的,我們可以將光驅掛載在/mnt/上,然后進入該目錄就可以查看光驅里的內容了。
-
/opt:這是給主機額外安裝軟件所擺放的目錄。比如你安裝一個ORACLE數據庫則就可以放到這個目錄下。默認是空的。
-
/proc:這個目錄是一個虛擬的目錄,它是系統內存的映射,我們可以通過直接訪問這個目錄來獲取系統信息。(不用管)
-
/root:該目錄為系統管理員,也稱作超級權限者的用戶主目錄。
-
/sbin:s就是Super User的意思,這里存放的是系統管理員使用的系統管理程序。
-
/srv:該目錄存放一些服務啟動之后需要提取的數據。
-
/sys:這是linux2.6內核的一個很大的變化。該目錄下安裝了2.6內核中新出現的一個文件系統 sysfs 。
-
/tmp:這個目錄是用來存放一些臨時文件的。用完就丟的文件,就可以放在這個目錄下,如安裝包!
-
/usr:這是一個非常重要的目錄,用戶的很多應用程序和文件都放在這個目錄下,類似於windows下的program files目錄。
-
/usr/bin: 系統用戶使用的應用程序。
-
/usr/sbin: 超級用戶使用的比較高級的管理程序和系統守護程序。
-
/usr/src: 內核源代碼默認的放置目錄。
-
/var:這個目錄中存放着在不斷擴充着的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日志文件。
-
/run:是一個臨時文件系統,存儲系統啟動以來的信息。當系統重啟時,這個目錄下的文件應該被刪掉或清除。
-
/www:存放服務器網站相關的資源、環境、網站的項目 我們本地是沒有的 雲服務器才有
常用的基本命令
目錄管理
- 絕對路徑:
絕對路徑的全稱如:F:\記錄\框架\Spring\xxx.xx
- 相對路徑:
比如說我們在Spring目錄下,那這么XX.xx文件,對應我們的相對位置就是/xx.xx
處理目錄的常用命令
cd
:切換目錄命令!
./
:當前目錄!
cd ..
:返回上級目錄!
pwd
:顯示目前的目錄
mkdir
:創建一個新的目錄
rmdir
:刪除一個空的目錄
cp
: 復制文件或目錄
rm
: 移除文件或目錄
mv
: 移動文件與目錄,或修改文件與目錄的名稱
如圖:
ls 列出目錄
ls
:列出目錄; 在Linux中ls可能是最常被使用的命令!
-a
參數:all 查看全部的文件,包括隱藏文件
-l
參數:列出所有的文件,包括文件的屬性和權限,但是沒有隱藏文件
所有的Linux命令都可以組合使用。
cd 命令切換目錄
cd目錄名(絕對路徑都是以/
開頭的;相對路徑,對於當前目錄改如何尋找../../
)
pwd
( 顯示目前所在的目錄 )
這些我們使用得多就能記住了。
pwd 顯示當前用戶所在目錄
[lijinyu@LJY ~]$ pwd
/home/lijinyu
[lijinyu@LJY ~]$ cd /bin
[lijinyu@LJY bin]$ pwd
/bin
mkdir [-mp] 創建一個目錄
選項與參數:
- -m :配置文件的權限喔!直接配置,不需要看默認權限 (umask) 的臉色~
- -p :幫助你直接將所需要的目錄(包含上一級目錄)遞歸創建起來!
[root@LJY ~]# cd /home
[root@LJY home]# mkdir -p test2/test3
[root@LJY home]# ls
lijinyu ljy test2
[root@LJY home]# cd test2
[root@LJY test2]# ls
test3
[root@LJY test2]#
如果要遞歸創建一個文件,那么我們要添加-p
參數
rmdir 刪除目錄
rmdir [-p] 目錄名稱
[root@LJY home]# ls
lijinyu ljy test2
[root@LJY home]# rmdir test2
rmdir: 刪除 'test2' 失敗: 目錄非空
[root@LJY home]# rmdir -p test2
rmdir: 刪除 'test2' 失敗: 目錄非空
[root@LJY home]# rmdir -p test2/test3
[root@LJY home]# ls
lijinyu ljy
rmdir
只能刪除空的目錄,如果下面存在文件,需要先刪除文件,我們想要遞歸刪除多個目錄文件,我們要添加-p
參數。
cp 復制文件或者目錄
cp
原來的地方 新的地方
[root@LJY home]# ls
html視頻學習.txt lijinyu ljy
[root@LJY home]# cp html視頻學習.txt ljy #拷貝文件到ljy目錄下
[root@LJY home]# cd ljy
[root@LJY ljy]# ls
apache-tomcat-8.5.45-windows-x64.zip html視頻學習.txt
[root@LJY ljy]# cd ..
[root@LJY home]# cp html視頻學習.txt ljy #如果文件重復,就要選擇覆蓋(y)或者放棄(n)
cp:是否覆蓋'ljy/html視頻學習.txt'? y
[root@LJY home]#
- -a:相當於 -pdr 的意思,至於 pdr 請參考下列說明;(常用)
- -p:連同文件的屬性一起復制過去,而非使用默認屬性(備份常用);
- -d:若來源檔為連結檔的屬性(link file),則復制連結檔屬性而非文件本身;
- -r:遞歸持續復制,用於目錄的復制行為;(常用)
- -f:為強制(force)的意思,若目標文件已經存在且無法開啟,則移除后再嘗試一次;
- -i:若目標檔(destination)已經存在時,在覆蓋時會先詢問動作的進行(常用)
- -l:進行硬式連結(hard link)的連結檔創建,而非復制文件本身。
- -s:復制成為符號連結檔 (symbolic link),亦即『捷徑』文件;
- -u:若 destination 比 source 舊才升級 destination !
rm [-fir] 移除文件或者目錄!
-f
忽略不存在的文件,不會出現警告,強制刪除
-r
遞歸刪除目錄!
-i
互動刪除,刪除的時候詢問是否確定要刪除!
注意:
rm -rf /
系統中的所有的文件就都被刪除了,這個操作就是刪庫跑路坐牢的第一步。
[root@LJY home]# cd ljy
[root@LJY ljy]# rm -rf html視頻學習.txt
[root@LJY ljy]# ls
apache-tomcat-8.5.45-windows-x64.zip
[root@LJY ljy]#
mv (移動文件與目錄,或修改名稱
選項與參數:
-f
:force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋;-i
:若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!-u
:若目標文件已經存在,且 source 比較新,才會升級 (update)
[root@LJY home]# ls
html視頻學習.txt lijinyu ljy
[root@LJY home]# mv html視頻學習.txt ljy
[root@LJY home]# ls
lijinyu ljy
[root@LJY home]# cd ljy
[root@LJY ljy]# ls
apache-tomcat-8.5.45-windows-x64.zip html視頻學習.txt
[root@LJY ljy]#
重命名:
[root@LJY home]# mv ljy ljy2
[root@LJY home]# ls
lijinyu ljy2
基本屬性
看懂文件屬性
Linux系統是一種典型的多用戶系統,不同的用戶處於不同的地位,擁有不同的權限。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的權限做了不同的規定。
在Linux中我們可以使用ll
或者ls –l
命令來顯示一個文件的屬性以及文件所屬的用戶和組,如:
實例中,boot文件的第一個屬性用"d"表示。"d"在Linux中代表該文件是一個目錄文件。
在Linux中第一個字符代表這個文件是目錄、文件或鏈接文件等等:
- 當為[ d ]則是目錄
- 當為[ - ]則是文件;
- 若是[ l ]則表示為鏈接文檔 ( link file );
- 若是[ b ]則表示為裝置文件里面的可供儲存的接口設備 ( 可隨機存取裝置 );
- 若是[ c ]則表示為裝置文件里面的串行端口設備,例如鍵盤、鼠標 ( 一次性讀取裝置 )。
接下來的字符中,以三個為一組,且均為『rwx』 的三個參數的組合。
其中,[ r ]代表可讀(read)、[ w ]代表可寫(write)、[ x ]代表可執行(execute)。
要注意的是,這三個權限的位置不會改變,如果沒有權限,就會出現減號[ - ]而已。
每個文件的屬性由左邊第一部分的10個字符來確定(如下圖):
從左至右用0-9這些數字來表示。
第0位確定文件類型,第1-3位確定屬主(該文件的所有者)擁有該文件的權限。第4-6位確定屬組(所有者的同組用戶)擁有該文件的權限,第7-9位確定其他用戶擁有該文件的權限。
其中:
第1、4、7位表示讀權限,如果用"r"字符表示,則有讀權限,如果用"-"字符表示,則沒有讀權限;
第2、5、8位表示寫權限,如果用"w"字符表示,則有寫權限,如果用"-"字符表示沒有寫權限;
第3、6、9位表示可執行權限,如果用"x"字符表示,則有執行權限,如果用"-"字符表示,則沒有執行權限。
對於文件來說,它都有一個特定的所有者,也就是對該文件具有所有權的用戶。
同時,在Linux系統中,用戶是按組分類的,一個用戶屬於一個或多個組。
文件所有者以外的用戶又可以分為文件所有者的同組用戶和其他用戶。
因此,Linux系統按文件所有者、文件所有者同組用戶和其他用戶來規定了不同的文件訪問權限。
在以上實例中,boot 文件是一個目錄文件,屬主和屬組都為 root。
修改文件屬性
1、chgrp:更改文件屬組 (少用)
chgrp [-R] 屬組名 文件名
-R:遞歸更改文件屬組,就是在更改某個目錄文件的屬組時,如果加上-R的參數,那么該目錄下的所有文件的屬組都會更改。
2、chown:更改文件屬主,也可以同時更改文件屬組(少用)
chown [–R] 屬主名 文件名
chown [-R] 屬主名:屬組名 文件名
1和2的使用;
3、chmod:更改文件9個屬性(必須掌握)
chmod [-R] xyz 文件或目錄
Linux文件屬性有兩種設置方法,一種是數字常用數字
,一種是符號。
Linux文件的基本權限就有九個,分別是owner/group/others三種身份各有自己的read/write/execute權限。
先復習一下剛剛上面提到的數據:文件的權限字符為:『-rwxrwxrwx』, 這九個權限是三個三個一組的!其中,我們可以使用數字來代表各個權限,各權限的分數對照表如下:
r:4 w:2 x:1
可讀可寫不可執行: rw- 6
可讀可寫可執行 : rwx 7
chomd 777 文件賦予所有用戶可讀可寫可執行
每種身份(owner/group/others)各自的三個權限(r/w/x)分數是需要累加的,例如當權限為:[-rwxrwx---] 分數則是:
- owner = rwx = 4+2+1 = 7
- group = rwx = 4+2+1 = 7
- others= --- = 0+0+0 = 0
chmod 770 filename
可以自己下去多進行測試!
文件內容查看
Linux系統中使用以下命令來查看文件的內容:
cat
由第一行開始顯示文件內容,用來讀文章或者配置文件都是用cattac
從最后一行開始顯示,可以看出 tac 是 cat 的倒着寫!
nl
顯示的時候,順道輸出行號! 看代碼的時候,希望顯示行號常用
more
一頁一頁的顯示文件內容(空格代表翻頁,enter代表向下看一行。:f
就可以查看行號配置)
less
與 more 類似,但是比 more 更好的是,他可以往前翻頁!(空格翻頁,且上下鍵可以翻動頁面;退出需要按q
,查找字符串/要查找的字符
通常的查詢是向下查詢的,如果我們要使用向上查詢就用?要查找的字符串
,N表示繼續搜尋下一個,n表示向上搜尋)
這里可能不太一樣,centos里面n表示向下搜查,而我測試的CentOS8是和centos7反着來的。n表示向上搜查
head
只看頭幾行通過-n
參數控制顯示幾行
tail
只看尾巴幾行
你可以使用 man [命令]來查看各個命令的使用文檔,如 :man cp。
網絡配置目錄:cd /etc/sysconfig/network-scripts
查看網絡地址:ifconfig
語法:
cat [-AbEnTv]
選項與參數:
- -A :相當於 -vET 的整合選項,可列出一些特殊字符而不是空白而已;
- -b :列出行號,僅針對非空白行做行號顯示,空白行不標行號!
- -E :將結尾的斷行字節 $ 顯示出來;
- -n :列印出行號,連同空白行也會有行號,與 -b 的選項不同;
- -T :將 [tab] 按鍵以 ^I 顯示出來;
- -v :列出一些看不出來的特殊字符
語法:
nl [-bnw] 文件
選項與參數:
- -b :指定行號指定的方式,主要有兩種:-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);-b t :如果有空行,空的那一行不要列出行號(默認值);
- -n :列出行號表示的方法,主要有三種:-n ln :行號在熒幕的最左方顯示;-n rn :行號在自己欄位的最右方顯示,且不加 0 ;-n rz :行號在自己欄位的最右方顯示,且加 0 ;
- -w :行號欄位的占用的位數。
more 一頁一頁翻動
在 more 這個程序的運行過程中,你有幾個按鍵可以按的:
- 空白鍵 (space):代表向下翻一頁;
- Enter :代表向下翻『一行』;
- /字串 :代表在這個顯示的內容當中,向下搜尋『字串』這個關鍵字;
- :f :立刻顯示出檔名以及目前顯示的行數;
- q :代表立刻離開 more ,不再顯示該文件內容。
- b 或 [ctrl]-b :代表往回翻頁,不過這動作只對文件有用,對管線無用。
less 一頁一頁翻動,以下實例輸出/etc/man.config文件的內容:
less運行時可以輸入的命令有:
- 空白鍵 :向下翻動一頁;
- [pagedown]:向下翻動一頁;
- [pageup] :向上翻動一頁;
- /字串 :向下搜尋『字串』的功能;
- ?字串 :向上搜尋『字串』的功能;
- n :重復前一個搜尋 (與 / 或 ? 有關!)
- N :反向的重復前一個搜尋 (與 / 或 ? 有關!)
- q :離開 less 這個程序;
拓展:linux鏈接概念
創建鏈接命令:ln
輸入字符串:echo
也可以輸入到文件中,如:echo "xxx" >> 文件名
Linux 鏈接分兩種,一種被稱為硬鏈接(Hard Link),另一種被稱為符號鏈接(Symbolic Link)也稱為軟連接。
情況下,ln 命令產生硬鏈接。
硬鏈接
硬鏈接指通過索引節點來進行連接。在 Linux 的文件系統中,保存在磁盤分區中的文件不管是什么類型都給它分配一個編號,稱為索引節點號(Inode Index)。在 Linux 中,多個文件名指向同一索引節點是存在的。比如:A 是 B 的硬鏈接(A 和 B 都是文件名),則 A 的目錄項中的 inode 節點號與 B 的目錄項中的 inode 節點號相同,即一個 inode 節點對應兩個不同的文件名,兩個文件名指向同一個文件,A 和 B 對文件系統來說是完全平等的。刪除其中任何一個都不會影響另外一個的訪問。
硬鏈接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止“誤刪”的功能。其原因如上所述,因為對應該目錄的索引節點有一個以上的連接。只刪除一個連接並不影響索引節點本身和其它的連接,只有當最后一個連接被刪除后,文件的數據塊及目錄的連接才會被釋放。也就是說,文件真正刪除的條件是與之相關的所有硬連接文件均被刪除。
軟鏈接(刪除了源文件,軟連接也訪問不了了)
另外一種連接稱之為符號鏈接(Symbolic Link),也叫軟連接。軟鏈接文件有類似於 Windows 的快捷方式。它實際上是一個特殊的文件。在符號鏈接中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。比如:A 是 B 的軟鏈接(A 和 B 都是文件名),A 的目錄項中的 inode 節點號與 B 的目錄項中的 inode 節點號不相同,A 和 B 指向的是兩個不同的 inode,繼而指向兩塊不同的數據塊。但是 A 的數據塊中存放的只是 B 的路徑名(可以根據這個找到 B 的目錄項)。A 和 B 之間是“主從”關系,如果 B 被刪除了,A 仍然存在(因為兩個是不同的文件),但指向的是一個無效的鏈接。
[root@LJY home]# rm -rf f1 #刪除f1
[root@LJY home]# ls
f2 f3 lijinyu ljy2
[root@LJY home]# cat f2 #查看f2 硬鏈接還在
this is a dir
[root@LJY home]# cat f3 #查看f3 軟連接文件不在了
cat: f3: 沒有那個文件或目錄
[root@LJY home]#