[PATCH RESEND 20/62] doc: remove Documentation/power/swsusp-dmcrypt.rst

In review
From:Askar Safin <safinaskar@gmail.com>
Date:
Message-ID:<20250913003842.41944-21-safinaskar@gmail.com>
Patch:v1 · 20/62
Language:zh_CN
Patch-ID:ba0be0fce338c1f184de1d48047e0a759a27d542
Files:Documentation/power/index.rstDocumentation/power/swsusp-dmcrypt.rstDocumentation/translations/zh_CN/power/index.rst

Patch content 3 changed files

It contains obsolete initrd and lilo based instructions Signed-off-by: Askar Safin <safinaskar@gmail.com>--- Documentation/power/index.rst                 |   1 - Documentation/power/swsusp-dmcrypt.rst        | 140 ------------------ .../translations/zh_CN/power/index.rst        |   1 - 3 files changed, 142 deletions(-) delete mode 100644 Documentation/power/swsusp-dmcrypt.rst diff --git a/Documentation/power/index.rst b/Documentation/power/index.rstindex a0f5244fb427..9f1758c92e48 100644--- a/Documentation/power/index.rst+++ b/Documentation/power/index.rst@@ -22,7 +22,6 @@ Power Management     suspend-and-cpuhotplug     suspend-and-interrupts     swsusp-and-swap-files-    swsusp-dmcrypt     swsusp     video     tricksdiff --git a/Documentation/power/swsusp-dmcrypt.rst b/Documentation/power/swsusp-dmcrypt.rstdeleted file mode 100644index afb29a58fdf8..000000000000--- a/Documentation/power/swsusp-dmcrypt.rst+++ /dev/null@@ -1,140 +0,0 @@-=======================================-How to use dm-crypt and swsusp together-=======================================--Author: Andreas Steinmetz <ast@domdv.de>----Some prerequisites:-You know how dm-crypt works. If not, visit the following web page:-http://www.saout.de/misc/dm-crypt/-You have read Documentation/power/swsusp.rst and understand it.-You did read Documentation/filesystems/ramfs-rootfs-initramfs.rst and know how an initrd works.-You know how to create or how to modify an initrd.--Now your system is properly set up, your disk is encrypted except for-the swap device(s) and the boot partition which may contain a mini-system for crypto setup and/or rescue purposes. You may even have-an initrd that does your current crypto setup already.--At this point you want to encrypt your swap, too. Still you want to-be able to suspend using swsusp. This, however, means that you-have to be able to either enter a passphrase or that you read-the key(s) from an external device like a pcmcia flash disk-or an usb stick prior to resume. So you need an initrd, that sets-up dm-crypt and then asks swsusp to resume from the encrypted-swap device.--The most important thing is that you set up dm-crypt in such-a way that the swap device you suspend to/resume from has-always the same major/minor within the initrd as well as-within your running system. The easiest way to achieve this is-to always set up this swap device first with dmsetup, so that-it will always look like the following::--  brw-------  1 root root 254, 0 Jul 28 13:37 /dev/mapper/swap0--Now set up your kernel to use /dev/mapper/swap0 as the default-resume partition, so your kernel .config contains::--  CONFIG_PM_STD_PARTITION="/dev/mapper/swap0"--Prepare your boot loader to use the initrd you will create or-modify. For lilo the simplest setup looks like the following-lines::--  image=/boot/vmlinuz-  initrd=/boot/initrd.gz-  label=linux-  append="root=/dev/ram0 init=/linuxrc rw"--Finally you need to create or modify your initrd. Lets assume-you create an initrd that reads the required dm-crypt setup-from a pcmcia flash disk card. The card is formatted with an ext2-fs which resides on /dev/hde1 when the card is inserted. The-card contains at least the encrypted swap setup in a file-named "swapkey". /etc/fstab of your initrd contains something-like the following::--  /dev/hda1   /mnt    ext3      ro                            0 0-  none        /proc   proc      defaults,noatime,nodiratime   0 0-  none        /sys    sysfs     defaults,noatime,nodiratime   0 0--/dev/hda1 contains an unencrypted mini system that sets up all-of your crypto devices, again by reading the setup from the-pcmcia flash disk. What follows now is a /linuxrc for your-initrd that allows you to resume from encrypted swap and that-continues boot with your mini system on /dev/hda1 if resume-does not happen::--  #!/bin/sh-  PATH=/sbin:/bin:/usr/sbin:/usr/bin-  mount /proc-  mount /sys-  mapped=0-  noresume=`grep -c noresume /proc/cmdline`-  if [ "$*" != "" ]-  then-    noresume=1-  fi-  dmesg -n 1-  /sbin/cardmgr -q-  for i in 1 2 3 4 5 6 7 8 9 0-  do-    if [ -f /proc/ide/hde/media ]-    then-      usleep 500000-      mount -t ext2 -o ro /dev/hde1 /mnt-      if [ -f /mnt/swapkey ]-      then-        dmsetup create swap0 /mnt/swapkey > /dev/null 2>&1 && mapped=1-      fi-      umount /mnt-      break-    fi-    usleep 500000-  done-  killproc /sbin/cardmgr-  dmesg -n 6-  if [ $mapped = 1 ]-  then-    if [ $noresume != 0 ]-    then-      mkswap /dev/mapper/swap0 > /dev/null 2>&1-    fi-    echo 254:0 > /sys/power/resume-    dmsetup remove swap0-  fi-  umount /sys-  mount /mnt-  umount /proc-  cd /mnt-  pivot_root . mnt-  mount /proc-  umount -l /mnt-  umount /proc-  exec chroot . /sbin/init $* < dev/console > dev/console 2>&1--Please don't mind the weird loop above, busybox's msh doesn't know-the let statement. Now, what is happening in the script?-First we have to decide if we want to try to resume, or not.-We will not resume if booting with "noresume" or any parameters-for init like "single" or "emergency" as boot parameters.--Then we need to set up dmcrypt with the setup data from the-pcmcia flash disk. If this succeeds we need to reset the swap-device if we don't want to resume. The line "echo 254:0 > /sys/power/resume"-then attempts to resume from the first device mapper device.-Note that it is important to set the device in /sys/power/resume,-regardless if resuming or not, otherwise later suspend will fail.-If resume starts, script execution terminates here.--Otherwise we just remove the encrypted swap device and leave it to the-mini system on /dev/hda1 to set the whole crypto up (it is up to-you to modify this to your taste).--What then follows is the well known process to change the root-file system and continue booting from there. I prefer to unmount-the initrd prior to continue booting but it is up to you to modify-this.diff --git a/Documentation/translations/zh_CN/power/index.rst b/Documentation/translations/zh_CN/power/index.rstindex bc54983ba515..4ee880e65107 100644--- a/Documentation/translations/zh_CN/power/index.rst+++ b/Documentation/translations/zh_CN/power/index.rst@@ -32,7 +32,6 @@ TODOList:     * suspend-and-cpuhotplug     * suspend-and-interrupts     * swsusp-and-swap-files-    * swsusp-dmcrypt     * swsusp     * video     * tricks-- 2.47.2