
いつもお世話になっております。
linuxで、useraddした後、passwdコマンドでパスワードを設定していないユーザーがいます。ここでは、postgresとします。
このユーザーに一般ユーザーからなるときに、
$su - postgres
としますが、パスワードがきかれて、何も入力しないと、
invalidになります。(centos5)
パスワードを設定しないと、一般ユーザーからログインできないのでしょうか。
ちなみに、rootからpostgresですと、ログインできます。
$su -
$su - postgres
お手数をおかけしますが、なにとぞご教授お願いいたします。
No.1ベストアンサー
- 回答日時:
実際useraddしてみると分かりますが、useradd直後の状態では、パスワードは「設定されていません」。
設定しとらんのやけん設定はされとらんやろ何を言うてるんアホちゃうんと思うなかれ。パスワードが設定されていないとは、パスワードが空である(=初期値としてランダムパスワードが設定されている訳ではない)という事です。さて、ではどうして一般ユーザーからsuできないのでしょうか。rootになって
# getent shadow postgres
とすると、パスワードの欄が半角びっくりマーク2個のみが印字されたかと思います。この半角びっくりマーク2個というのがLinuxにおいて「アカウントがロックされている」という状態になります。
試しに/etc/shadowファイルをrootで直接書き換える(びっくり2つを削る)と、一般ユーザーからパスワードなしでsu - postgresできるようになります。もちろんこんな危険な操作(shadowの書き換え)は普通せずに、以下のようにします。
# passwd -u -f postgres
passwd -uというのは、ロックアウトされているアカウントのロックを解除するものですが、現在postgresにはパスワードが設定されていないためpasswd -uだけだと「危険だべ」と拒否されます。ので、-fオプションをつけて強行します。すると先ほど/etc/shadowを直接書き換えたのと同じ状態に変わり、一般ユーザーからパスワードなしでsu - postgresする事ができるようになります。逆にロックする時は
# passwd -l postgres
です。詳しくはpasswd -hなどを参照の事。root(uid 0)はロックされているアカウントもおかまいなしに変身できるという凄い権利を持っています。
ありがとうございます!
非常によく分かりました。
今までいただいた回答の中でも、指折りでわかりやすかったと思います。
感謝しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
電子書籍プレゼントキャンペーン!
最大2万円超分当たる!マンガや小説が読める電子書籍サービス『Renta!』で利用できるギフトコードプレゼント実施中!
-
python エラー
その他(プログラミング・Web制作)
-
530が出て、FTPアクセスできません
UNIX・Linux
-
ソフトのインストール場所ってどこにすればいいの?
UNIX・Linux
-
4
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
5
yumインストール先は、何で決まるのでしょうか?
UNIX・Linux
-
6
スクリプトのエラー「unexpected EOF while looking for matching `'」の解決法は?"
UNIX・Linux
-
7
一つのTeratermのマクロで複数のTeratermのウィンドウを立ち上げることはできますか?
サーバー
-
8
HOSTキーってどこですか?
UNIX・Linux
-
9
sudoで実行したコマンドの実行履歴をログとして出力したい
UNIX・Linux
-
10
リナックスの特殊ファイル「ソケット」を作成する方法はありますか
UNIX・Linux
-
11
dig/host/nslookup コマンドの違い
UNIX・Linux
-
12
ja_JP.UTF-8 と en_US.UTF-8 などの違いについて
その他(コンピューター・テクノロジー)
-
13
URLアクセス時のエラーの意味
その他(インターネット接続・インフラ)
-
14
VNCが使うポートを空ける
その他(インターネット接続・インフラ)
-
15
auth.logが出力されない。
UNIX・Linux
-
16
pingは正常なのにtracerouteで応答なしって・・・
UNIX・Linux
-
17
postgresqlの接続ポート5432から5433に変更したら
PostgreSQL
-
18
su - でパスワードの自動入力をするスクリプトの作り方
UNIX・Linux
-
19
Bシェル 変数にある文字列が含まれているか調べる方法
その他(コンピューター・テクノロジー)
-
20
bashの関数の引数にスペースが入るとズレる件
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
共有フォルダにアクセスする際...
-
5
Linuxでパスワード変更時に「it...
-
6
Linux パスワードを無しにして...
-
7
Time Machine設定 ユーザ名と...
-
8
SoftBank回線でiphoneを利用し...
-
9
dovecotからメールを取り出せま...
-
10
PuppyLinux 既存ユーザのパスワ...
-
11
パソコンをリカバリーするとパ...
-
12
ログインパスワードは入るが、...
-
13
ログインパスワードが変更できない
-
14
CUPSを使ったネットワークプリ...
-
15
iPadの受信メールが消える
-
16
同じ独自ドメインを2つのサーバ...
-
17
「DNSサーバーを自動的に取得す...
-
18
エクセルで#N/Aを含めた平均値...
-
19
Windows Server 2019 CALについて
-
20
Apacheでセッションタイムアウ...
おすすめ情報
公式facebook
公式twitter