本日も乙

ただの自己満足な備忘録。

Linux

Ubuntu ServerにShiny Serverをインストールしてみた

[toc] 前回はUbuntu ServerにRStudio Serverをインストールしました。 今回は、Shiny Serverをインストールしたのでそのメモを紹介します。 Shiny Serverとは Shinyとは、Rで記述した内容をブラウザで動かせるようにアプリケーション化したものだそうです。 …

Ubuntu ServerにRStudio Serverをインストールしてみた

[toc] 研究部門の人からUbuntu ServerにRStuido Serverを入れてブラウザでRを操作したいと要望があったのでRStuido Serverをインストールしました。その時に操作した内容を紹介します。また、OpenLDAPを使っているので、RStudioにLDAPアカウントでログインで…

Amazon LinuxでImageMagickのRPMを作成してインストールする

[toc] Amazon LinuxでImageMagickを使うことがあり、Yumでインストールしたのですが、使いたいバージョンよりも古かったということがありました。こちらの記事を参考にImageMagick-lastを入れようとしたのですが、やはり上手くいかず。。。また、Chefでレシ…

非対話形式でパッケージを自動更新する(debconfを無効化)

[toc] ちょっとしたTipsです。 最近、Ubuntu Serverを扱うようになりました。今までCentOSを扱ってきたので違いに戸惑うこともありましたが、なかでもパッケージアップデートする際の確認メッセージが出てきたときは最初は驚きました。 apt-get dist-upgrade…

今からでも間に合う!うるう秒対策(2017/01/01、検証付き)

[toc] ほとんどの人は昨日か今日で仕事納めかと思います。私も本日で仕事納めです。 短い年末年始をゆっくり過ごしたいところですが、2017年の元日はうるう秒が挿入されるということでシステム管理者はその対応に追われていたり、当日に待機になっているので…

CentOSでGit v2系をRPMで作成する

[toc] 脆弱性スキャンツールVulsをインストールする際、Vulsのバージョンがv0.1.6まではGitのバージョンをv2以上にする必要がありました(最新版v0.1.7でv2以上でなくてもよくなったみたいです)。 CentOSでGitをYumでインストールしようとすると最新のCentOS …

複数サーバで同時操作したい時の方法まとめ

今日も飽きずに過去のメモを掘り起こして記事にしました 全台、もしくは一部のサーバに対して一斉にコマンド実行したい場合があります。 調べてみると色々な方法があるみたいなので、いくつか紹介します。 他にあれば随時追加するかも。 tmux ローカルPCにtm…

CentOS 6.6にCUDA 7.5をインストールしたときにカーネルパニックが起こったときの対処方法

CentOS 6.6にwaifu2xをインストールしてみたでCUDAをインストールした後、nvidia-smiコマンドを実行するとカーネルパニックを起こしてサーバが固まることがありました。 原因はよくわかりませんが、CUDAのバージョンが7.5に上がってNVIDIAドライバーのバージ…

CentOS 6.6でwaifu2xを使えるようにしてみた

(2015/11/05 追記) タイトルがおかしかったので修正しました。 前回の更新からまた大分空いてしまいました・・・ 下書きばかりが溜まっていくのですがちゃんと記事としてまとめられていないのでちょくちょく更新していくようにします。 waifu2xという画像を高画…

CloudForecastでRedisモジュールを拡張した

CloudForecastを使っていて、EC2インスタンスに構築したRedisサーバのメトリクスを可視化しています。 CloudForecastには、既存のRedisモジュールがあるのですが、他に取得したいメトリクスがあったので拡張しました。 本家のモジュールを元に追加しただけで…

fluent-plugin-s3で「aws_key_id or aws_sec_key is invalid...」が出る場合の対処方法

td-agent(1.1.21)をEC2インスタンスにインストールし、fluent-plugin-s3でログをS3に送ろうとしたら、ログに以下のようなエラーが吐き出されていました。 2015-01-19 15:46:58 +0900 [error]: failed to configure/start sub output s3: aws_key_id or aws_s…

Amazon Linux 2014.09(Instance Stored-backed)からAMIを作成するとEC2インスタンスのStatusChecksが失敗する件について

先月、Amazon Linux AMI 2014.09がリリースされましたね。 仕事の案件でVPCを新規に構築しているのですが、せっかくなので最新のAMIを使おうと決めていました。今回は事情により、Instance Stored-backed(S3ベース)のEC2インスタンスを使う必要があったため…

nginxのバージョンを抽出するワンライナー

最近、ブログ更新が滞っていました。今回は簡単なワンライナーです。 Serverspecでnginxのバージョンをテストしたい場合があったのでメモ。 $ nginx -v 2>&1 | egrep -o '[0-9]+\.[0-9]+\.[0-9]' 1.4.4 キモとなる部分が・・・ nginx のバージョン表示を標準エ…

セッションをMemcachedに格納してみる

かなり久しぶりの更新です。 前回では、HerokuでSymfony2を動かすようにしてみましたが、セッションをMemcachedに格納するところがどうしてもできずにいました。 しかし、PHP session handling on Herokuを見つけまして、試したらちゃんと動きました。 結局…

rsyncで"protocol version mismatch -- is your shell clean?"とエラーが出た場合の対処方法

EC2インスタンスからMac book Airにファイルをrsyncで持ってこようとしたら以下のエラーが出ました。 $ rsync -av my-server:/home/foo/bar_* ~/ protocol version mismatch -- is your shell clean? (see the rsync man page for an explanation) rsync err…

OpenSSLアップデート後にcronでセグメンテーションフォルトが起こっていた

Heartbleedの影響で、OpenSSLをアップデートして対応しましたが、その後cronが動いていないことが判明し、syslog(/var/log/messages)を確認したところ、以下のようなセグメンテーションフォルトが発生していました *1。 [plain] Apr 8 00:00:02 localhost ke…

mkpasswdコマンドでランダムな文字列を生成する

Basic認証やユーザのパスワードなどにランダムな文字列を生成したいときがあります。 そういう場合、Webサイトやプログラムから生成しても良いのですが、mkpasswdコマンドを使えば簡単に生成生成できます。 今回はmkpasswdコマンドをインストールしてランダ…

CentOSの起動スクリプトを書き方(+注意点)

サーバの起動時や停止時に特定のスクリプトを実行したい場合があります。 例えば、起動時に起動した旨をメール通知したり、停止時にログ(/var/log)をAWS S3などのストレージにバックアップで保存したりできます。若しくはApacheやnginxなどを野良ソースから…

Webサーバ(Apache, nginx)のアクセスログから時間帯別にアクセス数を算出するワンライナー

以前、仕事で「時間帯別のアクセス数を出してくれ」と言われたのでApacheのアクセスログからコマンドで抽出しました。 僕はワンライナー厨ではないのでコマンドがやたら長いので、「この方が短く書けるしいいよ!」みたいのがありましたらコメントしてくださ…

OpenSSLの脆弱性(Heartbleed Bug)対応をしてみた

OpenSSLで重大な脆弱性が発覚したようです。 OpenSSLの重大バグが発覚。インターネットの大部分に影響の可能性 当ブログではSSL使っていないのでおそらく大丈夫だと思いますが、仕事でその対応に追われていました(まだ終わっていません)。 他のブログ等で詳…

repcachedをインストールして、memcachedをレプリケーションしてみる

複数台の構成の場合、WEBサーバ、データベースサーバ、キャッシュサーバと、役割別にサーバを建てることが一般的です。 役割を簡単に説明すると、下記の通りになります。

wgetでミラーサイトのファイルをダウンロードするオプション

たまには小ネタを。 PHPのソースをwgetでダウンロードしようとしたのですが、mirrorというファイルをダウンロードされてしまいました。 例としてPHP5.4.16をダウンロードしました。

初めてのtmux (インストール+設定+簡単な操作)

tmux(ティーマックス)とは、仮想端末ソフトです。 要するに1つのターミナル端末で複数の画面を独立で操作できるようになるソフトです。 tmuxを使う前は、「何が便利なの?よく分からん」「別に今のままでも操作できるし」「設定やキーバインドを覚えるのが面…

treeコマンドのインストール

本日はtreeコマンドのインストールです。 CUI(コマンド)でファイル操作をしているとき、ファイルやディレクトリの構造を知りたい場合にtreeコマンドが便利です。 treeコマンドはディレクトリ構造をツリー状に表示してくれて、ディレクトリのみの表示や表示す…

nkfコマンドのインストール

本日はnkfコマンドのインストールです。 京都の夏は暑いです。 昨日の豪雨はすごかったです。 http://matome.naver.jp/odai/2137568482832704101 ファイルの文字コードを確認したいときや変換(エンコード)したい場合に、nkf (Network Kanji Filter)コマンド…

データベースのバックアップ(mysqldump)と復元(リストア)

本日もMySQLネタです。 データベースを運用していると、バックアップを取る必要が出てくることもあります。 例えば、毎週月曜日夜中3時にフルバックアップを取って、それ以外の日は差分バックアップを取るなどです。バックアップを定期的に行うことで、デー…

DenyHostsのインストール

DenyHostsは不正にSSH接続してくるIPアドレスを拒否してくれるようにするツールである。 サーバーを公開すると、外部からSSH接続されることが多い。 公開鍵認証や、logwatchで対策できるが、不正アクセス自体の対策とならないため、DenyHostsによって不正ア…

ログ監視(Logwatch)のインストール

サーバを運用していくと/var/log に様々なログが溜まってくる。 ログを見ることで、メール配信の状況(メールが送れているか、遅延していないか)や誰がいつサーバにログインしたかを知ることができる。 また、さくらVPSなどでサーバを公開すると、外部からSSH…

公開鍵認証でSSH接続する

さくらVPSは、デフォルトでパスワードによる認証でSSH接続していた。 そのままでも良いが、パスワードが漏れた場合誰でもサーバにログインできてしまうという問題がある。 ましてや、sudo権限を持ったユーザだとサーバの設定も変えることができてしまうので…

さくらVPS(CentOS 6.2)でソースからPHP5.4.10をインストール

前回はyumでPHPをインストールしました。 yumからだと簡単にインストールできて便利ですが、拡張モジュールを追加する場合はソースからインストールした方が便利です。 そこで今回はPHP5.4.10をソースからインストールしてみます *1。 目標 PHP5.4.10をソー…