/と/ homeをマージする最も簡単な方法は何ですか?


16

個別のパーティション//homeパーティションがあり、どちらもファイルシステムとしてext4を使用しています。
それらをマージするにはどうすればよいですか?最も簡単な方法は何ですか?


2
GPartedとライブCDの使用についてのみ知っています。/ homeのサイズを変更してから、を展開し/ます。/homeファイルをに移動し、/最後にを削除し/homeて展開し/ます。
Apache

1
全体/homeを外部ドライブにコピー/バックアップし、1つのパーティションでUbuntuを再インストールしてから、ホームをコピーして戻します
Marius

@Marius、結局のところ、私が書いたものは完璧に機能します。(これは htorque彼の答えで言ったことです。)だから私は彼を受け入れます。:)
Apache

回答:


13

もっと簡単な方法はないと思います。あるパーティションから別のパーティションにデータをコピーする必要があります。古いホームパーティションを削除し、ルートパーティションのサイズを変更する必要があります。これは実行中のシステムでは実行できないため、ライブCDまたはUSBは、入手できるほど優れているように見えます。

  • ライブCD / USBを起動します。
  • ルートパーティションをにマウントし/mnt/rootます。
  • ホームパーティションをにマウントし/mnt/oldhomeます。
  • 以下を使用してデータをコピーしますrsync

    sudo rsync -avz --hard-links --numeric-ids /mnt/oldhome/ /mnt/root/home
    
  • /mnt/root/etc/fstabホームパーティションのエントリを開いて削除します。

  • ルートおよびホームパーティションをアンマウントし、システムを再起動します。すべてが期待どおりに機能する場合は、ライブシステムを再起動して、次の操作を実行できます。
  • オープンGparted
  • 古いホームパーティションを削除し、ルートパーティションのサイズを変更します。

それであるはずです。


1
そのrsyncコマンドに加えることができるいくつかの改善があります。まず、fromパスの最後にスラッシュが必要です。または、homefolder内でoldhomeになります。/ homeの下にこれらのいずれかがある場合、-hard-linksを追加することもできます。安全のために、Live CDの/ etc / {passwd、group}の内容に応じて、-numer-idsも傷つきません。
アンドル

また、ローカルrsyncを実行する際に、圧縮による多くのメリットを本当に期待していますか?
アンドル

ありがとう。上記のrsync呼び出しにそれらを追加しました。
qbi

@andol:ありがとう、私は答えがあまりにもずさんでした。ローカル圧縮に関しては、はい、パフォーマンスが少し向上しているので、パフォーマンスが低下しない限り、圧縮を有効にする傾向があります。
htorque

良い答えが、いくつかの注意事項は:--hard-linksだけに短縮することができ-H-z望ましい/効果的なローカルファイルシステム上ではないでしょう、と--numeric-ids(他の他のドライブ上の/ etcに何があるか/ passwdのは何の効果もないだろうローカルファイルシステム上の任意の効果を持っていないでしょうローカルで実行する場合)。
トーマスラッター

0

私は最も簡単な方法または最良の方法については知りませんが、ここに私がそれをする方法があります。フォルダーを作成し/、そこからすべてのデータをコピーします/home。次に、ライブcdを使用してシステムを再起動し、パーティションを削除し、/home作成したフォルダの名前を変更して/から、fstabのhomeエントリを削除し/homeます。最後の手順は、/ homeのパーティションを削除して作成された空のスペースを消費するようにルートパーティションのサイズを変更することです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.