ฉันจะเริ่มแอปพลิเคชันโดยอัตโนมัติเมื่อเข้าสู่ระบบได้อย่างไร


349

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

คำตอบ:


411

14.04 และใหม่กว่า

  • เปิด Dash และค้นหา"แอปพลิเคชันเริ่มต้น"

    ป้อนคำอธิบายรูปภาพที่นี่

  • ตอนนี้คลิกที่เพิ่มและให้ในคำสั่งเพื่อเรียกใช้โปรแกรมประยุกต์ สามารถพบได้ในเมนูหลักหากติดตั้ง (ดูด้านล่าง) หรือตามที่แสดงในคำถามนี้

    ป้อนคำอธิบายรูปภาพที่นี่


การใช้เมนูหลัก ( alacarte ติดตั้ง alacarte )

  • เปิดโปรแกรม 'เมนูหลัก' เป็นครั้งแรก (พิมพ์Menuใน Dash)

    ป้อนคำอธิบายรูปภาพที่นี่

  • ตอนนี้เลือกโปรแกรมที่คุณต้องการเพิ่มการเริ่มต้นและคลิกที่คุณสมบัติ

    ป้อนคำอธิบายรูปภาพที่นี่

  • ตอนนี้ให้สังเกตคำสั่งสำหรับโปรแกรมนั้น

    ป้อนคำอธิบายรูปภาพที่นี่


วิธีการแบบไม่ใช่ GUI

ผู้ใช้ขั้นสูงอาจต้องการใส่ไฟล์ .desktop ~/.config/autostartเพื่อเรียกใช้แอปพลิเคชันหลังจากลงชื่อเข้าใช้ของผู้ใช้ อาจมีเนื้อหาดังต่อไปนี้:

[Desktop Entry]
Type=Application
Name=<Name of application as displayed>
Exec=<command to execute>
Icon=<full path to icon>
Comment=<optinal comments>
X-GNOME-Autostart-enabled=true

20
มีประโยชน์ส่วน "Non GUI approach" ฉันค้นหาโฟลเดอร์นั้น!
Pisu

10
gnome-session-properties
กล่อง

1
มีวิธีใดบ้างในการเรียกใช้แอปพลิเคชันก่อนลงชื่อเข้าใช้ของผู้ใช้
SuB

1
@ abhishah901: ขอบคุณสำหรับการแจ้งเตือนคำตอบอัพเดท
Takkat

4
โปรดทราบว่าหากคุณใช้วิธีที่ไม่ใช่ GUI ไฟล์จะต้องลงท้ายด้วย .desktop มิฉะนั้นจะถูกละเว้น
leo-the-manic

26

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

สำหรับเวอร์ชันที่เก่ากว่า: หากโปรแกรมที่คุณต้องการรันเมื่อเริ่มต้นทำงานอยู่ในเมนูแอปพลิเคชันคุณสามารถลากแล้วปล่อยลงในหน้าต่างแอปพลิเคชันเริ่มต้นเพื่อเพิ่มลงในรายการ

ป้อนคำอธิบายรูปภาพที่นี่


20

ทั้ง Unity และ Xfce4 มีโปรแกรม GUI ที่ให้คุณควบคุมแอปพลิเคชั่นเริ่มต้น

สำหรับความสามัคคี:

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

สำหรับเครื่องมือ Xfce4 Startup นั้นมีอยู่ในการตั้งค่า> เซสชันและการเริ่มต้น

ป้อนคำอธิบายรูปภาพที่นี่ เอื้อเฟื้อภาพโดย Xubuntu Geek xubuntugeek

หาก GUI ไม่ใช่สิ่งที่คุณต้องการและคุณต้องการการควบคุมขั้นสูงมากขึ้นคุณสามารถใส่.desktopไฟล์ใน~/.config/autostart/ไดเรกทอรีสำหรับ Xfce4 และ.desktopไฟล์ใน~/.config/autostartUnity เพื่อเรียกใช้แอปพลิเคชันหลังจากลงชื่อเข้าใช้ของผู้ใช้

ตรวจสอบคำถามนี้เพื่อรับความช่วยเหลือเพิ่มเติมเกี่ยวกับการสร้าง.desktopไฟล์:

นอกจากนี้หากคุณต้องการให้แอปพลิเคชันเริ่มต้นเริ่มต้นเฉพาะใน XFCE แต่ไม่ใช่ใน Unity คุณต้องใส่บรรทัดลงOnlyShowIn=XFCEใน.desktopไฟล์ มันมีOnlyShowIn=Unityไว้สำหรับแอปพลิเคชัน Unity เท่านั้น


จากคำตอบของคุณสิ่งที่ฉันได้รับคือสำหรับทั้งคู่ที่คุณใส่.desktopไฟล์ ~/.config/autostart/
Eduard Florinescu

กรุณาถ้าคุณรู้ด้วยใจสิ่งที่จะเป็นโปรแกรม GUI สำหรับ Unity มันคือStartup Applications(ง่ายต่อการค้นหา) สำหรับ xfce?
Eduard Florinescu

20

เปิดแอปพลิเคชั่น Startup จาก Dash

ป้อนคำอธิบายรูปภาพที่นี่

คลิกที่แอปพลิเคชันเริ่มต้น

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นคลิกที่เพิ่ม

ป้อนคำอธิบายรูปภาพที่นี่

พิมพ์ชื่อของโปรแกรมเรียกดูคำสั่งแล้วคลิกเพิ่ม

เพิ่มเติม : นี่คือตัวอย่างที่ฉันใช้เพื่อเริ่มอัตโนมัติ Guake - รุ่น Gaku ของ Yakuake:

วางสิ่งนี้ลงในกล่อง 'คำสั่ง'

sh -c "sleep 120s; guake"

การทำเช่นนี้จะเริ่มต้นโดยอัตโนมัติ แต่จะรอ 2 นาทีก่อนทำ คุณสามารถเปลี่ยน 120 เป็นสิ่งที่คุณต้องการ

แก้ไข:

สำหรับ 14.04 และ 16.04:

พิมพ์ Startup ใน Dash และเรียกใช้แบบฟอร์ม Startup Application ที่นั่น

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นทำตามขั้นตอนที่เหลือ

(โปรดทราบว่าหากคุณใช้อูบุนตูในภาษาอื่น "เริ่มต้น" อาจไม่พบโปรแกรมที่ถูกต้องลองค้นหาด้วยภาษาอื่นของคุณ)


ใน Ubuntu 14.04 ฉันไม่เห็นตัวเลือกเหล่านั้นในเมนูระบบที่มุมบนขวา
user29020

2
ใน 14.04 พิมพ์ Startup in dash และคุณสามารถเรียกใช้ได้จากตรงนั้น ดูคำตอบที่เพิ่มเข้ามา ขอบคุณ
มิทช์

9

คุณอาจต้องการเริ่มจาก CLI ผ่าน:

$ gnome-session-properties

(ในกรณีที่คุณไม่ได้ใช้ GNOME;)


1
ฉันไม่มีวิธีอื่นในการค้นหา $ # @! หน้าต่าง. ไม่มีรายการเมนูด้านบนในเครื่องของฉัน แต่คำสั่งนี้ทำให้มันถูกต้อง
Reb.Cabin

6

คุณสามารถใช้แอปพลิเคชันเริ่มต้นของ GNOME ป้อนคำอธิบายรูปภาพที่นี่

คลิกปุ่มเพิ่มจากนั้นเพิ่มคำสั่งแบบเต็มเพื่อเปิดแอปพลิเคชันที่คุณต้องการ หากคุณไม่ทราบเส้นทางของคำสั่งคุณสามารถทำได้

อันไหน name_of_commmand


6

ดูที่ไดเรกทอรี $ XDG_CONFIG_DIRS / autostart:

$ echo $XDG_CONFIG_DIRS/autostart
/etc/xdg/xdg-kde-plasma:/usr/share/upstart/xdg:/etc/xdg/autostart

ซึ่งกล่าวว่ามี 3 ไดเรกทอรีในตัวอย่างนี้ ฉันต้องการที่จะตัดรายการหอยโข่ง

sudo rm /etc/xdg/autostart/nautilus-autostart.desktop

มิฉะนั้นถ้าคุณสามารถเพิ่มได้ให้สร้างไฟล์entry ของ Desktop : sudo touch /etc/xdg/autostart/my-shell-autostart.desktopเพิ่มเนื้อหาเหล่านี้:

[Desktop Entry]
Name=foo
Terminal=false
Exec=/path/shell.sh
Type=Application
Icon=/path/icon.png
Categories=Utility;

$XDG_CONFIG_DIRS/autostartเพิ่ม "autostart" ให้กับไดเรกทอรีสุดท้ายที่คั่นด้วยโคลอน อาจมีไดเรกทอรีเริ่มอัตโนมัติภายใต้ไดเรกทอรีอื่นคั่นด้วยเครื่องหมายโคลอนเช่นกัน จริง ๆ แล้วไดเรกทอรีนั้นจะเรียงตามความต้องการ นอกจากนี้หาก$XDG_CONFIG_DIRSว่างเปล่าหรือไม่ได้ตั้งค่าไดเรกทอรีฐานไฟล์การตั้งค่าคือ / etc / xdg ดูการอ้างอิง
jarno

และควรวางไฟล์ autostart เฉพาะผู้ใช้ภายใต้$XDG_CONFIG_HOME/autostartการเริ่มต้น$HOME/.config/autostart
jarno

4

สำหรับ Ubuntu 12.04

  1. เปิดแอปพลิเคชันเริ่มต้นจากเมนูด้านบนขวา

    ป้อนคำอธิบายรูปภาพที่นี่

  2. โดยไม่ต้องคลิกที่เพิ่มเปิด Dash และพิมพ์แอปพลิเคชันที่คุณต้องการใช้งานเมื่อเริ่มต้นเช่น Skype

    ป้อนคำอธิบายรูปภาพที่นี่

  3. ลากแอปพลิเคชันไปที่หน้าต่างแอปพลิเคชันเริ่มต้น หากหน้าต่าง Dash มีขนาดใหญ่เกินไปที่คุณไม่สามารถลากแอพออกไปด้านนอกให้ใช้ปุ่มกู้คืนหน้าต่าง (แสดงในภาพก่อนหน้า) ที่มุมซ้ายบน รายการสุดท้ายมีลักษณะเช่นนี้:

    http://imgur.com/G60wbOJ


ขั้นตอนที่ 1 ใช้ไม่ได้กับ Ubuntu 16.10 แต่ความเป็นไปได้ในการลากและวางแอพลงในหน้าต่าง autostart นั้นใช้ได้ดีมาก
eDeviser

4

นอกจากนี้การใส่ BATCH FILE ลงในแอปพลิเคชันเริ่มต้นเพื่อให้ทำงานหลังจากที่ผู้ใช้ลงชื่อเข้าใช้ .... พิมพ์ที่บรรทัดคำสั่งในแอปพลิเคชันเริ่มต้นในฟิลด์คำสั่ง:

gnome-terminal  -e  "/batch-path/batch-name.sh" 
  • gnome-terminal: เปิดเทอร์มินัลหลังจากล็อกอินของผู้ใช้ด้วยสิทธิ์ผู้ใช้ปัจจุบัน
  • -e: ตั้งค่าเทอร์มินัลเพื่อเรียกใช้ไฟล์แบตช์
  • /batch-path/batch-name.sh: เป็นเส้นทางแบบเต็มของแบทช์และชื่อเต็ม

โปรดจำไว้ว่ากว่าสิทธิ์ของแฟ้มชุดที่จะตั้งธงอนุญาตให้รันไฟล์เป็นโปรแกรมที่จะเปิด


4

Ubuntu 13.10 พร้อมคำแนะนำ UNITY

การทำสิ่งนี้ด้วยคำสั่งที่ต้องการsudoนั้นค่อนข้างยุ่งยาก

ในกรณีของฉันฉันต้องการปิดการใช้งานไดรเวอร์ PSMOUSE โดยใช้คำสั่งsudo rmmod psmouseเพื่อป้องกันปัญหาการคลิกเมาส์ที่แสดงตัวเองแบบสุ่ม ดูการจัดการกับเมาส์และทัชแพดค้างใน Linuxสำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหานี้ ฉันเบื่อที่จะใส่มันในทุก ๆ การบู๊ต

ในการติดตั้งของฉัน~/.configโฟลเดอร์นั้นไม่มีโฟลเดอร์ย่อยautostartดังนั้นฉันจึงสร้างขึ้นมาใหม่ สิ่งนี้เปิดใช้งานการตั้งค่าการตั้งค่าแอปพลิเคชันเริ่มต้นของฉันที่จะบันทึก

เพื่อสลับการมองเห็นแอปพลิเคชั่นเริ่มต้นที่ซ่อนอยู่คุณสามารถใช้คำสั่งต่อไปนี้

ในการแสดง:

sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop

ในการซ่อน:

sudo sed -i 's/NoDisplay=false/NoDisplay=true/g' /etc/xdg/autostart/*.desktop

กำหนดค่าคำสั่งของคุณตามโพสต์ด้านบนในหน้าต่างStartup Applications Perferences

Name:    Fix Mouse
Command: sudo rmmod psmouse
Comment: Fix Mouse

แล้วคุณจะต้องแก้ไขetc / sudoers /sudo visudoไฟล์โดยใช้ เพิ่มบรรทัดที่มีข้อมูลต่อไปนี้:

username ALL=(ALL) NOPASSWD: /sbin/rmmod

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

หมายเหตุ :
เริ่มแรกฉันพยายามใช้ bash script เพื่อเรียกใช้คำสั่งของฉันทางอ้อม แต่ไม่ได้ผล ฉันต้องใส่sudo rmmod psmouseโดยตรงในหน้าต่างแก้ไขโปรแกรมเริ่มต้น


2

สำหรับวิธีการง่ายๆในการพกพาคุณสามารถใช้ Cron เรียกใช้crontab -eเพื่อแก้ไข crontab ของผู้ใช้ เพิ่ม@reboot commandเพื่อเรียกใช้commandในการบูตแต่ละครั้ง


2

คุณสามารถใช้คุณสมบัติเพื่อจดจำแอปพลิเคชั่นที่กำลังทำงานอยู่ในหน้าต่างการตั้งค่าระบบ / การตั้งค่า / การเริ่มต้นแอปพลิเคชัน ซึ่ง (เมื่อเปิดใช้งาน) จะ "จดจำ" โปรแกรมทั้งหมดที่คุณใช้และจะเปิดโปรแกรมเหล่านั้นอีกครั้งหลังจากรีบูตหรือเมื่อเริ่มระบบเป็นครั้งแรกในหนึ่งวัน

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

หากคุณต้องการลบแอปพลิเคชันออกจากฟีเจอร์นี้เพียงแค่ปิดมันแล้วไปที่ฟังก์ชั่นนี้แล้วกด "จำแอปพลิเคชันที่กำลังทำงานอยู่ในปัจจุบัน" เพื่อรีเฟรชรายการโปรแกรมที่จะเปิดในครั้งต่อไป

ป้อนคำอธิบายรูปภาพที่นี่


สิ่งเดียวที่ฉันไม่ชอบเกี่ยวกับสิ่งนี้คือ / ไร้สายของคุณจะช้ากว่าเบราว์เซอร์ของฉันในขณะที่มันกำลังโหลด ทุกแท็บจะต้องทำการโหลดซ้ำหลังจากเลือกระบบไร้สาย
Rinzwind

จุดดี. นั่นเป็นเหตุผลที่ฉันไม่ได้บันทึกการตั้งค่าไว้เมื่อเปิดเบราว์เซอร์ :) Docky เป็นเจ้าของตัวควบคุมสำหรับเบราว์เซอร์ของฉันพร้อมไอคอน แต่คุณเป็นจุดที่ดี! ขอขอบคุณ.
Geppettvs D'Constanzo

1

พิมพ์ "แอปพลิเคชันเริ่มต้น" ใน Unity Dash และจะแสดงรายการแอปพลิเคชันที่คุณสามารถคลิกเพื่อเปิด หลังจากเปิดแล้วคุณสามารถเพิ่มแอปพลิเคชันของคุณได้ที่นั่น


0

Alt+ แล้วF2gnome-help ghelp:user-guide?gosstartsession-2

คลิกเรียกใช้รอสักครู่แล้วทำตามคำแนะนำ


เท่ฉันรู้ส่วนที่จะเพิ่ม แต่ไม่ได้รับคำสั่ง ... ดังนั้นฉันจะ google พวกเขา? หรือฉันควรกด alt + f2 แล้วใส่ชื่อของโปรแกรม ... หากพบมันฉันจะบอกว่าทำงานใน terminal ... เพื่อแสดงคำสั่ง?

@Bob คุณต้องการให้แอปพลิเคชันเริ่มทำงานเมื่อใด
Oxwivi

0

นี่คือข้อผิดพลาดกับ "แอปพลิเคชันเริ่มต้น" ฉันต้องเรียกใช้สิ่งต่อไปนี้เมื่อเริ่มต้นเพื่อเปิดใช้งานการแมปคีย์แบบกำหนดเองที่ฉันได้กำหนดใหม่:

xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY

ฉันใส่ไว้ใน "แอปพลิเคชันเริ่มต้น" เช่นเดียวกับคำตอบอื่น ๆ ข้างต้นและมันไม่ทำงาน

SOLUTION:วางไว้ในวิธีต่อไปนี้ใน "แอปพลิเคชันเริ่มต้น":

bash -c "xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY"

(ฉันไม่รู้ว่าทำไมฉันทำงานด้วยการลองผิดลองถูก)

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