ฉันได้อัปเกรด Ubuntu 16.04 เป็น Ubuntu 18.04 แล้ว ฉันไม่ได้ตั้งใจที่จะอัปเกรดเป็น Ubuntu 20.xx เพิ่มเติมในขณะนี้ ทุกอย่างดูเหมือนจะเป็นไปด้วยดียกเว้นการสลับผู้ใช้จากภายในเดสก์ท็อป สภาพแวดล้อมเดสก์ท็อปของฉันเคยเป็นและเป็นเอกภาพ
มีผู้ใช้สองคนในคอมพิวเตอร์เครื่องนี้ ลักษณะการทำงานที่คาดไว้คือภายในสภาพแวดล้อมเดสก์ท็อป ฉันสามารถเปลี่ยนไปใช้โปรไฟล์อื่นได้โดยไม่ต้องออกจากระบบโปรไฟล์ปัจจุบัน เช่น ในระบบที่มีผู้ใช้หลายคน อันที่จริง ฉันต้องล็อกเอาท์จากโปรไฟล์หนึ่งเสมอเพื่อล็อกอินอีกโปรไฟล์หนึ่ง
สิ่งที่อยู่ด้านล่างจะเกิดขึ้นเสมอโดยไม่คำนึงว่าโปรไฟล์ใดจะเกิดขึ้นก่อน
1 ตรงหลังจากการอัพเกรด
1.1 ฉบับ
สถานการณ์ทันทีหลังจากการอัพเกรดคือ:
- ฉันลงชื่อเข้าใช้โปรไฟล์เดสก์ท็อปทั้งสองแยกกัน: ผ่าน
- เมื่อฉันอยู่ในโปรไฟล์ใดโปรไฟล์หนึ่งแล้วคลิกเมนูเพื่อเข้าถึงโปรไฟล์อื่น ไม่มีอะไร เกิดขึ้น: FAIL
ฉันจึงอยู่ในที่ที่ฉันอยู่
ฉันต้องออกจากระบบทั้งหมดเพื่อเข้าถึงโปรไฟล์อื่น
1.2 แก้ไขบางส่วน
ฉันทำตามคำแนะนำเพื่อติดตั้งสภาพแวดล้อมเดสก์ท็อปใหม่ด้วย
sudo apt ลบ lightdm
sudo apt ติดตั้ง lightdm
sudo รีบูต
สิ่งนี้แก้ไขปัญหาเพียงบางส่วนเท่านั้น
- ฉันสามารถลงชื่อเข้าใช้ในโปรไฟล์ใดก็ได้แยกกัน: PASS, OLD
- ถ้าฉันคลิกที่เมนูภายในโปรไฟล์เพื่อเข้าถึงโปรไฟล์อื่นๆ บางสิ่งบางอย่าง เกิดขึ้น: ฉันนำเสนอด้วย หน้าจอเข้าสู่ระบบ ด้วยการป้อนรหัสผ่าน: PASS, NEW
- ความละเอียดของหน้าจอเข้าสู่ระบบที่ต้องป้อนรหัสผ่านค่อนข้างหยาบ: FAIL, NEW
- หลังจากที่ฉันพิมพ์รหัสผ่านของอีกโปรไฟล์หนึ่ง รหัสผ่านจะหยุดทำงานเป็นเวลาหลายวินาทีก่อนที่จะวนกลับเข้าสู่หน้าจอการเข้าสู่ระบบ
- ดังนั้น ฉันไม่สามารถเข้าถึงโปรไฟล์ผู้ใช้อื่นได้: FAIL, NEW
- อย่างไรก็ตาม ฉันสามารถล็อกอินกลับเข้าสู่โปรไฟล์ก่อนหน้าได้
การกระทำอื่น ๆ เช่น
sudo apt ติดตั้ง ubuntu-unity-desktop
หรือ
sudo dpkg-กำหนดค่า lightdm ใหม่
ไม่มีผลหรือซ้ำซ้อน ปัญหาเดียวกันนี้เกิดขึ้นโดยไม่คำนึงว่าสภาพแวดล้อมเดสก์ท็อปจะเป็น Unity หรือ Ubuntu
2 สถานการณ์ปัจจุบัน
2.1 การทดสอบจากเทอร์มินัล
ฉันสามารถลงชื่อเข้าใช้ทั้งสองโปรไฟล์ จากสถานี. หลังจากที่ฉันอยู่ในสภาพแวดล้อมเดสก์ท็อปของโปรไฟล์ A ฉันย้ายไปที่เทอร์มินัล tty และล็อกอินเข้าสู่โปรไฟล์ B
ในการเข้าสู่ระบบครั้งแรก ก่อนที่ระบบจะแจ้งข้อความ
ไม่พบรหัสที่มีคำอธิบาย: [ลายเซ็น]
ไม่พบ process_request_key_err ในพวงกุญแจเซสชันผู้ใช้สำหรับ sig ที่ระบุ
ตัวเลือกการแยกวิเคราะห์ข้อผิดพลาด rc = [-2]
การทดสอบทั้งสอง แสดงคีย์ ctl
และ ล
ผ่าน: ดังนั้นฉันจึงเห็นเซสชันคีย์ริง (ข้อความที่ไม่พบด้านบนนั้นไม่มีสาระ) และเนื้อหาไดเร็กทอรี (ข้อความด้านบนไม่มีสาระสำคัญ)
ฉันออกและเข้าสู่ระบบอีกครั้ง ก่อนที่พรอมต์จะมีข้อความอื่น
ไม่พบลายเซ็นในพวงกุญแจผู้ใช้
อาจลองใช้ 'ecryptfs-mount-private' แบบโต้ตอบ
การทดสอบ แสดงคีย์ ctl
ล้มเหลว (ข้อความไม่พบด้านบนนั้นสอดคล้องกัน) และ ล
ผ่าน (ข้อความด้านบนไม่มีสาระสำคัญ) แม้ว่าฉันจะพยายาม ecryptfs-mount-ส่วนตัว
ฉันโหลดคีย์ ปัญหาการสลับผู้ใช้ยังคงอยู่ และข้อความเหล่านี้เกิดขึ้นอีกครั้งเมื่อรีบูตครั้งถัดไป
บางครั้งข้อความเหล่านี้ไม่ปรากฏขึ้นเลย (ดังนั้น การแล่นเรือธรรมดาภายในเทอร์มินัล) แต่ปัญหาของการสลับบัญชีในสภาพแวดล้อมเดสก์ท็อปยังคงมีอยู่
ในเทอร์มินัล ฉันสามารถดูและเรียกดูเนื้อหาของโฮมไดเร็กทอรีได้ ในทุกกรณีจะไม่มีการปิดกั้นเนื่องจากการเข้ารหัส
2.2 จากสภาพแวดล้อมเดสก์ท็อป
- ถ้าฉันออกจากระบบเดสก์ท็อปของโปรไฟล์ A และเริ่มต้นใหม่อีกครั้ง หน้าจอเข้าสู่ระบบที่มีการป้อนรหัสผ่านจะแสดงผลอย่างเรียบร้อย (ไม่มีความละเอียดหยาบ) ฉันสามารถเข้าสู่โปรไฟล์ B
- เมื่อฉันพยายามเปลี่ยนจากโปรไฟล์ A เป็น B และออกจากสภาพแวดล้อมเดสก์ท็อปของโปรไฟล์ A โดยไม่ออกจากระบบ ฉันสามารถกลับมาที่โปรไฟล์ A ได้ตลอดเวลาโดยพิมพ์รหัสผ่านผู้ใช้นั่นคือ: มันเป็นไปตามที่ฉันคาดหวังว่าจะทำงานเพื่อเปิดใช้งานโปรไฟล์ B เช่นกัน
- หากฉันสร้างผู้ใช้ใหม่ C ด้วยสิทธิ์ของผู้ดูแลระบบ (คำแนะนำของ @matigo) สิ่งต่อไปนี้จะเกิดขึ้น:
- ฉันไม่สามารถเปลี่ยนจาก A และ B เป็น C ได้อย่างแม่นยำเหมือนกับที่ฉันไม่สามารถเปลี่ยนระหว่าง A และ B;
- ฉันไม่สามารถเข้าสู่ระบบ C ที่สร้างขึ้นใหม่จากหน้าจอเข้าสู่ระบบได้เช่นกัน: หน้าจอทักทายกลับมาที่ตัวเอง สิ่งหลังจะเกิดขึ้นไม่ว่าฉันจะตั้งรหัสผ่านสำหรับผู้ใช้ C หรือไม่ก็ตาม ดังนั้นจึงไม่ใช่ข้อผิดพลาดของมนุษย์
2.3 โพสต์อื่น ๆ
ฉันได้ดูโพสต์อื่น ๆ เหล่านี้ซึ่งอ้างถึง Ubuntu รุ่นเก่ากว่า
3. การวิเคราะห์ข้อผิดพลาดใน วารสาร ctl
สิ่งนี้ตามมา คำแนะนำของเลม.
นี่คือสถานการณ์ของฉัน:
wmctrl -ม
ชื่อ: คอมพิซ
คลาส: N/A
รหัส: N/A
โหมด "แสดงเดสก์ท็อป" ของตัวจัดการหน้าต่าง: ปิด
สะท้อน $DESKTOP_SESSION
ความสามัคคี
สะท้อน $GDMSESSION
ความสามัคคี
สะท้อน $XDG_CURRENT_DESKTOP
เอกภาพ:Unity7:อูบุนตู
3.1 ไม่มี libpam-kwallet*
คำสั่ง Journalctl -p เอ่อ -b
ส่งคืนบรรทัดที่น่าสนใจต่อไปนี้ ไลท์ดีเอ็ม
:
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: PAM ไม่สามารถ dlopen (pam_kwallet.so): /lib/security/pam_kwalle
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: PAM การเพิ่มโมดูลที่ผิดพลาด: pam_kwallet.so
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: PAM ไม่สามารถ dlopen (pam_kwallet5.so): /lib/security/pam_kwall
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: PAM การเพิ่มโมดูลที่ผิดพลาด: pam_kwallet5.so
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: pam_unix(lightdm:auth): การสนทนาล้มเหลว
10 ธันวาคม 21:33:59 คอมพิวเตอร์ lightdm[3992]: pam_unix(lightdm:auth): auth ไม่สามารถระบุรหัสผ่านสำหรับ ...
ฉันพบแหล่งข้อมูลเหล่านี้
ห้องสมุด pam_kwallet.so
และ pam_kwallet5.so
เป็นของแพ็คเกจ
ที่ขาดหายไปในระบบของฉัน ฉันจะติดตั้งพวกเขา
ข้อแตกต่างที่น่าสนใจคือ เมื่อฉันออกไปที่โปรไฟล์อื่นผ่านเมนู ฉันไม่สาดเข้าไปอีกที่ทักทายด้วยตัวเลือกโปรไฟล์ แต่ในหน้า "re-entry" ของโปรไฟล์ปัจจุบัน (ราวกับว่าฉันกด Ctrl + L)
ฉันยังต้องออกจากระบบเพื่อหาทางเข้าสู่โปรไฟล์อื่น
ฉันสามารถกลับมาที่โปรไฟล์ที่ฉันอยู่เท่านั้น
3.2 ด้วย libpam-kwallet*
เส้นของ Journalctl -p เอ่อ -b
เกี่ยวกับ ไลท์ดีเอ็ม
กลายเป็น:
10 ธันวาคม 22:16:23 คอมพิวเตอร์ lightdm[1766]: pam_kwallet(lightdm:session): pam_kwallet: ไม่สามารถเขียน walletKey ไปยัง walletPipe
10 ธันวาคม 22:16:23 คอมพิวเตอร์ lightdm[1767]: pam_kwallet5(lightdm:session): pam_kwallet5: ไม่สามารถเขียน walletKey ไปยัง walletPipe
ฉันไม่พบอะไรมากมายเกี่ยวกับเรื่องนี้ ไม่สามารถเขียน walletKey ไปยัง walletPipe ที่ฉันสามารถใช้:
- รหัสแหล่งที่มา: https://github.com/KDE/kwallet-pam/blob/master/pam_kwallet.c
- การร้องเรียน: https://forums.gentoo.org/viewtopic-p-8220820.html
- รายงานข้อบกพร่อง: https://bugs.launchpad.net/lightdm/+bug/1781418
3.3 pam_ecryptfs
หลังจากที่ฉันพยายามเปลี่ยนผู้ใช้จากเมนูตามข้อ 3.1 วารสารได้ต่อท้ายข้อความในข้อ 3.2 อีกหนึ่งบรรทัด
10 ธันวาคม 23:28:11 คอมพิวเตอร์ compiz[2490]: pam_ecryptfs: ข้อผิดพลาด seteuid
หลังจากนั้นฉันตรวจสอบว่า:
dpkg -S pam_ecryptfs
ecryptfs-utils: /usr/share/man/man8/pam_ecryptfs.8.gz
ecryptfs-utils: /lib/security/pam_ecryptfs.so
สิ่งนี้เปลี่ยนโฟกัสจาก ไลท์ดีเอ็ม
และ กระเป๋าเงิน
ถึง เรียบเรียง
และ ecryptfs
. แหล่งข้อมูลเหล่านี้นำไปใช้:
4. คำถาม
ดังนั้น ดูเหมือนว่าปัญหาจะอยู่ที่การจัดการสวิตช์จากโปรไฟล์ปัจจุบันแรกไปยังโปรไฟล์อื่นภายในสภาพแวดล้อมเดสก์ท็อปเท่านั้น
โดยพื้นฐานแล้ว ฉันต้องออกจากระบบโปรไฟล์หนึ่งเสมอเพื่อเข้าสู่ระบบอีกโปรไฟล์หนึ่ง ดังนั้นจึงไม่มีพฤติกรรมของผู้ใช้หลายคน
ข้อเสนอแนะใด ๆ เพื่อแก้ไขปัญหานี้?