sudo で 「sudo: must be setuid root」と怒られる

visudoでちゃんと設定したにもかかわらず怒られる

sudo: must be setuid root

「/usr/bin/sudo」の権限の問題らしい
以下のコマンドで解決

# chmod 4511 /usr/bin/sudo

qmailインストールメモ

Rails1.xとRails2.xのscaffoldの使い方が違う

Railsの便利なジェネレータ機能scaffold
が、何回使ってみても、どこの解説を見ても、全然思うように動いてくれない
いっこうにコツが掴めないままかなりの時間を使いましたが
要はRailsのバージョンが違うとscaffoldの使い方も違ったということで…

Railsにてscaffoldしてmigrationしたのにデータベースにcreateされるテーブルのカラムが足りない

Rails2.xにて、scaffold のオプションにてカラムの型を指定しますが、これには大文字小文字の区別がある。誤って大文字を設定してmigrationを実行してしまうと、そのカラムは設定されない。このとき、何もエラーらしきものが発生しないのも注意!(※RadRails上、そう見えるだけなのかもしれない?)


誤ってStringと型指定してしまう

> scaffold user name:String

生成されるマイグレーションファイル

class CreateUsers < ActiveRecord::Migration
  def self.up
    create_table :users do |t|
      t.String :name # 正しくは t.string :name

      t.timestamps
    end
  end

  def self.down
    drop_table :users
  end
end

migration実行

> rake migration

 コンソール上にも、特にエラーもなにも起こらない


生成されたテーブル

 name カラムが生成されない

mysql> desc users;
+------------+--------------+------+-----+---------+----------------+
| Field      | Type         | Null | Key | Default | Extra          |
+------------+--------------+------+-----+---------+----------------+
| id         | int(11)      | NO   | PRI | NULL    | auto_increment |
| created_at | datetime     | YES  |     | NULL    |                |
| updated_at | datetime     | YES  |     | NULL    |                |
+------------+--------------+------+-----+---------+----------------+
7 rows in set (0.02 sec)

Apache+OpenSSLのインストーラにopenssl.cnfがない

Download - The Apache HTTP Server Project より Win版の apache_2.2.14-win32-x86-openssl-0.9.8k.msi をダウンロードしてインストー
Apacheのインストーディレクトリ内をgrepしてもopenssl.cnfが見当たらないのはそういうモンなんだろうか?
それでも以下のコマンドで公開鍵(server.csr)が作成できてしまう不思議

openssl.exe req -new -key ../conf/server.key -out ../conf/server.csr -config ../conf/openssl.cnf

ちなみに「-config」オプションがないと怒られます
これまた不思議…

readline.dllが見つからなかったため、このアプリケーションを開始できませんでした

irb (interactive ruby)

コマンドプロンプトirbを起動しようと以下のコマンドを実行

C:\irb

実行結果

readline.dllが見つからなかったため、このアプリケーションを開始できませんでした

というエラーが発生


対応

  1. http://jarp.does.notwork.org/win32/ より readline-4.3-2-mswin32.zip をダウンロード
  2. 解凍してbin/readline.dll を [RUBY_HOME]/bin へコピー

Ruby + Rails + RadRails + MySQL で必要だったライブラリ

やっとEclipseRadRails入れてRuby on Railsの環境ができた
とりあえず、手コピーしたライブラリだけ書いておく 眠い…


ライブラリ

ファイル名 備考
readline.dll irbを使うのに必要
msvcrt-ruby18.dll Rubyに入ってた
zlib.dll GemかRails入れるときに必要
libeay32.dll Gemでライブラリインストールするときに必要
ssleay32.dll Gemでライブラリインストールするときに必要
iconv.dll 忘れた…汗

すべて[RUBY_HOME]/bin配下にコピー