Ubuntu - วิธีรันคำสั่งเทอร์มินัลเมื่อบู๊ตเครื่อง?


12

ฉันต้องการรันคำสั่งเมื่อบู๊ต Ubuntu คำสั่งโดยเฉพาะคือ:

sudo shutdown +m
sudo shutdown +1

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

ฉันจะรันคำสั่งนี้โดยอัตโนมัติเมื่อระบบเริ่มต้นขึ้นได้อย่างไร


9
"การปิดระบบอัตโนมัติเมื่อบูต" ฟังดูชั่วร้าย :)
Ankit

คำตอบ:


15

/etc/rc.localวางไว้ใน (มันถูกเรียกใช้เป็นรูทดังนั้นจึงsudoไม่จำเป็นต้องมี)

นอกจากนี้คุณอาจสนใจอ่านข้อมูลเพิ่มเติมเกี่ยวกับ runlevels: http://en.wikipedia.org/wiki/Runlevel


นอกจากนี้คุณยังสามารถไปที่ระบบ / การตั้งค่า / แอปพลิเคชันเริ่มต้นและเพิ่มสคริปต์ที่นั่น
SaintWacko

ไม่ทำงานสำหรับฉันบน Ubuntu Server 18.04 - ฉันต้องการสลับเป็นsudo swapon /swapfile
Nam G VU

ใช้ crontab กับ @reboot syntax ทำงานให้ฉันอ้างอิง superuser.com/a/586078/34893
Nam G VU

6

มีหลายวิธีในการรันคำสั่งโดยอัตโนมัติ:

  1. พุ่งพรวด/etc/initระบบจะดำเนินการทุกรูปแบบสคริปต์ที่จะพบว่าการกำหนดค่าในไดเรกทอรี สคริปต์เหล่านี้จะทำงานในระหว่างการเริ่มต้นระบบ (หรือตอบสนองต่อเหตุการณ์บางอย่างเช่นคำขอปิดระบบ) และเป็นสถานที่สำหรับเรียกใช้คำสั่งที่ไม่โต้ตอบกับผู้ใช้ เซิร์ฟเวอร์ทั้งหมดเริ่มทำงานโดยใช้กลไกนี้ คุณสามารถค้นหาคำแนะนำที่อ่านได้ที่: http://upstart.ubuntu.com/getting-started.htmlหน้าคนman 5 initและman 8 initให้รายละเอียดทั้งหมดแก่คุณ

  2. เชลล์สคริปต์ที่มีชื่อ.gnomercในไดเรกทอรีบ้านของคุณจะได้รับแหล่งข้อมูลโดยอัตโนมัติทุกครั้งที่คุณเข้าสู่เซสชั่น GNOME คุณสามารถใส่คำสั่งโดยพลการในนั้น; ตัวแปรสภาพแวดล้อมที่คุณตั้งไว้ในสคริปต์นี้จะเห็นได้โดยโปรแกรมใด ๆ ที่คุณเรียกใช้ในเซสชันของคุณ โปรดทราบว่าเซสชั่นจะไม่เริ่มจนกว่า.gnomercสคริปต์จะเสร็จสิ้น ดังนั้นหากคุณต้องการเริ่มต้นโปรแกรมที่รันมานานบางโปรแกรมคุณต้องผนวก&การเรียกใช้ของโปรแกรมเพื่อที่จะแยกออกจากเชลล์ที่กำลังรัน

  3. ตัวเลือกเมนูระบบ -> การตั้งค่า -> แอปพลิเคชั่นเริ่มต้นช่วยให้คุณกำหนดแอพพลิเคชั่นที่ควรเริ่มทำงานเมื่อเซสชั่นกราฟิกของคุณเริ่มต้น (Ubuntu ตั้งค่าค่อนข้างบาง) และเพิ่ม สิ่งนี้มีวัตถุประสงค์และขอบเขตเกือบเหมือนกันของ.gnomercสคริปต์ยกเว้นคุณไม่จำเป็นต้องรู้shไวยากรณ์ (แต่คุณไม่สามารถใช้shโครงสร้างการเขียนโปรแกรมใด ๆ)


1

สำหรับสิ่งที่ง่ายคุณสามารถเพิ่มคำสั่งในระบบ -> การตั้งค่า -> เซสชั่นชี้ไปที่ตำแหน่งของสคริปต์ของคุณ

หรือคุณสามารถเพิ่มลงใน/etc/init.d/rc.localหรือทำให้งานพุ่งพรวดถ้ามันเป็นสิ่งที่ระดับต่ำกว่า

ลองดูที่https://help.ubuntu.com/community/UbuntuBootupHowtoสำหรับข้อมูลเพิ่มเติม

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