サカリと申します。sudoを削除してしまいました。

/usr/bin/sudoを削除してしまいました。ターミナル上からsudoコマンドが使えなくて困っております。

どうすればよいですか?よろしくお願い致します。バージョンは10.4.11です。

iMac, Mac OS X (10.4.11)

投稿日 2010/02/16 15:34

返信
返信: 19

2010/02/17 03:38 NO9 への返信

/usr/bin/sudoの件 ありがとうございました。以前に取り外したHDDを外付けUSBで繋いでターミナルから

open /Volume/ninni/usr/bin で開いてsodu を一旦ディスクトップにコピーしてターミナルから

open /usr/bin で/bin に上書きしました。しかしターミナルからsudo コマンドしてもsudo: must be setuid rootとなり

sudo passwd root や su でパスワド通せないです。とほほ、やはり再インスコでしょうかね。

一応はsudoが直りましたが環境と以前のパス忘れたのが駄目なのです。

お手数を掛けました。再度インストールし直します。では.........

貴重な時間を頂きまして本当に参考また助かりました。

2010/02/17 04:28 sakari888 への返信

再インストールされるということですが、もうされてしまいましたでしょうか。

まだでしたら、一度下記のコマンドをターミナルから試されてみてはどうでしょうか。


# chmod 4511 /usr/bin/sudo


上記コマンドはsuコマンドにてrootユーザになってから実行してください。


-----


「sudo: must be setuid root」のsetuidは特定の権限でコマンドを実行する仕組みのことです。私の環境にてsudoコマンドの権限をlsコマンドで表示すると、


-r-s--x--x 1 root wheel 211232 5 31 2008 sudo

と表示されます。このとき、オーナーの実行権限部分が「x」ではなく、「s」となっているかと思います。この「s」がついていると、一般ユーザのままでも、コマンド所有者「root」として実行されることを意味しているそうです。

この他にも「/etc/sudoers」ファイルの設定等が必要らしいですが、もともとsudoが使えていた環境で削除しただけですので、上記に書いたコマンドを実行するだけで大丈夫ではないかと思います。

2010/02/17 18:32 ni_ki への返信

みなさんいろいろとアドバイスありがとうございます。su で rootになれないんです。

passwd root 三回パスを設定してもSorryで通りません ググって検索試行錯誤してNetInfo マネージャ.appで

rootを設定したのですがやはりターミナルから su で設定したパスを通してもsu: initgroups failed: Operation not permittedと

エラーメッセージ設定ミスと言っているのかな?になりrootのパスが通りません ユーザーのままchmod 4511 /usr/bin/sudo

は通りましたがやはりsu でrootのパス入れても通りません ご指摘の /etc/sudoers の編集もviで編集するにも

編集記述方法がいまいちわかりません UNIX関連は勉強不足かもしれません もう少し勉強してみます。

皆さん貴重な時間をありがとうございました。

2010/02/17 20:42 sakari888 への返信

みなさんいろいろとアドバイスありがとうございます。su で rootになれないんです。


いえ、だから、「Re: サカリと申します。sudoを削除してしまいました。」で「シングルユーザーモードで起動してやるのが手っ取り早い」って書いたんですけど…。シングルユーザーモードなら、最初からスーパーユーザですし。


追記:


外付けHDD等から起動して行っても良いですし。

2010/02/18 07:16 NO9 への返信

シングルモードで起動してたしかに # rootになりましたが soduers でも編集するのでしょうか?

もしくは何か inittab のようなユーザー設定するのでしょうか? 一応 visudo で /etc/sudoers を編集したけど

何か変です。変更した記述は 任意のユーザー名 ALL=(ALL) ALL %User ALL=(ALL) ALL を追記しました。

でも間違いですね。もどってターミナルからsuしてもスパーユーザー rootにはなれませんまたsudoも使えません

suの場合パスを入れると(正規のパス) su: initgroups failed: Operation not permitted となります。

suで適当なパスを入れると su:Sorry と出ます。 どこのファイルを編集設定追記すればよろしいでしょうか?

2010/02/18 09:25 sakari888 への返信

Clean Installされたほうが早いと思います。失礼ながらTermianlを使いこなされているとはどうしても思えません。


Terminalを日常的に使っているならsudoを捨てる何て事はない。suは使う必要がない。sudoersはPasswordに特殊な設定を施すのに使います。例えば割り込み禁止、logをsecurity.logに書きこむ、Passwordの有効時間の変更だとか。またNetinfo Managerは十分な知識がないと最悪な結果になります。


bom fileをご存知でTerminalを使いこなせればご自身で処理できると思うのですが...

Essentials.pkg ... old
/usr/bin/sudo 104511 0/0 104428 2691857256


MacOSXUpdCombo10.4.11PPC.pkg ...new
/usr/bin/sudo 104511 0/0 104588 2389804389

# unpkgかpacifistで切り出せたでしょう。

2010/02/18 09:47 sakari888 への返信


ユーザーのままchmod 4511 /usr/bin/sudoは通りましたが



それが通常ユーザーで通るということは、アクセス権が狂ってます(正確に言うとオーナーとグループが狂ってる)。ni_kiさんが「Re: サカリと申します。sudoを削除してしまいました。」でお書きの事は確認あるいは実行されましたか?


でも、もういろいろいじっているみたいなので、ぴっぴさんがお書きのように、再インストールの方が良いように思います。

2010/02/18 14:34 ぴっぴ への返信

>>びっぴさん 貴重なご意見ありがとうございます。

やはりクリーンインストールすれば問題は無かったですね。

最後の Bom なんとかは10.4.11のインストールディスクに付属しているアップデートでしょうか?

とにかくインストールし直します。では

2010/02/20 06:59 sakari888 への返信

10.4.11で一旦sudoを削除してから、バックアップした起動ディスクからsudoをコピーしてみましたが、chmodとchownでほぼ元通り設定すれば、通常通りsudoコマンドが稼働します。


オーナーとアクセス権が適切でないと[must be setuid root]が出ます。まさに「UIDをrootにセットせい」といっているわけですね^^

2010/02/20 07:36 ni_ki への返信

オーナーとアクセス権が適切でないと[must be setuid root]が出ます。まさに「UIDをrootにセットせい」といっているわけですね^^


おっと、やっぱりそうでしたか。


#動かなくなったら困るので(まぁ、バックアップは取ってあるので、戻そうと思ったら半日で戻せますけど… ^^;)、私は実験しませんでした。(^_^;;

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

サカリと申します。sudoを削除してしまいました。

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。