タグ

ブックマーク / www.na3.jp (31)

  • 「開発効率をUPする Git逆引き入門」を読んだ - 元RX-7乗りの適当な日々

    いまやバージョン管理システムの代名詞になったといっても過言ではないだろう、Git。 そんなGitの逆引き形式の入門書を、著者/出版社の方々からご献いただきました。ありがとうございます! 開発効率をUPする Git逆引き入門 作者: 松下雅和,船ヶ山慶,平木聡,土橋林太郎,三上丈晴出版社/メーカー: シーアンドアール研究所発売日: 2014/04/09メディア: 単行(ソフトカバー)この商品を含むブログ (6件) を見る 書を開けてパラパラとめくってみると、まず、おっ!と思うのはその図説の多さ。最初の方だけ、とかではなく終始図説が多く、読みやすそうな印象を受けます。 1章に、Gitの概要や仕組み、流れが最低限わかりやすく記されている他は、基的にやりたいことベースで説明されている逆引き形式となっていることが特徴的です。 目次を眺めてみると、これまでGitの使い方がよくわからなくて、一度

    「開発効率をUPする Git逆引き入門」を読んだ - 元RX-7乗りの適当な日々
  • pipで管理しているパッケージを一括でアップデートする - 元RX-7乗りの適当な日々

    StackOverflowのウケウリです。これ。 python - Upgrading all packages with pip - Stack Overflow やり方を大きく分けると、以下の2通り。 pip-toolsを使う ワンライナーを書いて実行 個人的には、動作保障的な意味で、全パッケージのバージョンを一括でアップデートすることはそうないのですがwそれぞれ、メモがてらやり方を書いておきます。 pip-toolsを使う (追記有り) まず、pipを使ってサクっとインストールします。 $ sudo pip install pip-tools 2015/11/30 追記 下記の pip-review コマンドは、既に pip-tools から削除された機能となっています。 https://github.com/nvie/pip-tools/issues/185 現在は、そこから派生・

    pipで管理しているパッケージを一括でアップデートする - 元RX-7乗りの適当な日々
    Layzie
    Layzie 2013/12/18
    pip install -U `pip freeze`でやってたけど、これじゃダメなのかな…?
  • Linux/Mac/Windowsでハードウェア構成に関する情報を調べる - 元RX-7乗りの適当な日々

    サーバ/クライアントPC問わず、今使っているマシンのハードウェア構成がどのようなものかをOS上で確認したくなることもあるでしょう。 そんな時にお手軽に調べられる方法を、たまーにググったりするので、Linux/Mac OS X/Windowsの3つのOSの場合の調べ方をここに残しておきます。 Linux Linuxでは、dmidecodeコマンドを使います。 BIOSの情報とか、マシンの各種システム情報(シリアルナンバー等の各種メタ情報、CPU、メモリ、その他デバイス情報とか)が取得できます。 CentOS/RHELとかだと"kernel-utils"パッケージがインストールされていれば使えます。 ちょっと長いですが、以下のような感じです。 # dmidecode # dmidecode 2.11 SMBIOS 2.7 present. 87 structures occupying 399

    Linux/Mac/Windowsでハードウェア構成に関する情報を調べる - 元RX-7乗りの適当な日々
  • Chef 11 での client/server/knife のセットアップ手順(+α) - 元RX-7乗りの適当な日々

    遅れながら、Chefの新しい11系のバージョンを触ってみました。 つまづいた途中経過を含めて、セットアップのログや動きで気付いた事を簡単に残しておきます。 尚、今回使ってみた実行環境は、CentOSの6系です(Linux)。 結論から申し上げますと、Chefの新しいバージョンは、サーバのセットアップが物凄く楽でした。 旧来のバージョンでもUbuntuはそこそこ楽でしたが、CentOSの面倒くささと言ったら、んもう。 インストールパッケージの入手先 最近は、下記のChef家となるOpscodeのサイトから、client/serverともインストーラ(各OSでのパッケージ)をダウンロードできるようになっています。 Chef Downloads Clientのインストール 上記サイトからパッケージをダウンロードしてインストールしてもよいのですが、Linuxであれば curl -L https:

    Chef 11 での client/server/knife のセットアップ手順(+α) - 元RX-7乗りの適当な日々
  • muninの表示がクソ重くなっていたのを劇的に改善した話 - 元RX-7乗りの適当な日々

    某所の"munin"がびっくりするくらい画面表示が重くなっていて、ひょんなことから改善することになった話。 前提条件として、このmuninが動いているサーバは数百台のノード(サーバ)を管理している状態で、muninのバージョンは2.0系でした。 当は、後学のためにも作ってくれた人に直してもらうべきと思いつつ、あまり悠長なことも言ってられない感じだったので、一人チューニンガソンを敢行。・・・要望があったのでログを残しておきます。(遅くなってごめんなさい) 最初の状態(before) まず、muninのトップページですが、開いてみると、、、 うほっ、19.61秒かかっておりました。これはなかなかのストレスです。 特にHTML部分の出力に19.4秒かかっている。ここをなんとかせねばなるまい。 次に4台分のサーバの各リソースの負荷状況が確認できるページを表示してみると ズラズラと出ております。各

    muninの表示がクソ重くなっていたのを劇的に改善した話 - 元RX-7乗りの適当な日々
  • 複数のtarファイルを一気に展開する - 元RX-7乗りの適当な日々

    特定のディレクトリ内に存在する複数のtar.gzファイルを一括して解凍・展開したい場合のメモ。 xargsコマンドの"-n"オプションがポイント。(追記あり) $ find ./ -type f -name "*.tar.gz" | xargs -n 1 tar zxftarコマンドは展開(抽出)の際に、同時に複数のファイルを引数に渡せないので、xargsコマンドの"-n"(--max-args)オプションを利用します。このオプションを使うと1コマンドにつき、最大でオプションにて指定した数だけ引数を使うようになります。↑の場合だと1個しか引数が渡らないようになるということです。 $ find ./ -type f -name "*.tar.gz" -print0 | xargs -0 -n 1 tar zxfちなみに厳密にちゃんと書くと↑な感じですかね。 追記 早速、ご指摘いただきました。

    複数のtarファイルを一気に展開する - 元RX-7乗りの適当な日々
  • 「Gitによるバージョン管理」を読んだ - 元RX-7乗りの適当な日々

    著者の1人である、まえだこうへいさん(id:mkouhei)からご献いただきました。ありがとうございます! このについては、レビューにも参加させていただいたのですが、そのレビューの依頼の時期がちょうど2010年9月頃でしたから、さぞその時々の流れにあわせた最終段階での調整・編集であったり、完成度を高めるブラッシュアップを繰り返されていたのではないかと想像します。お疲れ様でした。 Gitによるバージョン管理 作者: 岩松信洋,上川純一,まえだこうへい,小川伸一郎出版社/メーカー: オーム社発売日: 2011/10/25メディア: 単行(ソフトカバー)購入: 6人 クリック: 239回この商品を含むブログ (27件) を見る ご執筆開始からご出版まで3年の期間を経てヴェールを脱いだGit書籍。パラパラとめくり始めて、一見堅そうな雰囲気の書ですが、(失礼ながら)思いの外読みやすいという点

    「Gitによるバージョン管理」を読んだ - 元RX-7乗りの適当な日々
  • 新人のLinuxサーバ管理者におススメしたい1冊の書籍 - 元RX-7乗りの適当な日々

    ここ1〜2ヶ月くらい、色々な方に「最近入った新卒に読んでもらいたいLinuxの入門書とかってないですか?」と聞かれることがすごく多かったので、ここで紹介してみたいと思います。 ここで対象にしているのは、会社の新人研修なんかで1〜2日くらいは軽くLinuxに触れる機会があったけど、現場に配属されて、Linuxサーバの構築や運用をするような、Linuxサーバの"運用"初心者であるケースです。多少のコマンドの使い方や簡単な概念はわかったけど・・・の次のステップに上がるタイミングで手にとってみてはどうだろうか、と。 Linuxの教科書 - ホントに読んでほしいroot入門講座 Linuxの教科書 改訂版 (マイコミムック) (MYCOMムック) 作者: 高町健一郎,大津真,佐藤竜一,小林峰子,安田幸弘出版社/メーカー: 毎日コミュニケーションズ発売日: 2011/03/31メディア: ムック購入:

    新人のLinuxサーバ管理者におススメしたい1冊の書籍 - 元RX-7乗りの適当な日々
  • FirefoxからSSHでターミナル接続できるアドオン「FireSSH」 - 元RX-7乗りの適当な日々

    最近、先日リリースされた「Firefox 4」を利用しているのですが、このFirefox4以降で利用できるアドオンで、Firefox(ブラウザ)から、サーバ等に"SSH"によってターミナル接続できる「FireSSH」が利用できます。 FirefoxそのものからSSHによるターミナル接続が利用できるので、新しいタブをそのままターミナルとして利用することでWebブラウザとシームレスに利用できたり、接続情報を記憶させておくことも可能です。このように簡易なターミナルとして、FireSSHは十分に利用できると思います。 インストール 「FireSSH」はFirefox 4.0以降で利用可能なので、まだアップデートしていない場合は4.0以降へのバージョンアップが必要です。 以下のFirefoxのアドオンページにアクセスし、「FireSSH」をインストールしてください。 https://addons.m

    FirefoxからSSHでターミナル接続できるアドオン「FireSSH」 - 元RX-7乗りの適当な日々
  • .bash_history関連の環境変数アレコレ - 元RX-7乗りの適当な日々

    いくつか使えそうなものをメモ書き。 HISTSIZE export HISTSIZE=5000HISTORYとして記録するコマンドの履歴数。 HISTSIZEの値を小さくした場合、過去のヒストリは切り捨てられる。 HISTFILE export HISTFILE=~/.bash_history-${HOSTNAME}コマンド履歴(HISTORY)を保存するファイル名。デフォルト値は「~/.bash_history」。 HISTFILESIZE export HISTFILESIZE=5000上記の履歴ファイルに保存する履歴の最大数(行数)。必要に応じて過去の古い履歴は切り捨てられる。 HISTCONTROL export HISTCONTROL=ignoredups "ignorespace" の値が設定されていると、 空白文字で始まる行は履歴リストに入らない。 "ignoredups"

    .bash_history関連の環境変数アレコレ - 元RX-7乗りの適当な日々
  • 「Web開発者のための大規模サービス技術入門」を読んだ - 元RX-7乗りの適当な日々

    はてなさんの技術知識/ノウハウが詰まった大規模Webサービスを支えるための技術書。著者/編集者様より献いただきました。id:naoyaさん、id:stanakaさん、そして技術評論社さん、ありがとうございます! [Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ) 作者: 伊藤直也,田中慎司出版社/メーカー: 技術評論社発売日: 2010/07/07メディア: 単行(ソフトカバー)購入: 80人 クリック: 1,849回この商品を含むブログ (133件) を見る このブログでもお世話になっている、はてなさんのWebサービスは今や月間ユニークユーザ数は1500万人超とのこと。大きなトラフィックを支える多くの技術要素は一日一晩で身につくものではありません。この書籍では、はてなのサービスを題材として

    「Web開発者のための大規模サービス技術入門」を読んだ - 元RX-7乗りの適当な日々
  • bashでの「"」「'」「`」の扱いの違い - 元RX-7乗りの適当な日々

    bashでは、 「"」(ダブルクォート) 「'」(シングルクォート) 「`」(バッククォート、アクサングラーブ) のそれぞれの扱いに違いがある、という改めてのメモ書き。 あれこれ書くより、実際に違いを見たほうが早い、ということで以下は、変数"d"に"date"という値を設定し、この変数を上記それぞれで囲み、echoを実行した結果が以下。 nami@ubuntu:~$ d="date" nami@ubuntu:~$ echo "$d" date nami@ubuntu:~$ echo '$d' $d nami@ubuntu:~$ echo `$d` 2010年 6月 30日 水曜日 21:23:33 JST 「"」は変数の中に格納されている文字列を表示(展開) 「'」は囲んだ文字列をそのまま表示(文字列定数) 「`」は変数の中身をコマンドとして実行 入門bash 第3版 作者: Camero

    bashでの「"」「'」「`」の扱いの違い - 元RX-7乗りの適当な日々
    Layzie
    Layzie 2010/07/06
    たまに間違えるわあ…
  • あるディレクトリ以下に存在する、指定のファイルやディレクトリ"以外"を削除する - 元RX-7乗りの適当な日々

    あるディレクトリ以下「/foo」の、対象ファイルorディレクトリ「hoge」とした場合、以下みたいな感じで実行すればOK。 $ ls /foo/ | grep -v 'hoge' | xargs rm -rf 複数指定したい場合は、正規表現を使う。 $ ls /foo/ | grep -v -E 'hoge|fuga' | xargs rm -rf とか、 $ ls /foo/ | grep -v -E '*.rb$' | xargs rm -rf

    あるディレクトリ以下に存在する、指定のファイルやディレクトリ"以外"を削除する - 元RX-7乗りの適当な日々
  • telnetでSMTPをしゃべる - 元RX-7乗りの適当な日々

    telnetでSMTPサーバに接続してテストメールを送るテンプレ。 SMTPサーバを作ったときに、何も入っていない環境でテストをする時に役に立つ。 "HELO"はもう古いか。"EHLO"の方が今風かも。 # telnet localhost 25 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 example.jp ESMTP Postfix helo example.jp 250 example.jp mail from:sender@example.jp 250 2.1.0 Ok rcpt to:user@example.com 250 2.1.5 Ok data 354 End data with <CR><LF>.<CR><LF> subject:test mail test des

    telnetでSMTPをしゃべる - 元RX-7乗りの適当な日々
  • Amazon EC2でサーバを起動したらアタックされた!ので、運用前にチェック・対策しましょうという話 - 元RX-7乗りの適当な日々

    クラウドを使っていたら、こんなことがありました。(実話) Amazon EC2用の固定IPアドレス(Elastic IP Address)を取得する Amazon EC2でサーバ(インスタンス)を起動する 先ほど取得した固定IPアドレスを、EC2のサーバに割り当てる EC2のサーバでApacheを起動する Apacheのプロセス数がいきなり250個オーバーになる(MaxClientsの値にぶつかる) Apacheのログを見ると、常識を超えた連続HTTPアクセス(DoSアタック)を受けていることが判明 EC2で、別の固定IPアドレスを取得する 取得した別の固定IPアドレスを、(アタックを受けている)EC2のサーバに割り当てなおす 静けさを取り戻す ← imkk いやー、噂には聞いていましたが、何気に初めて遭遇しました。 クラウドサービス(IaaS等)では、別のユーザが以前に利用していたIPア

    Amazon EC2でサーバを起動したらアタックされた!ので、運用前にチェック・対策しましょうという話 - 元RX-7乗りの適当な日々
  • CentOS 5系でPHP5.3系やMySQL5.1系を使いたい場合 - 元RX-7乗りの適当な日々

    CentOS 5系(RedHat Enterprise Linux 5系)でサポートされているPHPのバージョンは5.1系。 最近のソフトウェアでの対応状況やZend Engineのパフォーマンス向上を意識し、PHPの最新版(少なくとも5.2.x系)を使いたくなったためバージョンアップすることにした。 できることなら、yumでのパッケージ管理の恩恵を受けたいので、「Les RPM de Remi」で公開されているRPMリポジトリを登録し、PHP(やMySQL)の最新版を導入することにした。 Les RPM de Remiのリポジトリ登録 以下を実行するだけ。 # rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm # rpm -Uvh http://rpms.famil

    CentOS 5系でPHP5.3系やMySQL5.1系を使いたい場合 - 元RX-7乗りの適当な日々
  • Linuxでシステムに対して意図的に高負荷をかけたい場合 - 元RX-7乗りの適当な日々

    今更感があるかもしれませんが紹介。 stressコマンドを使うと、CPUやメモリ、ディスクに対して意図的に負荷を与えることができます。 どこで使うかというと、、、高負荷時のシステムの挙動を見たい場合、AutoScaling等の負荷状況に応じて自動でスケールアップ/アウトさせるための仕組みのテストをしたい場合、部屋が寒いときにPCに発熱させたい場合wwwなどで使えるのかな、と。 Stressをインストール CentOSやRedHatの場合は、DAG(rpmforge)のリポジトリがあるので、ここのパッケージからインストールしましょう。 DAGをyumのリポジトリに追加する場合は、以下リンクから(CentOS5[x86_64]系の2010/05/14時点の最新版は)"rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm"をダウンロードして、rpmインストールしま

    Linuxでシステムに対して意図的に高負荷をかけたい場合 - 元RX-7乗りの適当な日々
    Layzie
    Layzie 2010/05/17
    名前がそのまんま過ぎで潔い。
  • プロセスの親子関係をツリー形式で表示する - 元RX-7乗りの適当な日々

    pstreeコマンドを利用する。 pstreeは、指定されたユーザやPIDを起点にしたプロセス一覧をツリー形式で表示してくれるコマンド。PIDを省略するとinitが起点になる。"-p"オプションを併用すると、PIDも表示されるようになるので、チェックもしやすい。 LinuxやBSD使いの方は、普段のマシンの中で、何を"飼って"いるのかが可視化されるので、たまに見てみると面白いかもしれませんね。 # pstree init-+-agetty |-crond |-dbus-daemon |-estmaster |-events/0 |-httpd.worker-+-ApplicationPool-+-ruby---ruby | | `-24*[{ApplicationPool}] | `-2*[httpd.worker---12*[{httpd.worker}]] |-khelper |-ks

    プロセスの親子関係をツリー形式で表示する - 元RX-7乗りの適当な日々
  • Amazon EC2/S3/他がアジア(シンガポール)で利用可能になったのでレイテンシを計測してみた - 元RX-7乗りの適当な日々

    昨年11月に発表されていたAmazon Web Servicesのアジア・パシフィック展開(Amazon Web Servicesが2010年上半期にアジアへ進出)ですが、とうとう日正式に利用可能になりました。 これで、AWSでは、アメリカ東部・西部、ヨーロッパ西部に続いて4ヶ所目のRegionとなります。私を含め、多くの日AWSユーザが期待していたであろうアジアでのサービス展開です! We've just opened up an AWS Region in Singapore, with two Availability Zones. The new region supports Amazon EC2 (including Elastic IP Addresses, Amazon CloudWatch, Elastic Block Storage, Elastic Load B

    Amazon EC2/S3/他がアジア(シンガポール)で利用可能になったのでレイテンシを計測してみた - 元RX-7乗りの適当な日々
  • 文字列を指定の文字数ごとに改行させたい場合 - 元RX-7乗りの適当な日々

    文字列を、指定の文字数ごとに改行させたい時は、nkfコマンドが使えます。 一行に、ずらずらーっと書かれた文字列を指定文字数ごとに改行して整形したりする時、例えばメールの文は70文字ごとに折り返しましょう的な。 使い方は、以下のようにnkfコマンドの"-f"オプションを利用します。ちゃんと、禁則処理も考慮してくれます。 # "-f"オプションのデフォルトは60文字となります。 使い方は、こんな感じです。 例えば、以下は60文字おきに改行させる場合。 $ nkf -f60 test.txt The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT

    文字列を指定の文字数ごとに改行させたい場合 - 元RX-7乗りの適当な日々