アップデートまたはアップグレードに失敗した後のリカバリ
コンピュータの電源が途中で失われたり、プロセスが停止したりするなど、更新プロセス中に問題が発生した場合、パッケージが半分インストールされ、一部の依存関係が失われるため、インストールに損傷が生じる可能性があります。この記事では、更新プロセス中に問題が発生したことによる損傷を軽減し、それによって発生する問題を修正するために、個別の回復環境を作成する方法について説明します。
目次
GUI リカバリ環境
ユーザーが デスクトップ環境 での起動を妨げる、またはユーザーが ディスプレイマネージャ を表示できる間にアプリケーションの起動を妨げるアップグレードまたは更新を実行する場合は、別の環境を作成することをお勧めします。ユーザーが簡単に使用して、これらのエラーを自分で修正しようとすることができます。これは、Linux の知識が限られているユーザーにとって特に便利です。 openbox または ideskAUR で使用できる他の同等のウィンドウマネージャーをインストールし、アクションを実行し、警告を表示し、システムを表示するように構成されたプログラムまたはより優れたスクリプト用の独自のボタンを作成します開始する前の管理者の連絡先情報。不要なユーザーがフェイルセーフ 環境または一部のリカバリタスクを使用するのを防ぐために、スクリプトまたはウィンドウマネージャーの自動起動の先頭に以下を追加できます。
AllowedUser="JolinTsai"; if [ "$(whoami)" != " ${AllowedUser,,}" ];then zenity --warning --text="You are not the allowed user! The allowed user is "$AllowedUser; #openbox --exit exit 1 fi
セッションのタイプ リストからすべての不要なエントリを削除する必要があります。削除するか、それらに関する情報を含む* .desktop ファイルをバックアップフォルダに移動し、カスタム構成で独自のエントリを作成することで実行できます。 * .desktop ファイルの1つを必要な名前のファイルにコピーし、Exec と description の部分に変更を加えるだけです。
このようなものを使用して、ファイルを削除したり、バックアップディレクトリに移動したりできます。
find /usr/share/apps/kdm/sessions/ -maxdepth 1 -type f \ ! -name kde-plasma.desktop ! -name lxde.desktop ! -name openbox.desktop ! -name xfce4.desktop \ -exec mv "{}" /usr/share/apps/kdm/sessions/OLD_/ \;
それらのフォルダで見つけて下さい:
/usr/share/config/kdm/sessions /usr/share/apps/kdm/sessions /usr/share/xsessions/
また、作業中にコマンドの出力を表示するために xterm を使用する場合、作業中のウィンドウを閉じられないようにするために、ウィンドウのボーダーを取り除く必要があります。これは devilspie を使って行うことができます。
devilspie 設定ファイルで使用するウィンドウ名のリストを取得するには、wmctrl ユーティリティを使用します。
wmctrl -l | awk '{print substr($0, index($0,$4))}'
または devilspie を起動すると、設定ファイルに使用可能なすべての情報を見ることができます。
Window Title: 'name@host:~/.path'; Application Name: 'name@host:~/.path' ; Class: 'XTerm' ; Geometry: 492x350+487+226
The window_name
, application_name
and window_class
can be used to change the window properties.
優先アプリケーションに使用できる devilspie 構成ファイルの例
.devilspie/DesktopConsole.ds
(if (is (window_class) "XTerm") (begin (undecorate) (skip_tasklist) (above) (fullscreen) (maximize) (unpin) (skip_pager) ) )
XTerm には、フルスクリーンで起動するためのコマンドラインも用意されています。xterm -fullscreen
です。
ストレージデバイス全体の安全な復元/リセットを準備します
ここでは、初心者/一般ユーザーにとって非常に便利な リセット 機能を使用するだけで、デフォルトのオペレーティングシステム(Arch Linux など)をより簡単に復元する方法や基本的な理論的手順について説明します。
Physical locked storage
- The initial factory set up must be stored on the write protected storage device such as e.g. Secure Digital SD cards that can be physically locked into the read only mode.
- The latest updated factory set up must be stored on the writeable storage device or on a separate partition but with limited access such as write protected mount predefined in fstab and/or use in additional mount scripts mount.* with checks which device/partition is mounted and allow mount only in READ ONLY mode for a normal user.
- It is also good to have those destinations hidden in a file managers menu.
- The BIOS will need to be configured to boot from SD Card and password protected(password can be name+model of the computer). The SD card need to be permanent attached and sealed(glued).
You can make your own custom Live CD with Archiso that must have functions:
- Health monitoring tools such as smartmontools to show errors and instructions what to do if destination storage device is damaged.
- Restore whole storage device with tools as fsarchiver from the back up image if the main partition is damaged or have it as an option
- Retrieve updates from the internet if it is available.
- Use latest created "ISO" if it is available to install updates
The additional ISO on a separate partition can be created after a certain amount of updates predefined by you or manually by user.
On the first login user must get an opportunity to choose a cloud server where was stored the list of all installed applications and updated configuration files.
On PC the restoration media can be stored inside the box by connecting to USB card with adaptor. Laptops are missing the ability of storing extra storage devices inside that can be used for reparation purposes, but some of them can have place for the addition storage that can be connected to them such as Secure Digital SD cards where can be stored only initial "factory" ISO and optionally also the internal storage device back up image.
Virtualization
Create a minimal installation of the Linux with a user that will be logged in automatically and start with .xinitrc preconfigured virtual machine with scheduled snapshots that can even be stored on a remote storage.
Restore desired parts on each boot
By creating bootable ISO image or SquashFS that can be started with GRUB. Those can be preconfigured even with minimal needed applications, X server or Wayland and users. After boot you can automatize mount of path to /usr/
, /home/
or other custom folders that can exist on physical storage or in a file. It is useful for protection of boot and kernel settings from possible damages. Users will be able to updated programs if partition/file is mounted to /var/lib/pacman/
and has writeable access to it.