TIPS

パスワード変更時に「/usr/share/cracklib/pw_dict: error reading header」エラーが出たときの対処メモ

普段作業用に使っているVMのパスワードがなぜか変更できなくなったので、 そのとき調査したことと、復旧で行ったことをメモしておきます。 環境はCentOS6.6の64ビット版です。 起きたこと passwd コマンドを使って、パスワードを変更しようとしたところ、以…

.gitkeepファイルをすべてのディレクトリに作成する

Gitでコードを管理する場合、空ディレクトリが存在すると、管理対象になりません。 こんなときは、find コマンドの -exec オプションを使って、.gitkeepファイルを 全てのディレクトリにとりあえず作ってしまうのが楽です。 たとえば、Chefで新しいcookbook…

Oracle JDKをCLIで直接ダウンロードする方法

今日はTIPSをメモ。 Oracle JDKをLinuxで使う場合、直接RPMファイル等をダウンロードしたい場合があります。 wgetで「--no-check-certificate」「--no-cookies」「--header」オプションをつけるとうまくいく模様。 本日時点で最新版のJava SE Development Ki…

CloudFormationのParameterで正規表現を使う場合の話

今日はタイトル通りのメモです。 CloudFormationで正規表現を使いたい場合のリファレンスをメモ。 Parametersのパラメータ内でAllowedPatternを使いたい場合など Javaの正規表現に準拠しているんですね。 今日はこんなところで。 参考 AWS CloudFormation テ…

opensslコマンドとサーバ証明書関連あれこれ

久々のエントリです。 仕事でたまにサーバ証明書の更新等をするのですが、毎回検索しながらやっているので、自分用メモあれこれです。 作成する証明書の形式はApache等で使用する形式のものを作成する方法です。 CSRの作成 CSRを作成するために、まずは秘密…

パスワードハッシュの作り方

Chefのレシピでユーザを作成する場合やKickstartの設定ファイルを作る際に、 パスワードハッシュを作る必要があります。 そんなときの自分メモです。 openssl openssl コマンドで実行する場合は、「openssl passwd -1 'pass'」でパスワードハッシュを作成で…

プロキシ設定あれこれ

自分メモです。直接インターネットにつながらない環境で、プロキシを使うケースもあります。 今回はそんなときの例です。 yum の場合 「/etc/yum.conf」に以下を記述します。 proxy=http://<proxy ip>:<port>/ HTTP/FTPのリクエスト 以下のように環境変数を定義しておきます</port></proxy>…

ssh_configメモ

自分用のssh_configメモです。 「/home//.ssh/config」に以下のように記載します。 ホスト、ユーザを指定 こんな感じにすれば、「$ ssh hostA」で「$ ssh myuser@192.168.1.xxx」と同等。 Host hostA HostName 192.168.1.xxx User myuser 多段ログイン こん…

IPアドレスのリストを作成する

サーバー管理などをやっていると、IPアドレスのリストを作成したくなるケースも出てくるかと思います。 一つ一つ記述していると結構面倒だったりします。 ということで、簡単なシェルを書いてみます。 数字の繰り返しはseqコマンドを使うとよいです。 以下は…

SSH公開鍵のフィンガープリントリストを作る

前回、check_by_sshを使った監視を行うで、ssh公開鍵のフィンガープリントを確認しておく必要があるという話題に触れましたが、台数が増えると結構面倒です。 今回は、知っていると少しだけ楽になるかも?というTIPSです。 ssh-keyscanコマンドを使うと、接…

ローカル環境にPerlをインストールして使う

一般的にPerlの実行環境が最初から入っている事が多いと思いますが、 時には自分専用の環境が欲しかったり、既存の環境を汚したくなかったりするときがあります。 ローカル環境にPerlをインストールして使う方法のメモです。 今回は「/home/myuser/perl」以…

WebブラウザからVNCを使う

たまたま知ったので、メモです。 VNCはWebブラウザ経由でも使える。 ということで、試してみました。 実行方法 任意のユーザーでディスプレイ番号を指定して起動しておきます。 (ここではディスプレイ番号1を指定) $ vncserver :1 ブラウザから「http://xxx.…

ssh-keygenコマンドメモ

SSHを使っている時に毎回検索しているものをメモ。 公開鍵の作成 「ssh-keygen」コマンドで作成すればOK。「rsa」ならRSA暗号、「dsa」ならDSA暗号になります。 $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save t…

nkfメモ

たまに使いますが、毎回使い方忘れているのでメモ。 文字コードを推定(guess)する 試したファイルの文字コードはShift_JISでした。 (ちなみに日本全国の郵便番号データです) $ nkf -g KEN_ALL.CSV Shift_JIS 文字コードを変換する ファイルの文字コードを変…

cpan2rpmを使う

perlモジュールをrpmで管理してみようと思い、 今回はcpan2rpmを使ってみました。その時のメモです。 インストール 今回はCentOSを使っていたので、直接ダウンロードしてパッケージをインストールしました。 ※Fedoraの場合はそのままyumコマンドを使ってイン…

RPMビルド環境を作るスクリプト

たまにRPMをビルドしたくなることがあるのですが、 毎回一般ユーザー用のビルド環境を用意するのは面倒だなと思っていました。 今日はちょっとしたスクリプトを書いてみたので公開します。 実行したユーザーのホームディレクトリにRPMビルド用の環境を作り、…

database disk image is malformed

自分用のメモです。先日yumでパッケージをインストールしようとしたら、 「Error: database disk image is malformed」と怒られました。 ※再現時のメッセージを取っておくのを忘れてしまった。。環境はCentOS5です。以下のコマンドで対処は完了。 # yum clea…

rpmパッケージからファイルを取り出す

やろうとする度に毎回検索しているので自分用メモです。RPMパッケージからファイルを取り出す方法です。RPMパッケージからファイルを取り出す場合は「rpm2cpio」コマンドを使います。 $ mkdir work $ cd work $ rpm2cpio ../xen-3.4.3-4.el5.src.rpm | cpio …

procinfoコマンドを使ってみる

procinfoコマンドなるものがある事を知って、試してみる事にしました。 システムの状態を/proc以下から集め、表示するコマンドだそうです。 procinfoパッケージがあれば使えます。 いくつかオプション付けて試してみました。 「-a」オプションで全て表示 # p…

statコマンドを使ってみる

恥ずかしながら、statコマンドなるものがあることを初めて知りました。 試した結果をメモ。 引数を何も付けないと、ファイルに関する情報を色々と表示してくれる。 # stat /etc/hosts File: `/etc/hosts' Size: 234 Blocks: 16 IO Block: 4096 通常ファイル …

コメント行を取り出す、コメント行を取り除く

設定ファイルを触っていると、コメント行だけ見たい場合や、 逆にコメント行が邪魔な場合があったりします。そんな時に。 一般的な「#」がコメントになると仮定しています。 行頭が「#」、もしくは空白文字で、その次に「#」が出てくる場合に一致する、はず…

DomUのコンソールから抜ける

いつも忘れるのでメモ。 XenでDomUのコンソールからぬけるには「Ctrl + ]」 今日はこんな所で。

gzipコマンドとタイムスタンプ

今日は「gzip」についての小ネタです。 manを見ていたところ、gzipコマンドはデフォルトで、 圧縮時→元ファイルの名前とタイムスタンプを保存する 伸張時→元ファイルの名前とタイムスタンプを復元しない という動作をするとのこと。 少し試してみました。 以…

設定ファイルを指定して、logrotateを実行する

ログのローテーション処理は重要なのですが、実装が何気に面倒だったりします。 今回はシステム全体のログローテート処理用のものとは別の設定ファイルを用意して、 logrotateを使おうというお話です。 今回の想定を以下にまとめます。 ちなみにOSはCentOSを…

ハードウェアの情報収集にlshwを使う

ハードウェアの情報集種コマンドとして「lshw」なるものがある事を知り、簡単に試してみました。 インストールはyum一発です。 ただし、EPELをリポジトリとして指定しておく必要があります。 # yum install lshw VirtualBox上のVMで実行してみた結果はこんな…

キー配列を変更する

キー配列を変更する方法です。 毎回忘れてしまうので、備忘録的に。 例によって、CentOSの例です。 参考のリンク先を自分用まとめです。。 設定ファイルは「/etc/sysconfig/keyboard」です。 「KEYTABLE」の値を書き換えると次回起動時に有効になります。 下…

sleepとusleep

先日usleepなるコマンドを知りました。 sleepが秒、分、時、日単位の指定に対して、 usleepはマイクロ秒単位の指定らしいです。 $ sleep 1s (1秒) $ sleep 1m (1分) $ sleep 1h (1時間) $ sleep 1d (1日) $ usleep 1 (1マイクロ秒)でも、man に BUGS Probabl…

yumのローカルリポジトリを作る

特定の用途向けに専用のリポジトリが欲しい時があると思います。 そんな時は「createrepo」コマンドです。 今回はサンプルとして、「/opt/repo/」というディレクトリを作成し、 いくつかRPMパッケージを入れておきます。これをリポジトリとします。 # pwd /o…

sipcalcについてのメモ

IPアドレスのサブネット計算とかやる必要が時にはあります。 計算に慣れてしまえばいいんでしょうが、結構面倒な時もあります。 そんな時の「sipcalc」コマンドです。 「ipcalc」というコマンドもありますが、こっちのほうが良さげ。 使い方 # sipcalc -a -4…

yumでローカルメディアを指定する

yumコマンドって便利だと思います。 通常インターネット上のリポジトリを指定して、 インターネット経由でパッケージをダウンロードしてインストールすることが多いと思います。 インターネットに直接繋げない環境で、 パッケージをインストールすることにな…