VirtualBox VMにUbuntuの最小インストールを作成しました。その後、友達と共有できるように保管することにしました。私は彼らがLinuxコマンドを試すことができるようにそれを使用させました。
コマンドを使用してアーカイブします。
tar -zcvf ./Hackcraft.tar.gz ./Hackcraft
書類選考は非常に順調に行われました。ただし、FileRollerでアーカイブを開くと、最初に見えるディレクトリが「.」であることがわかります。引用なし。そのディレクトリをダブルクリックしてその中を覗くと、保管されていたHackcraftフォルダが見えました。その中に私のファイルがすべて入っています。
問題はなぜトップレベルのフォルダが.?です。たとえば、端末でCDを使用するときに現在のフォルダを表すために使用されることがわかります。しかし、なぜそこにいるのですか?
答え1
あなたが与えたコマンドは、パスが./Hackcraft
;で始まるタールボールを生成します。これを実行すると見ることができます
tar tf Hackcraft.tar.gz
File Rollerは、tarballフォルダの内容をフォルダごとに分割して表示します。これにより、名前付きフォルダを含む名前がルート/
フォルダとして表示されます。.
Hackcraft
(アーカイブ自体には.
項目は含まれていません。)
答え2
tar
アーカイブにエントリがある場合は、現在の./
ディレクトリの所有権と権限を記録するために使用されます。したがって、解凍すると、現在のディレクトリの所有権と権限が変更される可能性があります。
つまり、実行したコマンドがメンバーをtar
含むアーカイブを作成してはいけません./
。FileRoller
最上位ディレクトリを暗黙的に削除することができます。