จะรันสคริปต์ได้อย่างไรเมื่อหยุดชั่วคราว / ทำงานต่อ? - Sony VAIO Ubuntu 12.04


12

คำถาม:จะกำหนดสคริปต์ให้ทำงานอย่างไรเมื่อเลือกตัวเลือกระงับในเมนูพลังงาน

บริบท:
ฉันมีแล็ปท็อป Sony VAIO ที่มีกราฟิกการ์ด AMD Radeon ฉันต้องการปิด / เปิดใช้งานการ์ดกราฟิกแยก ฉันไม่มีปัญหาในการทำเช่นนี้ แต่มันทำให้เกิดปัญหาเมื่อหยุดชั่วคราว & ทำงานต่อจากการหยุดชั่วคราว

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

แก้ไข: หลังจากการวิจัยฉันคิดว่ามันมีบางอย่างที่เกี่ยวข้องกับไฟล์ใน/etc/pm/sleep.d/?

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

ฉันจะแยกความแตกต่างในสคริปต์ระหว่างการระงับ / การทำงานต่อได้อย่างไร

คำตอบ:


16

คุณพูดถูก คุณต้องเขียนสคริปต์และบันทึกลงใน/lib/systemd/system-sleep/(ตั้งแต่ปี 2015 systemd ดูแลก่อนหน้านี้/etc/pm/sleep.d/) ความแตกต่างระหว่างการหยุดชั่วคราวและการกลับมาทำงานซ้ำจะได้รับเป็นพารามิเตอร์ให้กับสคริปต์:

#!/bin/bash

case "$1" in
    suspend)
        # executed on suspend
        ;;
    resume) 
        # executed on resume
        ;;
    *)
        ;;
esac

หากคุณยังต้องการที่จะทำเพื่อจำศีลข้อโต้แย้งจะเป็นและhibernatethaw


ฉันเห็นสิ่งนี้ในสคริปต์อื่นและสงสัยในข้อกำหนดเฉพาะของสคริปต์ดังกล่าว ขอบคุณ :)
danielcooperxyz

สวัสดีลองสิ่งนี้กับ Dell 5570 ที่ใช้อูบุนตู 14.04 เพื่อให้มันเปิดทัชแพดของฉันถ้าฉันปิดถ้าปิดก่อนจะหยุดทำงาน ด้วยเหตุผลบางอย่างคำสั่ง tp_id=( )xinput list | grep -i touchpad | awk '{ print $7 }' | sed 's/id=//'() จะไม่ส่งคืนรหัสในขณะที่คำสั่งนี้ทำงานจากบรรทัดคำสั่ง คุณเห็นเหตุผลไหมว่าทำไมมันถึงไม่เกิดขึ้น? เพื่อจุดประสงค์อื่นสคริปต์ของคุณใช้งานได้ดี ขอบคุณ!
Leo Simon

ขออภัยในความคิดเห็นก่อนหน้านี้ฉันพยายามใส่ backticks ลงในส่วนของสคริปต์ แต่ภาษา minimarkdown ทำให้ฉันพ่ายแพ้ () หมายถึงการที่จะถูกแทนที่ด้วย backticks
Leo Simon

@LeoSimon เฮ้ลีโอความคิดเห็นไม่ถูกที่ที่จะพูดถึงคำถามติดตามดังกล่าว ฉันขอแนะนำให้คุณถามคำถามใหม่ทั้งหมด ด้วยวิธีนี้ผู้คนจำนวนมากจะเห็นและสามารถช่วยคุณได้ :-)
André Stannek

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