ynishimura

Infra Engineer Blog

Linux

linux

web github jekyll git mac vim centos sublime nagios nodejs ruby php apache postfix python kvm line font proftpd tmux linuxvim vagrant atom shell ESXi js mysql zabbix
2016
30 Aug 2016

パスなしでSSH接続する

sshコンフィグ vi .ssh/config --- Host web HostName 192.168.33.11 --- chmod 600 .ssh/config ssh-keygen -t rsa ssh-copy-id web ssh web exit...

30 Aug 2016

オレオレ証明書の作成

参考サイト1 オレオレ証明書 10年間(3650日)有効なオレオレ証明書ができあがる。 $ openssl genrsa 2048 > server.key $ openssl req -new -key server.key > server.csr $ openssl x509...

30 Aug 2016

ansibleインストール

ansible install wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm sudo rpm -Uvh epel-release-6-8.noarch.rpm sudo yum -y install ansible ansible --version ansible all -i hosts -m...

29 Aug 2016

Vagrant 基本コマンド

BO関係 BOX追加 vagrant box add hashicorp/precise64 確認 vagrant box list 下のサイトから違うBOX取得できる [boxサイト](http://www.vagrantbox.es/) ex) vagrant box add centos6.7 https://github.com/CommanderK5/packer-centos-template/releases/download/0.6.7/vagrant-centos-6.7.box 確認 vagrant...

15 Aug 2016

nagiosにグラフのプラグインを導入

PNPをインストール RPMforgeリポジトリ導入(RPMforge)を参照してRPMforgeリポジトリを導入する [root@centos ~]# yum -y install rrdtool php-gd ← PNPに必要なパッケージインストール [root@centos ~]# /etc/rc.d/init.d/httpd reload ← Apache設定再読み込み httpd を再読み込み中: [ OK ] [root@centos ~]#...

15 Aug 2016

nagiosのGUIにアクセスしようとしたら403Forbiddenがでた

設定は変更してないのに http://(servername)/nagiosにアクセスしてみたところ,403 Forbiddenが出てしまった ■原因 既存のPHPを消し、PHPのバージョンを上げた ■解決策 既存のPHPをいれた yum install php やってみたらアクセスできた

15 Aug 2016

sshログイン後にサーバの情報、CentOSのロゴを表示させる

screenFetchコマンドをインストール wget https://raw.githubusercontent.com/KittyKatt/screenFetch/master/screenfetch-dev sudo cp screenfetch-dev /usr/local/bin/screenfetch sudo chmod 755 /usr/local/bin/screenfetch コマンドを実行する # screenfetch .. root@xxxxxxxxx .PLTJ. OS: CentOS <><><><>...

15 Aug 2016

cactiを導入

cactiをインストール yum -y install cacti yum -y install net-snmp Net-SNMPの設定 ここのサイトを参考 cactiの設定 1)Cacti用MySQLデータベース作成 [root@centos ~]# mysql -u root -p ← MySQLへrootでログイン Enter...

12 Aug 2016

vimとtmuxのキーコンフィグ

tmux tmuxの基本的な操作 # 新規セッション開始 tmux # 名前をつけて新規セッション開始 tmux new -s <セッション名> # セッションの一覧表示 tmux ls # 接続クライアントの一覧表示 tmux lsc #...

11 Aug 2016

tmux導入、設定

tmuxインストール ■関連パッケージインストール yum install libevent-devel ncurses-devel xsel ■ソースからインストール git clone https:/github.com/tmux/tmux.git cd tmux sh autogen.sh ./configure && make # /usr/local 以下にインストール...

11 Aug 2016

neovim

neovimインストール CentOS7 yum -y install epel-release curl -o /etc/yum.repos.d/dperson-neovim-epel-7.repo https://copr.fedorainfracloud.org/coprs/dperson/neovim/repo/epel-7/dperson-neovim-epel-7.repo yum -y install neovim CentOS6 yum -y install libtool autoconf...

10 Aug 2016

/dev/null2>&1 の意味を調べた

シェルスクリプトやcrontabで標準出力と標準エラー出力の両方を捨たいときは、一般にこのように書きます。 command >/dev/null 2>&1

09 Aug 2016

KVMの仮想マシン用にテンプレートを作成する

テンプレートを作る インストールしたゲストOSは作成直後のクリーンな段階で、後々仮想マシンを増やす時用のテンプレートとしてディスクイメージをコピーしておくと便利です。 テンプレートとしてとっておいたディスクイメージから新たな仮想マシンを作成する場合は同じように「virt-clone」で複製できます。 [root@host ~]# virsh shutdown www 仮想マシンを停止させる [root@host ~]# virt-clone --original www --name template --file /home/kvm/images/template.img Allocating 'template.img'...

09 Aug 2016

KVM上の仮想マシンを操作する

仮想マシンの初期設定 作成した仮想マシンの設定はXMLで管理されている。 [root@host ~]# virsh edit VM01 ← ゲスト設定 <clock offset='localtime'/> ← クロックをlocaltimeにする※初期値のutcだとマシン時間が日本時間-9時間となってしまうため 仮想マシンを操作する virshコマンドを使った仮想マシンの操作方法です。 [1] 仮想マシンの起動 [root@dlp ~]# virsh start www # 仮想マシン'www'を起動...

09 Aug 2016

KVM上にCUIで仮想マシン(CentOS6)を作成する

仮想マシン作成する OSイメージを用意する # pwd /home/media/os/ # wget http://ftp.riken.jp/Linux/centos/6/isos/x86_64/CentOS-6.8-x86_64-netinstall.iso CentOSのisoファイルを取得 # cd .. # chown -R qemu:qemu os 仮想マシン作成 ネットワーク経由でインストールする。 仮想OS名:www...

09 Aug 2016

KVM環境で物理NICに仮想ブリッジを接続する

仮想マシンのネットワーク関連 デフォルトで「default」という仮想ネットワークが構成されており、仮想ブリッジ「virbr0」が設定されている。 仮想ブリッジも`libvirtd`サービスが管理します。 「brctl」コマンドでブリッジの管理が可能。 # brctl show bridge name bridge id STP enabled interfaces virbr0 8000.52540097b907 yes virbr0-nic Linux KVM環境で物理NICに仮想ブリッジを接続する...

09 Aug 2016

KVMの導入

KVMの概要 KVMはLinuxのカーネル自体をハイパーバイザとする仕組み。 Intel VT-xやAMD-VといったCPUの仮想支援機能を必要とし、完全仮想化によりOSの仮想環境を提供します。 KVMの処理の仕組み KVMでは仮想マシンにリソースを割り振るためのスケジューラやメモリ管理についてはLinuxカーネルのものを利用します。 ただし、KVMを使うことで変更される点が大きく2つあります。 − プロセスに新たなゲストモードが追加される − ゲストOSからのIO要求は/dev/kvmを経由された処理される Linuxには通常、カーネルモードとユーザモードの2つがある。カーネルモードは全てのメモリ空間にアクセスすることができ、他のリソースを管理することができる。 ユーザモードは通常のプログラムを動作するモードでアクセスできるリソースは限られている。 KVMを使うと新たにゲストモードが追加される。そのプロセス自体が内部的にカーネルモードとユーザモードという2つのモードを持つ。 KVMは2つのコンポーネントから構成されている。ハードウェアの仮想化を管理するためのデバイスドライバ/dev/kvmと、KVMように修正れたQEMUからなる。 QEMUのプロセスはゲストOSの物理メモリとゲストモードにおけるカーネルモードとして実行されるデバイスドライバの呼び出しとのマッピングを行います。IO処理はCopy on Writeディスクイメージやその他のQEMUの機能と一緒に直接生成される。 このゲストOSのI/O命令は、次のような流れで実行される。 1)ゲストがI/O命令を発行する...

01 Aug 2016

VimFilerの操作

vimfilerの基本操作 vimfilerの応用 nnoremap <Space>e :VimFilerExplore -split -winwidth=30 -find -no-quit<Cr> ◆現在のキーマップ "unite prefix key. nnoremap [unite] <Nop> nmap <Space>u [unite] "...

01 Aug 2016

vimのプラグインUniteを使う

Uniteのキー操作 基本的な操作がわかるサイト 基本的な操作がわかるサイト2 下記に特に重要なところ抜粋 ■カレントディレクトリのファイルとディレクトリ一覧 :Unite file ■最近開いたファイルの一覧 :Unite file_mru ※別途プラグインが必要なのでdein_lazy.tomlに下記追記 # unite.vim を読み込んだら一緒に読み込む [[plugins]] repo = 'Shougo/neomru.vim' on_source =...

01 Aug 2016

postfixからgmailにメールを送る

http://eco.senritu.net/gmail%E3%81%AB%E3%83%A1%E3%83%BC%E3%83%AB%E3%83%AA%E3%83%AC%E3%83%BC%E3%81%99%E3%82%8Bpostfix%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%B5%E3%83%BC%E3%83%90/ https://tech.matchy.net/archives/35 http://park1.wakwak.com/~ima/centos_postfix_relay0001.html

01 Aug 2016

無料で証明書を取得し、HTTPSを実現する(Let’s Encrypt)

証明書を取得する前提として、ドメインを取得する必要があります。 現在、無料でもドメイン名を取得できるサービスが多くあり、ダイナミックDNSを利用することが主流だと思います。 しかし、私の場合Let’s Encryptで証明書を取得する際、エラー(このドメインから多くの証明書が発行されていて、もう無理です的な)がでて、取得できませんでした。 そこで、私が現在使用しているルータ(aterm)の機能、ホームIPロケーション機能を利用して、ドメインを取得しました。 詳しくはこちらを参照。 HTTPSの導入は例のごとくここを参照。

01 Aug 2016

apache で phpを動かすときに500のエラーが出た時の対処

apache でphpを動かす apacheでphpを動かそうと思い、apacheの設定でつまずいたのでメモ phpのコンテンツにアクセスすると500のエラが表示される まず、エラーログをみる。私の場合下記のエラが出力されていた [Sat Jul 30 02:15:27 2016] [error] [client 127.0.0.1] Premature end of script headers: index.php [Sat...

25 Jul 2016

CentOSでホスト名(FQDN)を設定する

ホスト名(FQDN)を設定する 127.0.0.1とlocalhostは自分をサーバを指す。 下記yourhostnameに設定したいホスト名を記載 また、LANなど接続しているIPに名前を設定することもできる。 # vim /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 yourhostname ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.xx yourhostname...

25 Jul 2016

CentOSでドメイン名を設定する

ドメイン名を設定する ドメイン名を変更するには、 ・/etc/resolv.conf を編集します。 ドメイン名を変更した場合、ホスト名も変更になります $ vim /etc/resolv.conf domain exmaple.com nameserver 8.8.8.8 nameserver 8.8.4.4 domain に変更したいドメイン名を設定します。 編集を終えたら、保存するだけでOKです。 変更内容が正しく反映されたか確認するには、ドメイン名を省略しpingコマンドを発行すると確認できます。 $ ping...

24 Jul 2016

ダイナミックドメインを取得し、GIPを変更後も更新IPとドメインを紐づくようにする

無料でドメインを取得できるサービスがあるが、大体の自宅サーバからwebサービスを運用している場合は GIPが固定されておらず、再起動などに変更されたりする。 その際に、無料で取得したドメインはGIPが変更されたこと検知できず、サービス非提供状態になってしまう。 こちらのサイトを参考に行ったら簡単にできたほんと感謝。 GIP変更のドメイン名とのひも付けもDiCEを使ってできた。 memo:トラブルシューティング DiCEを実行する際に setarch: /usr/local/bin/DiCE/diced: そのようなファイルやディレクトリはありません のような、エラー発生した。 原因として、 32bit版のld-linux.so.2が必要らしいので yum install ld-linux.so.2 を実行して glibc.i686 と依存関連パッケージをインストールしてみると解決した。

23 Jul 2016

nagiosを導入し、Linuxを監視する

nagiosをインストール 下記のサイトどおりに実施したらうまくいくはず。 Nagios導入参考サイト 参考サイトではapacheの部分はcentos7での設定になっているので注意。 guiのみかたがイマイチわからないところがあるので、調べる。 トラブルシューティング make時のエラーで下記のようなエラーがでたとき ・ ・ ・ gcc -Wall -I.. -g -O2 -DHAVE_CONFIG_H -DNSCORE -c -o nagios.o...

23 Jul 2016

Linuxにsambaを導入し、macと接続する

Linuxにsambaをインストール 下記のサイトどおりに実施したらあっさりいけた。 昔はmacではsambaとの相性悪く、つながらなかったらしいですが、OSがYosemiteにぐらいになってから色々とサポートされて良くなったみたい。 Samba導入参考サイト 構築とサーバ側の設定が完了したら、macのファインダーにある共有のところにサーバ名が表示されるので、「別名で接続」をクリックし作成したSambaユーザでログインすると共有ディレクトリに接続できる。 Sambaユーザを追加する際は pdbedit -a usernameで行う。 余談 動画など容量が大きいファイルをSambaの外部共有ディレクトリへ突っ込んでおき、 さらにlinuxをdlnaサーバとすることで、動画をPS4などからみれるようにする。 DLNAサーバ構築_MediaTomb DLNAで配信したい際はブラウザ上からアクセスしたところで、Filesystemをクリックし、対象のディレクトリを選択し、右側の「+」をクリックすると DataBaseに追加される。 DataBaseに追加されているコンテンツがDLNAクライアント(PS4など)からみれるようになる。

20 Jul 2016

centos6にrpmforgeレポジトリを追加する

RPMforge レポジトリ追加 yumコマンドで簡単にソフトウェアをインストールするためにrpmforgeレポジトリを追加する wget ftp://195.220.108.108/linux/sourceforge/i/it/itmos/rely%20on%20cnz/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm rpm -ivh rpmforge-release-*.rpm yum -y update rpmforge-release rm -f rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

17 Jul 2016

gccを4.7以上のバージョンにあげる

ソースからインストールする際に、gccのバージョンが低いから上げてねと言われる。 でも、yum upgrade gccなどではあげれないっぽいので、devtoolsetというのを使って上げる。 必要なソフトをインストール Software Collections ツールをインストールする必要があるみたい。(よくわかってない・・) yum install scl-utils Devtoolset-2リポジトリ追加 Devtoolset-2 のリポジトリを追加して、そこから4.7以上のバージョンをインストールします。 cd /etc/yum.repos.d/ wget http://people.centos.org/tru/devtools-2/devtools-2.repo or wget...

16 Jul 2016

znc設定

znc導入ができたら、zncの設定を行う。 rootユーザだと怒れるため、znc用のユーザを用意しておく。 znc –makeconf で設定 初期設定はznc --makeconfと打つと対話形式で設定していき、終わったら自動的に設定ファイルを作成してくれる。 注意点としてznc用のユーザで実行すること。

15 Jul 2016

znc導入

IRCというチャットツールを使っています。 シンプルでとても使いやすいのですが、とても大きな欠点があります。 それは IRCを起動していないときに流れたログは見れない これを解決するために、zncというIRC Proxyを導入します。 詳しくはzncのwikiを見て下さい。 ソースファイルからzncをインストール yumなどでインストールできるようだけど、勉強のためにソースからインストールしてみる。 ソースファイルダウンロード cd /usr/local/src/ wget http://znc.in/releases/znc-1.6.3.tar.gz ソースファイル解凍 tar zxfv znc-1.6.3.tar.gz cd znc-1.6.3...

10 Jul 2016

Linuxでの日本語入力の文字化け対策

viなどで日本語を含むファイルを編集したり、日本語を書こうとすると、文字がウニウニと文字化けする。 原因として、環境変数が合っていないためで、環境変数を確認するprintenvコマンドで確認する。 $ printenv | grep LANG これで帰ってきた結果が、eucなりutf-8なり、希望する設定と違ったら、修正する必要があります。 言語関係の設定は /etc/sysconfig/i18n に書かれています。 このファイルを LANG=ja_JP.utf-8 LC_ALL=ja_JP.utf-8 と書き換えて、ログインし直せばOKです。

09 Jul 2016

GithubとJekyllでウェブサイトをはじめる 1

GitHubのアカウント持っていれば、GitHub Pagesという静的なウェブサイトのホスティングサービスが無料で利用できるのでやってみた。 このサイトもこれで動いている。 GitHub-Pagesのいいところ ・Webサーバを自分で運用しなくていい ・「username.github.io」のドメインが無料で利用できる ・シンプル GitHub-Pagesを始めるまでの大体の流れ GitHub Pages用のリポジトリの作成 ウェブページの作成 作成したリポジトリへプッシュ GitHub Pagesへアクセス めっちゃ簡単です。 詳しくは公式サイトを見てくっださい。 GitHub-Pages