สลับหายไปหลังจากรีบูต


9

ฉันได้ติดตั้ง Kubuntu 14.04 พร้อมไดเรกทอรีภายในบ้านที่เข้ารหัสแล้ว แม้ว่าฉันจะมีการตั้งค่า swap ในระหว่างการติดตั้ง แต่พื้นที่ swap ไม่ได้อยู่ที่นั่นหลังจากทำการติดตั้ง เรื่องนี้เกิดขึ้นกับคนจำนวนมากดูเหมือนว่าจะมีข้อบกพร่องอยู่ที่ไหนสักแห่ง ฉัน googled และพบวิธีแก้ปัญหานี้ ที่นี่

ฉันทำตามขั้นตอนที่นั่นโดยไม่ต้องดำเนินการใด ๆ กับประวัติย่อเนื่องจากไม่สามารถใช้งานได้ในการติดตั้งของฉัน ดังนั้นฉันจึงทำ:

sudo swapoff -a (turns off swap)
comment existing swap configuration in /etc/crypttab
comment existing swap configuration in /etc/fstab
re-format swap partition with gparted as linux-swap
sudo mkswap /dev/sdXX 
sudo swapon /dev/sdXX 
sudo ecryptfs-setup-swap 

จากนั้นฉันมีการแลกเปลี่ยนการทำงานและมีความสุขจนกระทั่งฉันรีบูตเครื่องแล็ปท็อปของฉันและกลับไปที่ตารางหนึ่ง เมื่อมองไปที่พาร์ติชั่นด้วย gparted มันบอกว่าระบบไฟล์ไม่รู้จักพาร์ติชัน swap (เก่า) และไม่จำเป็นต้องบอกว่าฉันไม่มีพื้นที่สว็อปใด ๆ

ดังนั้นตอนนี้คำถามของฉันคือ: เหตุใดการจัดรูปแบบระบบไฟล์ (เนื่องจาก linux-swap) ไม่สามารถรีบูตได้ มีอะไรที่ฉันสามารถทำได้เกี่ยวกับเรื่องนี้?

ถ้าฉันทำ blkid พาร์ติชันการสลับไม่แสดงเลยดังนั้นปัญหาของฉันดูเหมือนจะแตกต่างจากคำถามนี้

แก้ไข: ยังทำงานอยู่ดังนั้นฉันจึงทำตามขั้นตอนข้างต้นอีกครั้งหลังจากที่ / etc / crypttab มีลักษณะเช่นนี้:

cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256

บวกบางบรรทัดที่ถูกคอมเม้นท์ และ / etc / fstab มีบรรทัดนี้:

/dev/mapper/cryptswap1 none swap sw 0 0

ทั้งสองบรรทัดใหม่มีลักษณะเหมือนกัน (นอกเหนือจาก UUID) เหมือนกับที่สร้างขึ้นสองครั้งล่าสุด ดังนั้นฉันจึงไม่หวังอย่างยิ่งว่าจะคงอยู่เมื่อฉันรีบูต ตอนนี้ Gparted แสดงพาร์ติชั่นที่ฉันใช้เป็น linux-swap (ก่อนรีบูตเครื่อง) blkid ให้บรรทัดนี้ด้วย:

/dev/sda7: UUID="xxxx" TYPE="swap" 

ฉันทดสอบการสลับแล้วก็ใช้งานได้เช่นฉันเริ่มโปรแกรมที่ใช้หน่วยความจำจำนวนมากและตรวจสอบว่ามีการโหลดจำนวนเท่าใดในการสลับในการตรวจสอบระบบ

แก้ไข 2: ปรากฎว่า 3 ไม่ใช่หมายเลขเวทย์มนตร์ที่แก้ไขปัญหานี้ เนื้อหาของไฟล์ทั้งสองนั้นไม่เปลี่ยนแปลง blkid ไม่แสดงบรรทัดที่มี / dev / sda7 อีกต่อไปและ gparted จะแสดง swap พาร์ติชั่นเป็น "ไม่รู้จัก"

ข้อเสนอแนะใด ๆ ผลลัพธ์ของสิ่งที่ฉันสามารถดูหรือสิ่งอื่นที่ฉันสามารถลองยินดีต้อนรับจริงๆ วิธีแก้ปัญหาของฉันในขณะนี้คือไม่รีบูต แต่บางครั้งเมื่อมีการอัปเดตแล็ปท็อปของฉันต้องการรีบูตจริงๆ

แก้ไข 3: มีอะไรอีกไหมที่เราจะลองแก้ไขได้ คำสั่งใด ๆ ที่ฉันสามารถลอง? เอาท์พุทใดที่ฉันสามารถดู?

คำตอบ:


8

สิ่งนี้ไม่ได้เกิดขึ้นในการรีบูต หลังจากเสร็จสิ้นการตั้งค่าของคุณ (ที่ทำงานecryptfs-setup-swap) กลับไปและโหลดตารางและเปิดการทำงานและขั้ว:gparted sudo fdisk -l /dev/sdaคุณจะพบว่ายังคงมีพาร์ทิชันId 83Swap ลินุกซ์และกลายเป็นในรูปแบบที่ไม่รู้จัก

ทำไมถึงเป็นอย่างนั้น! มันกลายเป็นพาร์ติชั่นที่เข้ารหัสแล้ว

ใน/etc/fstab:

  • พาร์ติชั่นการแลกเปลี่ยนเก่าแสดงความคิดเห็น
  • แทรกแผนที่ใหม่แล้ว:

    /dev/mapper/cryptswap1 none swap sw 0 0
    

นี่เป็นเรื่องปกติ

ใน/etc/crypttab:

  • เพิ่มบรรทัดใหม่เพื่อจับคู่การสลับ:

    cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    

แต่มีบางอย่างผิดปกติที่นี่พาร์ติชันเข้ารหัสมี UUID (ไม่เข้ารหัส) หรือไม่ !!!

  1. ดังนั้นให้ตั้งค่าเส้นทาง dev โดยตรงเป็นตัวอย่างนี้:

    cryptswap1 /dev/sdXX /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    
  2. รีบูตแล้ว Swap จะเปิด

BTW นี้ควรรายงานว่าเป็นข้อบกพร่อง ecryptfs-setup-swapควรใช้เส้นทางอุปกรณ์แทน uuid

อัปเดต:ฉันสามารถหาคำถามที่ตอบแล้วซึ่งรวมถึงรายงานข้อผิดพลาดด้วย

มันมีคำตอบที่ยอมรับโดยการเพิ่มoffset=ตัวเลือกใน crypttab


ขออภัยฉันใช้เวลานานกว่าจะได้รับสิ่งนี้ฉันหวาดระแวงเล็กน้อยเกี่ยวกับการสำรองข้อมูลดังนั้นฉันจึงต้องการสำรองข้อมูลก่อน ... ฉันลองสิ่งที่คุณแนะนำรีบูทครั้งเดียวไม่มีการสลับรีบูตอีกครั้งสลับทำงานหัน ปิดเด้งอีกครั้งไม่มีการแลกเปลี่ยน, รีบูตอีกครั้งไม่มีการแลก ... แปลกมากที่ผ่านมาครั้งที่สองก็ยังมีข้อความในระหว่างการบูตเกี่ยวกับ / dev / mapper / cryptswap ไม่พร้อม
fifaltra

น่าเศร้าที่นี่ไม่ได้ผลสำหรับฉันการแลกเปลี่ยนยังคงหายไปหลังจากที่รีบูตเครื่อง วิธีการชดเชยยังไม่ทำงาน
fifaltra

และด้วยวิธีการชดเชยฉันหมายถึงสิ่งที่อธิบายไว้ในคำตอบของคำถามที่เชื่อมโยงและสิ่งที่อธิบายไว้ในรายงานข้อผิดพลาด ...
fifaltra

@ fifaltra อาจเป็นข้อผิดพลาดที่แยกต่างหาก แต่ฉันจะลองถ้าสามารถทำซ้ำได้หรือหาวิธีแก้ไข
user.dz

@ fifaltra เนื่องจากวิธีแก้ปัญหาใช้sudo /etc/init.d/cryptdisks restartงานได้สำหรับฉันหลังจากบูต (ฉันได้รับ 1 ไม่มีการแลกเปลี่ยนใน 10 รีบูตเครื่องที่ฉันทำ)
user.dz

-2

คุณสามารถลองจากเทอร์มินัล:

 sudo -i
 umount -a
 gedit /etc/fstab

จากนั้นพิมพ์สิ่งนี้ลงที่ด้านล่าง:

 uuid   name   mount  type
 xxxxx  swap   /       sw   sw   errors=noremount   0

จากนั้นพิมพ์สิ่งนี้ในเทอร์มินัล:

 mount -a

จากนั้นใช้ gpart และตั้งค่า swap drive swap / และมันอาจทำงานได้ดีในลักษณะนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.