Периодическая ошибка при зашифрованном свопе в Ubuntu 18

Я хочу зашифровать своп, и единственный сценарий, который я нашел, чтобы сделать это так, как я хочу, это он:

    sudo -i
    cd /root 
    mkdir -p ./.myfolder 
    cd ./.myfolder 
    swapsize='4G' 
    curdir=$(pwd) 
    flNmDev="myfile"
    flPtDev="$curdir/$flNmDev" 
    flNmKey="mykeyfile" 
    flPtKey="$curdir/$flNmKey" 
    flNmMnt="mydevname" 
    flPtMnt="$curdir/$flNmMnt" 
    fallocate -l $swapsize $flPtDev &> /dev/null
    chmod 0600 $flPtDev
    chown root $flPtDev 
    dd if=/dev/urandom of=$flPtKey bs=4096 count=1 conv=notrunc,noerror &> /dev/null 
    sudo chmod 0600 $flPtKey
    chown root $flPtKey
cat << EOF > /etc/crypttab
# <target name> <source device>         <key file>      <options>
$flNmMnt $flPtDev $flPtKey swap,offset=1024,cipher=aes-xts-plain64
EOF
    cryptdisks_start $flNmMnt &> /dev/null
    mappedCryptPath="/dev/mapper/$flNmMnt"
    mkswap -L swapone $mappedCryptPath -f &> /dev/null
    rpl "/swap.img" "#/swap.img" /etc/fstab &> /dev/null
    echo "$mappedCryptPath none swap sw 0 0" >> /etc/fstab
    swapon -a 

На той же машине и той же версии Ubuntu иногда работает но иногда дает сбой при загрузке.
После вывода при каждой загрузке он делал:

uname -v

#54-Ubuntu SMP Mon May 6 18:46:08 UTC 2019

-

journalctl -b

 systemd[1]: Mounting /boot...
swapon[995]: swapon: /dev/mapper/mydevname: swapon failed: Device or resource busy
mkswap[991]: mkswap: unable to erase bootbits sectors
 systemd[1]: systemd-cryptsetup@mydevname.service: Control process exited, code=exited status=1
 systemd[1]: systemd-cryptsetup@mydevname.service: Failed with result 'exit-code'.
 systemd[1]: Failed to start Cryptography Setup for mydevname.
 systemd[1]: Dependency failed for Local Encrypted Volumes.
 systemd[1]: cryptsetup.target: Job cryptsetup.target/start failed with result 'dependency'.
 systemd[1]: dev-mapper-mydevname.swap: Swap process exited, code=exited status=255
 systemd[1]: dev-mapper-mydevname.swap: Failed with result 'exit-code'.
 systemd[1]: Failed to activate swap /dev/mapper/mydevname.
 systemd[1]: Dependency failed for Swap.
 systemd[1]: swap.target: Job swap.target/start failed with result 'dependency'.

-

cat /proc/meminfo | grep Sw

SwapCached:            0 kB
SwapTotal:             0 kB
SwapFree:              0 kB

-

cat /proc/swaps 

Filename                Type        Size    Used    Priority

-

cat /proc/swaps 

Filename                Type        Size    Used    Priority
/dev/dm-1                               partition   4193788 72704   -2

-

cat /proc/meminfo | grep Sw

SwapCached:        10644 kB
SwapTotal:       4193788 kB
SwapFree:        4102396 kB

-

journalctl -b

mkswap[868]: mkswap: /dev/mapper/mydevname: warning: wiping old swap signature.
systemd[1]: Found device /dev/mapper/mydevname.
systemd[1]: Activating swap /dev/mapper/mydevname...
mkswap[868]: Setting up swapspace version 1, size = 4 GiB (4294438912 bytes)
mkswap[868]: no label, UUID=348deb8f-7457-4829-a1a2-0ebd1b61f6d6
systemd[1]: Started Cryptography Setup for mydevname.
systemd[1]: Reached target Local Encrypted Volumes.
kernel: Adding 4193788k swap on /dev/mapper/mydevname.  Priority:-2 extents:1 across:4193788k FS
systemd[1]: Activated swap /dev/mapper/mydevname.
systemd[1]: Reached target Swap.

-

cat /proc/swaps 

Filename                Type        Size    Used    Priority
/dev/dm-1                               partition   4193788 0   -2

-

journalctl -b

mkswap[683]: mkswap: unable to erase bootbits sectors
systemd[1]: systemd-cryptsetup@mydevname.service: Control process exited, code=exited status=1
systemd[1]: systemd-cryptsetup@mydevname.service: Failed with result 'exit-code'.
systemd[1]: Failed to start Cryptography Setup for mydevname.
systemd[1]: Dependency failed for Local Encrypted Volumes.
systemd[1]: cryptsetup.target: Job cryptsetup.target/start failed with result 'dependency'.
systemd[1]: Dependency failed for dev-mapper-mydevname.device.
systemd[1]: Dependency failed for /dev/mapper/mydevname.
systemd[1]: Dependency failed for Swap.
systemd[1]: swap.target: Job swap.target/start failed with result 'dependency'.
systemd[1]: dev-mapper-mydevname.swap: Job dev-mapper-mydevname.swap/start failed with result 'dependency'.
systemd[1]: dev-mapper-mydevname.device: Job dev-mapper-mydevname.device/start failed with result 'dependency'.
systemd[1]: Activating swap /dev/mapper/mydevname...
systemd[1]: Starting Cryptography Setup for mydevname...
systemd-cryptsetup[688]: Volume mydevname already active.
kernel: Adding 4193788k swap on /dev/mapper/mydevname.  Priority:-2 extents:1 across:4193788k FS
systemd[1]: Activated swap /dev/mapper/mydevname.
mkswap[690]: mkswap: error: /dev/mapper/mydevname is mounted; will not make swapspace
systemd[1]: systemd-cryptsetup@mydevname.service: Control process exited, code=exited status=1
systemd[1]: systemd-cryptsetup@mydevname.service: Failed with result 'exit-code'.
systemd[1]: Failed to start Cryptography Setup for mydevname.

-

cat /proc/meminfo | grep Sw

SwapCached:            0 kB
SwapTotal:       4193788 kB
SwapFree:        4193788 kB

-

0
задан 29 May 2019 в 00:47
1 ответ

Cred că ați văzut acest script pe o întrebare a mea , ați avut aceeași problemă ca dvs., dar având suficientă memorie aici, am rezolvat-o doar scăpând de toate swap-ul în sine prin făcându-l:

cp /etc/sysctl.conf /etc/sysctl.conf.bkp 
echo '' > /etc/sysctl.conf
echo 'vm.swappiness=0' >> /etc/sysctl.conf
echo 'vm.vfs_cache_pressure=50' >> /etc/sysctl.conf
rpl "/swap.img" "#/swap.img" /etc/fstab &> /dev/null
DEBIAN_FRONTEND=noninteractive apt-get -yq install zram-config &> /dev/null 
0
ответ дан 23 November 2019 в 23:41

Теги

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