ksaitoの日記

日々試したことの覚え書き

玄箱PROのDebian化で再インストールしたパッケージ

移転しました。

自動的にリダイレクトします。

玄箱Debian化したときにファイルパーミッションが変更されてしまう件、下記に情報がありました。
http://w3.quake3.jp/sushi-k/wp/?p=68
下記のように対処して見ました。

現象の確認

今回は、suコマンドを実行しようとしたときにエラーとなってしまいました。

$ su -
Password:
su: Authentication failure
Sorry.
$

原因の把握

typeコマンドで/bin/suのsuidパーミッションがないことがわかります。

$ ls -l `type -p su`
-rwxr-xr-x 1 root root 24728 Feb 28 00:16 /bin/su
$

apt-fileコマンドで修正する必要があるパッケージがloginパッケージということがわかります。

$ apt-file search /bin/su | grep " bin/su"
login: bin/su
star: bin/suntar
$

パッケージの修正

パッケージを再インストールします。

# aptitude reinstall login
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
Building tag database... Done
The following packages will be REINSTALLED:
  login
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 796kB of archives. After unpacking 0B will be used.
Writing extended state information... Done
Get:1 http://ftp.jp.debian.org etch/main login 1:4.0.18.1-7 [796kB]
Fetched 796kB in 2s (271kB/s)
(Reading database ... 10006 files and directories currently installed.)
Preparing to replace login 1:4.0.18.1-7 (using .../login_1%3a4.0.18.1-7_arm.deb) ...
Unpacking replacement login ...
Setting up login (4.0.18.1-7) ...
#

修正の確認

$ ls -l /bin/su
-rwsr-xr-x 1 root root 24728 Feb 28 00:16 /bin/su
$ su -
Password:
#

ほかに気がついたパッケージ

sudoも同じ理由で再インストールしました。

そのほかの修正

/tmpと/var/tmpのパーミッションでviもsshも使えませんでした。
これは、個別にパーミッションを設定し直しました。

$ vi 
ex/vi: Error: Unable to create temporary file: Permission denied
$ sudo chmod og+w /tmp
$ sudo chmod og+w /var/tmp
$ ls -ld /tmp
drwxrwxrwt 2 root root 6 May  6 08:57 /tmp
$ ls -ld /var/tmp
drwxrwxrwt 3 root root 23 May  6 11:12 /var/tmp
$

screenやsshも動きませんでした。
いろいろ、試した結果、/dev下のファイルのグループ、パーミッションを目視で比較して設定し直したところ直りました。
もう少しマシな方法があるような気もしますが...
たぶん、ptysやptyp*あたりかな...