1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CentOS8からUbuntu20.04に移行した話 (初期設定や録画環境構築)

Last updated at Posted at 2021-05-04

前記事に書いたように、CentOS8 が晴れてEOLを迎えるためGWの有り余るヒマ時間貴重な休日を割いてUbuntuに移行した。二度とRHEL系は使わないからな!!バーカ!!
将来再度環境構築する際の自分用の備忘録として記載していく。

お品書き

  • Ubuntuのインストールから初期設定まで
  • 録画環境の構築(人様の記事を見ながら)

Ubuntuのインストール

Ubuntuのインストール後作業

サーバーの完全なシャットダウン・再起動

  • Ubuntuの再インストール後、 「完全に」 シャットダウンする。
  • sudo shutdownの後電源コードを物理的に抜き、5分放置、再度電源をつなげて起動。
  • この作業を行わなかったがためにチューナーがエラーを吐き、1日費やした。

IPアドレスの固定・DNS設定

  • ネットワーク内の別PCから操作するため。

  • IP固定は個人的にはルータ側でMACで指定するのが好み。

    /etc/netplan/99_config.yaml
    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0:
          dhcp4: false
          dhcp6: false
          addresses: [192.168.xxx.yyy/24]
          gateway4: 192.168.xxx.1
          nameservers:
            addresses: [192.168.xxx.1, 8.8.8.8, 8.8.4.4]
    
    sudo netplan apply
    
  • 参考: https://qiita.com/zen3/items/757f96cbe522a9ad397d

sshdの設定変更

firewall無効化

AppArmor無効化

rootのパスワード変更

  • Ubuntu初期インストールにおいてrootの初期パスはなし。
  • sudo passwd root

パッケージマネージャの更新

  • sudo apt update
  • sudo apt upgrade

PostfixからGmail経由でメールを送信する

ClamAVのインストール

  • セキュリティのため。毎日深夜に実行するよう設定

    # インストール
    sudo apt install clamav clamav-daemon
    
    # ログ関係でエラーが出るので以下を設定
    sudo rm /var/log/clamav/freshclam.log
    sudo touch /var/log/clamav/freshclam.log
    sudo chown clamav:clamav /var/log/clamav/freshclam.log
    
    # 設定ファイルの書き換え
    #   old: create 640 clamav adm
    #   new: create 640 clamav clamav
    sudo vi /etc/logrotate.d/clamav-freshclam
    
    # 定義更新
    sudo freshclam
    
    # サービス起動の確認
    sudo service clamav-freshclam status
    
    # 定期スキャンスクリプトの作成
    sudo vi /root/script/clam-full.sh
    sudo chmod +x /root/script/clam-full.sh
    sudo mkdir /root/virus
    
    # 定期スキャン設定
    sudo crontab -e
    # 0 2 * * * /root/script/clam-full.sh >> /var/log/clamav/clamav_scan.log
    
    /root/script/clam-full.sh
    #!/bin/sh
    echo =========================================
    date
    hostname
    clamscan / \
        --infected \
        --recursive \
        --log=/var/log/clamav/clamscan.log \
        --move=/root/virus \
        --exclude-dir=^/boot \
        --exclude-dir=^/sys \
        --exclude-dir=^/proc \
        --exclude-dir=^/dev \
        --exclude-dir=^/var/log/clamav/virus
    
    if [ $? = 0 ]; then
      echo "Virus not found."
    else
      echo "Virus found."
      cat /var/log/clamav/clamscan.log | mail -s "Server: Virus found" [RecievedErrorMail]@test.com
    fi
    
  • 参考: https://www.yokoweb.net/2017/04/15/ubuntu-server-clamav/

Timezoneの設定

ntpを日本のものに変更

  • これをやらないと録画冒頭が10sec程切れて泣きを見る。

    /etc/systemd/timesyncd.conf
    [Time]
    NTP=ntp.nict.jp
    FallbackNTP=ntp1.jst.mfeed.ad.jp ntp2.jst.mfeed.ad.jp ntp3.jst.mfeed.ad.jp
    
    systemctl restart systemd-timesyncd
    
  • 参考: https://qiita.com/tukiyo3/items/c847d443a6d977083de9

PowerTopで省電力化

ファン制御

mdadmで作成したRaid1ストレージの移行

  • [おま環]一度解除し、再度作成してresyncする必要があった??

    # 一度解除し、再度raid1で設定
    # 通常の環境ならこの作業は必要ないように思う。
    # どうも前環境の時点でデグレ運用していた模様。気づいていなかった…
    mdadm --misc --stop /dev/md0
    mdadm --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdb1 /dev/sdc1
    
    # 設定の保存とresyncしているかの確認
    mdadm --detail --scan > /etc/mdadm.conf
    cat /proc/mdstat
    
  • fstabに設定して起動時マウント可能にする

    • sudo blkidでuuidを確認
    # /etc/fstab
    UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /share auto defaults  0 0
    
  • 異常発生時にメール通知する

    /etc/mdadm/mdadm.conf
    ARRAY /dev/md0 metadata= ....
    # メール通知先を設定
    MAILADDR [RecievedErrorMail]@test.com
    
  • メールのテスト送信

    • mdadm --monitor --test --oneshot --scan

docker, docker-compose インストール

sambaでネットワークファイル共有(Docker, Docker-compose利用)

  • dockerで環境を汚さず共有。録画ファイル等を別PCで見るために利用。

    docker-compose.yml
    version: '2'
    
    services:
      samba:
        image: dperson/samba
        container_name: samba
        ports:
          - "139:139"
          - "445:445"
        volumes:
          - /path/to/share:/mnt/pub
        restart: unless-stopped
        command:
          "-s share;/mnt/pub;yes;no;no;samba;samba -u samba;<PASSWORD>"
    
      # ---Commandの説明---
      # 設定詳細は https://hub.docker.com/r/dperson/samba を確認
      # Windowsからの接続なのでパーミッションで悩まないAdminにする。
      # 共有用のディレクトリを用意し、Ubuntu上のシステムファイル等を共有しない。
      -s "<name;/path>[;browse;readonly;guest;users;admins;writelist;comment]"
      -u "<username;password>[;ID;group;GID]"
    
  • 参考

録画環境構築

前記事を記載した時点ではサーバーに直でインストールする方法の記事が多かったが、ここ1年でdockerで作成する方法が増えている。そもそもの本家MirakurunもDocker化しており、少し知識があれば誰でも手間なく録画サーバーを作成できるようになった。また、EPGStationもバージョンが上がりかなり使いやすくなっている。特に検索回りは楽になった。素晴らしい。
参考記事で丁寧に紹介されているため、参考記事を選定理由と共に述べるにとどめる。

  • こちらで紹介されている方法を使用した。
  • 選定理由
    • px4_drvでmirakurun 3.5を利用可能。
    • Dockerfileがあり最悪自分での修正が容易、ただしコンテナ作成に結構な時間がかかる。
    • 過去自分が利用していた方法に近い。
  • その他の方法
    • tv-recorder | https://github.com/collelog/tv-recorder
    • たぶんこれが一番楽だと思います。
    • mirakurun 3.5を試してみたかったので選定から外した。
      • 今回参考にした方法と組み合わせることで少量の改変でtv-recorderでも利用可能になりそう。
    • mirakcやハードウェアエンコが使えそうな雰囲気がある。
      • ラズパイ利用者やハードウェアエンコできる環境ならこちらの方がよい。
      • 自分の場合、厳選したものを録画しCMカットして別のつよつよPCでソフトエンコしてるのでハードエンコの恩恵が薄い。
      • 市販のTVレコーダーのようにとりあえず予約して見たら消すような使い方の人には重宝しそう。

あとがき

1年ちょっとでこれだけ快適に進化してるというのは驚いた。常に勉強することが一番の省力化なのだなと痛感するところです。
あと、スーパーカブの空気感が良い。みんなも録画しよう。

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?