ここでUNIX&Linux Stack Exchangeに関する別の回答で、Michael D Parkerは、そうすることが「安全」だと誰かが言ったことに対して、次のように書いています。
通常、/ etc / shadowファイルを直接編集しないでください。
そう:
なぜファイルを直接編集するべきではないの/etc/shadow
ですか?
ここでUNIX&Linux Stack Exchangeに関する別の回答で、Michael D Parkerは、そうすることが「安全」だと誰かが言ったことに対して、次のように書いています。
通常、/ etc / shadowファイルを直接編集しないでください。
そう:
なぜファイルを直接編集するべきではないの/etc/shadow
ですか?
回答:
ありません編集するにはいくつかの理由がある/etc/passwd
、/etc/shadow
、/etc/group
、/etc/gshadow
または/etc/sudoers
直接ではなく、使用vipw
、vigr
またはvisudo
:
passwd
、ユーザーがを呼び出したために変更されたファイル、chsh
またはchfn
自分のアカウントについて何かを変更したファイルの両方が含まれます。適切なツールを使用すると、同時変更ができなくなります。これは主に、複数のユーザーがいるシステムでの問題であり、あなたが唯一のユーザーである場合はそうではありません。vipw
複数のファイル(/etc/passwd
およびなど/etc/master.passwd
)を更新します。これはLinuxには適用されません。vipw
自動的にバックアップが作成されます(passwd-
、shadow-
、...)、あなたが誤って行を削除したことを認識した場合に有用です。次の編集の前に気付いた場合にのみ役立つため、バージョン管理やバックアップに取って代わることはありませんが、すぐに間違いに気付いた場合は非常に便利です。visudo
これはしません。あなたは可能ファイルを直接編集します。あなたは本当の利点なしに追加のリスクを冒しているだけです。
/etc/shadow
存在せず/etc/passwd
、編集するファイルが間違っていることです。☺
これを見るには、基本的に2つの方法があります。
指定されたツールを使用せずに特定のファイルを編集しないでください。おそらく何をしているのかわからないためです。また、前述のツールはよりよく知っていていつでも利用できるため、問題ありません。
より現実的には、システムの基本的な初期login
プロセスの内部と外部に関する基本的な知識がおそらく価値があるため、バックアップコピーを事前に計画し、実行後の違いを比較できるように、それを考えているときに今すぐ壊すこともできます。後で何か別の方法でそれを壊すときに備えて、ツールは役に立たないだろうと言いました。
私はあなたがおそらく私がどちらを推薦するかを言うことができると思います。トピックが一瞬でも興味があるなら、その好奇心を活かして、その中にいる間に新しいスキルを身につけるべきだと私は言います。特にこのようなもの- shadow
ファイルはかなり基本的な形式であり、誤って破壊した後に私が学んだことのほとんどはわかりませんでした。それは、そのファイルに対して行った編集の結果ではありませんでした。
むしろ、パッケージ管理データベースで他の何らかのミスがあり、パッケージマネージャーがバックアップを保存せずにそれを上書きして、システム上のすべてのユーザーがkaputされた後に私の問題が発生しました。さらに無知な修理の試みは、他の関連ファイルへのダメージを広げるだけであり、/etc
のテキストファイルの大部分を(希望よりも新しい)バックアップから復元しなければならないようになりました。
それを実行し、実行可能な状態であることを確認したら、私は故意に、細心の注意を払ってもう一度すべてを実行することにしました。そしてもう一度。これはすべて数か月前のことでしたが、今日はlogin
、システム上の1つのログファイルを1回だけ繰り返して問題の原因を診断し、基本的なエディターで対処できることを確信しています(おそらく、一目で確認できます)または2つはman 5 problem_file
)影響を受けたルートファイルシステムへの基本的なアクセスを提供します。それは安く手に入れることはできませんでした-それは私にほとんどの日を要しました-そして関連する設定ファイルはディレクトリ(そしてLinux PAMのような/var/run/no_login
-他のマウント)にも広がっています-しかし、それはやる価値がありました。そして、それは少しの予見でもっと安かったかもしれません。
この話の教訓は、それはおそらくであるということであるでないようなミッションクリティカルなコンフィグの形式があることは良いことshadow
、passwd
、groups
、shells
私たちはしてもしなくてもよい方法で私たちの仕事を補正してもよい特殊な編集ツールを使用しなければならないことを私たちに非常に不透明である必要があり、単純な変更を行うだけでは理解できない理由があります。少なくとも、彼らが私たちとは異なる方法で何をするかを正確に理解することは私たちの価値があると私は思います。
ただし、上記のファイルの編集に慣れると、ファイル内で作成するリスクが発生し、その後、誤植または単純な構文エラーを保存して、再確認できるツールが用意されていることは、おそらく良いことです。ブレース編集を適用する前にすでに理解している方法と理由で私たちの作業。
カウンターポイント-現在のパスワードを知らなかったり、新しいパスワードを割り当てたりせずに、ユーザーログインのセットを1つのサーバーから別のサーバーにコピーする必要がある場合は、/ etc / shadowを直接編集して、ハッシュされたパスワードフィールドを挿入する必要があります。vipwはそのフィールドに触れることができません、それは単に「*」です
更新:またはこの場合はchpasswd -e "ハッシュされたパスワード"を使用しますが、これはコンピューター上でのみ直接実行できます。マシン(仮想マシンなど)にまだデプロイされていない一連のファイルを使用して作業していた場合は、直接編集することが唯一の解決策になる可能性があります。
つまり、通常、/ etc / shadowを直接編集せずに、やりたいことを行うためのツールがあります。それが何であるかを知る必要があるだけです...