Home > Tags > Linux
Linux
Apacheでよく使うコマンドと設定項目
- 2008-12-25 (木)
- Linux
設置環境はFedoraを想定しています。
注:ソースからインストールした場合や他の環境だと一部ファイルのパスが違うところがあります。
今後も少しずつ書き足し・修正していきます。
コマンド
- 起動
- # /etc/rc.d/init.d/httpd start
または、
# service httpd start - 終了
- # /etc/rc.d/init.d/httpd stop
または、
# service httpd stop - 再起動
- # /etc/rc.d/init.d/httpd restart
または、
# service httpd restart - 自動起動に設定
- # chkconfig httpd on
- 自動起動の確認(Run level 3:on)
- # chkconfig --list httpd
- 設定の反映
- # /etc/rc.d/init.d/httpd reload
- ディレクトリの所有者の変更
- # chown <ユーザ名>. /var/www/html/
- ディレクトリをApache実行ユーザに変更
- # chown -R apache:apache /var/www/html/cgi-bin/
httpd.confの設定
- 設定ファイルhttpd.confのパス
- /etc/httpd/conf/httpd.conf
- 外部設定ファイル*.confを置くパス
- /etc/httpd/conf.d/*.conf
・起動時に読み込まれる
・AliasとDirectoryを合わせて用いる場合が多い - DocumentRoot
- ルートディレクトリの設定
e.g. DocumentRoot "/var/www/html" で
www.example.com/へのアクセスは/var/www/htmlのインデックスページとなる。 - Alias
- Alias <ドメイン以下のURLパス> <サーバ内のディレクトリパス>
e.g. Alias /blog /var/www/blog
の場合は、http://www.example.com/blog/にアクセスした際、サーバの/var/www/blog/内の既定のインデックスファイルが読み込まれる。 - Directoryタグ
- .htaccessを許可する場合
- AllowOverride All
- IPアドレスによるアクセス制限
-
Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from 192.168.1.0/24
↑はlocalhost、イントラネット以外からのアクセスを拒否
e.g.
<directory "/var/www/html">〜<directory>
属性にディレクトリパスを指定している。
.htaccessによるパスワード認証
.htaccessファイル内の設定例
SSLRequireSSL # SSL経由のアクセス AuthUserFile <認証するユーザリストのパス> AuthGroupFile <パス> AuthName "<ページ名>" AuthType Basic # 認証タイプ require valid-user
認証するユーザの登録
初回は
# htpasswd -b -c <保存先> <ユーザ名> <パスワード>
二件目以降は既にファイルが作成されているので-cを抜く
# htpasswd -b <保存先> <ユーザ名> <パスワード>
ここで作成したファイルのパスを上のAuthUserFile項目に書く。
- Comments: 0
- Trackbacks: 0
FedoraにGUI環境GNOMEをyumでインストール
- 2008-09-15 (月)
- Linux
Fedoraのセットアップ時にGUI環境(GNOME, KDE)をインストールしていないが、セットアップ後にyumコマンドでGNOMEをインストールする手順を以下に示します。
XとGNOMEのインストール
以下のコマンドを打ち込みます。
# yum groupinstall "X Window System" "GNOME Desktop Environment"
もしKDEをインストールする場合は、
yum groupinstall "X Window System" "KDE (K Desktop Environment)"
何事も無ければ、大体230MBぐらいD&Iしますので、他のことでもしながら待ちます。
しかし、以下のようなエラーが出た場合、
Error: Missing Dependency: policycoreutils = 2.0.31-7.fc8 is needed by package policycoreutils-gui
Error: Missing Dependencyは依存関係の問題です。上の例では、policycoreutils-guiをインストールするのに必要なpolicycoreutils(2.0.31-7.fc8)が無いですよーと言っています。
念のため、以下のコマンドで必要なものがインストールされているか調べます。
# yum info policycoreutils
仮にインストールされている場合、そのバージョン番号も表示されますので、その番号が必要とされているものと一致しているかどうか確認します。ここでは2.0.31-7.fc8ですね。
一致していない場合は、yumでupdateか再インストール(removeとinstall)しましょう。もし、一致しているのに上記のエラーが出た場合でも、yum updateで一回システム全体をアップデートしてみてください。その後再度、
# yum groupinstall "X Window System" "GNOME Desktop Environment"
を行えば、インストールが始まります。
Fedora起動時にXを立ち上げる
毎回コマンドでstartxと打ってX Window SystemとGNOMEを立ち上げるのも手間ですので以下のファイルを修正して、起動時にGNOMEセッションが使えるようにします。
ファイル/etc/inittabの18行目付近にある
id:3:initdefault: を
id:5:initdefault: に書き換えます。
その後、再起動すればOKです。
日本語入力環境(scim)などのインストール
以下のyumコマンドをroot権限で実行しインストールてください。
# yum groupinstall 'Japanese Support' <中略> Installing: scim-anthy i386 1.2.4-2.fc8 fedora 365 k scim-lang-japanese i386 1.4.7-7.fc8 fedora 23 k Installing for dependencies: im-chooser i386 0.5.3-1.fc8 fedora 82 k scim i386 1.4.7-7.fc8 fedora 475 k scim-bridge i386 0.4.14-1.fc8 updates-newkey 99 k scim-bridge-gtk i386 0.4.14-1.fc8 updates-newkey 39 k <後略>
再起動すれば、「半角/全角」キーで日本語入力が可能になります。
………大学ではLinuxメインですが、自宅ではWindowsでCygwin、MinGWや仮想OS、クロスプラットフォームなboostライブラリとかを用いながら騙し々々開発していました。が、もうそんなことやってられる段階でなくなったので(socket, threadまわりの評価の為)今回デプロイ用のサーバに一応の開発環境を整えました。
あんまり大学での作業を持ち込みたくないんだけれどなぁ。スケジュール見直そうかな。
- Comments: 0
- Trackbacks: 1
ユーザー管理に関するLinuxコマンド
- 2008-06-26 (木)
- Linux
最近ファイルやディレクトリのパーミッション設定と合わせてよく使っているコマンドなので、備忘録を兼ねて使用例を書き出してみます。
./app ディレクトリを someuser ユーザー、 apache グループに変更する。
# chown -R someuser:apache ./app
ユーザーのファイルやディレクトリ所有者がひょんなことから root に変わってしまったとき、例えば、スーパーユーザで一般ユーザのファイルやディレクトリを操作した場合等、に設定しなおす際は以下のように。
# chown -R hoge:hoge ./hoge
apache ユーザを nagios グループに所属させる。
# usermod -G nagios apache
- Comments: 0
- Trackbacks: 0
sshdのログファイルの確認方法
- 2008-06-24 (火)
- Linux
サーバで sshd サービスを使っていると、招かれざる人(大抵bot)も結構な頻度でアクセスしてきます。何時何処からどのようなアクセスがあるのかは知っておく為にログファイルをモニタリング。
sshd のログファイルのパスは Fedora では通常 /var/log/secure です。
# emacs /var/log/secure
ちなみに、ssh のログインに失敗/成功したユーザ数は以下の様なコマンド等でカウントできます。
# grep -c invalid /var/log/secure # grep -c Failed /var/log/secure # grep -c Accepted /var/log/secure
- Comments: 0
- Trackbacks: 1
Linuxコマンドで複数ファイルの文字コードを一括変換
- 2008-01-12 (土)
- Linux
Linux系OSのfedora6のデフォルト文字コードはUTF8なので、先日久々に参照したEUCのC++ソースコード中のコメントや出力が文字化けしていました。
そこで、ファイルの文字コードをEUCからUTF8に変換するコマンドを調べたところ、PHPプロ!TIPS+のページの中程にそれに関するコマンドがあったので参考にしました。
$find -name '*.cc' | xargs nkf --overwrite -w
↑は拡張子がccの全てのテキストファイルの文字コードをutf8に変換します。
$find . -type f -print0 | xargs -0 nkf --overwrite -w -Lu
↑このコマンドの意味を簡単に示しますと、まずファイルを検索するfindコマンドで、カレントディレクトリ「.」から通常ファイル「-type f」を探索し出力します「-print0」(常に真)。
% find [検索開始ディレクトリ] (option)
参考:UNIXコマンド [find]
ここで、findコマンドの結果をパイプ「|」をもって渡し、そこでxargsでコマンドを実行します。ここでxargsは以下の機能を持ちます。
xargs[えっくす・あーぐす]
標準入力から引数を読み込み、指定のコマンドを実行するコマンド
参考:UNIXの部屋 検索:xargs (*BSD/Linux/Solaris)
文字コード変換コマンドである nkf のオプション--overwriteは変換した文字コードのデータを元のファイルに上書きするもので、-wが文字コードをUTF8に指定するものです。ちなみに、EUCに変換したい場合は-e、Windowsで使われているSJISにする場合は-sを代わりに指定します。
最後の-Luオプションは改行コードをLFに指定するものです。
- Comments: 0
- Trackbacks: 0
Home > Tags > Linux