Linux

未インストールのパッケージに含まれるファイル一覧を確認する方法(CentOS)

ふと思いだせなかったので CentOSであればrpmの-qplオプションを指定することで未インストールパッケージ一覧を見ることが可能です。 rpm -qpl xxx.rpm 但し、これで見ようとするとrpmパッケージを手元にダウンロードしておく必要あります。そこで、まずyum…

httpプロキシ経由でgitリポジトリをhttpsプロトコルから取得する時の注意(Ubuntu)

proxy経由で https://git-wip-us.apache.org/repos/asf/deltacloud.git をcloneしようとして失敗した。以下の記事によると、Ubuntuに標準でインストールされているlibcurl3-gnutlsの不具合らしい? libcurl3-gnutls-7.21からlibcurl3-gnutls-7.22にバージョ…

curlコマンドを使って複数パラメータを持つGETリクエストを投げる

curlコマンドを使って、複数のパラメータを持つGETリクエストを送りたい場合に注意が必要です。例えば、http://test-server/api?param1=abc というリクエストをコマンドラインからcurlコマンドを利用して実行しようとするとこのような感じになります。 $ cur…

GitLabにgitリポジトリを登録し開発できるようにしてみる

こちらの記事(2011-11-02 - ike-daiの日記)を参考にGitLabの導入ができたかと思います。 その後、新規でProject登録して、Userも登録して開発できるようにしたいと思います。 新規PJの登録方法 GitLabにログイン後、「New Project」からプロジェクトを作成し…

GitlabをUbuntu11.10 Serverに導入

Githubのような環境をクローズドな環境に構築できるOSS Gitlabを試してみました。 Gitのリポジトリを集中的に管理するのには非常に便利だと思います。 今までviewgitとかでGitリポジトリをWebで見せれるようにしたりしていましたが、 全然UIもいいし、Commen…

logwatchのhttpログ監視の出力項目をカスタマイズ(アクセス元IPを出力してみる)

logwatchを使って定期的にapacheへのアクセスlog内容のサマリをメール送付する運用をしているのですが、 その内容を見ると、以下のような感じで不正なアクセスがあったことはわかりますが、 それがどこから来ているのかなどの情報は結局ログファイルをチェッ…

zabbixでファイルの存在確認を監視

ファイルが日次で正しく作成されているかどうかを確認する設定。 system.run[コマンド]で 指定したコマンドを監視対象のサーバに実行させた結果を取得することが可能。 例:system.run["ls -l /home/hoge/`date +%Y-%m-%d`.log"] これで/home/hoge/2011-01-1…

git.jsを使ってみる

node.jsを使える環境を整える 7/28時点の最新版をダウンロードして利用する。 0.5.2(Unstable) インストール先は/usr/local/node/0.5.2にする。 # wget http://nodejs.org/dist/v0.5.2/node-v0.5.2.tar.gz # tar xvzf node-v0.5.2.tar.gz # cd node-v0.5.2 #…

CentOS6.0を入れてみる

先日CentOS6.0がリリースされたということで仮想マシン上にCentOS6.0をインストールしてみます。インストールをいつも通りな感じで進めて、パーティション設定です。 カスタマイズしようと進めるとこんな感じでLVMで/とswap領域が作成され、/と/bootはext4が…

Zabbixをhttpsでアクセスできるようにする

Zabbixにhttpsでアクセスできるようにしてみます。 証明書は自己証明書で。今回はOpenSSLとapacheのmod_sslで実現してみました。 OpenSSLを導入 導入されているか確認 # rpm -qa | grep openssl openssl-1.0.0a-4.1.7.amzn1.x86_64 openssl-devel-1.0.0a-4.1…

Zabbixのスクリプト実行時エラー対処方法

zabbixに登録されたホストに対して設定したスクリプト(デフォルトだとpingとtracerouteが設定されている) を実行しようとした場合に下記のようなfsockopenでエラーが発生した。 fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo fa…

pythonのバージョン上げるとyumが動かなくなった

yumコマンドを実行しようとするとエラーが出た。 # yum search vim There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: No module named yum Please install a package which provides …

Linuxでハードウェアデバイスの情報を確認する方法(dmidecode)

Xenの環境の場合、ホストOSやゲストOSに対してどれだけのメモリを割当てるか設定して起動します。 その場合、ホストOSがどれだけのメモリを持っているのかをチェックしようと、 freeコマンドや/proc/meminfoで確認してみると、Xenで割当設定したメモリ量しか…

複数IPアドレスを持つサーバのSNMP監視

net-snmpを稼働させるLinuxサーバが同じネットワーク上のIPアドレスを複数持っていた場合、 snmpdプロセスはいずれか1つのIPアドレスでしかListenしてくれないようです。ただし、netstatで見ると、0.0.0.0でListenしているので、あたかもどのIPアドレスから…

edコマンド

edコマンド シェルスクリプトでファイル内の設定を書き換えるのに利用できる。 ed ファイル名 と実行すると、指定したファイルの編集が可能となる。 vimのコマンドと同様のものを受け付けてファイル内の編集が可能。 cat

Bash 多重ループの抜け方

Bash 多重ループのbreak BASHにおいて多重ループを抜ける方法は以下。break 数字 例 2重ループを一気に抜ける場合→break 2 3重ループを一気に抜ける場合→break 3 1重のbreakの例 スクリプト for ( ( i=0; i実行結果 loop j=0 loop j=1 loop j=2 loop j=3 loo…

expr コマンドで掛け算は注意

exprで足し算、引き算、掛け算、割り算などなど各種演算ができますが、1点注意が必要です。足し算 expr $a + 2引き算 expr $a - 2割り算 expr $a / 2掛け算 expr $a * 2 ではなく、 expr $a \* 2 でないとsyntax errorで怒られます。"*"がシェルの特殊記号な…

シェルスクリプトで文字列操作(exprコマンド)

exprが意外といろいろ使えることを知ったのでメモしときます。今まで、シェルスクリプト内でインクリメント演算とかするのにexprコマンドをよく使っていました。 こんな感じ。 count=0 count=`expr $count + 1` echo $count 出力結果→1 実は計算以外にもいろ…

LPIC level2 受験記

受験してみたので感想を残しておきます。今回受験したのは、LPIC level2 201,202の2試験です。勉強で使ったのは、この本です。LPI認定試験LPICレベル2《201/202》リリース2対応【最短合格】テキスト&問題集作者: アイダックLinuxチーム出版社/メーカー: 秀和…

snmpwalkで全MIB取得する方法

snmpwalkコマンドを利用してMIBの値を取ってくることができます。 例えば以下のような感じで実行すると、OIDが.1.3.6.1.4.1.2021.11以下の情報が表示されます。 # snmpwalk -v 2c -c public 192.168.xxx.xxx .1.3.6.1.4.1.2021.11 UCD-SNMP-MIB::ssIndex.0 =…

fstabのオプションuserとusersの違い

/etc/fstabには、起動時にマウントする設定を書きます。 その中で、マウントオプションを指定することができます。 /dev/sda1 / ext3 defaults 1 1 /dev/sda2 /boot ext3 defaults 0 0 /dev/sdb1 /backup ext3 rw,auto,user 0 0 といった具合に記述されてい…

grepで複数語のor検索

grepコマンドを利用して複数語のor検索を実施する方法。"-e"オプションを使うと実現できます。 grep -e 単語 -e 単語 -e 単語 ・・・ ファイル名 とすると-eオプションで指定したどれかの単語にヒットした行を出力してくれます。"-e"オプションの意味は、-e…

バイナリファイルの中身をチェック(strings)

Linuxでバイナリファイルの中身を確認する方法です。 通常に開こうとすると@@@がいっぱい表示されたりで何がかかれてるかわかりませんが、stringsコマンドを利用するとバイナリファイル内に含まれている文字列を抽出することが可能です。例えば、/var/log/wt…

OSバージョン違いによるsudoersの違い

RHEL4系と5系でデフォルトの設定が異なるRHEL4系の場合 root ALL=(ALL) ALL の設定のみ有効になっているRHEL5系の場合 Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /…

tune2fs でfsckを制御

再起動時に自動でfsckが走ってなかなか起動できなかったりすることがあります。 そういった場合にtune2fsを利用して設定を変更し、自動fsckを解除できます。まずは、設定内容の確認 # tune2fs -l /dev/sda1 ファイルシステムの状態がチェックできます。 その…

Linux タイムゾーン設定

OSインストール時に大抵はタイムゾーンを設定しますが、 インストール完了後に変更したい場合もあります。 そういった場合は以下を実行。 1.timeconfigコマンドで実行する方法 # timeconfig GUIで設定可能 System clock uses UTCの設定は、ハードウェアクロ…

mailコマンド

シェル内でmailを見る方法 # mail Mail version 8.1 6/6/93. Type ? for help. "/var/spool/mail/root": 4 messages 4 new >N 1 logwatch@slocalhost Tue Aug 31 03:26 42/1614 "Logwatch for localhost (Linux)" N 2 logwatch@localhost Tue Aug 31 04:02 4…

tarコマンドで特定ファイルのみ展開

tarコマンドで展開すると、全部一気に展開されると思っていた。 が、以下のようにすると、特定の部分だけを展開をできることを知りました。 $ mkdir old $ cd old $ tar xvzf backup.tar.gz usr/test.txt var/log/access.log $ ls usr/ var/ $ cd usr $ ls t…

ftpでプロキシを通過するには

ftp接続する際、プロキシがあると、 普通のftpコマンドでは通過できません。そこで、通過するには、これを使います。 lftp これだと、 環境変数ftp_proxyに設定した値を認識してくれて、通過できます。 設定方法は以下。 $ export ftp_proxy="http://ユーザ…

Fedoraにgitをインストール

Fedoraにgitをインストールしてみました。 とにかく何も入っていない状態からのスタートだったので、少し面倒でした。gitを入れるにあたって、必要だったものは以下です。 すべて、yumでインストールしてしまえばOKでした。 # yum install wget # yum instal…