Armadilloフォーラム

startxコマンドでエラー

manamana

2024年12月10日 18時50分

==========
製品型番:AGL3100
Debian/ABOSバージョン:
カーネルバージョン:4.9.133-at15 #2
3G/LTE モジュール情報 (Debianのみ):
その他:
==========

お世話になります。

armadilloにてstartxコマンドを実行しましたところ下記エラーとなりまして、対処方法を教えていただきたいのですが、

X.Org X Server 1.19.2
Release Date: 2017-03-02
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.19.0-13-armmp-lpae armv7l Debian
Current Operating System: Linux armadillo 4.9.133-at15 #2 SMP PREEMPT Mon Jun 29 11:20:10 JST 2020 armv7l
Kernel command line: console=ttymxc4,115200 root=/dev/mmcblk2p2 rootwait rw
Build Date: 09 December 2020 10:22:21AM
xorg-server 2:1.19.2-1+deb9u7 (https://www.debian.org/support)
Current version of pixman: 0.34.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Nov 4 02:17:48 2016
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE)
Fatal server error:
(EE) no screens found(EE)
(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE)
(EE) Server terminated with error (1). Closing log file.
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

メッセージはここまでです。

よろしくお願いいたします。

コメント

at_dominique.m…

2024年12月11日 12時59分

manamanaさん

お世話になっています、マルティネです。

> armadilloにてstartxコマンドを実行しましたところ下記エラーとなりまして、対処方法を教えていただきたいのですが、

エラーによりますと画面が見つかってないそうです:
> (EE) no screens found(EE)

Armadillo IoT G3L では標準でビデオ出力はできないと思いますが、どういう接続されてますでしょうか?

それか、selenium の件の引き続きで X サーバーが必要で「virtual server」を建てようとしている場合は startx ではなく xvfb で実行してみてください。

xvfb は、以下のリンクで debian のインストールと実行例が記載されています:
https://qiita.com/kt3k/items/cea3c6de3c2337004a84

よろしくお願いします。

> manamanaさん
>
> お世話になっています、マルティネです。
>
> > armadilloにてstartxコマンドを実行しましたところ下記エラーとなりまして、対処方法を教えていただきたいのですが、
>
> エラーによりますと画面が見つかってないそうです:
> > (EE) no screens found(EE)
>
> Armadillo IoT G3L では標準でビデオ出力はできないと思いますが、どういう接続されてますでしょうか?
>
> それか、selenium の件の引き続きで X サーバーが必要で「virtual server」を建てようとしている場合は startx ではなく xvfb で実行してみてください。
>
> xvfb は、以下のリンクで debian のインストールと実行例が記載されています:
> https://qiita.com/kt3k/items/cea3c6de3c2337004a84
>
> よろしくお願いします。

マルティネさん
お世話になっております。

回答ありがとうございます。
ご認識の通り、seleniumでスクレイピングするためのものでしてモニターには接続しておりません。
エラーの原因をX-windowが起動してないからだと想定し、ご質問しました。
Xvfbを起動してDISPLAY設定しましたが同様のエラーとなりましたので、原因は別にありそうです。
引き続き調査します。

> > manamanaさん
> >
> > お世話になっています、マルティネです。
> >
> > > armadilloにてstartxコマンドを実行しましたところ下記エラーとなりまして、対処方法を教えていただきたいのですが、
> >
> > エラーによりますと画面が見つかってないそうです:
> > > (EE) no screens found(EE)
> >
> > Armadillo IoT G3L では標準でビデオ出力はできないと思いますが、どういう接続されてますでしょうか?
> >
> > それか、selenium の件の引き続きで X サーバーが必要で「virtual server」を建てようとしている場合は startx ではなく xvfb で実行してみてください。
> >
> > xvfb は、以下のリンクで debian のインストールと実行例が記載されています:
> > https://qiita.com/kt3k/items/cea3c6de3c2337004a84
> >
> > よろしくお願いします。
>
> マルティネさん
> お世話になっております。
>
> 回答ありがとうございます。
> ご認識の通り、seleniumでスクレイピングするためのものでしてモニターには接続しておりません。
> エラーの原因をX-windowが起動してないからだと想定し、ご質問しました。
> Xvfbを起動してDISPLAY設定しましたが同様のエラーとなりましたので、原因は別にありそうです。
> 引き続き調査します。

マルティネさん
お世話になっております。

ブラウザ単体で起動できるか確認したのですが、エラーとなり終了してしまいました。

ブラウザバージョン:72.0.3626.122 (古いですが、apt installで可能なバージョンは72.0が最新でした。)
実行コマンド:chromium --window-size=1024,768 --window-pos=0,0 --no-sandbox

ログファイルを添付しますので、よろしくお願いいたします。

ファイル ファイルの説明
20241212log.txt chromiumコマンド実行時のログ出力になります

at_dominique.m…

2024年12月12日 17時44分

manamanaさん
マルティネです。

> ブラウザバージョン:72.0.3626.122 (古いですが、apt installで可能なバージョンは72.0が最新でした。)

ご利用の debian バージョンを確認させてください。
(stretch では 70.0, buster 90.0, bookworm 131.0 を apt で取得できるはずですので、上記のバージョンは意外でした)

セキュリティの面では正直なところ 90.0 でもしばらく更新されてないと思いますが、とりあえず buster の 90.0 では実行できましたね:

root@armadillo:~# xvfb-run bash
root@armadillo:~# echo $DISPLAY
:99
root@armadillo:~# chromium  --version
Chromium 90.0.4430.212 built on Debian 10.9, running on Debian 10.13
root@armadillo:~# chromium  --no-sandbox
[3820:3859:1212/174009.291887:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[3820:3859:1212/174009.292737:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[3820:3870:1212/174009.639415:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[3820:3870:1212/174009.640984:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[3820:3870:1212/174009.642470:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
[3820:3859:1212/174012.210625:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[3820:3859:1212/174012.210872:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[3856:3856:1212/174013.209585:ERROR:gpu_init.cc(426)] Passthrough is not supported, GL is desktop
[3856:3856:1212/174013.398982:ERROR:sandbox_linux.cc(374)] InitializeSandbox() called with multiple threads in process gpu-process.
<しばらく待ってもエラー出なかったのでここで ctrl-C で停止させました>

selenium のドキュメンテーションをみてみたら 75 以降ってかいてますので、このままのバージョンを直しても目的には利用できない可能性が高いと思いますので、まずは chromium の更新を行ってみてください。

よろしくお願いします

> manamanaさん
> マルティネです。
>
> > ブラウザバージョン:72.0.3626.122 (古いですが、apt installで可能なバージョンは72.0が最新でした。)
>
> ご利用の debian バージョンを確認させてください。
> (stretch では 70.0, buster 90.0, bookworm 131.0 を apt で取得できるはずですので、上記のバージョンは意外でした)
>
> セキュリティの面では正直なところ 90.0 でもしばらく更新されてないと思いますが、とりあえず buster の 90.0 では実行できましたね:
>

> root@armadillo:~# xvfb-run bash
> root@armadillo:~# echo $DISPLAY
> :99
> root@armadillo:~# chromium  --version
> Chromium 90.0.4430.212 built on Debian 10.9, running on Debian 10.13
> root@armadillo:~# chromium  --no-sandbox
> [3820:3859:1212/174009.291887:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
> [3820:3859:1212/174009.292737:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
> [3820:3870:1212/174009.639415:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
> [3820:3870:1212/174009.640984:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.UPower.GetDisplayDevice: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
> [3820:3870:1212/174009.642470:ERROR:object_proxy.cc(621)] Failed to call method: org.freedesktop.UPower.EnumerateDevices: object_path= /org/freedesktop/UPower: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.UPower was not provided by any .service files
> [3820:3859:1212/174012.210625:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
> [3820:3859:1212/174012.210872:ERROR:bus.cc(393)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
> [3856:3856:1212/174013.209585:ERROR:gpu_init.cc(426)] Passthrough is not supported, GL is desktop
> [3856:3856:1212/174013.398982:ERROR:sandbox_linux.cc(374)] InitializeSandbox() called with multiple threads in process gpu-process.
> <しばらく待ってもエラー出なかったのでここで ctrl-C で停止させました>
> 

>
> selenium のドキュメンテーションをみてみたら 75 以降ってかいてますので、このままのバージョンを直しても目的には利用できない可能性が高いと思いますので、まずは chromium の更新を行ってみてください。
>
> よろしくお願いします

マルティネさん
お世話になっております。

debianですがbuilt on Debian9.8 running on Debian9.13と表示されました。

seleniumですが、chromeのバージョンが古いのを見越して3.141.0を使っています。
(正しいバージョンかどうかはわかりませんが)

よろしくお願いいたします。

at_dominique.m…

2024年12月12日 18時42分

マルティネです。

> debianですがbuilt on Debian9.8 running on Debian9.13と表示されました。

stretch ですね…(72 は security のリポにありました)

申し訳ないですが、stretch は debian 側でも弊社でもサポート期限だいぶ越えてます:
https://wiki.debian.org/LTS/Stretch
https://armadillo.atmark-techno.com/faq/software-maintenance-policy-aio…
(一応弊社の分では重要なセキュリティアップデートと記載していますが、chromium までのセキュリティアップデートは行ってません)

freexian の extended LTS で取得したら 73 まで更新できますが、freexian も chromium のサポートを終了しました[1] ので、おすすめできません。
[1] https://salsa.debian.org/debian/debian-security-support/-/blob/stretch/…

大変でしょうけど debian を更新を考慮していただければ幸いです
どうしても debian のバージョンを維持したい場合は docker などで chromium だけを新しい環境に実行していただければ、どうにか実行できるようになると思いますが、docker も動く保証できませんので個人的には debian のアップデートを推奨しています。

よろしくお願いします

> マルティネです。
>
> > debianですがbuilt on Debian9.8 running on Debian9.13と表示されました。
>
> stretch ですね…(72 は security のリポにありました)
>
> 申し訳ないですが、stretch は debian 側でも弊社でもサポート期限だいぶ越えてます:
> https://wiki.debian.org/LTS/Stretch
> https://armadillo.atmark-techno.com/faq/software-maintenance-policy-aio…
> (一応弊社の分では重要なセキュリティアップデートと記載していますが、chromium までのセキュリティアップデートは行ってません)
>
> freexian の extended LTS で取得したら 73 まで更新できますが、freexian も chromium のサポートを終了しました[1] ので、おすすめできません。
> [1] https://salsa.debian.org/debian/debian-security-support/-/blob/stretch/…
>
> 大変でしょうけど debian を更新を考慮していただければ幸いです
> どうしても debian のバージョンを維持したい場合は docker などで chromium だけを新しい環境に実行していただければ、どうにか実行できるようになると思いますが、docker も動く保証できませんので個人的には debian のアップデートを推奨しています。
>
> よろしくお願いします

マルティネさん
ありがとうございます。

strechからbusterへのアップデート手順ですが、
/etc/apt/source.listのstrechをbusterに書き換えて以下コマンドを実行すればよろしいでしょうか

apt update
apt autoremove
apt clean
apt-get upgrade
apt full-upgrade

よろしくお願いいたします。

at_dominique.m…

2024年12月13日 10時35分

マルティネです。

アップデートしていただいてありがとうございます。

> strechからbusterへのアップデート手順ですが、
> /etc/apt/source.listのstrechをbusterに書き換えて以下コマンドを実行すればよろしいでしょうか
>
> apt update
> apt autoremove
> apt clean
> apt-get upgrade
> apt full-upgrade

基本的にはそういう流れになりますが、 source.list を更新した直後に通常の upgrade コマンドを実行しない方がいいです。
(upgrade と full upgrade の仕組みが違いますので、upgrade の影響で一時的に想定外の状態になってしまうからです)

以下の順番になります:

* source.list stretch のまま
* apt update && apt upgrade (stretch は変わってないので基本的に不要になりますが、upgrade は最新のバージョン以外非対応になっていますので念のための更新です)
* apt autoremove && apt clean (任意)
* source.list を buster に変更
* apt update
* apt full-upgrade
* reboot
* apt autoremove (任意、clean は不要と認識しています)

以上で更新が完了します。

お手数ですがよろしくお願いします

マルティネさん
貴重なアドバイスありがとうございます。

ひとつ心配なのがHDD空き容量なのですが、約1GBです。
スペースは足りているでしょうか

よろしくお願いいたします。

at_dominique.m…

2024年12月17日 11時37分

マルティネです。

> ひとつ心配なのがHDD空き容量なのですが、約1GBです。
> スペースは足りているでしょうか

そうですね、分割によっては足りないかもしれません。
「apt full-upgrade」コマンドを実行する際に apt が必要な容量を計算してエラーしてくれますので、その時点にエラーなかった場合はそのままアップグレードできます。
エラーした場合の対応はケースバイケースですが、アップデートを分割することはできませんので大きいパッケージを一時的に削除していただいて、full-upgrade を行ってから追加しなおす形になってしまいます。
(例えば、apt remove chromium -> apt autoremove -> apt full-upgrade しなおして、まだ不足でしたらまた別のパッケージを削除する形になります)

この手順に問題はありませんが、手間は手間ですのでもしかしたら manamanaさんのデータを usb メモリなどに保存して、buster (か bookworm) のインストールディスクで新しいイメージをインストールしてからデータをコピーしなおした方が早いかもしれません。

引き続き、よろしくお願いします