ขั้นตอนนี้จะใช้การสลับบัญชี แต่เพียงครั้งเดียวระหว่างการตั้งค่า การใช้ Viber จะเป็นไปได้โดยไม่ต้องเปลี่ยนเซสชัน GUI แต่ใช้เฉพาะกับ สุ
คำสั่งในเทอร์มินัล
ฉันคิดว่า Viber สำหรับผู้ใช้หลัก (ผู้ใช้1 ตัวอย่างเช่น) ได้รับการติดตั้งและทำงานตกลง
สร้างผู้ใช้รายอื่น ไปที่การตั้งค่า -> ผู้ใช้ -> เพิ่มผู้ใช้ เลือกชื่อ ผู้ใช้2 ตัวอย่างเช่น
เปลี่ยนการเข้าสู่ระบบเป็นผู้ใช้รายนี้และเรียกใช้ Viber ลงทะเบียน Viber สำหรับหมายเลขโทรศัพท์อื่น
ยกเลิกการเลือก "เปิดใช้ Viber ในพื้นหลัง" เพื่อความสะดวก
ออกจากระบบ ผู้ใช้2 และเปลี่ยนกลับเป็น ผู้ใช้1.
ตอนนี้ในเทอร์มินัลเป็น ผู้ใช้1, สร้างสคริปต์ viber2.sh
ด้วยคำสั่งต่อไปนี้:
# อนุญาตให้ผู้ใช้ 2 เชื่อมต่อกับเซิร์ฟเวอร์ X:
xhost +SI:localuser:user2
# หรือเรียกใช้ xhost + หากคุณไม่สนใจเรื่องความปลอดภัย
# เรียกใช้อินสแตนซ์ Viber ที่สอง:
sudo su user2 -c "/opt/viber/Viber"
เรียกใช้สคริปต์และหน้าต่างที่มี Viber ตัวที่สองจะปรากฏขึ้น
ขั้นตอนนี้ใช้ได้กับฉันบน Ubuntu 20.04 กับ Gnome แต่ฉันเชื่อว่ากับ Mate ก็จะใช้ได้เหมือนกัน
คุณอาจเห็นข้อความแสดงข้อผิดพลาดจากสคริปต์: ไม่ได้ตั้งค่า XDG_RUNTIME_DIR ในสภาพแวดล้อม
เพียงแค่เพิกเฉยต่อมัน เว้นแต่ว่าคุณจำเป็นต้องใช้เสียงอย่างมากในอินสแตนซ์ Viber ที่สอง และพร้อมที่จะตั้งค่า pulseaudio ด้วยวิธีที่ไม่ปลอดภัยโดยเรียกใช้พัลส์ด้วยการตั้งค่า '--system'
(เสียงสำหรับ Viber ของผู้ใช้ 1 ควรทำงานได้ดี)
โปรดทราบว่ามีข้อแตกต่างบางประการเมื่อออกจากอินสแตนซ์ Viber ที่สอง: หากคุณเพียงแค่ปิดหน้าต่าง Viber กระบวนการจะยังคงทำงานอยู่ เฉพาะ Ctrl + C ในเทอร์มินัลเท่านั้นที่จะฆ่ากระบวนการ ฉันยังไม่พบวิธีแก้ปัญหาที่ดีกว่านี้ (ยัง)
หากต้องการหลีกเลี่ยงการป้อนรหัสผ่านทุกครั้งที่เรียกใช้งานสคริปต์ ให้เพิ่มบรรทัดนี้:
user1 ALL=(ALL:ALL) NOPASSWD: /usr/bin/su user2 -c /opt/viber/Viber
ถึง ซูโดเออร์
:
visudo /etc/sudoers.d/viber2_sudoers