home.tgz
があり、それを新しくインストールしたubuntuボックスにドロップするとします。
ファイルを展開する前に何をする必要がありますか?ユーザーを作成しますか?ユーザーIDはどうですか?グループ?暗号化はどうですか?
/home/
sid
)プロセスを簡素化する場合は、いくつかのことを行う必要があります。以下では、ユーザーがmark
と呼ばれると仮定します。
cd ~mark && id mark > mark.identity
/home/mark
の場合、cd /home && tar jcpf mark.tar.bz2 mark
にしたいcd /home && tar xjpf mark.tar.bz2
)#!/ bin/bash USER = "$ {1}" if [! -e "$ {USER}"。identity]; then echo "IDファイルなし" exit fi Gd = `awk '{print $ 2" $ {USER} "。identity } '| sed -e "s /.*(// g" -e "s /).*// g" ` GLIST =` awk '{print $ NF "{USER}"。identity}' | sed -e "s/[az] * = // g" -e "s/[0-9] *(// g" -e "s /)// g" ` $ {Gd}のグループの場合$ {GLIST}; do getent group $ {GROUP}>/dev/null STATUS = $ {?} if [$ {STATUS} -ne 0]; then groupadd $ {GROUP} fi done useradd -g "$ {Gd}" -G "$ {GLIST}" 「$ {USER}」
ここに書いたばかりで、テストはしていないことに注意してください。
はい、すべてのグループが存在することを前提としています。スクリプトを拡張して、各グループが存在するかどうかを確認し、存在しない場合は作成するのは難しくありません。上記の変更がそれを処理するはずです。
また、これはSudoを介して取得した特権を処理しないことに注意してください。また、ローカルの電子メールなどを受け取ったとしても役に立ちません。それは、ユーザーを以前と同じグループに設定するだけです。また、ディレクトリが既に存在する場合は、上書きされるため、注意が必要です。
テストvmでは、bob(1001)とalice(1002)を追加しました。ボブを削除し、ジョー(1001)を追加しました。ごめんなさい、私が悪かった。各ユーザーのホームフォルダーの所有者とグループを各ユーザーに再割り当てする必要があります。
これは退屈に思えるかもしれませんが、3つのステップの詳細な説明にすぎません。
これらのメンテナンスタスクを実行するにはスーパーユーザー権限が必要なので、各コマンドの前にSudo
を付けて、これらの権限を付与します。
新しいUbuntuのインストール:
Sudo adduser alice
Sudo chown -R alice\:alice /home/alice
コマンドを説明するには:
-R
は所有権を再帰的に適用することを意味し、alice \:aliceはファイルに新しいowner\:group
を指定する方法であり、/home/alice
でこのタスクを実行するようにchownに指示します。これで、/ home/aliceの下のすべてのファイルが彼女に属し、彼女はファイルへのアクセスに問題がないはずです。もっと理にかなっていることを願っています。
同じ名前で新しいユーザーアカウントを作成すると、古いユーザーアカウントと同じUIDになります。どこかでメーリングリストでそれについて読んだことを覚えていますが、それを読んでいるソースを見つけることができません。