ファイル '/tmp/#sql_xxxx.MYI'を作成/書き込みできません(エラーコード:13)


9

Debian Lenny、PHPmyadmin、postfixをインストールしました。

PHPmyadmin GUIを使用して、取得したデータで任意のテーブルにアクセスする場合:

ファイル '/tmp/#sql_xxxx.MYI'を作成/書き込みできません(エラーコード:13)

エラー13を行うと言う:

OS error code  13:  Permission denied

私はtmpdir likを見つけます:

mysqladmin -p variables | grep -w tmpdir
| tmpdir                          | /tmp

これは、mysqlが/ tmpに書き込むことができないことを意味します。:777へのアクセス許可を作成すると、それが修正されます。しかし、私はそれをしなければならないということを正しくは感じていません。より良い方法/修正はありますか?

tmpdirの値を変更する必要があります/etc/mysql/my.cnfか?


mysqladmin出力を含めてくれてありがとう。これを使用して、mysql専用のtmpdirを寄付し、少しセキュリティを追加しました。
Florian Heigl 14年

回答:


20

/ tmpに対する権限が間違っているようです。スティッキービットが設定されているすべての人にとって、これらは実際には読み取り/書き込み/実行である必要があります。

chmod 1777 /tmp

スティッキービットは、他のユーザーが作成または所有していないファイルを操作する方法にいくつかの制限を追加するため、心配する必要はありません。

必要に応じて、mysqlユーザーが所有および書き込み可能な別のディレクトリを作成し、my.cnfでそのディレクトリを指定して、システム全体の/ tmpの代わりに使用することもできます。


「chmod 1777 / tmp」のスティッキービット1は私が知らなかったもので、なぜだかわからないままこれに多くの時間を費やしてしまったのです。今私は、この「chmodの1777を/ tmp」を投稿してくれてありがとうを行う

3

通常、/ tmpディレクトリは誰でも書き込み可能です。これについて心配する必要はありません。追加のスティッキービットが設定されているため、ルートとファイルの所有者のみがそのファイルを削除できます。

chmod 777 / tmp
chmod o + t / tmp

ごきげんよう


スティッキービットの8進数を知っている人はいますか?
GRUB

はい、最初の8進数で1です。
ロイ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.