約束の地

キャロの想い出

Linux

Apache2 で 複数のポート で待ち受ける方法

結論 /etc/apache2/ports.conf*1 に以下のように書き連ねていけばよいです。書かれている全てのポートで待ち受けます。 Listen 80 Listen 12345 再起動を忘れずに。 補足 内部での振り分けは /etc/apache2/sites-available や /etc/apche2/sites-enabled 内…

Squid3 を通して ニコニコ(ニコニコ生放送) を視聴する方法

公式ヘルプによる仕様 ※niconicoでは「80、81~86、88~92、99、443、843、1935、2805~2899」のポート番号を利用します。

SSH で 鍵 を用いてログインできない場合に確認する箇所

結論 パーミッション $ chmod 700 ~/.ssh $ chmod 600 ~/.ssh/authorized_keys

Vim でタブキーおよびタブキーの逆の操作を行う方法

結論 以下、インサートモードです。 タブキーの操作は ctrl+t *1 タブキーの逆の操作は ctrl+d 「逆タブ(?)」*2 備考 ググっても「複数タブで編集する」という意味での「タブ」が引っかかって、なかなか目的の情報にたどりつけなかった(ので役に立つかな…

「Amazon Web Services 基礎からのネットワーク&サーバー構築」を読んだ

「Amazon Web Services 基礎からのネットワーク&サーバー構築」 現在は「改訂版」が発売されていますが(下記)、私が購入したのは初版です*1。 Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂版作者: 玉川憲,片山暁雄,今井雄太,大澤文孝出…

Ubuntu 16.04 LTS で tig をインストールする方法

結論 パッケージに存在する。 $ sudo apt-get install tig 補足 バイナリリリースが無かったり、ドキュメントにパッケージのことが触れられていなかったり*1したのでちょっと迷いました。 *1:brew 除く

GitLab へのプッシュをトリガにして、Jenkins の Multibranch Pipeline を発動させる方法

前提 Jenkins のジョブのタイプは「Multibranch Pipeline」 Git のWebアプリは「GitLab」 やりたいことは「リポジトリのどのブランチへのプッシュでも*1、Jenkinsを発動させる」こと *1:プッシュ以外も設定可能

Jenkins でブランチごとに Jenkinsfile を用いて挙動を変える

前提条件 Jenkins でブランチごとに挙動を変えるためには、以下の条件が必要です。 ジョブのタイプが「Multibranch Pipeline」であること

Jenkinsfile を使う(発動させる)方法(ジョブの種類が「パイプライン」の場合)

結論 「パイプライン」の項目で、「定義」として「Pipeline script from SCM」を選ぶ。 具体例 Git を用いる場合は「SCM」に「Git」を選び、リポジトリの情報などを埋めればいいです。「Jenkinsfile」というファイル名とその置き場所を変更したい場合は「Scr…

GitLab でプッシュがされたら Jenkins でビルドが始まるようにする方法

結論 Jenkins の「ビルドトリガ」で Build when a change is pushed to GitLab.... にチェックを入れる 「1.」により提示された URL を GitLab 側で Webhook として登録する ※Jenkins に GitLab のプラグインはインストールされているものとします 具体的な…

ConoHa の API でサーバを追加する方法

使うのは curl だけ 愚直にcurlだけで作ります。

PHP で MySQL からデータをどうしても持ってこられなかった(空っぽで返ってきた)話

結論 PHP 7に適したコードではなかった*1。 *1:PHP 5 時代に書いたコードだったため

MySQL で誰にも GRANT がなくなってしまった場合の対処方法(Ubuntu 16.04 LTS)

結論(概略) mysqld_safeで起動してrootでログインし、権限を付与する。

公開した gem を取り下げたいときに実行するコマンド

結論 gem yankコマンドを使う。以下はその例です。これでyour_gane_nameという gem の、バージョン1.2.3が取り下げられます。 $ gem yank your_gem_name -v 1.2.3 補足 上記コマンドにより全てのバージョンが取り下げられても、取り下げられたという事実は残…

Ubuntu 16.04 LTS で zip に固めたファイルのファイル名を文字化けせずに Windows で展開する方法

本質 標題が具体的で長ったらしいですが、つまり以下のことを実現したいのです。 Linux のファイル名の文字コードを UTF-8 と Shift-JIS の間で行き来したい(文字化けを防ぎたい) 結論 convmvを使います。

Zabbix のフロント部分(PHP)のコードはデフォルトで /usr/share/zabbix 配下にインストールされる

結論 標題のままです。 事情 とある事情で Apache2 の conf ファイルを編集して、無事再起動が通ってのんびりしていたところ、「Zabbix(のWeb)につながらない」との苦情が……。 調べてみると conf ファイルの /usr/share のところを根こそぎコメントアウト…

rbenv の global と local の違い

rbenv rbenvはRubyのバージョンを行き来するのにとても便利ですが、globalやlocalや、はたまたrbenvが使わないユーザの場合でどのように挙動が違うのかを記します。

PhantomJS 2.1.1 を Ubuntu 16.04 LTS にインストールする(2017年11月版)

結論 BitBucketから直接持ってきて入れましょう。 $ wget -O /tmp/phantomjs-2.1.1-linux-x86_64.tar.bz2 https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 $ cd /tmp $ bzip2 -dc /tmp/phantomjs-2.1.1-linux-x86_64…

npm install をしたら「npm ERR! code ENOSELF npm ERR! Refusing to install package with name "gulp" under a package」みたいに怒られたとき

結論 プロジェクト名を変える。package.jsonで言うところの"name": "gulp",のところ。 理由 まあエラーメッセージのとおりなんですが……。プロジェクト名とインストールしようとするパッケージ名が同一になってはいけないということです。以下は、~/gulpとい…

npm install で -g オプションを使い分ける

結論 原則として-gオプションは使わない*1。 global にインストールされない実行ファイルはどうやって実行するか npm runコマンドで実行する。gulpだとしたら以下のとおり。 $ npm run gulp Rubyで言うところのbundle execです。 *1:「原則として」

n で node をインストールしてもバージョンが変わらないとき

結論 シェルに入り直す*1。 備考 よくあることですね。 *1:か、同等の操作をする

nvm と n の違い

結論 nvmはユーザごとのローカル環境においてバージョン管理が行われる*1 nは全ユーザ共通の環境でバージョン管理が行われる*2*3 参考(感謝!) *1:Ruby の例で申し訳ないですが rbenv のようなもの *2:apt や yum でバージョンを行き来するようなイメージ …

Ubuntu 16.04 LTS で Node.js をインストールする際は nodejs と nodejs-legacy のどちらを入れるべきか

結論 nodejs-legacyパッケージを入れる。 理由 nodejsパッケージでは以下のようにnodeコマンドが見当たらない。 $ sudo apt-get install nodejs (省略) $ node --version The program 'node' is currently not installed. You can install it by typing: s…

Ubuntu 16.04 LTS での apt-get install における node と nodejs(nodejs-legacy)の違い

結論 nodeはNode.jsとは全く無関係のアマチュア無線関係のパッケージである。したがって、Node.jsを入れる場合にはnodejsパッケージかnodejs-legacyパッケージをインストールする。 参考 備考 最近では$ sudo apt-get install nodeしようとしてもパッケージ…

GitHub に ~/.ssh/config へ記述した鍵の内容で接続できない場合

結論(の一つになり得るもの) Hostにgithub.comと指定していない。 つまり、以下の内容ではダメです。Permission denied (publickey)と盛大に怒られます。 Host github HostName github.com Port 22 User git IdentityFile ~/.ssh/foobar.key AddKeysToAgen…

Paralles で Linux の仮想マシンと Mac のマシン上の任意のディレクトリで同期を取る方法

結論 「オプション」→「共有」の「共有フォルダ」の「カスタムフォルダ」で Mac 側のディレクトリを指定する。そうして Linux を起動すると、/media/psf配下に当該ディレクトリが共有されて同期がとれます。

IntelliJ IDEA で Ruby をリモートで Run/Debug しようとしてできなかった話

最新の RubyMine だと OK? @takeyuweb さんによれば、できるっぽいけどまだ試していないです。そしてこれはRubyMineだけなのかな?そうだとしたら乗り換えてもいいかなと。PHPが必要になったらPhpStormを使うという感じで。IntelliJ IDEAは実質的にJava専用…

シェル起動時に byobu をデフォルトで自動起動させる(させない)方法

結論 自動起動させる $ byobu-enable 自動起動させない $ byobu-disable

Parallels に Linux(Ubuntu、Mint...)をインストールしようとした際に画面が真っ暗になってしまうとき

結論 メインメモリの割当を増やす。512MB以上であればよいようですが、1GBを取っておいていいでしょう。 補足 リソースをケチったがゆえに画面が真っ暗になって、これはイメージがおかしいのかとイメージをダウンロードし直したり仮想マシンの他の設定をいじ…

IntelliJ IDEA の Community 版では PHP や Ruby のプラグインは扱えない

結論 標題のとおりです。Community 版で入れることができてしまったら RubyMine や PhpStorm は何なの、ってことになっちゃいます。 解決策 Ultimate 版を使いましょう。あるいは素直に Eclipse 。

Powered by はてなブログ