❶ linux如何拷貝文件到其他用戶中
foo用戶home目錄下有一文件file.txt,要將其至bar用戶的home目錄。Linux對用戶home目錄有嚴格的許可權限制,非owner用戶或者同group用戶無許可權讀寫,除非是root(至高無上的root)。如果沒有root許可權,有什麼辦法把file.txt 復制到bar用戶的home目錄下呢?一起來學習下吧。
Linux如何拷貝文件到其他用戶?
解決方法:
第一個辦法,先用foo用戶登錄,把文件到系統臨時目錄/tmp,然後切換到bar用戶,再從系統臨時目錄/tmp把文件到自己的home目錄。這里為什麼用cp不用mv?因為復制到/tmp的文件owner還是foo,默認情況下其他用戶自有讀許可權,沒有寫許可權(自然沒有移動許可權)。即使通過修改文件許可權,讓bar可寫,移動到bar的home目錄下owner還是foo,而且非得root才能改成bar。這個辦法有點曲折,弊端也很明顯,文件需要復制兩次,花兩倍的時間。
# cp file.txt /tmp/
# su - bar
# cp /tmp/file.txt ~/
# exit
# rm /tmp/file.txt
第二個辦法,使用scp命令。原本scp是用來在不同主機上通過網路文件,用在這里剛好。用bar用戶登錄
# scp foo@localhost:/home/foo/file.txt 。/
輸入foo用戶密碼,開始文件傳輸。也可以用foo用戶登錄,
# scp file.txt bar@localhost:/home/bar/
輸入bar用戶密碼,過程一樣。
補充:系統常用維護技巧
1,在 “開始” 菜單中選擇 “控制面板” 選項,打開 “控制面板” 窗口,單擊 “管理工具” 鏈接
2,在打開的 “管理工具” 窗口中雙擊 “事件查看器” 圖標
3, 接著會打開 “事件查看器” 窗口
4,在右側窗格中的樹狀目錄中選擇需要查看的日誌類型,如 “事件查看器本地--Win日誌--系統日誌,在接著在中間的 “系統” 列表中即查看到關於系統的事件日誌
5,雙擊日誌名稱,可以打開 “事件屬性” 對話框,切換到 “常規” 選項卡,可以查看該日誌的常規描述信息
6,切換到 “詳細信息” 選項卡,可以查看該日誌的詳細信息
7,打開 “控制面板” 窗口,單擊 “操作中心” 鏈接,打開 “操作中心” 窗口,展開 “維護” 區域
8,單擊 “查看可靠性歷史記錄” 鏈接,打開 “可靠性監視程序” 主界面,如圖所示, 用戶可以選擇按天或者按周為時間單位來查看系統的穩定性曲線表,如果系統近日沒出過什麼狀況, 那麼按周來查看會比較合適。觀察圖中的曲線可以發現,在某段時間內,系統遇到些問題,可靠性指數曲線呈下降的趨勢,並且在這段時間系統遇到了三次問題和一次警告,在下方的列表中可以查看詳細的問題信息。
相關閱讀:系統故障導致死機怎麼解決
1、病毒原因造成電腦頻繁死機
由於此類原因造成該故障的現象比較常見,當計算機感染病毒後,主要表現在以下幾個方面:
①系統啟動時間延長;
②系統啟動時自動啟動一些不必要的程序;
③無故死機
④屏幕上出現一些亂碼。
其表現形式層出不窮,由於篇幅原因就介紹到此,在此需要一並提出的是,倘若因為病毒損壞了一些系統文件,導致系統工作不穩定,我們可以在安全模式下用系統文件檢查器對系統文件予以修復。
2、由於某些元件熱穩定性不良造成此類故障(具體表現在CPU、電源、內存條、主板)
對此,我們可以讓電腦運行一段時間,待其死機後,再用手觸摸以上各部件,倘若溫度太高則說明該部件可能存在問題,我們可用替換法來診斷。值得注意的是在安裝CPU風扇時最好能塗一些散熱硅脂,但我在某些組裝的電腦上卻是很難見其蹤影,實踐證明,硅脂能降低溫度5—10度左右,特別是P Ⅲ 的電腦上,倘若不塗散熱硅脂,計算機根本就不能正常工作,曾遇到過一次此類現象。該機主要配置如下:磐英815EP主板、PⅢ733CPU、133外頻的128M內存條,當該機組裝完後,頻繁死機,連Windows系統都不能正常安裝,但是更換賽揚533的CPU後,故障排除,懷疑主板或CPU有問題,但更換同型號的主板、CPU後該故障也不能解決。後來由於發現其溫度太高,在CPU上塗了一些散熱硅脂,故障完全解決。實踐證明在賽揚533以上的CPU上必須要塗散熱硅脂,否則極有可能引起死機故障。
3、由於各部件接觸不良導致計算機頻繁死機
此類現象比較常見,特別是在購買一段時間的電腦上。由於各部件大多是靠金手指與主板接觸,經過一段時間後其金手指部位會出現氧化現象,在拔下各卡後會發現金手指部位已經泛黃,此時,我們可用橡皮擦來回擦拭其泛黃處來予以清潔。
4、由於硬體之間不兼容造成電腦頻繁死機
此類現象常見於顯卡與其它部件不兼容或內存條與主板不兼容,例如SIS的顯卡,當然其它設備也有可能發生不兼容現象,對此可以將其它不必要的設備如Modem、音效卡等設備拆下後予以判斷。
5、軟體沖突或損壞引起死機
此類故障,一般都會發生在同一點,對此可將該軟體卸掉來予以解決。
❷ 如何從linux的文件拷貝到另一台機器
1、首先從服務端文件到本地。比如伺服器的home下有一個文件是a.txt,那麼命令是:scp [email protected]:/home/a.txt /home,
❸ linux系統如何掛載硬碟並拷貝到某個目錄下
1.進入命令行模式下,輸入命令 sudo -i
獲取root許可權
6.下面就可以使用命令cp來拷貝文件了拷貝完後取消掛載:umount /dev/sdb1
❹ linux如何復制移動文件
linux如何復制文件夾和移動文件夾
linux下文件的復制、移動與刪除命令為:cp,mv,rm
一、文件復制命令cp
命令格式:cp [-adfilprsu] 源文件(source) 目標文件(destination)
cp [option] source1 source2 source3 ... directory
參數說明:
-a:是指archive的意思,也說是指復制所有的目錄
-d:若源文件為連接文件(link file),則復制連接文件屬性而非文件本身
-f:強制(force),若有重復或其它疑問時,不會詢問用戶,而強制復制
-i:若目標文件(destination)已存在,在覆蓋時會先詢問是否真的操作
-l:建立硬連接(hard link)的連接文件,而非復制文件本身
-p:與文件的屬性一起復制,而非使用默認屬性
-r:遞歸復制,用於目錄的復制操作
-s:復製成符號連接文件(symbolic link),即「快捷方式」文件
-u:若目標文件比源文件舊,更新目標文件
如將/test1目錄下的file1復制到/test3目錄,並將文件名改為file2,可輸入以下命令:
cp /test1/file1 /test3/file2
二、文件移動命令mv
命令格式:mv [-fiv] source destination
參數說明:
-f:force,強制直接移動而不詢問
-i:若目標文件(destination)已經存在,就會詢問是否覆蓋
-u:若目標文件已經存在,且源文件比較新,才會更新
如將/test1目錄下的file1復制到/test3 目錄,並將文件名改為file2,可輸入以下命令:
mv /test1/file1 /test3/file2
三、文件刪除命令rm
命令格式:rm [fir] 文件或目錄
參數說明:
-f:強制刪除
-i:交互模式,在刪除前詢問用戶是否操作
-r:遞歸刪除,常用在目錄的刪除
如刪除/test目錄下的file1文件,可以輸入以下命令:
rm -i /test/file1
復制:
CP命令
格式: CP [選項] 源文件或目錄 目的文件或目錄
選項說明:-b 同名,備分原來的文件
-f 強制覆蓋同名文件
-r 按遞歸方式保留原目錄結構復制文件
cp -Rf /home/user1/* /root/temp/
將 /home/user1目錄下的所有東西拷到/root/temp/下而不拷貝user1目錄本身。
即格式為:cp -Rf 原路徑/ 目的路徑/
移動:
mv ./WorkReport/web.xml ./WorkReport/WEB-INF/註:移動/WorkReport/web.xml文件到/WorkReport/WEB-INF/mv /data/new/data/old/註:移動/data/new到/data/old/文件夾下
注意點:移動文件夾的話就不要再加 / 了
如果是移動文件夾下的所有文件的話就可以文件夾後面跟上 /*
mv /data/new/* /data/old/
❺ Linux中的零拷貝技術
參考文章: 淺析Linux中的零拷貝技術
內核和用戶空間,共享內存。數據到內核區後,只需要把地址共享給應用程序即可,無需再一次數據到用戶空間。
優點:
缺點:
應用:
kafka生產者發送消息到broker的時候,broker的網路接收到數據後,到broker的內核空間。然後通過mmap技術,broker會修改消息頭,添加一些元數據。所以,寫入數據很快。當然順序IO也是關鍵技術
內核直接發送數據到socket,無需用戶空間參與。
優點:
缺點:
為了節省內核裡面的一次,我們可以使用優化過的sendfile。該系統方法需要由特定的硬體來支持,並不是所有系統都支持。如下:
sendfile的時候,直接把內核空間的地址傳遞給socket緩存,DMA直接從指定地址讀取數據到流裡面。
sendfile只適用於將數據從文件拷貝到套接字上,限定了它的使用范圍。Linux在2.6.17版本引入splice系統調用,用於在兩個文件描述符中移動數據。
splice調用在兩個文件描述符之間移動數據,而不需要數據在內核空間和用戶空間來回拷貝。他從fd_in拷貝len長度的數據到fd_out,但是有一方必須是管道設備,這也是目前splice的一些局限性。flags參數有以下幾種取值:
splice調用利用了Linux提出的管道緩沖區機制, 所以至少一個描述符要為管道。
以上幾種零拷貝技術都是減少數據在用戶空間和內核空間拷貝技術實現的,但是有些時候,數據必須在用戶空間和內核空間之間拷貝。這時候,我們只能針對數據在用戶空間和內核空間拷貝的時機上下功夫了。Linux通常利用寫時復制( on write)來減少系統開銷,這個技術又時常稱作COW。
摘錄網上:
傳統的fork()系統調用直接把所有的資源復制給新創建的進程。這種實現過於簡單並且效率低下,因為它拷貝的數據也許並不共享,更糟的情況是,如果新進程打算立即執行一個新的映像,那麼所有的拷貝都將前功盡棄。Linux的fork()使用寫時拷貝(-on-write)頁實現。寫時拷貝是一種可以推遲甚至免除拷貝數據的技術。內核此時並不復制整個進程地址空間,而是讓父進程和子進程共享同一個拷貝。只有在需要寫入的時候,數據才會被復制,從而使各個進程擁有各自的拷貝。也就是說,資源的復制只有在需要寫入的時候才進行,在此之前,只是以只讀方式共享。這種技術使地址空間上的頁的拷貝被推遲到實際發生寫入的時候。在頁根本不會被寫入的情況下—舉例來說,fork()後立即調用exec()—它們就無需復制了。fork()的實際開銷就是復制父進程的頁表以及給子進程創建惟一的進程描述符。在一般情況下,進程創建後都會馬上運行一個可執行的文件,這種優化可以避免拷貝大量根本就不會被使用的數據(地址空間里常常包含數十兆的數據)。由於Unix強調進程快速執行的能力,所以這個優化是很重要的。這里補充一點:Linux COW與exec沒有必然聯系。
我總結下: -on-write技術其實是一種延遲復制的技術,只有需要用(寫)的時候,才去復制數據。
❻ 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要注意所使用的用戶是否具有可讀取遠程伺服器相應文件的許可權。