<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> <title> D.26. /lib/services/ipv4-static </title> <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" /> <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /> <link rel="stylesheet" href="../stylesheets/lfs-print.css" type= "text/css" media="print" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> </head> <body class="lfs" id="lfs-12.2"> <div class="navheader"> <h4> Линукс с нуля - Версия 12.2 </h4> <h3> Приложение D. Скрипты загрузки и настройки системы-20240825 </h3> <ul> <li class="prev"> <a accesskey="p" href="apds25.html" title="/sbin/ifdown">Пред.</a> <p> /sbin/ifdown </p> </li> <li class="next"> <a accesskey="n" href="apds27.html" title= "/lib/services/ipv4-static-route">След.</a> <p> /lib/services/ipv4-static-route </p> </li> <li class="up"> <a accesskey="u" href="scripts.html" title= "Приложение D. Скрипты загрузки и настройки системы-20240825">Наверх</a> </li> <li class="home"> <a accesskey="h" href="../index.html" title= "Линукс с нуля - Версия 12.2">Начало</a> </li> </ul> </div> <h1 class="sect1"> <a id="ipv4static" name="ipv4static"></a>D.26. /lib/services/ipv4-static </h1> <div class="wrap" lang="ru" xml:lang="ru"> <pre class="screen">#!/bin/sh ######################################################################## # Begin /lib/services/ipv4-static # # Description : IPV4 Static Boot Script # # Authors : Nathan Coulson - nathan@linuxfromscratch.org # Kevin P. Fleming - kpfleming@linuxfromscratch.org # Update : Bruce Dubbs - bdubbs@linuxfromscratch.org # # Version : LFS 7.0 # ######################################################################## . /lib/lsb/init-functions . ${IFCONFIG} if [ -z "${IP}" ]; then log_failure_msg "\nIP variable missing from ${IFCONFIG}, cannot continue." exit 1 fi if [ -z "${PREFIX}" -a -z "${PEER}" ]; then log_warning_msg "\nPREFIX variable missing from ${IFCONFIG}, assuming 24." PREFIX=24 args="${args} ${IP}/${PREFIX}" elif [ -n "${PREFIX}" -a -n "${PEER}" ]; then log_failure_msg "\nPREFIX and PEER both specified in ${IFCONFIG}, cannot continue." exit 1 elif [ -n "${PREFIX}" ]; then args="${args} ${IP}/${PREFIX}" elif [ -n "${PEER}" ]; then args="${args} ${IP} peer ${PEER}" fi if [ -n "${LABEL}" ]; then args="${args} label ${LABEL}" fi if [ -n "${BROADCAST}" ]; then args="${args} broadcast ${BROADCAST}" fi case "${2}" in up) if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP}/)" = "" ]; then log_info_msg "Adding IPv4 address ${IP} to the ${1} interface..." ip addr add ${args} dev ${1} evaluate_retval else log_warning_msg "Cannot add IPv4 address ${IP} to ${1}. Already present." fi ;; down) if [ "$(ip addr show ${1} 2>/dev/null | grep ${IP}/)" != "" ]; then log_info_msg "Removing IPv4 address ${IP} from the ${1} interface..." ip addr del ${args} dev ${1} evaluate_retval fi if [ -n "${GATEWAY}" ]; then # Only remove the gateway if there are no remaining ipv4 addresses if [ "$(ip addr show ${1} 2>/dev/null | grep 'inet ')" != "" ]; then log_info_msg "Removing default gateway..." ip route del default evaluate_retval fi fi ;; *) echo "Usage: ${0} [interface] {up|down}" exit 1 ;; esac # End /lib/services/ipv4-static </pre> </div> <div class="navfooter"> <ul> <li class="prev"> <a accesskey="p" href="apds25.html" title="/sbin/ifdown">Пред.</a> <p> /sbin/ifdown </p> </li> <li class="next"> <a accesskey="n" href="apds27.html" title= "/lib/services/ipv4-static-route">След.</a> <p> /lib/services/ipv4-static-route </p> </li> <li class="up"> <a accesskey="u" href="scripts.html" title= "Приложение D. Скрипты загрузки и настройки системы-20240825">Наверх</a> </li> <li class="home"> <a accesskey="h" href="../index.html" title= "Линукс с нуля - Версия 12.2">Начало</a> </li> </ul> </div> </body> </html>