「アップデートまたはアップグレードに失敗した後のリカバリ」の版間の差分
(英語版から転載) |
(一部翻訳) |
||
1行目: | 1行目: | ||
[[Category:システムリカバリ]] |
[[Category:システムリカバリ]] |
||
[[en:Recovery after failed update or upgrade]] |
[[en:Recovery after failed update or upgrade]] |
||
+ | {{Note|これは主に、コンピューターの使用法やニーズについての知識が少ないホームユーザー向けの回復環境のセットアップに焦点を当てています。}} |
||
− | {{Note|This is focused mostly on setting up recovery environment for the home user with low knowledge about computer usage or needs.}} |
||
+ | コンピュータの電源が途中で失われたり、プロセスが停止したりするなど、更新プロセス中に問題が発生した場合、パッケージが半分インストールされ、一部の依存関係が失われるため、インストールに損傷が生じる可能性があります。この記事では、更新プロセス中に問題が発生したことによる損傷を軽減し、それによって発生する問題を修正するために、個別の回復環境を作成する方法について説明します。 |
||
− | If something goes wrong during the update process, like your computer losing power half way through or the process getting stopped, some damage could be caused to your installation as a result of packages being half installed and some dependencies missing. This article covers the creation of a separate recovery environment in order to help mitigate damage caused by something going wrong during the update process and fix any issues arising from it. |
||
− | == GUI |
+ | == GUI リカバリ環境 == |
+ | ユーザーが [[デスクトップ環境]] での起動を妨げる、またはユーザーが [[ディスプレイマネージャ]] を表示できる間にアプリケーションの起動を妨げるアップグレードまたは更新を実行する場合は、別の環境を作成することをお勧めします。ユーザーが簡単に使用して、これらのエラーを自分で修正しようとすることができます。これは、Linux の知識が限られているユーザーにとって特に便利です。 {{Pkg|openbox}} または {{AUR|idesk}} で使用できる他の同等のウィンドウマネージャーをインストールし、アクションを実行し、警告を表示し、システムを表示するように構成されたプログラムまたはより優れたスクリプト用の独自のボタンを作成します開始する前の管理者の連絡先情報。不要なユーザーが''フェイルセーフ'' 環境または一部のリカバリタスクを使用するのを防ぐために、スクリプトまたはウィンドウマネージャーの自動起動の先頭に以下を追加できます。 |
||
− | If the user performs an upgrade or update that prevents booting into the [[desktop environment]] or, prevents starting applications while the user is able to see the [[display manager]] then it is good practice to make a separate environment for the user to easily use to try to fix those errors on their own. This is especially useful for users that have a limited knowledge of Linux. Install {{Pkg|openbox}} or other equivalent window manager that can be used with {{AUR|idesk}}, and create your own buttons for the programs or better scripts that are configured to perform actions, show warnings and show the system administrator's contact information before starting. To prevent any unwanted user from using the "failsafe" environment or some of the recovery tasks you can add the following to the beginning of the script or window manager autostart: |
||
{{bc|1=AllowedUser="JolinTsai"; |
{{bc|1=AllowedUser="JolinTsai"; |
||
16行目: | 16行目: | ||
fi}} |
fi}} |
||
+ | ''セッションのタイプ'' リストからすべての不要なエントリを削除する必要があります。削除するか、それらに関する情報を含む* .desktop ファイルをバックアップフォルダに移動し、カスタム構成で独自のエントリを作成することで実行できます。 * .desktop ファイルの1つを必要な名前のファイルにコピーし、Exec と description の部分に変更を加えるだけです。 |
||
− | You will need to remove all unnecessary entries from "type of session" list, you can do it by removing or better to moving the *.desktop files which contains information about them to the backup folder and create your own with a custom configuration, to make it simply just copy one of the *.desktop files to a file with the name you want and make changes in the Exec and description parts. |
||
+ | このようなものを使用して、ファイルを削除したり、バックアップディレクトリに移動したりできます。 |
||
− | Something like this you can use to remove or move files to backup directory. |
||
{{Out of date|References kdm, which is not packaged since 2017}} |
{{Out of date|References kdm, which is not packaged since 2017}} |
||
26行目: | 26行目: | ||
-exec mv "{}" /usr/share/apps/kdm/sessions/OLD_/ \;}} |
-exec mv "{}" /usr/share/apps/kdm/sessions/OLD_/ \;}} |
||
+ | それらのフォルダで見つけて下さい: |
||
− | You usually can find them in some of those folders: |
||
{{bc|/usr/share/config/kdm/sessions |
{{bc|/usr/share/config/kdm/sessions |
||
32行目: | 32行目: | ||
/usr/share/xsessions/}} |
/usr/share/xsessions/}} |
||
+ | また、作業中にコマンドの出力を表示するために xterm を使用する場合、作業中のウィンドウを閉じられないようにするために、ウィンドウのボーダーを取り除く必要があります。これは {{Pkg|devilspie}} を使って行うことができます。 |
||
− | You will also need to remove borders from windows to prevent user to close the working window such as xterm if you will use it to show output of commands while they are working. You can do it by using the {{Pkg|devilspie}}. |
||
+ | devilspie 設定ファイルで使用するウィンドウ名のリストを取得するには、{{Pkg|wmctrl}} ユーティリティを使用します。 |
||
− | To get list of the window names for using in the devilspie configuration file you can use the {{Pkg|wmctrl}} utility |
||
− | {{ic|<nowiki>wmctrl -l | awk '{print substr($0, index($0,$4))}'</nowiki>}} |
+ | {{ic|<nowiki>wmctrl -l | awk '{print substr($0, index($0,$4))}'</nowiki>}} または {{Pkg|devilspie}} を起動すると、設定ファイルに使用可能なすべての情報を見ることができます。 |
{{ic|Window Title: 'name@host:~/.path'; Application Name:''' 'name@host:~/.path' '''; Class:''' 'XTerm' '''; Geometry: 492x350+487+226}} |
{{ic|Window Title: 'name@host:~/.path'; Application Name:''' 'name@host:~/.path' '''; Class:''' 'XTerm' '''; Geometry: 492x350+487+226}} |
||
41行目: | 41行目: | ||
The {{ic|window_name}} , {{ic|application_name}} and {{ic|window_class}} can be used to change the window properties. |
The {{ic|window_name}} , {{ic|application_name}} and {{ic|window_class}} can be used to change the window properties. |
||
+ | 優先アプリケーションに使用できる devilspie 構成ファイルの例 |
||
− | Example of the devilspie configuration file that you can use for the preferred application |
||
{{hc|.devilspie/DesktopConsole.ds|(if (is ('''window_class''') "XTerm") |
{{hc|.devilspie/DesktopConsole.ds|(if (is ('''window_class''') "XTerm") |
||
55行目: | 55行目: | ||
)}} |
)}} |
||
− | + | XTerm には、フルスクリーンで起動するためのコマンドラインも用意されています。{{ic|xterm -fullscreen}} です。 |
|
+ | {{Tip|フルスクリーンでアプリケーションを実行すると、タスクが完了するまでデスクトップ上の他のボタンをクリックすることができなくなります。}} |
||
− | {{Tip|To run an application in the full screen makes user unable to click on other buttons on the desktop until task is completed.}} |
||
+ | |||
− | == Prepare a safe restoration/reset of the whole storage device == |
||
+ | == ストレージデバイス全体の安全な復元/リセットを準備します == |
||
+ | ここでは、初心者/一般ユーザーにとって非常に便利な ''リセット'' 機能を使用するだけで、デフォルトのオペレーティングシステム(Arch Linux など)をより簡単に復元する方法や基本的な理論的手順について説明します。 |
||
− | Here will be described basic theoretical steps about how to make more easier restore of the default operation system (e.g. Arch Linux), just by using "Reset" function made by you that will be very useful for beginners/common users or if you will have plans to sell computers with a preferred Linux. |
||
=== Physical locked storage === |
=== Physical locked storage === |
2022年3月5日 (土) 18:46時点における版
コンピュータの電源が途中で失われたり、プロセスが停止したりするなど、更新プロセス中に問題が発生した場合、パッケージが半分インストールされ、一部の依存関係が失われるため、インストールに損傷が生じる可能性があります。この記事では、更新プロセス中に問題が発生したことによる損傷を軽減し、それによって発生する問題を修正するために、個別の回復環境を作成する方法について説明します。
目次
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.