- PR -

passwdコマンドが消えました。

1
投稿者投稿内容
来紀人
会議室デビュー日: 2007/11/13
投稿数: 3
投稿日時: 2007-11-13 11:16
こんにちは、いつも参考にさせていただいています。

昨日メールサーバに、ユーザを作成しパスワードを変更しようとした
ところpasswdコマンドがなくなっていました。

ひと月前には確かにあり、その後とくにパッケージのインストールや
アンインストールを行なった記憶もありません。
historyコマンドで最近のコマンドも調べてみましたが、直近の1000件
には該当のコマンド(rm/mv/unlink)を実行した形跡はありませんでした。

findなどで検索しても見つからないので、どこかに移動してしまったと
いうよりは削除したか、何らかの原因で消えてしまったようです。
ほかに消えてしまったコマンドがあるかはわかりません。

rpm や yum で復活できる、方法はあるのでしょうか?
その場合どのパッケージを入れればいいのでしょうか?

ソースからのビルドでなら復帰は可能でしょうか?
その場合どこからどのファイルをダウンロードすればいいのでしょうか?

# uname -a
Linux XXXXX 2.6.9-42.0.10.EL #1 Tue Feb 27 09:24:42 EST 2007 i686 athlon i386 GNU/Linux

# cat /etc/issue
CentOS release 4.4 (Final)
Kernel \r on an \m

# cat /proc/version
Linux version 2.6.9-42.0.10.EL (mockbuild@builder7.centos.org) (gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)) #1 Tue Feb 27 09:24:42 EST 2007

ほかにも情報が必要でしょうか?
メールアカウントのパスワードが設定できず、非常に困っております。
よろしくお願いいたします。
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2007-11-13 11:55
システムのセキュリティに関わる重要なコマンドなんですから、
見つからない、無くなったから戻せばいいや、
という単純な問題なのか疑問ですが。

コード:
# cat /etc/issue
CentOS release 5 (Final)
Kernel \r on an \m
# which passwd
/usr/bin/passwd
# rpm -qf $(which passwd)
passwd-0.73-1



CentOS5での実行例ですが、CentOS4でも多分変わらないとは思います。

というわけで、passwdパッケージに入ってます。
パッケージがあるかどうかと、/usr/binに存在しているか、
/usr/binがPATHに含まれてるかの確認ですかね。
snowman
会議室デビュー日: 2002/12/09
投稿数: 1
投稿日時: 2007-11-13 11:56
こんにちは。

仮にpasswdコマンドだけが消えたのでしたら、RPMパッケージからpasswdコマンドを取り出して、/usr/binディレクトリに置いてあげるのが良いと思います。ご存知かもしれませんが、私が試した取り出し方法を記述しておきます(RHEL4)。

---
# rpm -qf /usr/bin/passwd
passwd-0.68-10.1

# cp -p passwd-0.68-10.1.i386.rpm /TEST  ←2枚目のCD-ROMにある

# cd /TEST
# mkdir -p ./usr/bin

# rpm2cpio ./passwd-0.68-10.1.i386.rpm | cpio -i
cpio: ./etc/pam.d/passwd: そのようなファイルやディレクトリはありません
cpio: ./usr/share/man/man1/passwd.1.gz: そのようなファイルやディレクトリはありません
44 blocks

# cd ./usr/bin/
# ls
passwd
# cp -p ./passwd /usr/bin/
---

passwdコマンドが消えた理由は必ずあるので、原因を追求することが大切だと思います。もしまだでしたら、近くの上司、同僚、後輩にも相談してみては如何でしょうか?

お役に立ちそうですか?
ゆっぽ
常連さん
会議室デビュー日: 2006/02/15
投稿数: 40
投稿日時: 2007-11-13 11:59
お世話になっております。

rpmパッケージに含まれています。

[root@**** bin]# rpm -ql passwd-***.***.**
/etc/pam.d/passwd
/usr/bin/passwd
/usr/share/man/man1/passwd.1.gz

テスト環境などでテストして本番機で作業されてみてはいかがでしょうか。
来紀人
会議室デビュー日: 2007/11/13
投稿数: 3
投稿日時: 2007-11-13 12:27
ご回答いただいた皆様ありがとうございます。
解決しました。

passwd は passwdパッケージに入っていたのですね。
rpm -qa | grep passwd の結果passwd パッケージが見つけられなかったので
何らかのパッケージをアンインストールしたときに依存関係で消えてしまった
のかも知れません。アンインストールを行なった記憶も記録も無いのですが...
パッケージごと見つからなかったので yumコマンドでインストールしてみました。

コード:

# yum install passwd
Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
passwd i386 0.68-10.1 base 18 k
Installing for dependencies:
libuser i386 0.52.5-1.el4.1 base 324 k

Transaction Summary
=============================================================================
Install 2 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 341 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): passwd-0.68-10.1.i 100% |=========================| 18 kB 00:00
(2/2): libuser-0.52.5-1.e 100% |=========================| 324 kB 00:00
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: libuser ######################### [1/2]
Installing: passwd ######################### [2/2]

Installed: passwd.i386 0:0.68-10.1
Dependency Installed: libuser.i386 0:0.52.5-1.el4.1
Complete!
[root@192.168.1.1 ~]# passwd
Changing password for user root.
New UNIX password:



Mattun様のおっしゃるとおり、消えたから入れましたで解決できる問題か?
といわれると、そうではないと思います。
なので、折りをみて再構築を行ないたいと思います。

[ メッセージ編集済み 編集者: 来紀人 編集日時 2007-11-13 13:03 ]
来紀人
会議室デビュー日: 2007/11/13
投稿数: 3
投稿日時: 2007-11-13 13:01
もう少し調べてみました。

yumコマンドを実行すると /var/log/yum.logが吐き出されている
ことがわかりました。

yum.logを見てみたら、sendmailまわりのupdateの際に passwd
パッケージとlibuserパッケージが削除されていました。

ウィルスや侵入による改ざんではないことがわかり一安心です。

yum使用後は yum.logを確認するように心がけます。
瀬戸っぷ
ベテラン
会議室デビュー日: 2003/11/28
投稿数: 56
投稿日時: 2007-11-14 00:18
引用:

来紀人さんの書き込み (2007-11-13 13:01) より:
yum使用後は yum.logを確認するように心がけます。



logwatchのレポートメールで出てきませんか?
yumのアップデートを自動でやっている場合とか……

# といいつつ、自宅サーバでやっていませんが。
# i810なので、kernelはリビルドしないと高解像度モードが使えない……。
# CentOS5.0です。月末には5.1かな?
Johann
ベテラン
会議室デビュー日: 2005/08/31
投稿数: 52
投稿日時: 2007-11-14 02:36
"yum.logを見てみたら、sendmailまわりのupdateの際に passwd
パッケージとlibuserパッケージが削除されていました。"

これ、本当ですか?
私もCentOS 5使ってますけどほんとなら怖すぎますね。
yum remove パッケージ名
で依存するもの全部引っこ抜いていくことはありますが、
sendmailのアップデートでpasswdを消し去る理由は分からないです。

できれば詳細なyum.logをご教示いただきたいのですが。
1

スキルアップ/キャリアアップ(JOB@IT)