アプリ開発・Linuxサーバ環境構築からSEOまで初心者向けのプログラミング技術を紹介しています。

CentOS8でMariaDBをインストールする

Category:

LAMP環境

2021年4月11日(日) 7:10 PM

CentOS8のソフトウェアのインストールはパッケージ管理ソフトウェアである「dnf」を使用して行います。MariaDBのインストールから初期設定の流れは次の通りになります。

1.利用可能パッケージの確認

dnf list mariadb-server

2.パッケージインストール。「完了しました」と表示されたら成功です。

dnf install mariadb-server

3.PHP用ソフトウェアを確認し、インストール。同じく、成功すると「完了しました」と表示されます。

dnf list php-mysqlnd
dnf install php-mysqlnd

4.MariaDBのバージョン確認

mysql --version

5.MariaDBの起動、状態確認。「active (running)」と表示されれば、起動しています。

systemctl start mariadb
systemctl status mariadb

6.自動起動するように設定。ステータス確認で「enabled」となっていれば、有効になっています。

systemctl enable mariadb
systemctl status mariadb

7.MariaDBを初期化します。rootユーザーのパスワード設定、匿名ユーザー削除・rootユーザーのリモートログインの無効化・テストデータベース削除・権限テーブル再読み込みを行います。

mysql_secure_installation
Enter current password for root(enter for none):

rootの初期パスワードは空なので、そのままEnterを押します。

Set root password?[Y/n]Y

Yを入力し、Enterを押した後、新しいパスワードを入力します。

Remove anonymous users?[Y/n]Y
Disallow root login remotely?[Y/n]Y
Remove test database and access to it?[Y/n]Y
Reload privilege tables now?[Y/n]Y

匿名ユーザーの削除、rootユーザーのリモートログイン許可、テストデータベースの削除、権限テーブルの再読み込みをY/nで選択し、「Cleaning up…」と表示されれば、初期化完了です。

Vimの基本操作とコマンド

Category:

LAMP環境

2021年3月29日(月) 10:17 PM

vimの使い方とテキスト編集時に使う基本コマンドを紹介します。文章の編集、コピー、貼り付け、削除、検索、保存などテキストを編集する為に、最低限必要なコマンドを紹介します。vimは普段メモ帳などを使用している人にとっては、とっつきにくいところもあるかと思います。しかし、コマンドに慣れてしまえば、編集や検索、置換を高速で行う事ができます。例えば、データのみのCSVファイルからDBに登録するためのSQL作成といった置換作業はvimなら一瞬で作る事が可能です。また、Linuxを扱う上ではvim、emacsのようなコマンドラインエディタの習得は必須です。

ファイル作成・Vim起動

touchコマンドでファイル作成し、vimコマンドでvimを起動します。

touch a.txt
vim a.txt

編集モード切り替え

vimはノーマルモード・入力モード・コマンドモード・ビジュアルモードがあり、それぞれで機能が異なります。

ノーマル esc
入力 a または i
コマンド :
ビジュアル v

ノーマルモード:起動直後のモードがノーマルモードです。その他のモードはノーマルモードを経由して、変更することができる。

入力モード:文字を編集する際に、使用するモードです。aまたはiを入力すると、下部に「– 挿入 –」を文字が表示され、メモ帳と同じ感覚で編集する事ができます。aはカーソルの左に、iはカーソルの右に文字を追加します

コマンドモード:ファイル保存やvim終了、文字検索する際に使用します。

ビジュアルモード:範囲選択や選択した範囲のコピー、削除などが行えます。

vimを終了する

ノーマルモード以外の場合はescキーを押して、コマンドモードに切り替えられるようにし、以下のコマンドを実行します。

:w!ファイルを上書きする。
:q!ファイルを保存せず、終了する。
:wq!ファイルを上書きして、終了する。
:w!b.txtファイル名(b.txt)を付けて、保存する。

基本コマンド

ノーマルモードでカーソルを移動する際に使用します。入力モードで矢印キーを使って、移動するように簡単で速く移動できます。また、行を保存、削除、貼り付けするコマンドも紹介します。

0行頭に移動する
$行末に移動する
ggファイルの1行目に移動する
Gファイルの最終行に移動する
yyカーソル行をヤンク(コピー)する
ddカーソル行をデリート(切り取り)する
pカーソル行をプット(貼り付け)する

検索と置換

ノーマルモードの状態で、以下のコマンドを入力すると検索を行うことができます。置換に関してはコマンドモードで%sコマンドを使用します。

/hoge「hoge」という文字を下方向に検索します
?hoge「hoge」という文字を上方向に検索します
n次の検索結果に移動する
N前の検索結果に移動する
:%s/hoge/fuga/g「hoge」という文字を「fuga」に置換します。

WordPressのサイトヘルスステータスエラーを修正する その2

Category:

Web開発

2021年3月15日(月) 10:04 AM

ヘルスステータス画面で「サイトでHTTPSを使用していません」とエラーが出た場合は、通信が暗号化されておらず、SSL化対応を行う必要があります。SSL対応していないと検索順位が下がり、SEO対策が不利になります。

SSL化手順は以下の通りです

1.ApacheのSSLモジュール追加

yumコマンドでインストール後、Apacheを再起動すれば、追加できます。追加されているか確認したい場合は「httpd -M」コマンドで「ssl_module (shared)」が表示されていれば、追加できています。

yum install mod_ssl
systemctl restart httpd
httpd -M

2.ファイアウォール設定

https通信用の443番ポートを開放します。確認は「firewall-cmd –list-all」コマンドを使い、「services:」に httpsが追加されていることを確認します。

sudo firewall-cmd --add-service=https --zone=public --permanent
sudo systemctl restart firewalld
firewall-cmd --list-all

3.Let’s Encryptインストール

無料でSSL証明書が発行できるLet’s Encryptをyumコマンドでインストールし、各種設定を行います。

yum install certbot python2-certbot-apache
certbot --apache -d example.com

example.comは各自のドメイン名になります。3つ質問が出てくるので、回答を入力します。

Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): (メールアドレスを入力する)

(A)gree/(C)ancel:A (規約に同意します)

(Y)es/(N)o: Y (メールアドレスを公開する。したくない場合はNに。)

SSL証明書設定時のエラー
以下のエラーが出た場合はhttpd.confを編集し、バーチャルホストの設定を追加する必要があります。
Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.

バーチャルホスト設定

sudo vim /etc/httpd/conf/httpd.conf
NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin root@example.com
DocumentRoot /var/www/wordpress
ServerName example.com
</VirtualHost>
sudo systemctl restart httpd

最後にサーバ再起動すると、SSL証明書が反映されます。

4.SSL化確認

SSL証明書発行後、自身のサイトのアドレスバー横の鍵マークをクリックします。Google Chromeの場合、「この接続は保護されています」と表示されれば、SSL化対応されています。また「証明書(有効)」のボタンを押すと、証明書の有効期限など詳細情報を見る事ができます。

5.証明書を更新

証明書は3ヶ月で有効期限が切れるので、定期的に更新する必要があります。有効期限30日前から次の更新ができるようになります。また、登録したメールアドレスにも10日前に通知がきます。更新は簡単で「certbot renew」コマンドで実行できます。更新する前に「–dry-run」で試しておくと良いでしょう。

certbot renew --dry-run
certbot renew

クーロン設定をしておく事で、有効期限を気にせずに更新ができます。午前3時に更新コマンドを呼ぶようにする設定はこちらです。

sudo crontab -e
0 3 *  *  * root /usr/bin/certbot renew
sudo service crond restart

おまけ

クーロン設定の確認とクーロン実行ログの確認のコマンドはこちらのコマンドで確認できます。

sudo crontab -l
sudo vi /var/log/cron

WordPressのサイトヘルスステータスエラーを修正する その1

Category:

Web開発

2021年3月7日(日) 7:13 PM

WordPressでは「ダッシュボード」→「サイトヘルス画面」のリンクからサイトの問題が確認できます。致命的な問題、おすすめの改善が表示されていますが、致命的な問題についてはサイト運営やSEOに影響があるため、必ず直す必要があります。

このサイトでもいくつかエラーが出ていたので、修正方法を紹介したいと思います。

エラー1:1つ以上の必須モジュールが存在しません。

  • オプションのモジュール dom がインストールされていないか、無効化されています。
  • オプションのモジュール imagick がインストールされていないか、無効化されています。
  • オプションのモジュール zip がインストールされていないか、無効化されています。
  • 必須モジュール gd がインストールされていないか、無効化されています。

このようなエラーが出ているので、yumコマンドで必要なPHPモジュールをインストールするようにしました。最後にサービスを再起動して、反映するのを忘れず行います。

$ sudo yum install -y php php-dom
$ sudo yum install -y php php-imagick
$ sudo yum install -y php php-gd
$ sudo yum install -y php php-zip
$ sudo yum install -y php php-mysql
$ sudo systemctl restart httpd.service

エラー2:サイト訪問者へエラー表示を行う設定になっています

Debugモードがオンになっているため、エラー情報が丸見えになっている状態です。設定ファイルを変更すると修正できます。

vim /var/www/wordpress/wp-config.php

wp-config.phpのDebugモードをtrueからfalseに変更します。

define( 'WP_DEBUG', false );

HDデータを完全削除するおすすめの方法

Category:

LAMP環境 雑記

2021年2月28日(日) 1:10 PM

ハードディスクのデータを完全に削除するおすすめの方法を紹介します。

結論から言うと

有償のHDデータ削除ソフトを購入する

が一番コストパフォーマンスが良いと思います。

先日、家に眠っていたPCを3台廃棄しましたが、その際にデータ削除を行いました。ノートPC2台(WindowsXP, Windows7)、デスクトップPC1台(Windows10)のデータ消去をしてみて、この結論に至りました。HDデータ削除は大きく分けて3つ方法があります。

  1. 1:削除ソフトを使う
  2. 2:物理破壊
  3. 3:業者に依頼する

まず、1について、無償ソフトも公開されていますが、信頼性が低く、削除時間も非常に長くなるため、おすすめではないです。最後まで問題なく終わればいいですが、途中でエラーで止まった場合などは最悪です。一方で、有償ソフトは3500円ほどで販売されており、一度購入しておけば、何度でも使えるので便利です。私は近くの家電量販店で「HD革命 Eraser ver.7」というソフトを購入し、ノートPC2台のデータ消去をしました。BIOS起動までできれば、削除できるので、WindowsXPやWindows7の古いOSでも問題なく動きました。それぞれ、容量が1TBくらいだったのですが、10時間くらいかかりました。試行回数が設定できるのですが、10時間/回なので、設定する場合は注意です。無償ソフトはもっと時間がかかるらしいです。

2は、一見お金がかからず、良さげなのですが、これが落とし穴で、HDを破壊するの、すごく大変です。デストトップPCで使用していたハードディスク2個を物理破壊しようとしたのですが、途中で断念し、結局業者に依頼して破壊してもらいました。PCのセマフォエラーで、削除ソフトが使えなかったため、物理破壊を試みたのですが、

  • 「トルクスネジ」という特殊ネジが使用されているので、蓋が開かない
  • ・プラッター(HDの円盤部分)が硬いので、トンカチで叩いても、壊れない

問題にぶち当たり、自力での破壊を諦めてしまいました。ハードディスクはトルクネジという星型の穴が空いているため、それに対応したドライバーが必要になります。ホームセンターで1500円くらいで売られていますが、安物だとネジが硬く外しにくくなっており、下手に開けようと繰り返していると穴が潰れて、さらに開きにくい状態になってしまいます。ネジは10箇所くらい止められており、シールが貼られた下にも隠れてネジが止められていたりもします。

なんとか蓋を開けることができ、いざデータが入っている円盤部分をトンカチで殴ってみたのですが、これが硬くて、全然割れません。力一杯叩いても、ヒビが入るのみで割れる気配がありません。最近のプラッターはアルミで作られていて、簡単に割れないようになっているようです。ペンチで折ることは出来るみたいですが、破片が飛び散るので、怪我に注意しないとないです。

3.の業者に依頼して、データ破壊をしてもらうことになったのですが、私はビックカメラのHD破壊サービスを申し込んで、破壊してもらうことにしました。ビッグカメラのサービスカウンターに行けば、対応してくれます。価格は1020円/個で、プラッター部分に4つほど穴を開けてくれます。これでデータが読めなくなるみたいです。PCサポートのコーナーに並ばないと行けないので、土日だと結構並ぶと思いますが、手軽に壊せます。他の業者としては、区や市の指定のPC廃棄業者がデータ削除を代行してくれます。価格は3000円/個、国や行政のデータ削除と同じ方法で、削除証明書を発行してくれます。重要なデータの消去を依頼するときはこのサービスを使うのも手かもしれません。

このようにデータを完全削除するには、手間がかかります。ゴミ箱のデータ削除やフォーマットするだけでは、根本データが消えたことにはなりません。こういった理由から、お金を渋らず、効率的にするのがおすすめです。有償ソフトでデータ削除、ダメなら業者に依頼が1番良いというのが、私の個人的な見解です。

  • 広告

* RSS FEED