リモートシステムのGUI端末内で実行されているdist-upgradeプロンプトにEnterキーを渡します。その後、SSHを介してのみアクセスできます。

リモートシステムのGUI端末内で実行されているdist-upgradeプロンプトにEnterキーを渡します。その後、SSHを介してのみアクセスできます。

以前は、remoteRDPを介してコンピュータ(通常の物理デスクトップコンピュータ)にアクセスし、それを使用してsudo apt dist-upgradeGUIの内部を起動しましたgnome-terminal。それ以来、RDP接続が切断され、SSH [1]のみがあります。 apt コマンドに「assum yes」がないため、cat /var/log/dist-upgrade/screenlog.0SSH によるチェックで実行中のアップグレードがプロンプト [2] で停止し、ユーザーが Enter を押すか yes を選択して Enter を押す必要があることがわかりました。この時点で約1時間実行されdist-upgrade(その後の待ち時間は含まれません)、多くのパッケージがインストールされました。

今の目標は、実行中のプログラムにEnterを渡すことですdist-upgrade(またはアップグレードを完全に終了することですが、これによりシステムが破損する可能性があります)。 LLMでは、pidgdb -p pid /usr/libexec/gnome-terminal-serverの後にcall (int)write(0, "\n", 1)実行可能ファイルを取得した場所を使用することをお勧めしますps -ex | grep terminal。しかしNo symbol "write" in current context.それ以後はこれが間違っていたNo debugging symbols found in /usr/libexec/gnome-terminal-server)

別のアプローチは、プログラムによるクリック生成を使用することですxdotool。残念ながら、まだリモコンにはインストールができておらず、アップデートが実行中なので、今はインストールできません。これはすべてのプログラムに当てはまります。この時点で、私たちはすでに持っているもの(標準bash)を使用する必要があり、新しいものをインストールすることはできません。

何をすべきか?


[1]:実際には「remote:xrdp:SSHTunnel:Remmina:client」のRDPアクセスに基づいています。まだ黒い画面が表示され、リモコンディスプレイを目覚めさせることができない以外はうまく機能します。

[2]: 問題のプロンプトは非常に簡単です。

#tail /var/log/dist-upgrade/screenlog.0
Package configuration


Upgrade to the firefox snap  
                                                                                         
Starting in Ubuntu 22.04, all new releases of firefox are only available to Ubuntu users through the snap package. This package update will transition your system over to the snap by installing it.It is recommended to close all open firefox windows before proceeding to the upgrade.  

                        <-- 0:jammy -- time-stamp -- Apr/01/24 15:45:57 --          

答え1

私はそれについて完全に慣れていませんが、aptそのログファイル()の名前を見ると、screenlog.0プロセスがすでに存在するかどうか疑問に思います。screen?この場合、screen -lsアクティブなセッションが表示され、screen -Rそのセッションに再接続する必要があります。

ログファイル名が赤いherringの場合は、次のことができます。reptyr、既存のプログラムを新しい端末に接続できるツールです。

関連情報