linux基礎及遠程連接一台服務器復制文件到另外兩個服務器


1使用工具:

(1)、WinSCP

WinSCP是一個Windows環境下使用SSH的開源圖形化SFTP客戶端。同時支持SCP協議。它的主要功能就是在本地與遠程計算機間安全的復制文件。

主要用於:本地代碼放服務器上。

(2)、putty.exe

PuTTY是一個Telnet、SSH、rlogin、純TCP以及串行接口連接軟件。Putty是一個免費的、Windows x86平台下的Telnet、SSH和rlogin客戶端。

主要用於:遠程管理Linux。

本次操作流程:

(1)、先用WinSCP將連接主服務器,然后復制代碼到主服務器;

(2)、開啟兩個putty窗口,分別連接主服務器和其中一個分服務器;

(3)、在主服務器上面遠程復制代碼到分服務器上;

(4)、重啟tomcat;

(5)、按照上述步驟操作第二分服務器;

一、打開putty窗口連接主服務器(連接方式百度)

(1)、在窗口中登錄用戶戶

(2)、用ssh命令復制本地文件到指定ip服務器中的指定目錄

命令格式為:sudo   scp     本地目錄/filenameA       root@客戶端ip:客戶端目錄/filenameB

 

知識要點:

(1)、本地文件復制到192.168.11.111服務器的方法(此時你操作的界面是本地的命令窗口)

命令格式為:sudo   scp    本地目錄/filenameA       root@服務器ip:服務器目錄/filenameB

$   sudo    scp /tomcat/tomcat7/test.txt    root@192.168.11.111:/tomcat/tomcat7/test.txt

之后需要輸入192.168.11.111服務器root用戶的密碼,如果是其他用戶,只需要把出現root的地方換上自己擁有的用戶權限的用戶名即可。

(2)、192.168.11.111服務器上的文件復制到192.168.11.112客戶端(此時你操作的界面在192.168.11.111的命令窗口)

命令格式為:sudo   scp     本地目錄/filenameA       root@客戶端ip:客戶端目錄/filenameB

$     sudo    scp /tomcat/tomcat7/test.txt    root@192.168.11.112:/tomcat/tomcat7/test.txt

仔細看來這兩個方法是一個意思,只是為了區分開來root@后面的IP是哪個IP而已。

(3)、打開新的putty窗口,進入tomcat的bin目錄,運行shutdown.sh和startup.sh重啟tomcat

 

Linux基本操作總結:

查看tomcat進程:ps -ef | grep tomcat  看看是否啟動完畢。

返回上級目錄:cd ..

返回根目錄:cd /

常用指令

ls          顯示文件或目錄

     -l           列出文件詳細信息l(list)

     -a          列出當前目錄下所有文件及目錄,包括隱藏的a(all)

mkdir         創建目錄

     -p           創建目錄,若無父目錄,則創建p(parent)

cd               切換目錄

touch          創建空文件

echo            創建帶有內容的文件。

cat              查看文件內容

cp                拷貝

mv               移動或重命名

rm               刪除文件

     -r            遞歸刪除,可刪除子目錄及文件

     -f            強制刪除

find              在文件系統中搜索某文件

wc                統計文本中行數、字數、字符數

grep             在文本文件中查找某個字符串

rmdir           刪除空目錄

tree             樹形結構顯示目錄,需要安裝tree包

pwd              顯示當前目錄

ln                  創建鏈接文件

more、less  分頁顯示文本文件內容

head、tail    顯示文件頭、尾內容

ctrl+alt+F1  命令行全屏模式

 

系統管理命令

stat              顯示指定文件的詳細信息,比ls更詳細

who               顯示在線登陸用戶

whoami          顯示當前操作用戶

hostname      顯示主機名

uname           顯示系統信息

top                動態顯示當前耗費資源最多進程信息

ps                  顯示瞬間進程狀態 ps -aux

du                  查看目錄大小 du -h /home帶有單位顯示目錄信息

df                  查看磁盤大小 df -h 帶有單位顯示磁盤信息

ifconfig          查看網絡情況

ping                測試網絡連通

netstat          顯示網絡狀態信息

man                命令不會用了,找男人  如:man ls

clear              清屏

alias               對命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

kill                 殺死進程,可以先用ps 或 top命令查看進程的id,然后再用kill命令殺死進程。

 

打包壓縮相關命令

gzip:

bzip2:

tar:                打包壓縮

     -c              歸檔文件

     -x              壓縮文件

     -z              gzip壓縮文件

     -j              bzip2壓縮文件

     -v              顯示壓縮或解壓縮過程 v(view)

     -f              使用檔名

例:

tar -cvf /home/abc.tar /home/abc              只打包,不壓縮

tar -zcvf /home/abc.tar.gz /home/abc        打包,並用gzip壓縮

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,並用bzip2壓縮

當然,如果想解壓縮,就直接替換上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的“c” 換成“x” 就可以了。

 

關機/重啟機器

shutdown

     -r             關機重啟

     -h             關機不重啟

     now          立刻關機

halt               關機

reboot          重啟

 

Linux管道

將一個命令的標准輸出作為另一個命令的標准輸入。也就是把幾個命令組合起來使用,后一個命令除以前一個命令的結果。

例:grep -r "close" /home/* | more       在home目錄下所有文件中查找,包括close的文件,並分頁輸出。

 

Linux軟件包管理

dpkg (Debian Package)管理工具,軟件包名以.deb后綴。這種方法適合系統不能聯網的情況下。

比如安裝tree命令的安裝包,先將tree.deb傳到Linux系統中。再使用如下命令安裝。

sudo dpkg -i tree_1.5.3-1_i386.deb         安裝軟件

sudo dpkg -r tree                                     卸載軟件

 

注:將tree.deb傳到Linux系統中,有多種方式。VMwareTool,使用掛載方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高級軟件工具。這種方法適合系統能夠連接互聯網的情況。

依然以tree為例

sudo apt-get install tree                         安裝tree

sudo apt-get remove tree                       卸載tree

sudo apt-get update                                 更新軟件

sudo apt-get upgrade        

 

將.rpm文件轉為.deb文件

.rpm為RedHat使用的軟件格式。在Ubuntu下不能直接使用,所以需要轉換一下。

sudo alien abc.rpm

 

vim使用

vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。

命令模式下:

:q                      退出

:q!                     強制退出

:wq                   保存並退出

:set number     顯示行號

:set nonumber  隱藏行號

/apache            在文檔中查找apache 按n跳到下一個,shift+n上一個

yyp                   復制光標所在行,並粘貼

h(左移一個字符←)、j(下一行↓)、k(上一行↑)、l(右移一個字符→)

 

用戶及用戶組管理

/etc/passwd    存儲用戶賬號

/etc/group       存儲組賬號

/etc/shadow    存儲用戶賬號的密碼

/etc/gshadow  存儲用戶組賬號的密碼

useradd 用戶名

userdel 用戶名

adduser 用戶名

groupadd 組名

groupdel 組名

passwd root     給root設置密碼

su root

su - root 

/etc/profile     系統環境變量

bash_profile     用戶環境變量

.bashrc              用戶環境變量

su user              切換用戶,加載配置文件.bashrc

su - user            切換用戶,加載配置文件/etc/profile ,加載bash_profile

更改文件的用戶及用戶組

sudo chown [-R] owner[:group] {File|Directory}

例如:還以jdk-7u21-linux-i586.tar.gz為例。屬於用戶hadoop,組hadoop

要想切換此文件所屬的用戶及組。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

 

文件權限管理

三種基本權限

R           讀         數值表示為4

W          寫         數值表示為2

X           可執行  數值表示為1

如圖所示,jdk-7u21-linux-i586.tar.gz文件的權限為-rw-rw-r--

-rw-rw-r--一共十個字符,分成四段。

第一個字符“-”表示普通文件;這個位置還可能會出現“l”鏈接;“d”表示目錄

第二三四個字符“rw-”表示當前所屬用戶的權限。   所以用數值表示為4+2=6

第五六七個字符“rw-”表示當前所屬組的權限。      所以用數值表示為4+2=6

第八九十個字符“r--”表示其他用戶權限。              所以用數值表示為2

所以操作此文件的權限用數值表示為662 

更改權限

sudo chmod [u所屬用戶  g所屬組  o其他用戶  a所有用戶]  [+增加權限  -減少權限]  [r  w  x]   目錄名 

例如:有一個文件filename,權限為“-rw-r----x” ,將權限值改為"-rwxrw-r-x",用數值表示為765

sudo chmod u+x g+w o+r  filename

上面的例子可以用數值表示

sudo chmod 765 filename

 

查看文件內容

查看文件內容的命令:

cat     由第一行開始顯示內容,並將所有內容輸出

tac     從最后一行倒序顯示內容,並將所有內容輸出

more    根據窗口大小,一頁一頁的現實文件內容

less    和more類似,但其優點可以往前翻頁,而且進行可以搜索字符

head    只顯示頭幾行

tail    只顯示最后幾行

nl      類似於cat -n,顯示時輸出行號

tailf   類似於tail -f 

1.cat 與 tac

cat的功能是將文件從第一行開始連續的將內容輸出在屏幕上。但是cat並不常用,原因是當文件大,行數比較多時,屏幕無法全部容下時,只能看到一部分內容。

cat語法:cat [-n]  文件名 (-n : 顯示時,連行號一起輸出)

 

tac的功能是將文件從最后一行開始倒過來將內容數據輸出到屏幕上。我們可以發現,tac實際上是cat反過來寫。這個命令也不常用。

tac語法:tac 文件名。

 

2.more和less(常用)

more的功能是將文件從第一行開始,根據輸出窗口的大小,適當的輸出文件內容。當一頁無法全部輸出時,可以用“回車鍵”向下翻行,用“空格鍵”向下翻頁。退出查看頁面,請按“q”鍵。另外,more還可以配合管道符“|”(pipe)使用,例如:ls -al | more

more的語法:more 文件名

Enter 向下n行,需要定義,默認為1行; 

Ctrl f 向下滾動一屏; 

空格鍵 向下滾動一屏; 

Ctrl b 返回上一屏; 

= 輸出當前行的行號; 

:f 輸出文件名和當前行的行號; 

v 調用vi編輯器; 

! 命令 調用Shell,並執行命令; 

q 退出more

 

less的功能和more相似,但是使用more無法向前翻頁,只能向后翻。

less可以使用【pageup】和【pagedown】鍵進行前翻頁和后翻頁,這樣看起來更方便。

less的語法:less 文件名

less還有一個功能,可以在文件中進行搜索你想找的內容,假設你想在passwd文件中查找有沒有weblogic字符串,那么你可以這樣來做:

[root@redhat etc]# less passwd

然后輸入:

/weblogic

回車

此時如果有weblogic字符串,linux會把該字符已高亮方式顯示。

退出查看頁面,請按“q”鍵。

 

3.head和tail

head和tail通常使用在只需要讀取文件的前幾行或者后幾行的情況下使用。head的功能是顯示文件的前幾行內容

head的語法:head [n number] 文件名 (number 顯示行數)

 

tail的功能恰好和head相反,只顯示最后幾行內容

tail的語法:tail [-n number] 文件名

 

4.nl

nl的功能和cat -n一樣,同樣是從第一行輸出全部內容,並且把行號顯示出來

nl的語法:nl 文件名

 

5.tailf

 

 tailf命令幾乎等同於tail -f,嚴格說來應該與tail --follow=name更相似些。當文件改名之后它也能繼續跟蹤,特別適合於日志文件的跟蹤(follow the growth of a log file)。與tail -f不同的是,如果文件不增長,它不會去訪問磁盤文件(It is similar to tail -f but does not access the file when it is not growing.  This has the side effect of not updating the access  time for the file, so a filesystem flush does not occur periodically when no log activity is happening.)。tailf特別適合那些便攜機上跟蹤日志文件,因為它能省電,因為減少了磁盤訪問嘛(tailf  is extremely useful for monitoring log files on a laptop when logging is infrequent and the user desires that the hard disk spin down to conserve battery life.)。tailf命令不是個腳本,而是一個用C代碼編譯后的二進制執行文件,某些Linux安裝之后沒有這個命令,本文提供了怎么編譯安裝tailf命令的方法。

面就談談二者的區別:

1. tailf 總是從文件開頭一點一點的讀, 而tail -f 則是從文件尾部開始讀

2. tailf check文件增長時,使用的是文件名, 用stat系統調用;而tail -f 則使用的是已打開的文件描述符; 注:tail 也可以做到類似跟蹤文件名的效果; 但是tail總是使用fstat系統調用,而不是stat系統調用;結果就是:默認情況下,當tail的文件被偷偷刪除時,tail是不知道的,而tailf是知道的。

 

 常用參數

 

格式:tailf logfile

 

動態跟蹤日志文件logfile,最初的時候打印文件的最后10行內容。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM