【git】ブランチにcommit、pushする

gitでブランチにcommit、pushする方法です。

まずはcloneで取得した情報からブランチの一覧を表示してみます。

ブランチにはリモートとローカルがありますので-rオプションでリモートのブランチを指定します。

このように、ブランチのリストが出ます。
cloneした後に作られたブランチは表示されませんので
最新のブランチのリストを見るには再度cloneする必要があります。

目的のブランチを見つけたら、
ブランチをチェックアウト(リモート上のブランチを落としてきてローカルのブランチを作成)します。

たとえばver237というリモートのブランチをローカルに落としたい場合は

これでver237というブランチがチェックアウトできました。
コミット対象がブランチになっているか確認しておきます。

-rオプションをつけなければローカルのブランチリストが表示されます。

*がついている行が現在のコミット対象であることを示していますので、
ブランチ「ver237」がコミット対象です。
この状態でcommitやpushを行えば
このブランチを更新することができます。

【Linux】CentOS6にPython2.7をインストールして自動的に有効にする

先日Let’s EncryptのログにWarningが出ていました。

証明書の更新はできていますが、
Let’s Encrypt自身のアップグレードでWarningが出ていたようです。
アップグレードするには、現在インストールされているPython2.6はサポートが廃止される予定なので
まずはPythonをアップグレードしろとのこと。

しかしCentOS6の標準では2.6までしか入りませんのでリポジトリのインストールから始めます。

リポジトリのインストール

Python2.7のインストール

これだけではpythonコマンド使用時のバージョンは2.7になりません。
2.7が自動的に有効になるように設定しましょう。

これで~/certbot-auto renewを実行すれば
Let’s EncryptのrenewコマンドでLet’s Encrypt自身のアップグレードもされるようになりました。

しかし、自動更新はたいていの場合、cronで設定されているかと思います。
cronで実行される場合はまだpython2.7が有効になっていません。

cronで実行するコマンドでpython2.7を有効にするには
crontabでの記述を次のようにします。

(毎日AM5時にrenewを実行する場合)

【Linux】Let’s Encryptで取得した証明書を削除して更新対象からはずす

SSL証明書を無料で取得できるLet’s Encryptで、
サーバー移行やサイト閉鎖などによって証明書が不要になった場合は
revokeオプションで対象のドメインの証明書を削除する必要があります。
証明書の更新はcronで自動更新していると思いますので
ある日ログを確認したらエラーが出続けていたということがないよう、忘れずに証明書を削除しましょう。

certbot-autoのrevokeオプションを実行するだけです。

certbotの古いバージョンではfullchainなどのファイルに対してもrevokeが必要でしたが
最新のcertbotではcert1.pemを削除するだけでOKです。この状態で

を実行すれば
revokeしたドメインは更新対象から外れています。

あとは、Apacheなどのバーチャルホストの設定の変更も忘れないようにしましょう。
そのままだと削除した証明書をロードしようとしてエラーとなり
ウェブサーバーが起動できないという事態になってしまいます。

【CentOS】「ntpdが停止していますがPIDファイルが残っています」

あるシステムから自動送信されているメールが届かないケースが増え、原因を探っていました。
色々調べた結果、メールの送信日時がおかしいことがわかり、
サーバーを調べると、サーバー自体の時間がたしかにずれていました。

ntpサーバーが起動していないのか?確認してみました。

ん?
停止しているなら起動しよう

メッセージの通り、PIDファイルが残っているので
起動できないようです。
PIDファイルを削除しましょう。

よし、これで起動できますね。

はい、ロックファイルを削除しましょう。

起動できました。

【Linux】viで複数行をコピーする

viで1行コピーするのは

でコピーして

で貼り付けるだけなので簡単です。

複数行のコピーも、数行程度なら行数が分かるので

(カーソル位置から下に5行分をコピー)
という感じで簡単です。

では行数が簡単に数えられないくらいの行をコピーするには?

そんなときはブックマーク機能(mコマンド)を使ってコピーしましょう。

まずコピーしたい最初の行にカーソルを持っていき、任意のアルファベットでマークします。

(aというマーク)

次にコピーしたい最後の行にカーソルを持っていき、別のアルファベットでマークします。

(bというマーク)

あとは、コマンドモードで以下のコマンドを打ちます。

最初と最後のマークをカンマ区切りで呼び出してy(ヤンク)
なので、viのコマンドとしては分かりやすい方かと思います。

貼付けは1行のときと同じように、貼り付けたい場所で

を押すだけです。