linux遠程文件命令
① linux下數據備份命令scp、rsync和後台運行
scp和rsync 均可實現文件的復制,但相比較,scp佔用系統資源較小,rsync速度較快。當小文件眾多時,rsync會導致硬碟I/O非常高,而scp基本不影響系統正常使用。可根據需要這倆選其一實現文件復制。
scp 是secure 的縮寫,scp是Linux系統下基於ssh登錄進行安全的遠程文件拷貝命令。
可以實現本地文件復制到遠程伺服器,也可以將遠程文件復制到本地。
rsync 是remote sync的縮寫。使用rsync備份數據時,不會直接覆蓋以前的數據(如果數據已經存在),而是先判斷已存在的數據和新數據的差異(默認規則是文件大小或修改時間有差異),只有數據不相同時才會把不相同的部分覆蓋。在僅作增量數據的時比scp靈活。
一般CentOS默認安裝rsync,若使用 rsync -v 提示找不到命令,可使用 yum install -y rsync 安裝。
單個冒號和雙冒號的區別 :使用rsync在遠程傳輸數據前,是需要進行登陸認證的,這個過程可使用ssh協議也可以使用rsync協議完成。單冒號(:)使用的是ssh協議;雙冒號(::)使用的是rsync協議。
默認情況下,rsync只確保源文件的所有內容(明確排除的文件除外)都復制到目標目錄。它不會使兩個目錄保持不同,並且不會刪除文件。如果要使目標目錄成為源目錄的鏡像副本,則使用--delete選項。可刪除只存在目標目錄,不存在於源目錄的文件。
增量備份算是一個經常使用的場景了。兩台伺服器之間進行文件定期備份,無需所有文件都一遍,僅復制有變動的文件。
具體做法是,第一次同步是全量備份,所有文件在基準目錄裡面同步一份。以後每一次同步都是增量備份,只同步源目錄與基準目錄之間有變動的部分,將這部分保存在一個新的目標目錄。這個新的目標目錄之中,也是包含所有文件,但實際上,只有那些變動過的文件是存在於該目錄,其他沒有變動的文件都是指向基準目錄文件的硬鏈接。
--link-dest 參數用來指定同步時的基準目錄。
上面命令中, --link-dest 參數指定基準目錄 /compare/path ,然後源目錄 /source/path 跟基準目錄進行比較,找出變動的文件,將它們拷貝到目標目錄 /target/path 。那些沒變動的文件則會生成硬鏈接。這個命令的第一次備份時是全量備份,後面就都是增量備份了。
一般伺服器之間復制文件都比較大,為防止誤操作,最好在後台運行。但因為需要和遠程伺服器之間的ssh通訊多是需要密碼的,所以不能直接使用nohup 放置於後台。無論是scp還是rsync都可操作如下:
後台和前台任務的切換
scp不支持斷點續傳,掛起scp進程可能導致數據缺失。傾向於使用rsync。
如果有其他任務需要使用nohup後台運行,但執行時卻忘記了使用nohup,也可參照此方法進行設置。
參考:1. Linux之scp命令及後台運行scp
② linux 遠程連接命令
Linux最廣泛的遠程連接命令就是ssh。
如果ssh沒有安裝就安裝 RH系列就yum install openssh
ubuntu系列就是apt-get install openssh
安裝完畢後,其他的電腦可以遠程訪問本機,
本機也可以訪問遠程電腦。連接遠程電腦命令:ssh -l 用戶名 主機名
③ 如何遠程將文件上傳給linux伺服器
要想將一些文件通過網路傳送給其他主機,又恰好兩台主機都是Linux系統,我們便可以直接用scp命令傳輸文件到另外一台主機~
scp命令用於在網路中安全的傳輸文件,格式為:「scp [參數] 本地文件 遠程帳戶@遠程IP地址:遠程目錄」。
參數
作用
-v
顯示詳細的連接進度
-P
指定遠程主機的sshd埠號
-r
傳送文件夾時請加此參數
-6
使用ipv6協議
這個內容在《linux就該這么學》這本書的章節htt p://www.linuxprobe. c o m /chapter-09.html#924里有做介紹,還有些例子可以參考下
將本地文件/root/out.txt傳送到遠程主機的/home目錄:
[root@linuxprobe ~]# scp /root/out.txt 192.168.10.20:/home
[email protected]'s password:此處輸入遠程主機中root用戶的密碼
out.txt 100% 0 0.0KB/s 00:00
傳送下文件夾並指定遠程用戶:
[root@linuxprobe ~]# scp -r results/ [email protected]:/home
[email protected]'s password:此處輸入遠程主機中linuxprobe用戶的密碼
強大的scp命令還可以將遠程主機的文件傳輸到本地呢,格式為"scp [參數] 遠程用戶@遠程IP地址:遠程文件 本地目錄"。
將遠程主機的/etc/issue.net文件下載到本地的/root目錄:
[root@linuxprobe ~]# scp [email protected]:/etc/issue.net /root
[email protected]'s password:
issue.net 100% 22 0.0KB/s 00:00
④ linux如何從遠程終端下載文件到本地磁碟
linux一般用作於伺服器使用,通常使用文字界面,這里分享下如何從遠程終端下載文件到本地磁碟。
1、首先在windows開始菜單可以尋找到filezilla軟體,點擊他即可啟動程序。
⑤ linux 如何共享遠程文件夾
一般是通過以下幾種方式:
1、設置ftp伺服器
2、NFS伺服器
3、SAMBA伺服器
FTP和NFS都比較簡單,下面介紹一下SAMBA的配置方法:
Linux系統默認已經安裝了Samba,但是沒有安裝Samba服務:
1,先查看安裝情況:rpm -qa|grep samba
根據系統的安裝情況選擇下載或者通過光碟機安裝所缺的rpm包。
我的安裝情況是:
使用命令:mount /dev/cdrom1 /mnt/cdrom1
通過mount把cdrom1掛載到系統臨時目錄/mnt/cdrom1,在Packets包下面使用命令:rpm -ivh samba.*.rpm包安裝。
切換到放置rpm文件的目錄
[root@smb_server root]# rpm -ivh samba-common-3.6.9-151.el6.x86_64
這是Samba 必備的程序,必須安裝
[root@smb_server root]# rpm -ivh samba-3.6.9-151.el6.x86_64
安裝Samba 伺服器程序,可以使我Windows 主機訪問Samba 伺服器共享的資源。
如果需要使Linux 主機訪問Windows 主機上的共享資源,則還應該安裝Samba 客戶端程序。
[root@smb_server root]# rpm -ivh samba-client-3.6.9-151.el6.x86_64
2,安裝samba的rpm包完成後
samba-common-3.6.9-151.el6.x86_64 //主要提供samba伺服器的設置文件與設置文件語法檢驗程序testparm
samba-client-3.6.9-151.el6.x86_64 //客戶端軟體,主要提供linux主機作為客戶端時,所需要的工具指令集
samba-swat-3.6.9-151.el6.x86_64 //基於https協議的samba伺服器web配置界面
samba-3.6.9-151.el6.x86_64 //伺服器端軟體,主要提供samba伺服器的守護程序,共享文檔,日誌的輪替,開機默認選項
Samba伺服器安裝完畢,會生成配置文件目錄/etc/samba和其它一些samba可執行命令工具,/etc/samba/smb.conf是samba的核心配置文件,/etc/init.d/smb是samba的啟動/關閉文件。
5、查看samba的服務啟動情況
# service smb status
6、設置開機自啟動
# chkconfig --level 35 smb on //在3、5級別上自動運行samba服務
7、配置smb服務
[global]
workgroup = WORKGROUP
server string = Samba Server Version %v
netbios name = ImgPath05
[ImgPath]
comment = Public stuff
path = /usr/local/nginx/html/img
public = yes
writeable = yes
browseable = yes
guest ok = yes
共享目錄為:/usr/local/nginx/html/img,共享目錄對外名稱為:ImgPath 即在Windows看到的目錄名稱。
設置共享目錄許可權:chown -R nobody:nobody /usr/local/nginx/html/img/
8、啟動或者重啟smb服務
重啟smb服務
測試smb.conf配置是否正確
9 Windows訪問共享目錄,但是沒有寫許可權,通過以下方式修改防火牆設置。
將Linux smb服務添加到防火牆的例外中 以root用戶執行setup命令#setup彈出...重啟生效,如果不想重啟,用命令#setenforce 0
⑥ Linux 命令大全
linux上可用的命令分別是在/usr/bin,
/usr/sbin,
/bin,
/sbin這些目錄當中,可以用man命令查看每一個命令的使用手冊,用man查出來的,是最靠譜
⑦ linux遠程拷貝文件!!
可以考慮使用 scp命令。
Linux為我們提供了兩個用於文件的命令,一個是cp,一個是scp,但是他們略有不同,cp 主要是用於在同一台電腦上,在不同的目錄之間來迴文件 scp 主要是在不同的Linux系統之間來迴文件。
Linux為我們提供了兩個用於文件的命令,一個是cp,一個是scp,但是他們略有不同。
cp --- 主要是用於在同一台電腦上,在不同的目錄之間來迴文件
scp --- 主要是在不同的Linux系統之間來迴文件
關於cp的具體用法:
命令基本格式:
cp [OPTIONS] SOURCE DEST --- 從源路徑文件到目的路徑
cp [OPTIONS] SOURCE... DIRECTORY --- 將多個源文件到指定的目錄(多個源文件用空格分隔)
OPTIONS:
-a same as -dpR 盡可能將源文件狀態、許可權等資料都照原裝予以復制,並且是遞歸;
-r 表示遞歸,若source中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地;
-f 表示force,若目的地已經有相同檔名的檔案存在,則在復制前先予以刪除再行復制;
範例:
1. 將檔案 aaa 復制(已存在),並命名為 bbb:
cp aaa bbb
2. 將所有的C語言程式拷貝至 Finished 子目錄中:
cp *.c Finished/
關於scp的具體用法:
不同的Linux之間文件常用有3種方法:
第一種就是ftp,也就是其中一台Linux安裝ftp Server,這樣可以在另外一台機器使用ftp的client程序來進行文件的。
第二種方法就是採用samba服務,類似Windows文件 的方式來操作,比較簡潔方便。
第三種就是利用scp命令來進行文件復制。
scp是有Security的文件,基於ssh登錄。
命令基本格式:
scp [OPTIONS] file_source file_target
OPTIONS:
-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連接、認證、 或是配置錯誤
-C 使能壓縮選項
-P 選擇埠 . 注意 -p 已經被 rcp 使用
從 本地 復制到 遠程
scp /home/daisy/full.tar.gz [email protected]:/home/root (然後會提示你輸入另外那台172.19.2.75主機的root用戶的登錄密碼,接著就開始了),復制目錄加參數 -r 即可
從 遠程 復制到 本地
scp root@/172.19.2.75:/home/root/full.tar.gz /home/daisy/full.tar.gz
以下是補充:
命令:cp
使用許可權:所有使用者
使用方式:
cp [options] source dest
cp [options] source... directory
說明:將一個檔案拷貝至另一檔案,或將數個檔案拷貝至另一目錄。
把計
-a 盡可能將檔案狀態、許可權等資料都照原狀予以復制。
-r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。
-f 若目的地已經有相同檔名的檔案存在,則在復制前先予以刪除再行復制。
範例:
將檔案 aaa 復制(已存在),並命名為 bbb :
cp aaa bbb
將所有的C語言程式拷貝至 Finished 子目錄中 :
cp *.c Finished
命令:scp
不同的Linux之間文件常用有3種方法:
第一種就是ftp,也就是其中一台Linux安裝ftp Server,這樣可以另外一台使用ftp的client程序來進行文件的。
第二種方法就是採用samba服務,類似Windows文件 的方式來操作,比較簡潔方便。
第三種就是利用scp命令來進行文件復制。
scp是有Security的文件,基於ssh登錄。操作起來比較方便,比如要把當前一個文件到遠程另外一台主機上,可以如下命令。
scp /home/daisy/full.tar.gz [email protected]:/home/root
然後會提示你輸入另外那台172.19.2.75主機的root用戶的登錄密碼,接著就開始了。
如果想反過來操作,把文件從遠程主機到當前系統,也很簡單。
linux之cp/scp命令+scp命令詳解(轉) - linmaogan - 獨木★不成林scp root@/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz
linux 的 scp 命令 可以 在 linux 之間復制 文件 和 目錄;
==================
scp 命令
==================
scp 可以在 2個 linux 主機間復制文件;
命令基本格式:
scp [可選參數] file_source file_target
======
從 本地 復制到 遠程
======
* 復制文件:
* 命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2個指定了用戶名,命令執行後需要再輸入密碼,第1個僅指定了遠程的目錄,文件名字不變,第2個指定了文件名;
第3,4個沒有指定用戶名,命令執行後需要輸入用戶名和密碼,第3個僅指定了遠程的目錄,文件名字不變,第4個指定了文件名;
* 例子:
scp /home/space/music/1.mp3 [email protected]:/home/root/others/music
scp /home/space/music/1.mp3 [email protected]:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.cumt.e.cn:/home/root/others/music
scp /home/space/music/1.mp3 www.cumt.e.cn:/home/root/others/music/001.mp3
* 復制目錄:
* 命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
第1個指定了用戶名,命令執行後需要再輸入密碼;
第2個沒有指定用戶名,命令執行後需要輸入用戶名和密碼;
* 例子:
scp -r /home/space/music/ [email protected]:/home/root/others/
scp -r /home/space/music/ www.cumt.e.cn:/home/root/others/
上面 命令 將 本地 music 目錄 復制 到 遠程 others 目錄下,即復制後有 遠程 有 ../others/music/ 目錄
======
從 遠程 復制到 本地
======
從 遠程 復制到 本地,只要將 從 本地 復制到 遠程 的命令 的 後2個參數 調換順序 即可;
例如:
scp [email protected]:/home/root/others/music /home/space/music/1.mp3
scp -r www.cumt.e.cn:/home/root/others/ /home/space/music/
最簡單的應用如下 :
scp 本地用戶名 @IP 地址 : 文件名 1 遠程用戶名 @IP 地址 : 文件名 2
[ 本地用戶名 @IP 地址 :] 可以不輸入 , 可能需要輸入遠程用戶名所對應的密碼 .
可能有用的幾個參數 :
-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連接 , 認證 , 或是配置錯誤 .
-C 使能壓縮選項 .
-P 選擇埠 . 注意 -p 已經被 rcp 使用 .
-4 強行使用 IPV4 地址 .
-6 強行使用 IPV6 地址 .
注意兩點:
1.如果遠程伺服器防火牆有特殊限制,scp便要走特殊埠,具體用什麼埠視情況而定,命令格式如下:
#scp -p 4588 [email protected]:/usr/local/sin.sh /home/administrator
2.使用scp要注意所使用的用戶是否具有可讀取遠程伺服器相應文件的許可權。
⑧ Linux系統復制文件/文件夾到遠程伺服器
從一個伺服器復制文件到另一個伺服器,或者從本地到遠程復制是 Linux 管理員的日常任務之一。
我覺得不會有人不同意,因為無論在哪裡這都是你的日常操作之一。有很多辦法都能處理這個任務,我們試著加以概括。你可以挑一個喜歡的方法。當然,看看其他命令也能在別的地方幫到你。
我已經在自己的環境下測試過所有的 命令 和 腳本 了,因此你可以直接用到日常工作當中。
通常大家都傾向 scp,因為它是文件復制的原生命令native command之一。但本文所列出的其它命令也很好用,建議你嘗試一下。
文件復制可以輕易地用以下四種方法。
scp:在網路上的兩個主機之間復制文件,它使用 ssh 做文件傳輸,並使用相同的認證方式,具有相同的安全性。
rsync:是一個既快速又出眾的多功能文件復制工具。它能本地復制、通過遠程 shell 在其它主機之間復制,或者與遠程的 rsync 守護進程daemon 之間復制。
pscp:是一個並行復制文件到多個主機上的程序。它提供了諸多特性,例如為 scp 配置免密傳輸,保存輸出到文件,以及超時控制。
prsync:也是一個並行復制文件到多個主機上的程序。它也提供了諸多特性,例如為 ssh 配置免密傳輸,保存輸出到 文件,以及超時控制。
方式 1:如何在 Linux 上使用 scp 命令從本地系統向遠程系統復制文件/文件夾?
scp 命令可以讓我們從本地系統復制文件/文件夾到遠程系統上。
我會把 output.txt 文件從本地系統復制到 2g. CentOS .com 遠程系統的 /opt/backup 文件夾下。
# scp output.txt [email protected]:/opt/backup
output.txt 100% 2468 2.4KB/s 00:00
從本地系統復制兩個文件 output.txt 和 passwd-up.sh 到遠程系統 2g.CentOs.com 的 /opt/backup 文件夾下。
# scp output.txt passwd-up.sh [email protected]:/opt/backup
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
從本地系統復制 shell -script 文件夾到遠程系統 2g.CentOs.com 的 /opt/back 文件夾下。
這會連同shell-script 文件夾下所有的文件一同復制到/opt/back 下。
# scp -r /home/daygeek/2g/shell-script/ root@:/opt/backup/
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
方式 2:如何在 Linux 上使用 scp 命令和 Shell 腳本 復制文件/文件夾到多個遠程系統上?
如果你想復制同一個文件到多個遠程伺服器上,那就需要創建一個如下面那樣的小 shell 腳本。
並且,需要將伺服器添加進 server-list.txt 文件。確保添加成功後,每個伺服器應當單獨一行。
最終,你想要的腳本就像下面這樣:
# file-.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp /home/daygeek/2g/shell-script/output.txt root@$server:/opt/backup
done
完成之後,給 file-.sh 文件設置可執行許可權。
# chmod +x file-.sh
最後運行腳本完成復制。
# ./file-.sh
output.txt 100% 2468 2.4KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
使用下面的腳本可以復制多個文件到多個遠程伺服器上。
# file-.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp /home/daygeek/2g/shell-script/output.txt passwd-up.sh root@$server:/opt/backup
done
下面結果顯示所有的兩個文件都復制到兩個伺服器上。
# ./file-cp.sh
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
使用下面的腳本遞歸地復制文件夾到多個遠程伺服器上。
# file-.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp -r /home/daygeek/2g/shell-script/ root@$server:/opt/backup
done
上述腳本的輸出。
# ./file-cp.sh
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
方式 3:如何在 Linux 上使用 pscp 命令復制文件/文件夾到多個遠程系統上?
pscp命令可以直接讓我們復制文件到多個遠程伺服器上。
使用下面的 pscp 命令復制單個文件到遠程伺服器。
# pscp.pssh -H 2g.CentOS.com /home/daygeek/2g/shell-script/output.txt /opt/backup
[1] 18:46:11 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令復制多個文件到遠程伺服器。
# pscp.pssh -H 2g.CentOS.com /home/daygeek/2g/shell-script/output.txt ovh.sh /opt/backup
[1] 18:47:48 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令遞歸地復制整個文件夾到遠程伺服器。
# pscp.pssh -H 2g.CentOS.com -r /home/daygeek/2g/shell-script/ /opt/backup
[1] 18:48:46 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令使用下面的命令復制單個文件到多個遠程伺服器。
# pscp.pssh -h server-list.txt /home/daygeek/2g/shell-script/output.txt /opt/backup
[1] 18:49:48 [SUCCESS] 2g.CentOS.com
[2] 18:49:48 [SUCCESS] 2g.Debian.com
使用下面的 pscp 命令復制多個文件到多個遠程伺服器。
# pscp.pssh -h server-list.txt /home/daygeek/2g/shell-script/output.txt passwd-up.sh /opt/backup
[1] 18:50:30 [SUCCESS] 2g.Debian.com
[2] 18:50:30 [SUCCESS] 2g.CentOS.com
使用下面的命令遞歸地復制文件夾到多個遠程伺服器。
# pscp.pssh -h server-list.txt -r /home/daygeek/2g/shell-script/ /opt/backup
[1] 18:51:31 [SUCCESS] 2g.Debian.com
[2] 18:51:31 [SUCCESS] 2g.CentOS.com