cp的功能很多,由于我們常常進行一些數(shù)據(jù)的復(fù)制,所以也會常常用到這個命令。一般來說,如果去復(fù)制別人的數(shù)據(jù)(當(dāng)然,該文件必須要有read的權(quán)限),總是希望復(fù)制到的數(shù)據(jù)最后是我們自己的,所以,在默認(rèn)條件中,cp的來源文件與目標(biāo)文件的權(quán)限是不同的,目標(biāo)文件的擁有者通常會是命令操作者本身。舉例來說,范例二中,由于我是root身份,因此復(fù)制過來的文件擁有者與用戶組就改變成為root所有了。
由于具有這個特性,在進行備份的時候,某些需要特別注意的特殊權(quán)限文件,例如密碼文件(/etc/shadow)以及一些設(shè)置文件,就不能直接以cp來復(fù)制,而必須要加上 -a或者是 -p,這些可以完整復(fù)制文件權(quán)限的參數(shù)。另外,如果想要復(fù)制文件給其他用戶,也必須要注意文件的權(quán)限(包含讀、寫、執(zhí)行以及文件擁有者),否則,其他人還是無法對你給的文件進行修改。特別要注意。
上面的第4個范例最有趣,使用 -l及 -s都會建立所謂的連接文件(link file),但是這兩種連接文件有不一樣的顯示。這是怎么一回事? -l就是所謂的硬連接(hard link), -s則是符號連接(symbolic link),筆者這里先不介紹,因為這涉及i-node的相關(guān)知識,我們還沒有介紹到,下一章再討論這個連接的問題。總之,由于cp有種種文件屬性與權(quán)限,所以,在復(fù)制時,必須要清楚地了解到:
• 是否需要完整地保留來源文件的信息?
• 來源文件是否為符號連接文件(symbolic link file)?
• 來源文件是否為特殊的文件,例如FIFO、套接字等?
• 來源文件是否為目錄?
由于具有這個特性,在進行備份的時候,某些需要特別注意的特殊權(quán)限文件,例如密碼文件(/etc/shadow)以及一些設(shè)置文件,就不能直接以cp來復(fù)制,而必須要加上 -a或者是 -p,這些可以完整復(fù)制文件權(quán)限的參數(shù)。另外,如果想要復(fù)制文件給其他用戶,也必須要注意文件的權(quán)限(包含讀、寫、執(zhí)行以及文件擁有者),否則,其他人還是無法對你給的文件進行修改。特別要注意。
上面的第4個范例最有趣,使用 -l及 -s都會建立所謂的連接文件(link file),但是這兩種連接文件有不一樣的顯示。這是怎么一回事? -l就是所謂的硬連接(hard link), -s則是符號連接(symbolic link),筆者這里先不介紹,因為這涉及i-node的相關(guān)知識,我們還沒有介紹到,下一章再討論這個連接的問題。總之,由于cp有種種文件屬性與權(quán)限,所以,在復(fù)制時,必須要清楚地了解到:
• 是否需要完整地保留來源文件的信息?
• 來源文件是否為符號連接文件(symbolic link file)?
• 來源文件是否為特殊的文件,例如FIFO、套接字等?
• 來源文件是否為目錄?