カテゴリー「Linux」の10件の記事

2020年10月23日 (金)

【Raspberry Pi】WordpressのMySQLからMariaDBへの移行方法

前回の記事で、WordpressをMySQLでRaspberry Pi 4のサーバー構築しましたが、現在はMySQLよりもMariaDBが主流の様ですので、今回、MariaDBへ移行しました。その移行方法について備忘録として残します。

今回の作業環境、移行元、移行先の情報は以下の通り。

<作業環境>

マシン Raspberry Pi 4 2GB
OS Ubuntu server 20.04.1 LTS (GNU/Linux 5.4.0-1021-raspi)
移行元DB mysql Ver 8.0.21-0ubuntu0.20.04.4 for Linux on aarch64 ((Ubuntu))
移行先DB mariadb Ver 15.1 Distrib 10.5.6-MariaDB, for debian-linux-gnu (aarch64) using readline 5.2

続きを読む "【Raspberry Pi】WordpressのMySQLからMariaDBへの移行方法" »

2020年10月22日 (木)

【LINUX】Sambaによるファイルサーバ構築

前回のVirtualBoxの仮想マシン(Ubuntu server 20.04.1 LTS)にてBtrfsにてRAID1化を構築し、問題無いことを確認したので、同じ手順でRaspberry Pi 4 にてRAID1化を行いました。
次はSambaによるファイルサーバー構築を行ったので、備忘録として、ここに記します。
(既にVirtualBoxでも問題無いことを確認済)

<作業環境>

マシン Raspberry Pi 4 2GB
OS Ubuntu server 20.04.1 LTS (GNU/Linux 5.4.0-1021-raspi)
共有対象ファイルシステム btrfs RAID1 ( /dev/sda1 & sdb1 --> /mnt/disk1 )



 

続きを読む "【LINUX】Sambaによるファイルサーバ構築" »

2020年10月18日 (日)

【LINUX】ファイルシステム”btrfs”によるRAID1化(ミラーリング)<障害時の復旧手順>

前回の記事では、btrfsによるRAID1化の手順を書きましたが、障害発生時のディスク復旧(交換)手順を確認しましたので、備忘録として残します。

前回は、下記のデバイス構成で、ミラーリングを設定しました。

  • ディスク(ファイルシステム)1:/dev/sdb1
  • ディスク(ファイルシステム)2:/dev/sdc1
    ※上記二つをbtrfsのファイルシステムとして作成。
  • マウントポイント:/mnt/disk1
    ※上記マウントポイントをRAIDの対象に設定。


今回は、この”/dev/sdc1”が故障したと想定した場合の対応手順をいつものVirtualBoxで検証してみました。

  • 新ディスク:/dev/sdd
  • 故障ディスク:/dev/sdc
  • /mnt/disk1内のデータ内容:
    epson-inkjet-printer-escpr2_1.1.19-1lsb3.2_amd64.deb
    ubuntu-20.04.1-desktop-amd64.iso

(1)/dev/sdcを /mnt/disk1から削除します。

$ sudo btrfs device remove /dev/sdc1 /mnt/disk1
ERROR: error removing device '/dev/sdc1': unable to go below two devices on raid1
→一定の要件を満たさないとエラーが発生するようです。Manのドキュメントによると、ProfileをConvertする必要があるとか。

(2)DataのプロファイルをRAID解除するため、下記のコマンドを実行します。

$ sudo btrfs balance start -mconvert=dup -dconvert=single /mnt/disk1
Done, had to relocate 5 out of 5 chunks

下記コマンドで確認すると、Singleに変更されています。
$ sudo btrfs filesystem usage /mnt/disk1

Data,single: Size:2.96GiB, Used:2.60GiB (87.70%)
(省略)
Metadata,DUP: Size:256.00MiB, Used:2.78MiB (1.09%)
(省略)
System,DUP: Size:32.00MiB, Used:16.00KiB (0.05%)

(3)再度、下記コマンドを実行します(/dev/sdcを /mnt/disk1から削除)。

$ sudo btrfs device remove /dev/sdc1 /mnt/disk1
→「btrfs filesystem usage /mnt/disk1」で確認すると、デバイスが「/dev/sdb1」のみになっていることを確認できます。


(4)fdiskで新ディスク(/dev/sdd)の新しいパーティション(/dev/sdd1)を作成し、btrfsでフォーマットして、下記のDevice addコマンドを実行します。

$ sudo btrfs device add -f /dev/sdd1 /mnt/disk1

(5)「btrfs balance start」コマンドで、RAID1化します。

$ sudo btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt/disk1
Done, had to relocate 6 out of 6 chunks

(6)「btrfs filesystem usage /mnt/disk1」コマンドで確認します。
下記の通り、RAID1化が復活しました。データも削除されずに残っていました。

$ sudo btrfs filesystem usage /mnt/disk1
(略)

Data,RAID1: Size:3.00GiB, Used:2.60GiB (86.57%)
/dev/sdb1 3.00GiB
/dev/sdd1 3.00GiB
(略)

以上です。
これで、何とかRAID1で障害が発生しても対処できそうな気がします・・^^;)

2020年10月15日 (木)

【LINUX】ファイルシステム”btrfs”によるRAID1化(ミラーリング)

現在、Raspberry Pi 4で宅内Webサーバー兼ストレージサーバーを構築中で、色々やりたいことが増えてしまい、ストレージサーバーにするなら、RAID1で運用したい、と思い、今回、ソフトウエアRAID化を実施するため、事前検証してみました。

【Raspberry Piで、やりたいこと】

  1. Webサーバ(h2o+Wordpress)構築→済
  2. MySQLからMariaDB移行
  3. ストレージ(2台)増設、RAID1化
  4. ストレージサーバー構築
  5. Wordpressカレントディレクトリ移動

今回は、上記の3番目のRAID化について、ファイルシステムであるbtrfsによるRAID化を検証したいと思います。

BtrfsとはB-tree file systemの略で、Linux向けの新しいファイルシステムだそうです。耐障害性に優れていて、先進的な機能が取り込まれているとか。現在も開発中だそうです。複数の物理ボリューム(物理ディスク)をひとまとめのファイルシステムにできたり、ボリュームの下にサブボリュームを作れたり、と色々機能はあるみたいですが、その中で、RAID化ができる、ということで、それを実装しようと思いました。

ただ、本番で、いきなり実施するのは無謀で、どんな方法でRAID化すれば良いのか、障害が発生した時、どういう対応を取れば良いのか分かりませんでしたので、今回はいつものVirtualBoxを使って、手順を確認してみました。

続きを読む "【LINUX】ファイルシステム”btrfs”によるRAID1化(ミラーリング)" »

2020年10月12日 (月)

【LINUX】Wordpressコンテンツのディレクトリを移動する方法 in VirtualBox(Ubuntu server 20)

前回、宅内専用として、Webサーバー(wordpress+H2O)を立ち上げましたが、後々、Raspberry Pi 4にHDD2台(Raid 1)を追加、共有サーバにしつつ、そこのディスクにコンテンツを移動したいと考えています。ネットで検索するも、レンタルサーバーを例にしたものばかりで、自宅内構築サーバについては、探し出せませんでした。
そこで、仮想マシン(Virtualbox)を使い、どのような手順で移動すれば良いか確認してみました。他にもやり方があるかもしれませんが。。

現在の環境は以下の通り。

[環境(テスト環境)]
機種:VirtualBox 6.1 for Windows10
ゲストOS:Ubuntu Server 20.04,メモリー2GB,CPU 1コア
Wordpressカレントディレクトリ:/var/www/wordpress (html上のディレクトリは、http://localhost/blog)
WebサーバーローカルIPアドレス:192.168.1.12
Webサーバー種類:h2o

2_000_virtualbox

続きを読む "【LINUX】Wordpressコンテンツのディレクトリを移動する方法 in VirtualBox(Ubuntu server 20)" »

【Raspberry Pi】Raspberry Pi 4でWebサーバー(h2o+Wordpress)を構築してみた(内容更新)

(2020/10/12更新)作業内容に間違いがあったため、内容を一部更新します。

----------------------------------------------

以前、超小型PCボードのRaspberry Pi 4 2GBモデルを購入しましたが、使い道について迷って、色々試すも失敗していました。
そこで、まだ運用するか分からないのですが、まずは宅内専用としてWebサーバ(ブログサイト)の構築にトライしました。

雑誌やインターネットで調べた結果、下記のステップで作業、設定すれば、動作することが分かりましたので、私の備忘録として、記録しておこうと思います。

だいたいのステップは下記の通りです。
(前提条件:OSはUbuntu server 20.04をインストールしており、Step5以外は全てCUI(コマンド)での作業です。)

  1. Wordpress、MySQL、Phpをインストール
  2. Webサーバーのh2oをインストール、設定
  3. 最新版wordpressのダウンロード
  4. MySQLデータベース設定
  5. WebブラウザによるWordpressのインストール設定作業

Wordpress_top

続きを読む "【Raspberry Pi】Raspberry Pi 4でWebサーバー(h2o+Wordpress)を構築してみた(内容更新)" »

2020年10月 4日 (日)

【Raspberry Pi Zero】宅内専用 DNSサーバー(BIND9)構築

前回は、Pi 4で、Wordpressを使用してのWebサーバーを構築しました。

ただし、以下の問題点がありましたので、自宅内のDNSサーバーとしてPi Zero (1core 512MB版)にBIND9を構築しました。


外部から自宅内のWebサーバー(例:http://www.AAAA.com)にアクセスしようとすると、プロバイダ提供ルーター(192.168.1.1)がポートフォワーディング設定により、自宅内サーバー(192.168.1.200)へアクセスすることができますが、自宅内のパソコン(192.168.1.0ネットワーク)から上記Webサーバーへアクセス使用とすると、失敗してしまいます。

なお、今回の目的は、あくまで静的DNSサーバーで、DDNS(動的DNS)には対応させていません(今のところ、知識的な問題で、できない、というほうが正しいか・・)。

 

続きを読む "【Raspberry Pi Zero】宅内専用 DNSサーバー(BIND9)構築" »

2020年9月26日 (土)

【LINUX】CUI環境時のログインシェルで文字化けしてしまう問題の解決方法

(LINUXを操作していく中の改善方法について、自分のための備忘録として、記載しております。大部分は他でも検索ヒットするはずです。)

下記の通り、SSH接続での端末画面では日本語は文字化けしないのですが、CUI環境では文字化けする現象を確認しました。

Screen

これは、CUI環境の時は、日本語の対応ができないようで、CUI環境の時だけ、LANGとLANGUAGEの環境変数を英語にするようにしました。

~/.bashrcに下記のcase文を記載します。

------記載内容------------------------

case $TERM in
      linux) LANGUAGE=en:en
               LANG=C ;;
           *) LANGUAGE=ja:en
               LANG=ja_JP.UTF-8 ;;
esac

------終わり--------------------------

設定反映のため、下記コマンドを実行
$ source ~/.bashrc

確認のため、同じコマンドを打ってみました。
下記の通り、文字化けはしなくなりました。

Screen2

 

2020年9月24日 (木)

【LINUX】サポートしていないリポジトリ追加した後、そのリポジトリを削除する方法

※LINUX操作ですぐに忘れてしまうため、私自身の備忘録として記載しています。

Rapberry Pi4 2GBにvirtualboxをインストールしようとして、下記の通り、リポジトリの追加をしましたが、「arm64アーキテクチャが対応していない」ということで、エラーが起きてしまった。

(リポジトリー追加)
sudo apt-add-repository --remove "deb https://download.virtualbox.org/virtualbox/debian eoan contrib"

(エラー内容)
N: リポジトリ 'https://download.virtualbox.org/virtualbox/debian eoan InRelease' がアーキテクチャ 'arm64' をサポートしないため設定ファイル 'contrib/binary-arm64/Packages' の取得をスキップ

その後、sudo apt updateをする度に、同様のエラーが起きるため、下記コマンドで、/etc/apt/sources.listからリポジトリを削除した。

(リポジトリー削除)
sudo apt-add-repository --remove "deb https://download.virtualbox.org/virtualbox/debian eoan contrib"

結果、以後、update実施してもエラーが出なくなった。

【Raspberry Pi】Joomla!の記事投稿サイト構築のトライ(失敗...)

最近、Raspberry Pi4 2GBモデルを購入し、使い方は何かと模索していました。
とりあえず、公式サポートしているUbuntu server 20.04をインストール。

その後、記事投稿サイトを簡単に立ち上げることができるということで、Raspberry Piでやろうとしました。

設定については、日経LINUXの雑誌に記載されていたので、その方法を下記の通り実行。
結論としては、「この小型PCのCPUのアーキテクチャ(ARM64)がサポートされていない」ということで、やむなく、断念しました。
(裏技でできるのかもしれませんが、今の私のLINUXの知識では限界)

<使用条件>
端末:Raspberry Pi4 2GB
OS: Ubuntu server 20.04

<設定内容>
(1)docker-compseをインストール
$ sudo apt install docker-compose

(2)Joomla及びmySQL用のフォルダ作成
$ sudo mkdir -p /opt/joomla/html /opt/mysql

(3)/opt/joomla/に設定ファイルを下記の通り作成
$ sudo vim /opt/joomla/docker-compose.yml

-------docker-compose.ymlの内容--------
services:
  joomla:
    image: joomla
    restart: always
    links:
         - joomladb:mysql
   ports:
         - 8080:80
   volumes:
         - "/opt/joomla/html:/var/www/html"
   environment:
        JOOMLA_DB_HOST: joomladb
        JOOMLA_DB_PASSWORD: <パスワード>

  joomladb:
    image: mysql:5.6
    restart: always
    volumes:
        - "/opt/mysql:/var/lib/mysql"
    environment:
       MYSQL_ROOT_PASSWORD: <パスワード>
------ここまで---------

(4)Joomla!の実行
ディレクトリ移動
$ cd /opt/joomla
docker-compose実行
$ sudo docker-compose up -d

下記エラーが発生。arm64アーキテクチャでは実行できない事が判明。。
Creating network "joomla_default" with the default driver
Pulling joomladb (mysql:5.6)...
5.6: Pulling from library/mysql
ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

2024年3月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31