bashスクリプトを介して.deb/.rpmをインストールする安全な方法はありますか?

bashスクリプトを介して.deb/.rpmをインストールする安全な方法はありますか?

私は多くのプラットフォーム(.deb / .rpmを含む)用にパッケージ化されたJavaアプリケーションを開発しました。私のアプリケーションには自動アップグレード機能があります。 Linuxプラットフォームでは、新しいバージョンがあることを確認して新しい.deb/.rpmをダウンロードできます。今、2つのオプションがあります。

  1. ユーザーにアプリケーションを閉じて、.deb/.rpm を直接インストールするように求めるポップアップ
  2. アプリケーションを閉じて、.deb/.rpm自体をインストールするスクリプトを実行します(WindowsおよびMacOSで発生するものと同様)。

すべてのdebian / fedora派生製品に対して安全な方法2を提供することは可能ですか?たとえば、次のスクリプトは Debian 派生のための良いアイデアですか?

sudo apt install gdebi -y
sudo gdbi [package path]

ご協力ありがとうございます。

答え1

パッケージをデプロイする際の推奨されるアプローチは、パッケージをパッケージリポジトリ(自分自身またはさまざまなコミュニティリポジトリのいずれか)で使用できるようにすることです。これにより、残りのシステムアップグレードでアップグレードを処理できます。現在のデスクトップ環境では、更新が可能なときにユーザーに通知が送信されるため、アプリケーションの特定の確認に比べて待ち時間が多く追加されません。

ただし、アップグレードを直接処理することはできます。 ~によるとどのようにアプリケーションはパッケージ化されているため、アップグレードする前に終了する必要はありません。 Unixスタイルの環境は、実行中の実行可能ファイルの変更を妨げません。

Debian とその派生製品のインストール部分については気にせずにgdebiローカルaptパッケージを直接インストールできます。パッケージをダウンロードし、同じディレクトリで実行します。

sudo apt install ./package.deb

pathで始まる限り、./ダウンロードしたaptパッケージが使用されます(および依存関係の解決など)。

yumFedoraまたはRHELベースのRPMシステムで同じ操作を使用または実行できますdnf

関連情報