うさみみ蓮子...φ(:3」∠)_#深夜の真剣お絵描き60分一本勝負 pic.twitter.com/KqeApKd4Lw
— りょうご (@Ryogo_PL) 2016年4月29日
今朝のD.backupのスピカは珍しく清書したけれど、なんだかシックリこなかったので清書をやめた いつもの描き方Ver...φ(:3」∠)_https://t.co/QCH2TZx0YQ pic.twitter.com/2qlCOADRGk
— りょうご (@Ryogo_PL) 2016年4月29日
私の素材を使った旨、宣伝してくれたそうなので、反撃,,,・ω・)φ”https://t.co/VrTxKqHaC5 pic.twitter.com/1Sn7z6ZARv
— りょうご (@Ryogo_PL) 2016年4月28日
とりあえずイラストを描いてみた次第です。
またインストールする機会があったのでやり方をメモしておく。
■インストール
# yum -y install net-snmp net-snmp-utils mrtg
必要なものを一気にインストール
■snmpd.confの編集
/etc/snmp/snmpd.conf
編集すべきファイルは上記の通り。
編集方法は割愛。
■snmpdの起動
# systemctl start snmpd
# systemctl enable snmpd
いつもの起動と自動起動登録。
■mrtg.confの作成と編集
# cfgmaker --ifref=descr --ifdesc=descr public@localhost > /etc/mrtg/mrtg.cfg
mrtg.confを作って作成。
/etc/mrtg/mrtg.cfg
上記を編集。
# env LANG=C mrtg /etc/mrtg/mrtg.cfg
上記を三回実行。
下記のようにfor文を使うこともできるらしい。
# for (( i=1 ; i <= 3 ; i++ )); do env LANG=C mrtg /etc/mrtg/mrtg.cfg; done
# indexmaker /etc/mrtg/mrtg.cfg > /var/www/mrtg/index.html
続いて上記コマンドでindexを作成できる。
■自動更新用にcronを追加
/etc/cron.d
上記パスに下記のような命令を書いて保存。
*/5 * * * * root LANG=C mrtg /etc/mrtg/mrtg.cfg
■MRTGへのアクセス
必要に応じてアクセス制限を解放するには下記ファイルを編集。
/etc/httpd/conf.d/mrtg.conf
# systemctl restart httpd
編集したら再起動。
http://(サーバのIP)/mrtg/
その後、上記URLにアクセスで確認可能。
■他のサーバの情報を引っ張る
# yum -y install net-snmp net-snmp-utils
引っ張りたいサーバ上にsnmpdを入れる。
/etc/snmp/snmpd.conf
上記ファイルを編集
# systemctl start snmpd
# systemctl enable snmpd
起動と自動起動登録。
# firewall-cmd --zone=public --add-port=161/udp --permanent
# systemctl restart firewalld
ファイアウォールの編集。
大本のサーバに戻って
/etc/httpd/conf.d/mrtg.conf
上記を編集。
# env LANG=C mrtg /etc/mrtg/mrtg.cfg
編集し終えたらコマンドで再生成。
今回は、Linuxを2台用意して一方に拡張ドライブを接続、
そして、その両方から拡張ドライブをマウントするということをやってみたかったのでやってみることに。
バージョンはこんな感じ。
# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
■デバイス名を確認
# fdisk -l
これで該当のデバイス名を調べる。
■パーティションを作る
# fdisk /dev/vdb
fdiskに調べたデバイス名を入れてコマンドを打っていく。
Command: n ←パーティションを作成コマンド
Select (default p): p
Partition number (1-4, default 1): 1
この後、セクターの量を指定。
Command: w ←今回の情報を書き込んで終了するコマンド
※ファイルフォーマットによっては領域のシステムIDの変更とかも必要。
■ファイルシステムを作る
# fdisk -l
該当のパーティションを調べる。
# mkfs -t ext4 /dev/vdb1
ファイルシステムを作る。
■メインサーバのマウント
# mkdir /mnt/cd1/
ディレクトリを作る。
# mount -t ext4 -o defaults /dev/vdb1 /mnt/cd1/
マウントする。
■メインサーバ起動時に自動マウントさせる
/etc/fstab を開く。
/dev/vdb1 /mnt/cd1/ ext4 defaults 1 2
こんな感じの行を追加する。
■メインサーバのNFS設定
# yum -y install nfs-utils
NFS関連のインストール。
/etc/exports
上記ファイルを開き共有したいディレクトリとIPを指定
/mnt/cd1/ xxx.xxx.x.x(ro)
# systemctl start rpcbind nfs-server
# systemctl enable rpcbind nfs-server
いつもの起動と自動起動。
# firewall-cmd --add-service=nfs
# firewall-cmd --add-service=nfs --permanent
ファイアウォールの編集。
■サブサーバのNFSインストール
# yum -y install nfs-utils
NFS関連のインストール。
# systemctl start rpcbind
# systemctl enable rpcbind
いつもの起動と自動起動。
■サブサーバのマウント
# mkdir /mnt/cd1/
ディレクトリを作る。
# mount -t nfs -o soft (サーバIP):/mnt/cd1 /mnt/cd1
マウントする。
/etc/fstab を開く。
# (サーバIP):/mnt/cd1 /mnt/cd1 nfs ro,soft 0 0
こんな感じの行を追加する。
以上で/mnt/cd1を共有できた。
なお、NFSクライアントからも書き込み可能にしたい場合はroをrwにすればOK。
少々勝手がちがかったので今後もやるときの為のメモを残しておきたいと思う。
最終目標は、phpMyAdminを使用できるようにするところまで。
今回は、仮想サーバを借りて行うことにした。
OSは初めからインストールされているようだ。
バージョンはこんな感じ。
# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
■Apache2をインストール
# yum -y install httpd
■Apache2の設定編集
編集するべきファイルは下記の通り。
/etc/httpd/conf/httpd.conf
やりたい事に合わせていろいろ書き換えていく。
内容は割愛。
■Apache2の起動
# systemctl start httpd
CentOSのバージョンが7の場合はこれでOK。
■Apache2の自動起動
# systemctl enable httpd
このコマンドでサーバ起動時、自動的にhttpdが起動するようになる。
■ファイアウォールの設定
上記のApacheの設定を行っても何故かアクセスできなかったのでファイアウォールを疑う。
しかし、/etc/sysconfigの中を見てもiptablesが無い。
調べてみると、どうやらCentOS7からファイアウォールの仕様が少し変わったらしい。
# systemctl stop firewalld
まずは、上記コマンドでファイアウォールを止めて
きちんと所期ページがブラウザで見れることを確認。
# systemctl start firewalld
きちんと見れたので、ファイアウォールを再度起動。
httpの設定をしてあげることに。
# firewall-cmd --add-service=http --zone=public
これがサービス追加命令。
# firewall-cmd --add-service=http --zone=public --permanent
これが恒久的にサービス追加する命令。
とりあえず両方実行。
こちらだけ叩いてリブートするという方法もよく使われる。
これでファイアウォールが起動しててもちゃんとホームページが見れるようになった。
■PHPをインストール
# yum install -y php php-mbstring
■PHPの設定編集
編集するべきファイルは下記の通り。
/etc/httpd/conf.d/php.conf
/etc/php.ini
■MySQLをインストール
さっそくインストールと行きたいところだが、
どうやらCentOS7の場合、それには問題があるようだ。
というのもCentOS7にはmariaDBが初めからついてくるらしい。
これがMySqlと競合することもあるそうだ。
その為、まずはmariaDBを削除しなければならない。
# yum remove -y mariadb-libs
念のためディレクトリごと削除したほうがいいようだ。
# rm -rf /var/lib/mysql/
ディレクトリの名前がmysqlなのは、mariaDBがそもそもMySQLの派生システムの為。
今後、MySQLではなくMariaDBが主流となるならば、
どこかでMariaDBの開発も経験しておいたほうがよさそうである。
# yum localinstall -y http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
引き続きMySQLのリポジトリ追加。
rpmは、rpm と yum localinstall の二つが使えるようだが、この場は後者を使ってみた。
# yum -y install mysql-community-server
そのままインストールを行ってこれで実装完了。
■MySQLの起動と自動起動
# systemctl start mysqld.service
# systemctl enable mysqld.service
Apache2の時と同じ感じでOK。
■DBMSドライバをインストール
# yum -y install php-mysqlnd
このコマンドだけでphp-pdoもインストールされたのでわざわざ先に別途入れる必要はない様子。
■phpMyAdminをインストール
# yum -y install epel-release
yumリポジトリにEPELをインストール。
情報によると、phpMyAdminの安定版はリポジトリの特定の箇所にあり、
yum-plugin-prioritiesで優先度を操作する方が良いとの情報もあるが、
前回、phpMyAdminのインストールに失敗した記憶があるので
まずはなるべく簡単に実装して見ようと思う。
# yum -y install phpMyAdmin
無作為にインストール。
ここで何故か失敗することがあったが、時間をおいて試したところ問題なく進行した。
ミラーサーバが安定しなかったりとかなのかもしれない。
■phpMyAdmin.confの編集
/etc/httpd/conf.d/phpMyAdmin.conf
編集すべきファイルは上記の通り。
初期はローカルホストしか対象に含まれていないので、外部からはアクセスできない。
ところが、全ての外部からアクセスできるとセキュリティ上危ないので、
httpsを使ったり、固定IPならIP制限をした方が無難。
# systemctl restart httpd
/etc/httpd/conf.d/phpMyAdmin.conf の読み込みと Alias を認識させる為にApache2を再起動。
■MySQLのパスワードをつける。
yumでインストールする場合は、rootのパスワードがないらしいのでつける。
# mysql -u root
とりあえず、そのままログイン。
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
ところが、パスワードが設定されてるからパスワードを入力してほしいと言われる。
どこかで仮のパスワードが作られたようだ。
/var/log/mysqld.log を開いて A temporary passwordと書かれた行に載っているパスワードを調べる。
# mysql -u root -p
上記のようにパスワードを入力できるようにしてアクセス。
せっかくなので今回はこのままこのパスワードを使うことにする。
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
つもりであったが、そういうことはできないらしい。
SET PASSWORD FOR root@localhost='';
パスワードを変更したいが、昔より強固になっていて、
8文字以上で英大文字小文字数字記号の4種類を含む必要があるそうな。
この機能を切る方法もあったり、
また最初に生成された所期パスワードを打ち込むことも一応可能らしい。
■おわりに
ここまでやって、無事 phpMyAdminアクセスできるようになった。
途中、phpMyAdminに「MySQLサーバにログインできません」と言われ、
socketの設定をしたりもしたけれど、
この原因はMySQLのパスワードの再設定をしなければいけないということを見落としていただけで、
socket周りの設定を初期に戻してもアクセスできたので、
今回の場合は不要なことが分かった。
□余談1:mysqld.logやタイムゾーン
ところで、MySQLのパスワードを調べる為にmysqld.logを開いたが、時間がUTCだった。
そこで、サーバの時間が間違っているのだろうと思って直そうと思うも、
システムクロック・ハードウェアクロックともにJSTだった。
不思議に思って、MySQLの'%time_zone'を調べるもJST。
まさかありえないとは思いはすれど、念のためphp.iniのtimezoneを見てもやっぱり怪しい表記は無い。
実はこれ、MySQL5.7移行で実装された'%log_timestamps'というものの仕業らしい。
名前の通り、ログだけの仕様らしいので運用上は問題ない。
ただ、mysqldのログを解析する際、これを忘れていると間違った解析になるかもしれないので注意したい。
萃香...φ(:3」∠)_#深夜の真剣お絵描き60分一本勝負 pic.twitter.com/oXatlI3Mmy
— りょうご (@Ryogo_PL) 2016年4月24日
一度描いて見たかった、たもりセンセー風(@tama__sachi)パルスィ,,・ω・)φ” pic.twitter.com/yGsTWFMv7F
— りょうご (@Ryogo_PL) 2016年4月23日
こいし...φ(:3」∠)_#深夜の真剣お絵描き60分一本勝負 pic.twitter.com/bRqvk8QW63
— りょうご (@Ryogo_PL) 2016年4月23日
久しぶりにワンドロしたら安定しなかった
久しぶりにお仕事がすべて待ちの状態になってφ( ゚ω゚ )!
— りょうご (@Ryogo_PL) 2016年4月21日
φ≡φ( ゚ω゚ )!!!#深夜の狐娘一本勝負 pic.twitter.com/bT7S5AAFwh
凄く自由を感じたので
この機会に何かしようって落書きしたら
凄く楽しかった
一段落ついたので、猫に会いに行ったら1匹が3匹に、3匹が5匹になって、5匹が6匹になった。 猫の集会かな…?
— りょうご (@Ryogo_PL) 2016年4月20日
どうしよう、この子、縄張りとか完全に無視してついてくる…。家の近くだと周りの猫に囲まれてあたふたするし。なんとかこの子のテリトリー周辺で巻かないと… pic.twitter.com/po2GOXKkqP
— りょうご (@Ryogo_PL) 2016年4月20日
白狐,,´・ω・)φ”#深夜の狐娘一本勝負 pic.twitter.com/0ctEzLkUSC
— りょうご (@Ryogo_PL) 2016年4月10日
絵描きさん達の流行を追っかけてみようと思ってエレン先生落書き pic.twitter.com/MbFuINDwdQ
— りょうご (@Ryogo_PL) 2016年4月6日
銀狐娘も清書しときました,,・ω・)φ”#狐娘 pic.twitter.com/x9vIpSSZXV
— りょうご (@Ryogo_PL) 2016年4月2日
はたて...φ(:3」∠)_#深夜の真剣お絵描き60分一本勝負 pic.twitter.com/5G5AdaTNR4
— りょうご (@Ryogo_PL) 2016年4月2日
確かに(笑) #D言語くん版深夜の60秒一本勝負 https://t.co/1veio9j2Lt pic.twitter.com/nfjNehkJEq
— りょうご (@Ryogo_PL) 2016年4月3日
ちなみに、さっきの5分ドローイング幽々子をワンドロにすると、こう。 pic.twitter.com/gMJnRRveTb
— りょうご (@Ryogo_PL) 2016年4月2日
初5分ドロ...φ(:3」∠)_
— りょうご (@Ryogo_PL) 2016年4月1日
まずは「急ぎ気味でワンドロをやってるつもりで描いて、5分でできたところまで」という作戦でやってみたけれど、やはりそれだと無理かぁ#東方版真剣お絵描き5分一本勝負 pic.twitter.com/UbMLKOXTTm