Использование файла re.local

Единственная роль файла re.local в Linux Red Hat 7.1 - установка формы командной строки.

#!/bin/sh
# Этот сценарий выполняется *последним* из инициализационных сценариев.
# Здесь можно поместить собственные инициализационные программы,
# чтобы не заниматься полновесным системным программированием.
if [ -f /etc/redhat-release ]; then
    R=$(cat /etc/redhat-release)
    arch=$(uname -m)
    a="a"
    case "_$arch" in
        _a*) a="an";;
        _i*) a="an";;
    esac
    NUMPROC=`egrep -c "cpu[0-9]+" /proc/stat`
    if ["$NUMPROC" -gt "1"]; then
        SMP="$NUMPROC-processor"
        if ["$NUMPROC" = "8" -o "$NUMPROC" = "11"]; then
            a="an"
        else
            a="a"
        fi
    fi
    # Это будет записываться поверх файла /etc/issue при каждой загрузке.
    # Следовательно, все изменения файла /etc/issue должны записываться здесь,
    # чтобы не потеряться при загрузке.
    echo "" > /etc/issue
    echo "$R" >> /etc/issue
    echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue
    cp -f /etc/issue /etc/issue.net
    echo >> /etc/issue
fi
touch /var/lock/subsys/local

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

  1. Указывается система Linux Red Hat.
  2. Указывается аппаратная архитектура -i386 (Intel) или ахр (Alpha).
  3. Указывается число процессоров (CPU) в вашем компьютере.
  4. В файл /etc/issue записывается содержимое строки входа в систему. Оно будет выводиться в каждой строке консоли.

Поскольку файл re.local - это стандартный сценарий оболочки, в него можно записывать все, что разрешено для такого сценария, в том числе команды установки переменных среды и запуска программ. Например, в одной из управляемых мною систем файл re.local запускает демон базы данных командой:

# /usr/local/Minerva/bin/msqld &

Файл re.local можно использовать для запуска любых программ при загрузке системы. Например, чтобы получать электронную почту после загрузки какой-либо машины сети, добавьте в файл re.local этой машины команду:

# /bin/mail -s "Я загрузилась — машина такая-то" username@some.domain

Теперь при каждой загрузке этой машины будет отправляться сообщение электронной почты по адресу username@some.domain со строкой в поле темы: "Я загрузилась— машина такая-то".