Запустить сценарий оболочки при запуске или загрузке

7

Моя проблема в двух словах заключается в том, что я должен запускать скрипт каждый раз, когда я использую свой компьютер, поэтому я пытаюсь немного автоматизировать процесс.

Моя система имеет карту vvvia gt540m vga. Карта двойная. У этого есть одна карточка высокого класса для требовательных задач, и она использует низкую бортовую карту для всего остального.

Ubuntu в это время не поддерживает этот тип VGA-карты, и он постоянно их активирует, когда используется только встроенный.

Это приводит к очень низкому сроку службы батареи.

Я довольно новичок в ubuntu, поэтому мне пришлось следовать тонне учебников, прежде чем на самом деле найти сценарий для решения проблемы.

Я загрузил папку acpi_call в каталог / home / anpel, и со следующими командами я убил карту:

cd /acpi_call
sudo insmod acpi_call.ko
sudo ./test_off.sh

Следующий шаг, поскольку мне приходилось вручную запускать команды каждый раз, когда я загружался, заключался в создании сценария оболочки на моем рабочем столе, который я запускаю, он запрашивает мой пароль, и после его предоставления он убивает мои карта. Сценарий выглядит следующим образом:

cd ~/acpi_call
sudo insmod acpi_call.ko
sudo ./test_off.sh
echo VGA card dead
exit

Теперь я пытаюсь заставить мою систему запускать этот скрипт каждый раз, когда мой компьютер загружается, поэтому мне не нужно делать это вручную каждый раз.

У меня нет опыта в том, чтобы что-то изменить в моей системе, хотя бы, по крайней мере, некоторые рекомендации, потому что я думаю, что, скорее всего, я все испортил, и я понятия не имею, как очистить свой беспорядок, t действительно пробовал что-нибудь, но я читаю, что добавление моего скрипта в файл /etc/rc.local выполнит эту работу.

Это правда или есть что-то еще, что я должен попробовать?

---- EDIT -----

Я использую ubuntu 11.10, извините за то, что не упоминал об этом.

    
задан ppp 29.02.2012 в 10:21
источник

2 ответа

3

Вы можете запустить файл сценария в качестве загрузочного приложения (System - Preferences - Startup Applications в Ubuntu 10.04 LTS - не уверен, где эквивалент находится в 11.10).

Например, чтобы запустить утилиту inosync при загрузке, я добавил запись в Startup Applications с помощью

Name=inosync
Command=/home/toaster/inosync.sh
Comment=Mirror DataDisk to Barracuda_01 

Файл сценария bash inosync.sh должен быть включен для выполнения. Этого можно достичь, используя sudo nautilus в терминале, перейдя в файл, щелкнув правой кнопкой мыши и выбрав «Свойства», перейдите на вкладку «Разрешения» и отметьте «Разрешить выполнение файла как программы».

    
ответ дан CentaurusA 29.02.2012 в 14:23
источник
9

Правильное место для сценариев, которые нужно запустить при загрузке, - это вызвать скрипт из /etc/rc.local

Комментарии в файле суммируются:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
    
ответ дан Richard Holloway 29.02.2012 в 12:43
источник

Ознакомьтесь с другими вопросами по меткам