- PR -

Mysqlのchrootができない

1
投稿者投稿内容
dede
常連さん
会議室デビュー日: 2003/10/01
投稿数: 47
投稿日時: 2005-06-14 09:22
vine3.1にmysqlをソースからインストしてchrootしようとしています。サイトの記事を参考にしながらやっていますがうまくいきません。
ソースインストしてデフォルトでの起動はうまくいきます、また、接続テストもうまくいきました。
しかし、chrootが成功しません。以下のやり方でやりましたがダメでした。
・chrootuid /[変更ディレクトリ]/ [mysqlユーザ] /usr/local/mysql/libexec/mysqld &
・chroot /[変更ディレクトリ]/ /usr/local/mysql/libexec/mysqld &
・/usr/local/mysql/libexec/mysqld --chroot=/[変更ディレクトリ]/ &
一番目以外は起動ユーザはmysql専用(インスト時に指定した)ユーザでやっています。
以下にchrootの概要を示します。
・インスト完了後
・/[変更ディレクトリ]/{dev,etc,tmp,var/tmp,usr/local/mysql/libexec,usr/local/mysql/share/mysql/english}を作成
・chown -R:sys /[変更ディレクトリ]/
・chmod -R 755 /[変更ディレクトリ]/
・chmod 1777 /[変更ディレクトリ]/tmp
・作成ディレクトリ配下にファイルをコピー
(libexec/mysqld,english/errmsg.sys,etc/hosts,etc/host.conf,etc/resolv.conf,etc/group,etc/passwords,etc/my.cnf)
・passwordsとgroupから[mysqlユーザ]以外のユーザを削除
・/[変更ディレクトリ]/dev/nullを作成しchown root、chmod666に変更
・/usr/local/mysql/varを/[変更ディレクトリ]/usr/local/mysql/varにコピーしchown[mysqlユーザ]に
というような内容でやりました。
参考としたサイトはhttp://www.securityfocus.com/のSecuring MySQL:step-by-stepという記事です。
なにかアドバイスいただける方いらっしゃいましたらよろしくお願いします。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2005-06-14 09:51
うまくいかないときのエラーメッセージやログ等の記述が全くないので、はっきりとしたことは言えませんが、/libとか/usr/libディレクトリの内容はコピーしましたか?
dede
常連さん
会議室デビュー日: 2003/10/01
投稿数: 47
投稿日時: 2005-06-14 09:53
それはやっていませんでした。
やってみることにします。
dede
常連さん
会議室デビュー日: 2003/10/01
投稿数: 47
投稿日時: 2005-06-14 15:53
ところで、chrootの作業自体は[mysqlユーザ]でやるべきなのでしょうか?すべてrootでやっていました。最新版のmysqlはrootでの起動を許可していないような気が・・・。
再度調査します。
ash
会議室デビュー日: 2005/05/30
投稿数: 3
投稿日時: 2005-06-15 12:44
どのようなエラーなのかわからないので、全く関係ないかもしれませんが、
自分は通信できないということがありました。Unixソケットを使用していて、
chrootのディレクトリとは別の場所に生成されるようにコンパイルされてた為
にchroot後接続できなかったという落ちです。結局、ハードリンクで解決しました。
ちなみにあの時はOpenBSDでしたが、もし接続できないというようなエラーでしたら
調べてみるのも良いかもしれません。
dede
常連さん
会議室デビュー日: 2003/10/01
投稿数: 47
投稿日時: 2005-06-17 01:15
解決しました、パーミッションの問題だったようです。
chroot環境を作成するときにファイルのコピーをcp -pdオプションにて行ったところうまく起動してくれました。
初歩的なミスで恥ずかしいです。
ashさんあんとれさんありがとうございました。
1

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