2010年11月25日木曜日

[Linux] 行数をカウントする

$ wc hoge.txt

3 38 286
行数 単語数 ファイルサイズ

[Linux] CPU、メモリの情報を見る

cat /proc/cpuinfo
cat /proc/meminfo

2010年7月24日土曜日

[Python] コマンドライン引数

args = sys.argv
args[1]

[Python] システムコール

System call in python

import os
cmd = 'ls -l /usr/bin'
os.system(cmd)

2010年7月8日木曜日

[Python] lambda式

lambda式
 ・defのように関数を作成する
 ・関数ではなく、式
 ・意図的に代入しない限り、無名関数になる
 ・defでは記述できない場所に記述することができる
 ・例
   lambda arg1, arg2, ..., argn: expressions

[MySQL] Index

MySQLでカラムをIndexにする方法

mysql> create index index_name on table_name (index_column_name, ...)

2010年5月13日木曜日

[Linux] sshのポートを変更する

/etc/ssh/sshd_config
/etc/rc.d/init.d/sshd restart

Portは複数指定することも可能
例えば、
Port 443
Port 22

[Linux] httpsの設定

/etc/httpd/conf.d/ssl.conf

ファイル名を変更すれば、httpsポートは使われなくなる
例えば、 ssl.conf_backup とか

その後、
/usr/sbin/apachectl restart

※ただし、apacheの設定で、/conf.d/*.confを読み込むように設定している場合

2010年5月11日火曜日

[Linux] SELinuxの設定

□SELinuxの状態を確認

 # /usr/sbin/getenforce

 disabledモード:SELinuxを完全に無効にする。
 enforcingモード:ポリシーに違反するアクセスに対し、ログに書き出して拒否する。
 permissiveモード:ポリシーに違反するアクセスに対し、ログに書き出して許可する。

□SELinuxの設定

 # /usr/sbin/setenforce Enforcing
 or
 # /usr/sbin/setenforce 1

 # /usr/sbin/setenforce Permissive
 or
 # /usr/sbin/setenforce 0

□起動時の設定

 # vi /etc/sysconfig/selinux

 例えば、
  SELINUX=disabled

2010年4月17日土曜日

[Rails] Passengerを使ってApacheでRailsを動かす

Passengerを使うには、
# gem install passenger
# passenger-install-apache2-module
httpd.confの変更

また、developmentモードかproductionモードを選ぶのは、
/etc/httpd/conf/http.conf
RailsEnv development を追加

2010年4月15日木曜日

[Rails] simple_format

simple_format(text)

 改行コードを<br>に置換する
 2つ以上の連続する改行コードを<p>に置換する

[Rails] yield と content_for

(例)
1. layouts/application.rbに下記のように書く
<head>
...
<%= yield :head %>
...
</head>

2. hoge.html.erbに下記のように書く
<% content_for :head do %>
<%= javascript_include_tag 'hoge' %>
<% end %>

すると、content_forの内容がheadに追加される。
content_for は、複数回呼び出し可能で、呼び出した順に追加される

[Rails] config.gem

(Rails2.1.0から)

config/environment.rb

e.g. config.gem "hoge"

config.gemでRailsが必要なgemを指定しておくと、
# rake gems
 必要なgemがインストールされているかを調べる

# su
$ rake gems:install
インストールが必要なgemをインストール

2010年3月31日水曜日

[Rails] rake (タスク一覧 / configファイルの更新)

rakeでできるタスク一覧を表示する
$ rake --task

configs, scripts, javascriptsを更新する
$ rake rails:update

2010年2月12日金曜日

[mac] apacheを起動する

1. 起動
 「システム環境設定」 > 「共有」
 「Web共有」にチェックを入れる

2. アクセス
 http://localhost/
 http://localhost/~ユーザー名

3. ドキュメントルート
 /Library/WebServer/Documents
 /Users/ユーザー名/Sites

4. CGI
 ディレクトリ
  /Library/WebServer/CGI-Executables
 アクセス
  http://localhost/cgi-bin/xxx.cgi

 ※ユーザーはデフォルトではCGIが動かない
  設定ファイルを変更する必要がある

 ※Options に ExecCGI を追加
  AddHandler cgi-script .cgi

5. 設定
 /private/etc/apache2/httpd.conf
 /private/etc/apache2/users/ユーザー名.conf

6. cgiのパーミッション
 $ chmod 755 hoge.cgi

7. ログ
 /private/var/log/apache2/error_log

2010年2月8日月曜日

[Linux] CPUの情報を確認する

CPUの情報を確認する
$ cat /proc/cpuinfo

2010年2月4日木曜日

[Linux] SSHでプロキシ経由でアクセス

会社や学校など、直接インターネットにアクセスできない環境で、SSHを使って外部サーバーにアクセスしたい。

1. ~/.ssh/config を編集

 Host hoge.example.com
 HostName hoge.example.com
 ProxyCommand /usr/bin/nc -X 5 -x socks.poge.com:1080 %h %p
 Compression yes
 ServerAliveInterval 15

  -X 4: SOCKS v.4
  -X 5: SOCKS v.5
  -X connect: HTTPS proxy

 ※nc(netcat)の他にconnectでもいい
 ※http://www.unixuser.org/~euske/doc/openssh/jman/ssh_config.html

2. # chmod 600 ~/.ssh/config

[Wikipedia] WikipediaのデータをMySQLに読み込む

□リンク
 −Data dumps 詳細
  http://meta.wikimedia.org/wiki/Data_dumps

 −データダウンロード
  http://download.wikimedia.org/

  例えば、下記をダウンロード
   jawiki-2010xxxx-pages-articles.xml.bz2
   jawiki-2010xxxx-category.sql.gz
   jawiki-2010xxxx-categorylinks.sql.gz

□MediaWikiを使ってMySQLに読み込む
 −MediaWiki
  http://www.mediawiki.org/wiki/Manual:importing_XML_dumps

 −MySQLの設定
  /etc/my.cnf を編集
   max_allowed_packet = 32M

 −MySQLの再起動
  /etc/rc.d/init.d/mysqld stop
  /etc/rc.d/init.d/mysqld start

 −MySQLの設定の確認
  mysql> show variables like 'max_allowed_packet';

 −データベースとテーブルの作成
  mysql> ceate database wikipedia;
  mysql> use wikipedia
  mysql> source mediawiki-1.15.1/maintenance/tables.sql;

  ※tables.sql はmediawikiに含まれる
   mediawiki-1.15.1/maintenace/tables.sql

 −データのインポート
  $ gunzip jawiki-2010xxxx-category.sql.gz
  $ gunzip jawiki-2010xxxx-categorylinks.sql.gz

  $ mysql -u root -p wikipedia < jawiki-20090707-category.sql
  $ mysql -u root -p wikipedia < jawiki-20090707-categorylinks.sql

  $ java -jar mwdumper.jar --format=sql:1.5 jawiki-2010xxxx-pages-articles.xml.bz2 | mysql -u login_name -p wikipedia