swapon: stat / dev / mapper / cryptswap1 не удалось: нет такого файла или каталога

Здесь вы:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
5
задан 19 November 2017 в 17:50

3 ответа

У меня была такая же проблема при попытке настроить мое зашифрованное пространство подкачки и подумать, что я пришел к решению. Чтобы начать работу, вот несколько ссылок, которые я использовал в своих исследованиях:

Простой способ шифрования пространства подкачки с помощью ecryptfs (когда все работает правильно) Отладка сообщения в блоге, которое отлаживает очень похожую проблему в глубину. У меня есть много моих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Устранение неполадок

При первом запуске ecryptfs-setup-swap (обратите внимание, что я уже установил пространство подкачки при установке, поэтому мне не нужно было делать mkswap, Я получил сообщение об ошибке, говорящее, что место подкачки невозможно смонтировать должным образом.

$ sudo ecryptfs-setup-swap                                                                       
[sudo] password for isaac:                                                                       

WARNING:                                                                                         
An encrypted swap is required to help ensure that encrypted files are not leaked to disk in an unencrypted format.

HOWEVER, THE SWAP ENCRYPTION CONFIGURATION PRODUCED BY THIS PROGRAM WILL BREAK HIBERNATE/RESUME ON THIS SYSTEM!

NOTE: Your suspend/resume capabilities will not be affected.                                     

Do you want to proceed with encrypting your swap? [y/N]: y                                       

INFO: Setting up swap: [/dev/nvme0n1p5]                                                          
WARNING: Commented out your unencrypted swap from /etc/fstab                                     
marking GPT swap partition /dev/nvme0n1p5 as no-auto...                                          
swapon: stat of /dev/mapper/cryptswap1 failed: No such file or directory                         

Я попытался снова запустить команду и получил сообщение о том, что у меня больше нет места подкачки.

$ sudo ecryptfs-setup-swap                                                                       
INFO: You do not currently have any swap space defined.                                          

You can create a swap file by doing:                                                             
 $ sudo dd if=/dev/zero of=/swapfile count=130667600                                             
 $ sudo mkswap /swapfile                                                                         
 $ sudo swapon /swapfile                                                                         

And then re-run /usr/bin/ecryptfs-setup-swap                                                     

Двойная проверка сообщения об ошибке с первого запуска команды ecrypt, похоже, что /dev/mapper/cryptswap1 не существует.

$ ls /dev/mapper/                                                                                
control                                                                                          

Исследование релевантных системных файлов [!d10 ]

На основании ранее упомянутого сообщения в блоге я решил начать поиск в своих системных файлах, чтобы узнать, почему место подкачки не было идентифицировано. В блоге упоминается, что измененные схемы именования разделов жесткого диска приводят к проблемам для ecryptfs и что переход на использование идентификатора на основе UUID более согласован.

$ blkid                                                                                          
/dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5"
/dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c"
/dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c"
/dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7"
/dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0"

Обратите внимание, что мое пространство подкачки равно /dev/nvme0n1p5 и имеет UUID aea96d7f.... Теперь я посмотрю /etc/fstab и /etc/crypttab, чтобы увидеть как выглядит своп.

$ cat /etc/fstab                                                                                 
# /etc/fstab: static file system information.                                                    
#                                                                                                
# Use 'blkid' to print the universally unique identifier for a                                   
# device; this may be used with UUID= as a more robust way to name devices                       
# that works even if disks are added and removed. See fstab(5).                                  
#                                                                                                
# <file system> <mount point>   <type>  <options>       <dump>  <pass>                           
# / was on /dev/nvme0n1p6 during installation                                                    
UUID=8b2f5c94-db79-4c8d-b5c6-403d912bc0dd /               ext4    errors=remount-ro 0       1    
# /boot/efi was on /dev/nvme0n1p1 during installation                                            
UUID=C291-E533  /boot/efi       vfat    umask=0077      0       1                                
# swap was on /dev/nvme0n1p5 during installation                                                 
#UUID=aea96d7f-e091-460b-95fd-a34ab884d440 none            swap    sw              0       0     
/dev/mapper/cryptswap1 none swap sw 0 0                                                          


$ cat /etc/crypttab                                                                              
# <target name> <source device>         <key file>      <options>                                
cryptswap1 UUID=aea96d7f-e091-460b-95fd-a34ab884d440 /dev/urandom swap,offset=1024,cipher=aes-xts-plain64

Здесь стоит отметить пару вещей, поэтому я пройду через них по одному.

Простой способ шифрования пространства подкачки с ecryptfs (когда все работает правильно) Crypttab настроен с соответствующим UUID для сопоставления с моим местом подкачки. Это очень важно, если ваш crypttab настроен чем-то помимо UUID (скажем, имя диска в / dev), возможно, что ядро ​​может переименовать диск и вызвать проблемы (опять же, см. Простой How-To для деталей). В моем случае, ecryptfs, похоже, правильно настроил запись с использованием UUID (моя догадка заключается в том, что он исправлен 16.04, когда в блоге упоминается проблема 14.04). Отладка сообщения в блоге, в котором отлаживается очень похожая проблема в глубину. Я получил много своих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Наконец, я проверил swapon, чтобы узнать, найдет ли оно какое-либо место подкачки.

$ swapon -s                                                                                      
Filename                                Type            Size    Used    Priority                 
/dev/dm-0                               partition       31248892        0       -1               

Похоже, что он указывает на пространство подкачки (правильного размера), но это пространство подкачки не настроено должным образом в пределах /dev/mapper (как указано fstab).

Решение

Следуя рекомендациям в сообщении в блоге, я решил проверить, разрешит ли проблема перезапуск службы cryptdisks.

$ swapoff -a                                                                                     

$ /etc/init.d/cryptdisks start                                                                   

$ swapon -a                                                                                      

$ swapon -s                                                                                      
Filename                                Type            Size    Used    Priority                 
/dev/dm-0                               partition       31248892        0       -1               

$ ls -l /dev/mapper/                                                                             
total 0                                                                                          
crw------- 1 root root 10, 236 Jan  9 11:30 control                                              
lrwxrwxrwx 1 root root       7 Jan  9 12:28 cryptswap1 -> ../dm-0                                

На этом этапе похоже, что мое пространство подкачки настроено правильно. Запуск htop показывает соответствующее количество пространства подкачки, а команды диагностики, которые я использовал выше, все выходят положительно, особенно blkid теперь показывает /dev/mapper/cryptswap1.

$ sudo blkid                                                                                     
/dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c"
/dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c"
/dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7"
/dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5"
/dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0"
/dev/mapper/cryptswap1: UUID="113abaa7-c122-4d47-a826-181ee6a29627" TYPE="swap"                  

Настройки сохранялись через перезагрузка, и все, кажется, работает нормально, насколько я могу судить, это сработало. Надеюсь, это поможет.

Потенциальное альтернативное решение

Чтобы убедиться, что мой ответ работает надлежащим образом, я попытался воспроизвести проблему на экземпляре EC2. У меня было такое же поведение, когда вы запускали sudo ecryptfs-setup-swap, где бы ошибка пыталась запустить swappon. Однако по какой-то причине сопоставление устройств /dev/dm-0, похоже, не настроено должным образом. Файлы /etc выглядели нормально, поэтому я попробовал просто перезагрузить экземпляр. Это выглядело очень хорошо; однако я бы рекомендовал, по крайней мере, проверить соответствующие настройки конфигурации перед перезагрузкой, чтобы убедиться, что они настроены правильно, поэтому ядро ​​может монтировать swap при перезагрузке.

0
ответ дан 22 May 2018 в 16:06

У меня была такая же проблема при попытке настроить мое зашифрованное пространство подкачки и подумать, что я пришел к решению. Чтобы начать работу, вот несколько ссылок, которые я использовал в своих исследованиях:

Простой способ шифрования пространства подкачки с помощью ecryptfs (когда все работает правильно) Отладка сообщения в блоге, которое отлаживает очень похожую проблему в глубину. У меня есть много моих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Устранение неполадок

При первом запуске ecryptfs-setup-swap (обратите внимание, что я уже установил пространство подкачки при установке, поэтому мне не нужно было делать mkswap, Я получил сообщение об ошибке, говорящее, что место подкачки невозможно смонтировать должным образом.

$ sudo ecryptfs-setup-swap [sudo] password for isaac: WARNING: An encrypted swap is required to help ensure that encrypted files are not leaked to disk in an unencrypted format. HOWEVER, THE SWAP ENCRYPTION CONFIGURATION PRODUCED BY THIS PROGRAM WILL BREAK HIBERNATE/RESUME ON THIS SYSTEM! NOTE: Your suspend/resume capabilities will not be affected. Do you want to proceed with encrypting your swap? [y/N]: y INFO: Setting up swap: [/dev/nvme0n1p5] WARNING: Commented out your unencrypted swap from /etc/fstab marking GPT swap partition /dev/nvme0n1p5 as no-auto... swapon: stat of /dev/mapper/cryptswap1 failed: No such file or directory

Я попытался снова запустить команду и получил сообщение о том, что у меня больше нет места подкачки.

$ sudo ecryptfs-setup-swap INFO: You do not currently have any swap space defined. You can create a swap file by doing: $ sudo dd if=/dev/zero of=/swapfile count=130667600 $ sudo mkswap /swapfile $ sudo swapon /swapfile And then re-run /usr/bin/ecryptfs-setup-swap

Двойная проверка сообщения об ошибке с первого запуска команды ecrypt, похоже, что /dev/mapper/cryptswap1 не существует.

$ ls /dev/mapper/ control

Исследование релевантных системных файлов

На основании ранее упомянутого сообщения в блоге я решил начать поиск в своих системных файлах, чтобы узнать, почему место подкачки не было идентифицировано. В блоге упоминается, что измененные схемы именования разделов жесткого диска приводят к проблемам для ecryptfs и что переход на использование идентификатора на основе UUID более согласован.

$ blkid /dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5" /dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c" /dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c" /dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7" /dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0"

Обратите внимание, что мое пространство подкачки равно /dev/nvme0n1p5 и имеет UUID aea96d7f.... Теперь я посмотрю /etc/fstab и /etc/crypttab, чтобы увидеть как выглядит своп.

$ cat /etc/fstab # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/nvme0n1p6 during installation UUID=8b2f5c94-db79-4c8d-b5c6-403d912bc0dd / ext4 errors=remount-ro 0 1 # /boot/efi was on /dev/nvme0n1p1 during installation UUID=C291-E533 /boot/efi vfat umask=0077 0 1 # swap was on /dev/nvme0n1p5 during installation #UUID=aea96d7f-e091-460b-95fd-a34ab884d440 none swap sw 0 0 /dev/mapper/cryptswap1 none swap sw 0 0 $ cat /etc/crypttab # <target name> <source device> <key file> <options> cryptswap1 UUID=aea96d7f-e091-460b-95fd-a34ab884d440 /dev/urandom swap,offset=1024,cipher=aes-xts-plain64

Здесь стоит отметить пару вещей, поэтому я пройду через них по одному.

Простой способ шифрования пространства подкачки с ecryptfs (когда все работает правильно) Crypttab настроен с соответствующим UUID для сопоставления с моим местом подкачки. Это очень важно, если ваш crypttab настроен чем-то помимо UUID (скажем, имя диска в / dev), возможно, что ядро ​​может переименовать диск и вызвать проблемы (опять же, см. [D3] Простой How-To для деталей). В моем случае, ecryptfs, похоже, правильно настроил запись с использованием UUID (моя догадка заключается в том, что он исправлен 16.04, когда в блоге упоминается проблема 14.04). Отладка сообщения в блоге, в котором отлаживается очень похожая проблема в глубину. Я получил много своих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Наконец, я проверил swapon, чтобы узнать, найдет ли оно какое-либо место подкачки.

$ swapon -s Filename Type Size Used Priority /dev/dm-0 partition 31248892 0 -1

Похоже, что он указывает на пространство подкачки (правильного размера), но это пространство подкачки не настроено должным образом в пределах /dev/mapper (как указано fstab).

Решение

Следуя рекомендациям в сообщении в блоге, я решил проверить, разрешит ли проблема перезапуск службы cryptdisks.

$ swapoff -a $ /etc/init.d/cryptdisks start $ swapon -a $ swapon -s Filename Type Size Used Priority /dev/dm-0 partition 31248892 0 -1 $ ls -l /dev/mapper/ total 0 crw------- 1 root root 10, 236 Jan 9 11:30 control lrwxrwxrwx 1 root root 7 Jan 9 12:28 cryptswap1 -> ../dm-0

На этом этапе похоже, что мое пространство подкачки настроено правильно. Запуск htop показывает соответствующее количество пространства подкачки, а команды диагностики, которые я использовал выше, все выходят положительно, особенно blkid теперь показывает /dev/mapper/cryptswap1.

$ sudo blkid /dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c" /dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c" /dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7" /dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5" /dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0" /dev/mapper/cryptswap1: UUID="113abaa7-c122-4d47-a826-181ee6a29627" TYPE="swap"

Настройки сохранялись через перезагрузка, и все, кажется, работает нормально, насколько я могу судить, это сработало. Надеюсь, это поможет.

Потенциальное альтернативное решение

Чтобы убедиться, что мой ответ работает надлежащим образом, я попытался воспроизвести проблему на экземпляре EC2. У меня было такое же поведение, когда вы запускали sudo ecryptfs-setup-swap, где бы ошибка пыталась запустить swappon. Однако по какой-то причине сопоставление устройств /dev/dm-0, похоже, не настроено должным образом. Файлы /etc выглядели нормально, поэтому я попробовал просто перезагрузить экземпляр. Это выглядело очень хорошо; однако я бы рекомендовал, по крайней мере, проверить соответствующие настройки конфигурации перед перезагрузкой, чтобы убедиться, что они настроены правильно, поэтому ядро ​​может монтировать swap при перезагрузке.

1
ответ дан 18 July 2018 в 03:00

У меня была такая же проблема при попытке настроить мое зашифрованное пространство подкачки и подумать, что я пришел к решению. Чтобы начать работу, вот несколько ссылок, которые я использовал в своих исследованиях:

Простой способ шифрования пространства подкачки с помощью ecryptfs (когда все работает правильно) Отладка сообщения в блоге, которое отлаживает очень похожую проблему в глубину. У меня есть много моих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Устранение неполадок

При первом запуске ecryptfs-setup-swap (обратите внимание, что я уже установил пространство подкачки при установке, поэтому мне не нужно было делать mkswap, Я получил сообщение об ошибке, говорящее, что место подкачки невозможно смонтировать должным образом.

$ sudo ecryptfs-setup-swap [sudo] password for isaac: WARNING: An encrypted swap is required to help ensure that encrypted files are not leaked to disk in an unencrypted format. HOWEVER, THE SWAP ENCRYPTION CONFIGURATION PRODUCED BY THIS PROGRAM WILL BREAK HIBERNATE/RESUME ON THIS SYSTEM! NOTE: Your suspend/resume capabilities will not be affected. Do you want to proceed with encrypting your swap? [y/N]: y INFO: Setting up swap: [/dev/nvme0n1p5] WARNING: Commented out your unencrypted swap from /etc/fstab marking GPT swap partition /dev/nvme0n1p5 as no-auto... swapon: stat of /dev/mapper/cryptswap1 failed: No such file or directory

Я попытался снова запустить команду и получил сообщение о том, что у меня больше нет места подкачки.

$ sudo ecryptfs-setup-swap INFO: You do not currently have any swap space defined. You can create a swap file by doing: $ sudo dd if=/dev/zero of=/swapfile count=130667600 $ sudo mkswap /swapfile $ sudo swapon /swapfile And then re-run /usr/bin/ecryptfs-setup-swap

Двойная проверка сообщения об ошибке с первого запуска команды ecrypt, похоже, что /dev/mapper/cryptswap1 не существует.

$ ls /dev/mapper/ control

Исследование релевантных системных файлов

На основании ранее упомянутого сообщения в блоге я решил начать поиск в своих системных файлах, чтобы узнать, почему место подкачки не было идентифицировано. В блоге упоминается, что измененные схемы именования разделов жесткого диска приводят к проблемам для ecryptfs и что переход на использование идентификатора на основе UUID более согласован.

$ blkid /dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5" /dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c" /dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c" /dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7" /dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0"

Обратите внимание, что мое пространство подкачки равно /dev/nvme0n1p5 и имеет UUID aea96d7f.... Теперь я посмотрю /etc/fstab и /etc/crypttab, чтобы увидеть как выглядит своп.

$ cat /etc/fstab # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/nvme0n1p6 during installation UUID=8b2f5c94-db79-4c8d-b5c6-403d912bc0dd / ext4 errors=remount-ro 0 1 # /boot/efi was on /dev/nvme0n1p1 during installation UUID=C291-E533 /boot/efi vfat umask=0077 0 1 # swap was on /dev/nvme0n1p5 during installation #UUID=aea96d7f-e091-460b-95fd-a34ab884d440 none swap sw 0 0 /dev/mapper/cryptswap1 none swap sw 0 0 $ cat /etc/crypttab # <target name> <source device> <key file> <options> cryptswap1 UUID=aea96d7f-e091-460b-95fd-a34ab884d440 /dev/urandom swap,offset=1024,cipher=aes-xts-plain64

Здесь стоит отметить пару вещей, поэтому я пройду через них по одному.

Простой способ шифрования пространства подкачки с ecryptfs (когда все работает правильно) Crypttab настроен с соответствующим UUID для сопоставления с моим местом подкачки. Это очень важно, если ваш crypttab настроен чем-то помимо UUID (скажем, имя диска в / dev), возможно, что ядро ​​может переименовать диск и вызвать проблемы (опять же, см. [D3] Простой How-To для деталей). В моем случае, ecryptfs, похоже, правильно настроил запись с использованием UUID (моя догадка заключается в том, что он исправлен 16.04, когда в блоге упоминается проблема 14.04). Отладка сообщения в блоге, в котором отлаживается очень похожая проблема в глубину. Я получил много своих идей отсюда, поэтому я бы рекомендовал дать ему прочитать.

Наконец, я проверил swapon, чтобы узнать, найдет ли оно какое-либо место подкачки.

$ swapon -s Filename Type Size Used Priority /dev/dm-0 partition 31248892 0 -1

Похоже, что он указывает на пространство подкачки (правильного размера), но это пространство подкачки не настроено должным образом в пределах /dev/mapper (как указано fstab).

Решение

Следуя рекомендациям в сообщении в блоге, я решил проверить, разрешит ли проблема перезапуск службы cryptdisks.

$ swapoff -a $ /etc/init.d/cryptdisks start $ swapon -a $ swapon -s Filename Type Size Used Priority /dev/dm-0 partition 31248892 0 -1 $ ls -l /dev/mapper/ total 0 crw------- 1 root root 10, 236 Jan 9 11:30 control lrwxrwxrwx 1 root root 7 Jan 9 12:28 cryptswap1 -> ../dm-0

На этом этапе похоже, что мое пространство подкачки настроено правильно. Запуск htop показывает соответствующее количество пространства подкачки, а команды диагностики, которые я использовал выше, все выходят положительно, особенно blkid теперь показывает /dev/mapper/cryptswap1.

$ sudo blkid /dev/nvme0n1p1: LABEL="ESP" UUID="C291-E533" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="63fc7fb9-2ca5-422b-90c7-0db698acdb3c" /dev/nvme0n1p3: UUID="16F4C1EEF4C1D063" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="c04d0838-5570-4bfc-a961-4b9224b8cc0c" /dev/nvme0n1p4: UUID="0EEE7736EE7714E5" TYPE="ntfs" PARTUUID="4dc6595f-cc9c-4d80-99ab-ffd9cbe3c1d7" /dev/nvme0n1p5: UUID="aea96d7f-e091-460b-95fd-a34ab884d440" TYPE="swap" PARTUUID="0a7db4e0-17bf-40e3-8675-afec7891afc5" /dev/nvme0n1p6: UUID="8b2f5c94-db79-4c8d-b5c6-403d912bc0dd" TYPE="ext4" PARTUUID="e373c83f-f992-4e62-a235-1fdd01ac7cf0" /dev/mapper/cryptswap1: UUID="113abaa7-c122-4d47-a826-181ee6a29627" TYPE="swap"

Настройки сохранялись через перезагрузка, и все, кажется, работает нормально, насколько я могу судить, это сработало. Надеюсь, это поможет.

Потенциальное альтернативное решение

Чтобы убедиться, что мой ответ работает надлежащим образом, я попытался воспроизвести проблему на экземпляре EC2. У меня было такое же поведение, когда вы запускали sudo ecryptfs-setup-swap, где бы ошибка пыталась запустить swappon. Однако по какой-то причине сопоставление устройств /dev/dm-0, похоже, не настроено должным образом. Файлы /etc выглядели нормально, поэтому я попробовал просто перезагрузить экземпляр. Это выглядело очень хорошо; однако я бы рекомендовал, по крайней мере, проверить соответствующие настройки конфигурации перед перезагрузкой, чтобы убедиться, что они настроены правильно, поэтому ядро ​​может монтировать swap при перезагрузке.

1
ответ дан 24 July 2018 в 17:43

Другие вопросы по тегам:

Похожие вопросы: