GNU/Linux >> Linux の 問題 >  >> Cent OS

Linux でディレクトリをパーティションに変換する方法

この投稿の目標は、ホーム ディレクトリを、専用のパーティションを持つ新しく追加されたディスクに移動することです。

1. 新しいディスクを追加し、必要なパーティション (sdb1 など) を作成します。

2. ホーム フォルダをいずれかのパーティションに移動します。ファイルシステムを使用するには、ルート ファイルシステムのマウント ポイント (/home などのターゲット ディレクトリ) にマウントする必要があります。

3. まず、システムで df コマンドを使用してファイルシステムの使用状況を一覧表示します。

# df -hl

4. とりあえず /dev/sdb1 をマウントできる新しいディレクトリ /srv/home を作成することから始めます。

# mkdir -p /srv/home
# mount /dev/sdb1 /srv/home

5. rsync コマンドまたは cp コマンドを使用して、/home の内容を /srv/home に移動します (実際には /dev/sdb1 に格納されます)。

# rsync -av /home/* /srv/home/

または

# cp -aR /home/* /srv/home/

6. その後、差分ツールを使用して 2 つのディレクトリの違いを見つけます。問題がなければ、次のステップに進みます。

# diff -r /home /srv/home

7. 次のように、/home 内のすべての古いコンテンツを削除します。

# rm -rf /home/*

8. 次に /srv/home をアンマウントします。

# umount /srv/home

9. 最後に、しばらくの間、ファイルシステム /dev/sdb1 を /home にマウントする必要があります。

# mount /dev/sdb1 /home
# ls -l /home
注意 :新しい /home をマウントした後、ディレクトリのデフォルトの umask がシステムで変更され、/srv/home が異なるパーミッションで作成された場合に備えて、chmod 755 /home を実行することをお勧めします。

10. 上記の変更は、現在のブートでのみ有効です。/etc/fstab に以下の行を追加して、変更を永続的にします。

11. 次のコマンドを使用して、パーティションの UUID を取得します。

# blkid /dev/sdb1
/dev/sdb1: UUID="[ID]" TYPE="ext4" PARTLABEL="primary"

12. パーティションの UUID がわかったら、/etc/fstab ファイルを開き、次の行を追加します。

UUID=[ID] /home ext4 defaults 0 2

13. 次のコマンドを実行して、/home ディレクトリが専用パーティションに正常に移動されたことを確認します。

# df -hl


Cent OS
  1. Linuxで削除された/tmpディレクトリを復元する方法

  2. CentOSLinux8からCentOSStream8に変換する方法

  3. Linuxは複数の連続したパスセパレーター(/ home //// username /// file)をどのように処理しますか?

  1. Debian – / var、/ homeを別のパーティションに移動しますか?

  2. 複数のLinuxディストリビューションに共通の/homeパーティション?

  3. /home ディレクトリのディスク容量が不足していますか?

  1. Linuxでディスクをパーティション分割する方法

  2. Centos8LinuxをAlmaLinux8に変換する方法

  3. マウントポイントを変更するには?