Shell Script для установки программного обеспечения настроить сеть

Привет, я хотел знать, как после новой установки Ubuntu я могу установить все необходимые программы (vlc, apache, MySQL, PHP, java, Netbeansetc) с помощью сценария оболочки.

Также я хотел, чтобы тот же сценарий оболочки настраивал мой статический сетевой IP-адрес, включая Address, Gateway, netmask & amp; IP-адрес DNS-сервера для IPv4 ... Возможно?

Не возможно, верно?

0
задан 18 May 2011 в 18:25

2 ответа

Я сделал это приблизительно неделю назад, потому что мой SSD умер, и я должен был использовать LiveCD, и я не хотел повторять шаги:

Переменные, которые я использовал, должны быть объясняющими:

ifconfig eth0 $address netmask $netmask
ip route add default via $gateway
echo "nameserver $dns_server" > /etc/resolv.conf

Это предполагает, что скрипт будет запущен как корень. В противном случае необходимо предварительно ожидать sudo к первым двум командам и замене > в третьей команде с | sudo tee. Обратите внимание, что они управляют, обходят Администратора сети, но это работает на меня. YMMV

Для установки программ можно использовать склонный:

apt-get install vlc apache2 mysql-server php5 [other packages here]

Следующее получено из моего кода установки программного обеспечения на моем LiveCD (корневые полномочия спросят через sudo):

try_install_yes_to_all=false
try_install () {
    # Usage: try_install 'apt_options' package1 package2 ... packageN
    # You'll be prompted whether you want to install a (set of) package(s) or not
    # Y=Yes, N=No, A=All (do not ask in future)
    local opts="$1"
    shift
    if [ $(dpkg -l "$@" 2>/dev/null | grep '^ii' | wc -l) != $# ]; then
        while true; do
            $try_install_yes_to_all || printf 'install %s ? [Y/N/A] ' "$*"
            $try_install_yes_to_all && yn=Y || read yn
            case "$yn" in
                [YyAa])
                    [[ $yn == [Aa] ]] && try_install_yes_to_all=true
                    sudo apt-get install -y $opts "$@"
                    break
                    ;;
                [Nn])
                    break
                    ;;
            esac
        done
    fi
}
# install language packs
try_install '' language-pack-kde-nl language-support-nl
# install Firefox without "Recommended:" packages (like firefox-globalmenu)
try_install '--no-install-recommends' firefox

Поскольку определенные пакеты требуют перевхода в систему (пакеты языка), я отредактировал параметры загрузки путем добавления следующей строки к опциям ядра:

init=/bin/bash

Это загрузит оболочку вместо того, чтобы делать нормальную начальную загрузку. Скручивание жгутов, которые окружают, Вы, возможно, должны были бы работать modprobe usb-storage если Ваша карта с интерфейсом USB со сценарием не была вставлена в систему.

Затем, смонтируйте свой раздел со сценарием на нем и выполните его:

mount /dev/sdc1 /mnt
/mnt/script-to-run

Обратите внимание, что Вы не можете использовать Ctrl + C или дескрипторы файлов. Если необходимо завершить все программы включая сценарий, выпустить Высокий звук + SysRq + E ярлык. Если сценарий все еще работает, сила, уничтожающая все процессы с: Высокий звук + SysRq + я.

Когда сценарий завершится, размонтируйте раздел:

umount /mnt

Для продолжения нормальной начальной загрузки работайте:

exec init
0
ответ дан 18 May 2011 в 18:25

Чтобы использовать сетевое соединение из командной строки, вы можете использовать пакет интерфейса командной строки NetworkManager (cnetworkmanager):

Информация о пакете: http://packages.ubuntu.com/natty/ cnetworkmanager

Информация об использовании: http://vidner.net/martin/software/cnetworkmanager/

Пример вызова, который будет подключаться к сети под названием YOURSSID :

cnetworkmanager --connect=YOURSSID

Что касается установки программного обеспечения из командной строки, вы можете сделать это с помощью команд apt-get и apt-cache. Сначала вам нужно найти точные имена пакетов, которые вы хотите установить (обычно включая номера версий для перечисленных вами служб). Вы можете использовать поиск apt-cache, чтобы найти их. Например:

apt-cache search apache

После того, как вы просмотрели эти результаты и нашли имена пакетов, вы можете установить их, используя apt-get:

apt-get install vlc apache mysql etc
0
ответ дан 18 May 2011 в 18:25

Другие вопросы по тегам:

Похожие вопросы: