ownCloudで社内バックアップサーバーを運用していましたが、 owncloudの日本サイトがNextCloudへと切り替えていましたので弊社でも切り替えを行てみました。
とりあえずインストールの手順をコマンドベースで記録しておきます。
今回はRaspberry Piが入手が非常に困難ですので、社内のPCにRaspberryPi DesktopOSをインストールします。
システム用HDDに500GB、データ領域に2TBのHDDをマウントします。
OSのダウンロードとインストールは以下のサイトより
https://www.raspberrypi.com/software/raspberry-pi-desktop/
2022-07-01-raspios-bullseye-i386.iso
Raspberry Pi Imagerでカスタムイメージを選択しUSBメモリに書き込みます。
500GHDD 1パーテーションでとりあえずインストールします。
インストール後、location、ユーザー追加、Wifi(skip)、update(skip)、restart SSHを有効にします。
sudo raspi-config Interface SSH server enabled update VSFTPD インストール rootログインで設定
apt-get install vsftpd
ftpusers #rootをコメント
vsftpd.conf
write_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
service vsftpd restart
apache2関係インストール
apt install apache2 libapache2-mod-php php-mysql php-zip php-xml php-mbstring php-gd php-curl
curl、gnupg関係
apt install curl gnupg
php関係 7.4
apt install php-imagick php-pear php7.4 php7.4-cli php7.4-cgi php7.4-common php7.4-curl php7.4-gd php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline php7.4-xml php7.4-xmlrpc php7.4-zip libapache2-mod-php7.4
apt install php7.4-bz2 php7.4-intl
Mysql関係
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
apt update
apt list | grep -i mariadb-server
mariadb-serverの公開バージョンを問合せ 今回は10.5をインストール
apt install mariadb-server-10.5
mysql_secure_installation
Switch to unix_socket authentication [Y/n] n
… skipping.
You already have your root account protected, so you can safely answer ‘n’.
Change the root password? [Y/n] n
… skipping.
Remove anonymous users? [Y/n] y
… Success!
Disallow root login remotely? [Y/n] n
… skipping.
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
… Success!
Cleaning up…
All done! If you’ve completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
最初にデータベースを作成 ユーザー、パスワードは変更
# mysql -u root
MariaDB [(none)]> CREATE DATABASE nextcloud;
Query OK, 1 row affected (0.001 sec)
MariaDB [(none)]> CREATE USER nextcloud@localhost IDENTIFIED BY ‘nextcloud’;
Query OK, 0 rows affected (0.040 sec)
MariaDB [(none)]> GRANT ALL ON nextcloud.* TO nextcloud@localhost WITH GRANT OPTION;
Query OK, 0 rows affected (0.010 sec)
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.002 sec)
MariaDB [(none)]> exit
Bye
apt-get install phpmyadmin
rootログインのために
MariaDB [(none)]> SELECT user,password,plugin, authentication_string from mysql.user;
+——-+———-+———————–+———————–+
| User | Password | plugin | authentication_string |
+——-+———-+———————–+———————–+
| root | invalid | mysql_native_password | invalid |
| mysql | invalid | mysql_native_password | invalid |
| | | | |
| | | | |
+——-+———-+———————–+———————–+
4 rows in set (0.002 sec)
MariaDB [(none)]> set password for root@localhost=password(”); パスワードを設定
Query OK, 0 rows affected (0.002 sec)
MariaDB [(none)]> SELECT user,password,plugin, authentication_string from mysql.user;
+——-+———-+———————–+———————–+
| User | Password | plugin | authentication_string |
+——-+———-+———————–+———————–+
| root | | mysql_native_password | |
| mysql | invalid | mysql_native_password | invalid |
| | | | |
| | | | |
+——-+———-+———————–+———————–+
4 rows in set (0.002 sec)
MariaDB [(none)]> flush privileges;
データー用HDD 2TBを /varへマウントします。
現在のマウント状況を確認します。
blkid
/dev/sda1: UUID=”c3f33014-dfdc-4ee4-84e1-fb63fe2f45fe” BLOCK_SIZE=”4096″ TYPE=”ext4″ PARTUUID=”f2065558-01″
/dev/sdb1: UUID=”D233-B079″ BLOCK_SIZE=”512″ TYPE=”vfat” PARTUUID=”2af2bfa0-726d-46a2-ba25-dc6c752ee740″
/dev/sdb2: UUID=”1dba139e-c090-4e72-a2a2-ea4f9c44a13d” BLOCK_SIZE=”4096″ TYPE=”ext4″ PARTUUID=”39b3663d-d48d-4bea-a222-4a1b70d7bde3″
/dev/sdb3: UUID=”e9ca57bf-71a4-4c74-bf68-6fd7184c8770″ TYPE=”swap” PARTUUID=”8ef58648-555f-4770-b219-ae80cc6e3d37″
/dev/sdd1: BLOCK_SIZE=”2048″ UUID=”2022-07-01-10-08-34-00″ LABEL=”Debian RPD M-A 1″ TYPE=”iso9660″ PTUUID=”30c19d12″ PTTYPE=”dos” PARTUUID=”30c19d12-01″
/dev/sdd2: SEC_TYPE=”msdos” UUID=”751C-A2F8″ BLOCK_SIZE=”512″ TYPE=”vfat” PARTUUID=”30c19d12-02″
fdisk -l
ディスク /dev/sda: 1.82 TiB, 2000398934016 バイト, 3907029168 セクタ
ディスク型式: Hitachi HDS72302
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xf2065558
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/sda1 2048 3907029167 3907027120 1.8T 83 Linux
ディスク /dev/sdb: 465.76 GiB, 500107862016 バイト, 976773168 セクタ
ディスク型式: WDC WD5000AAKX-7
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: gpt
ディスク識別子: 58F0C524-4A14-44D9-9A50-6F5777000EE4
デバイス 開始位置 終了位置 セクタ サイズ タイプ
/dev/sdb1 2048 1050623 1048576 512M EFI システム
/dev/sdb2 1050624 974772223 973721600 464.3G Linux ファイルシステム
/dev/sdb3 974772224 976771071 1998848 976M Linux スワップ
ディスク /dev/sdd: 7.21 GiB, 7743995904 バイト, 15124992 セクタ
ディスク型式: USB DISK
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x30c19d12
デバイス 起動 開始位置 終了位置 セクタ サイズ Id タイプ
/dev/sdd1 * 0 7045119 7045120 3.4G 0 空
/dev/sdd2 5688 14743 9056 4.4M ef EFI (FAT-12/16/32)
/dev/sdaをfdisk フォーマット、 マウント
fdisk /dev/sda
nコマンド
wコマンド
2TBHDDを/varにマウントするために新たな/newvarを作成
mkdir /newvar
2TBHDD を /newvarへマウント
mount -t ext4 /dev/sda1 /newvar
/varから/newvarへコピー
cp -rpf /var/* /newvar
sync;sync
/varをOLDへ変更
mv /var /var_old
マウント用の/varを作成 sda1をマウント
root@raspberry:~# mkdir /var
root@raspberry:~# mkdir /var
root@raspberry:~# mount -t ext4 /dev/sda1 /var
マウントを確認
root@raspberry:~# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
udev 3.8G 0 3.8G 0% /dev
tmpfs 784M 1.3M 782M 1% /run
/dev/sdb2 456G 7.7G 426G 2% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/sdb1 511M 5.4M 506M 2% /boot/efi
tmpfs 784M 32K 784M 1% /run/user/1000
/dev/sdd1 3.4G 3.4G 0 100% /media/pi/Debian RPD M-A 1
/dev/sda1 1.8T 1.4G 1.7T 1% /var
/etc/fstabにdev/sda1を/varにマウントするよう記述
fstab
/dev/sda1 /var ext4 defaults 0 2
以上で再起動
reboot
ディス状況を確認
blkid
webminもインストールしておくと便利です。
deb http://download.webmin.com/download/repository sarge contrib
update
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
apt-get update
apt-get -y install webmin
いよいよnextcloudのインストール
wget https://download.nextcloud.com/server/releases/nextcloud-22.2.10.tar.bz2
tar -xf nextcloud-22.2.10.tar.bz2
chown www-data:www-data config apps
chown www-data data
nextcloud へアクセス
インストール ユーザー作成、データーベースサーバー設定でインストール
インストール後
サーバーアドレス/nextcloud/でログイン
設定・概要で エラー 警告などを確認し 修正します。
php.ini の修正
memory_limit = 512M
output_buffering = off
.httaccess
SetEnvIf Referer “^XXX.XXX.XXX.XXX サーバーアドレス” ref_ok
order deny,allow
deny from all
allow from env=ref_ok
クライアントPCに Nextcloud Desktopをインストール