インストール中に/homeのディレクトリに従ってユーザーを設定します。

インストール中に/homeのディレクトリに従ってユーザーを設定します。

/home以前のパーティションを見て、そのパーティションのルートにあるディレクトリに基づいてユーザーを設定するGnu / Linuxインストーラはありますか?

したがって、新しいGnu / Linuxをインストールして以前のバージョンを維持する場合、/homeパーティション/homeはさまざまなユーザーとグループが所有するファイルでいっぱいになります。また、ファイルが/home正しい所有権を持つように、以前のシステムのユーザーと一致する必要があるユーザーの数を設定する必要があります。パーティションのルートディレクトリは、/home各ユーザーにそのユーザーとその基本グループが所有するディレクトリを提供します。

したがって、ディレクトリをスキャンし、見つかった各ディレクトリに対してユーザー/基本グループを作成することが可能でなければなりません。

  • すでにこれを行うことができるツールはありますか?
  • インストールされているGnu / Linuxで使用されていますか?
  • Debian はこのようなことをしますか?

(新しいDebianをインストールしようとしています。)

答え1

これを実行できるスクリプトはありませんが、UNIX / Linuxシェル自体は、必要なものの少なくとも一部を管理するために複数のツールを一緒にまとめる可能性があります。

#!/bin/bash
for homedir in /home/*
do
    user="${homedir##*/}"
    uid="$(stat -c %u "$homedir")"
    gid="$(stat -c %g "$homedir")"

    groupadd --gid "$gid" "$user"
    useradd --gid "$gid" --uid "$uid" --shell /bin/bash --home-dir "$homedir" --no-create-home "$user"
done

エラーチェックはありませんが、ほとんどの場合安全にgroupadd失敗しますuseraddecho実際の環境で実行する前に何が起こるかを確認するには、2つのコマンドの前に(たとえば)を付けます。また、すべてが間違っている場合は、ユーザーデータベースを元の値に安全に復元して再試行できるように、ファイルのコピーを事前/etc/passwd/etc/shadow保存しておくことをお勧めします/etc/group/etc/gshadow

答え2

以前の/homeパーティションを見て、そのパーティションのルートにあるディレクトリに基づいてユーザーを設定するGnu / Linuxインストーラはありますか?

はい、いいえ。別のパーティションにある場合は、すべての/homeディストリビューションで利用できる必要があります。ただし、各ユーザーのUIDとGIDが、/etc/passwdで一致することを確認する必要があります/etc/group

したがって、新しいGnu / Linuxをインストールして古い/ homeを維持すると、/ homeパーティションはさまざまなユーザーとグループが所有するファイルでいっぱいになります。また、/homeのファイルが正しい所有権を持つように、以前のシステムのユーザーと一致する必要があるユーザーの数を設定する必要があります。 /homeパーティションのルートには、各ユーザーとその基本グループのディレクトリがあります。

基本的にそうです。すべてのユーザーとグループで関連する構成ファイルを編集/etcまたは再生成し、そのchown権限を使用して古いディレクトリのファイルを回復できます/home

したがって、ディレクトリをスキャンし、見つかった各ディレクトリに対してユーザー/基本グループを作成することが可能でなければなりません。

これを自動的に実行するためのツールがあるかどうかはわかりませんが、以下は役に立ついくつかのコマンドです。

ls -n /old_home
total 8
drwxr-xr-x 32 1000 1000 4096 Jul  5 18:26 old_user

chown -R new_user:new_group /home/old_user

すでにこれを行うことができるツールはありますか?

聞いたこともありません。

インストールされているGnu / Linuxで使用されていますか?

いいえ。

Debian はこのようなことをしますか?

いいえ。

(新しいDebianをインストールしようとしています。)

いいね!

答え3

更新する場合は、既存のユーザーとグループを尊重する必要があります。疑わしい場合は、/etc安全な場所にコピーしてインストールし、ユーザーがバックアップを終了するようにしてください。

展開ごとに異なる UID ルールを使用でき、GID 割り当ても異なる場合があります。

作る確かにローカル構成を保存できます。一度覆うと消えます。特に、後で必要に応じてコピーできるようにインストールされているパッケージのリストを保存します。

関連情報