RaSCSIの設定方法を絶対忘れるのでスクリプトにしてみた
最近RaSCSI使い始めましたが、とてもいいですね。
何がいいって、今までXM6TypeGと実機のHDDイメージの同期が面倒だったのですが、
例えばXM6TypeGで更新したHDDイメージをWindowsからRaSCSI側へSCPで簡単に同期できるので、
実機とエミュレータの管理がとても楽になりました。
ただ導入には多少Linuxの知識とコマンド操作が必要なので、それが苦にならなければ
是非お勧めしたいアイテムです。
自分も導入の手順や設定の変更の方法をすぐ忘れてしまうので、導入手順をスクリプトに
まとめてみました。
手順の作成にはIwasaki氏のサイトを参考にさせていただきました、感謝です!
尚、shの形式で作成してはいるものの、事前にraspi-configの設定や再起動が必要になるので、
そのままshに流しても動作しません。
"sudo su -"したあと、このスクリプトの各コマンドをコピペしてあげる必要があります。
(自分用に作成したので、ご了承ください。)
#!/bin/sh # RasPiにRasSCSIを導入するスクリプト # # 以下の環境を想定 # RaspberryPi3B # OSバージョン: buster (Linux version 4.19.75-v7+ ) # RaSCSI: 1.45(fullspec版) # # 注意) # 途中でRasPiの再起動等が必要になるので、そのままshに流しても動作しません。 # "sudo su -"したあと、このスクリプトの各コマンドをコピペしてあげる必要があります。 # # 事前にIwasaki氏のサイトを参考に以下を作業しておくこと # https://www.mushagaeshi.com/2018/02/24/howto-setup-rascsi-scsi-device-emulator/ # # $ sudo raspi-config # 青い画面のメニューが出てくるので、そこから下記の設定を行う。 # # ホスト名の変更 # 2 Network Options > N1 Host Name # Wi-Fiの設定(pi3は2.4Ghzのみ。pi3+から5Ghz対応) # 2 Network Options > N2 Wi-Fi # Select the country: JP # SSID: <WIFI_SSID> # Password: <WIFI_PASSWORD> # # 地域・エンコーディング設定 # 4 Localization Options > I1 Change Locale # →ja_JP.UTF-8 # →Default: C.UTF-8 (ja_JPを標準にするとメッセージが化けるので) # # タイムゾーン設定 # 4 Localization Options > I2 Change Timezone # →Asia/Tokyo # # キーボードレイアウト # 4 Localization Options > I3 Change Keyboard Layout # →使っているもので。USキーボードなら変更不要。 # # 国設定 # 4 Localization Options > I4 Change Wi-Fi Country # →JP # # 更新 # 8 Update # →Wi-Fi設定が合っていれば勝手にダウンロードを開始するので待つ。 # もしエラーが出たら上記のWi-Fi設定が間違っているので要再確認 # # メインメニューからfinishでraspi-config終了後、以下を実行し再起動する。 # sudo apt-get update # sudo apt-get -y upgrade # sudo reboot # 再起動後、ログインして sudo su - を実行してから以下作業 # RaSCSIのインストールアーカイブURL RASCSI_INSTALLER=http://retropc.net/gimons/rascsi/rascsi145.zip # RaSCSIのインストール先 RASCSI_PATH=/opt/rascsi # RaSCSIの動作タイプ aibom fullspec gamernium standard RASCSI_TYPE=fullspec # HDSファイル置き場所 HDS_PATH=/var/rascsi/hds # HDSファイル名 HDS_FILE=cf4g.hds # RaSCSIのIP HOST_IP=xx.xx.xx.xx # RaSCSIのGW GW_IP=xx.xx.xx.xx # RaSCSIが参照するDNS DNS_SERVERS="xx.xx.xx.xx xx.xx.xx.xx" RASCSI_INSTALLER_FILE=`basename $RASCSI_INSTALLER` # ヒストリの件数を10000とし、時刻も記録する。 cat <<EOF >> /etc/profile.d/history.sh export HISTSIZE=10000 export HISTTIMEFORMAT="%F %T " EOF # sshd起動 systemctl enable ssh systemctl start ssh # eth0のstatic IP設定 [ ! -f /etc/dhcpcd.conf ] && cp -p /etc/dhcpcd.conf /etc/dhcpcd.conf.org cat <<EOF >> /etc/dhcpcd.conf interface eth0 static ip_address=$HOST_IP/24 static routers=$GW_IP static domain_name_servers=$DNS_SERVERS EOF # NTPクライアント設定 [ ! -f /etc/systemd/timesyncd.conf.org ] && cp -p /etc/systemd/timesyncd.conf /etc/systemd/timesyncd.conf.org sed -e 's|#NTP=.*|NTP=ntp.jst.mfeed.ad.jp ntp.nict.jp|' /etc/systemd/timesyncd.conf.org -i timedatectl set-ntp true systemctl restart systemd-timesyncd # RaSCSIインストール mkdir -p $HDS_PATH chown root.pi $HDS_PATH chmod -R g+ws $HDS_PATH cd /tmp wget $RASCSI_INSTALLER cd `dirname $RASCSI_PATH` unzip /tmp/$RASCSI_INSTALLER_FILE # rascsi145.zipの拡張子を削除したディレクトリ名にシンボリックリンクを張る ln -s ${RASCSI_INSTALLER_FILE%.*} $RASCSI_PATH # 使っていないけどとりあえずhdsのリンクを作成しておく cd $RASCSI_PATH ln -s $HDS_PATH . # rascsi.tar.gzはそのままbinの下に解凍して使う cd $RASCSI_PATH/bin/raspberrypi tar zxvf rascsi.tar.gz # RaSCSI自動起動設定 cat <<EOF > /etc/systemd/system/rascsi.service [Unit] Description=RaSCSI After=syslog.target [Service] Type=simple WorkingDirectory=$RASCSI_PATH/bin/raspberrypi ExecStart=/usr/bin/sudo $RASCSI_TYPE/rascsi -ID0 $HDS_PATH/$HDS_FILE TimeoutStopSec=5 StandardOutput=null [Install] WantedBy = multi-user.target EOF systemctl daemon-reload systemctl enable rascsi systemctl start rascsi # 起動状況の確認 systemctl status rascsi