ノートPCを天文趣味PCにします。インストールをメモします。
OSは、星の数ほどあるディストリビューションの一つ、GNU/Linux, Ubuntu
機器制御、撮影には INDI Library + PHD2
画像処理には Siril & Python
Ubuntu 24 インストールメディアを用意
Ubuntu インストールイメージをダウンロード
https://jp.ubuntu.com/download
「ブータブルUSBの作成」Ubuntu
https://rufus.ie/ja/ Windows
インストール後の設定
こちらを参照しています。有り難うございます。
- ssh server を追加します。
$ sudo apt install openssh-server
- ホームディレクトリを英語に変更します。
LANG=C xdg-user-dirs-gtk-update
若しくは
LANG=C LC_ALL=C xdg-user-dirs-gtk-update
- Caps Lock と Ctrl を入れ替えます。GUIでの操作では、Tweaksを使います。
$ sudo apt install gnome-tweaks
"キーボード" → "追加のレイアウトオプション" → "Ctrl posision" → "CtrlとCaps Lock を入れ替える"
- バックアップから”.ファイル”をダウンロード。
Sirilは初期状態に戻したいので、Siril関連は外します。
変更や改変したスクリプトは、別に読み込ませます。
- リモートデスクトップのパスワード設定。リモートデスクトップパスワードを固定にします。
リモートデスクトップを有効にし、パスワードを入れ、設定画面を閉じます。
“Seahorse”にある、”パスワード”→”ログイン”→”GNOME Remote Desktop RDP credentials”項目があることを確認し、これを削除します。
“Seahorse”にある”+”アイコンで、新規に”パスワードキーリングを追加”を行います。
keyring-RDP
“enterキー”で空パスワードを入れます。→ 暗号化していないパスワードを保存
“Seahorse”に先ほど追加したパスワード項目があります。
これを右クリックで”デフォルト”指定し、設定画面を閉じます。
リモートデスクトップ設定を開き、使いたいパスワードを入力し、設定画面を閉じます。
“Seahorse”にある、”パスワード”→”ログイン”→ 先ほど追加した項目に”GNOME Remote Desktop RDP credentials”項目があることを確認します。
“Seahorse”にある、”パスワード”→”ログイン”を右クリックし、デフォルトに指定します。
天体画像処理 Siril, Python
Ubuntu には最初からPythonがインストールされており、そのまま利用可能です。
しかし、このPython は、 OS がさまざまな機能を提供するために使用しています。ユーザが勝手にパッケージを導入したりすると、 OS の安定性を損なうことも考えられますので、別途、あたらしいPythonをインストールするのが一般的です。
https://www.python.jp/install/ubuntu/index.html
先ずは、Python環境を整えます。
Python 3.13.7 を /usr/local/ へ入れます。
Sirilをソースから構築し、Python3.13の仮想環境を作り、Siril Pythonスクリプトを動かします。


参照URL
https://qiita.com/keith_campbell/items/e7dc4afc44527b802f6e
https://qiita.com/AzukiImo/items/5c6dd7e870c9965e41f3
https://zenn.dev/eng_ryosan/articles/a635346a3123d3
Siril Appimage を動かすには、Ubuntu 24では、”libfuse2t64″ が必要です。
ソースからSiril を構築して、β版も使えます。
Sirilを起動すると、Python仮想環境が作られます。
Last available version: 1.4.0-beta3
log: Preparing python virtual environment: /home/USRNAME/.local/share/siril/venv.
log: Checking the python module is up-to-date...
log: Installing / updating python module in the background. This may take a few seconds...
log: Repository cloned successfully!
Processing /home/USERNAME/.local/share/siril/.python_module
log: Repository cloned successfully!
Siril Python スクリプトを導入すると、
/home/USERNAME/.local/share/siril-scripts/preprocessing/
などに置かれます。
Cosmic Clarity Suite Siril Pythonスクリプトを English 環境で動かす。
Franklin Marekさんに問い合わせすると、Linux では nividia のみ使えるそうです。
IntelやAMD製GPUユニットが使えるように、リクエストしてみようかな。
Teensyduino シリアル通信 : Althiba 3 接続
AlThiba (マチナカリモート天文台製のコントローラー)は、”TeenAstro Mount”で動かします。
Teen Astro Mount INDI Driver”は、”indi-bin”に含まれています。
Althiba3 をUSB接続し、logを見ると、cdc acm ドライバで動かすようです。
さらに、ModemManager がデバイスを制御しようとしている。
kernel: usb 1-1: new high-speed USB device number 10 using xhci_hcd
kernel: usb 1-1: config 1 interface 1 altsetting 0 bulk endpoint 0x3 has invalid maxpacket 64
kernel: usb 1-1: config 1 interface 1 altsetting 0 bulk endpoint 0x84 has invalid maxpacket 64
kernel: usb 1-1: New USB device found, idVendor=16c0, idProduct=0483, bcdDevice= 2.79
kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
kernel: usb 1-1: Product: USB Serial
kernel: usb 1-1: Manufacturer: Teensyduino
kernel: usb 1-1: SerialNumber: 7939030
kernel: cdc_acm 1-1:1.0: ttyACM0: USB ACM device
mtp-probe: checking bus 1, device 10: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-1"
mtp-probe: bus: 1, device: 10 was not an MTP device
snapd[984]: hotplug.go:206: hotplug device add event ignored, enable experimental.hotplug
mtp-probe: checking bus 1, device 10: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-1"
mtp-probe: bus: 1, device: 10 was not an MTP device
ModemManager[1143]: <msg> [base-manager] couldn't check support for device '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-1': not supported by any plugin
ModemManagerを止める?
systemctl stop ModemManager
それよりもModemManagerを削除しよう。モデムは使わない。。。
$ sudo apt remove modemmanager
/dev以下を見ると、
$ ls -l /dev/tty
crw-rw---- 1 root dialout 166, 0 9月 13 20:51 ttyACM0
dialoutグループで制御が出来るので、ユーザーアカウントをdialoutグループに登録します。
$ sudo adduser ${USER} dialout
もしくは、
S sudo usermod -a -G dialout ${USER}
KStarsを動かし、”/dev/ttyUSB0が無いよ” とエラーが表示されたならば、
USB接続を確認した、/dev/ttyACM0 にシンボリックシンクを作ります。
Ubuntu 24.04では必要ありませんでした。
$ sudo ln -s /dev/ttyACM0 /dev/ttyUSB0
天文機器制御 INDI library
INDI library を使って、Althiba3, ZWO Camera, ZWO EAF を制御し、銀河などを撮像します。
INDI Library 安定版を入れます。
sudo apt-add-repository ppa:mutlaqja/ppa
sudo apt update
sudo apt install libindi1 indi-bin kstars-bleeding gsc
ZWOカメラを使うので、
sudo apt install indi-asi
libindi1, indi-bin は基本ドライバー、Ekos と GSCを入れます。
GSCは、”Hubble Space Telescope, Guide Catalog”
恒星のカタログです。恒星の位置とその等級が含まれています。
ハッブル宇宙望遠鏡の運用するために、16等級よりも明るい恒星が、約1900万の恒星が登録されています。
https://heasarc.gsfc.nasa.gov/w3browse/all/gsc.html
このカタログとINDI libraryシミュレーションを用いてい、星空が無くても動作確認ができます。
別のパッケージを上書きしようとするパッケージに関するエラーが発生した場合は、
sudo apt-get -o Dpkg::Options::="--force-overwrite" -f install
Kstars
Kstarsを動かします。
Ekos へ機器のプロファイルと、その構成をトレインとして登録します。
File Settings
撮影画像ディレクトリ、及び名前形式を決めます。
%f (ファイル名): 拡張子を除いた .esq ファイルの名前
%D (日付/時刻): ファイルが保存された時刻と日付
%T (タイプ): フレームのタイプ (例: “Light”、”Dark “など)
%e (露出): 露光時間(秒)
%F (フィルター): 使用するフィルター名
%t (ターゲット): ターゲット名
%s (シーケンス): イメージ シーケンスの識別子。* は使用される桁数 (1 ~ 9) です。 このタグは必須であり、形式の最後の要素である必要があります。
サフィックス: ファイル名にシーケンス番号を追加するために使用される桁数
例えば次の様に指定します。
Format: /%T/%t/%t_%T_%F_%e_%D
撮影画像名は、指定されたディレクトリに、次のディレクトリ名、ファイル名になります。
/Light/M1/M1_Light_HEUIB-II_180_secs_2025-09-15T23-51-16_001.fits
Ekos Auto Focus 設定
EAFの働きが今ひとつなので、ドキュメントを見てみよう。
動作原理
Linear 1 Pass:
EkosがVカーブを確立し、データに曲線を当てはめて焦点解を求めます。その後、計算された最小値へ移動します
アルゴリズムはフォーカサーのバックラッシュを補正します。
アルゴリズムは高速で、1回のパスで最適焦点位置を特定します。
フォーカサーが再現性のある動作(位置Xへの移動指令時に常に同一位置に移動する)を示す場合、このアルゴリズムが最適です。
Linear:
線形アルゴリズムでは、Ekosは開始点から外側へ移動し、最適焦点を経由して規則的なデータポイントを採取しながら内側へ移動し、さらに内側へ進みV字曲線を描画します。その後、データポイントに二次曲線をフィットさせ、最適焦点を算出します。
次に再び最適焦点点を越えて外側へ移動し、ステップサイズを半分にして再度内側へ移動し、第二パスを実行します。第1パスで描かれた曲線に沿い、最小HFR値を検出します。HFR測定値のランダム性を考慮し、許容誤差を用いて最適焦点の決定を支援します。
フォーカサーのバックラッシュを補正します。
アルゴリズムは低速で、最適焦点の特定に2パスを要します。
アルゴリズムは1回目で曲線フィッティングを用いて最適焦点位置を特定し、
2回目では許容誤差を用いて、このHFR値に可能な限り接近して停止を試みます。
フォーカサーの動作が不安定な場合(例:フォーカス位置への移動させた時に、実際の位置に変動がある場合)、このアルゴリズムは変動に対する許容値を内蔵しているため最適です。
- Donut Buster (食べられるドーナツを防ぐではなく、環状の星像を防ぎます)
- Time Dilation x: オートフォーカス実行時にデータポイントごとに露出時間を変える。
焦点が合ってないので、HFRは大きくなり、ピーク強度は低い。
数値を増やして、背景に埋もれることを防げる。 - Outlier Rejection: V曲線の数値から外れた場合を除く。数値を高くしないのが良い?
- Time Dilation x: オートフォーカス実行時にデータポイントごとに露出時間を変える。
- Scan for Start Position
EAFの働きが今ひとつなので、ソースを見てみよう。
https://github.com/KDE/kstars
https://github.com/KDE/kstars/tree/master/kstars/ekos/focus
kstars/ekos/focus
Focus Process
PHD2: Ubuntu 24.04 + PHD2 v2.6.13
Download -> Building PHD2 on Linux
こちらを参考にソースから構築します。
依存関係のパッケージをインストール
INDI Libraryも必要になります。
sudo apt install build-essential git cmake pkg-config libwxgtk3.2-dev \
wx-common wx3.2-i18n libindi-dev libnova-dev gettext zlib1g-dev libx11-dev \
libcurl4-gnutls-dev libopencv-dev libeigen3-dev libgtest-dev
PHD2 v2.6.13 のソースを入手し make していきます。
git clone https://github.com/OpenPHDGuiding/phd2.git
cd phd2
mkdir -p tmp
cd tmp
cmake ..
make
sudo make install
PHD2 v2.6.13 では、
「ファイルが無いよ」とエラーが出たので、適宜、必要なディレクトリにコピーしました。
does not exist
Visualization.htm
Trouble_shooting.htm
Glossary.html
Tutorials.htm
cmake, make, sudo make install 構築しインストールしたプログラム等を削除するには、
インストールしたファイルリストがビルドディレクトリに “install_manifest.txt” に書き出されます。
$ xargs sudo rm -rf < install_manifest.txt
PHD2 v2.6.12 の場合も同じように構築、インストールし、ログを保存しました。
古いソースは、手元に残すべきと思いました。
余談
何度もインストールを行うのでメモを残します。システムを壊して、再インストール時にも役立ちます。もちろん”.ファイル”を含めたバックアップは必要です。
天体撮影に使うノートPCは、いい加減なジャンクPCを使ってます。元がジャンクなので壊れそう。そろそろ買い換えと思い、量販店へ行って実機を見回すと、スリムなノートPCが並んでいる。
裏側のネジ数本外し、メモリやSSDを簡単に交換出来なさそう。交換に困る前に、現行物を入手しようか。。。いや、、もぅ困っています。
ホームディレクトリを残して、再インストール
「推奨するプロプライエタリなソフトウェア」では、”グラフィックス”、”wi-Fi”、”メディアフォーマット”を選択しない。
選択すると以前のファイルシステムをフォーマットせずにインストール選択へ進めないようです。
ブートローダーをインストールするデバイスを、先ずは選択する。
自動で /boot/efi が設定されるようです。ところが、現状でこちらのPC環境では、インストールが完了しません。
Intel CPU内蔵 GPUドライバ
UbuntuでもGPUを使って、天文画像処理を行いたい。
ローカルパッケージインデックスを更新し、ソフトウェアリポジトリを管理するためのパッケージをインストールします。
sudo apt-get update
sudo apt-get install -y software-properties-common
intel-graphics PPAを追加
sudo add-apt-repository -y ppa:kobuk-team/intel-graphics
コンピューティング関連のパッケージをインストールします。
sudo apt-get install -y libze-intel-gpu1 libze1 intel-metrics-discovery intel-opencl-icd clinfo intel-gsc
メディア関連のパッケージをインストールしてください。
sudo apt-get install -y intel-media-va-driver-non-free libmfx-gen1 libvpl2 libvpl-tools libva-glx2 va-driver-all vainfo
PyTorchを使用する場合は、追加でlibze-devとintel-oclocをインストールしてください
sudo apt-get install -y libze-dev intel-ocloc
ハードウェアレイトレーシングのサポートを有効にしたい場合は、追加で libze-intel-gpu-raytracing をインストール
sudo apt-get install -y libze-intel-gpu-raytracing
カーネルと計算ドライバーがインストールされ正常に動作していることを確認するには、clinfo を実行してください
clinfo | grep "Device Name"
Intelグラフィックス製品のデバイス名が表示されているはずです。表示されない場合は、/dev/dri/renderD* へのアクセス権限があることを確認してください。通常、これにはユーザーが render グループに属している必要があります:
$ ls -l /dev/dri/render*
crw-rw----+ 1 root render 226, 128 10月 1 14:52 /dev/dri/renderD128
sudo gpasswd -a ${USER} render
newgrp render






コメント