2015-01-18 1 views
-2

Я ищу сценарий или простой способ добавить много адресов в CentOS.Скрипт/способ легко добавить много IP-адресов в CentOS?

Например, если я печатаю 1.1.1.1 и 2.1.2.1 скрипт будет автоматически создавать следующие два файла:

1)

/etc/sysconfig/network-scripts/ifcfg-eth0:0 

-

DEVICE=eth0:0 
BOOTPROTO=static 
IPADDR=1.1.1.1 
NETMASK=255.255.255.255 
ONBOOT=yes 
BROADCAST=1.1.1.1 

2)

/etc/sysconfig/network-scripts/ifcfg-eth0:1 

-

DEVICE=eth0:1 
BOOTPROTO=static 
IPADDR=2.1.2.1 
NETMASK=255.255.255.255 
ONBOOT=yes 
BROADCAST=2.1.2.1 

В качестве альтернативы простой вариант был бы, если бы я был .txt файл со списком IP-адресов

Любая помощь очень ценится.

+0

Вы пробовали что-нибудь? – SMA

+0

В настоящее время я создаю файлы вручную, что является огромной болью, чтобы сделать 50+ одновременно. Я буду делать это каждые несколько недель, поэтому я действительно хочу, чтобы скрипт помог – Harmonytalk

ответ

0

Вы можете сделать это с простой Баш скрипт, как показано ниже:

#!/bin/bash 

count=0 
while read line 
do 
    filename=/etc/sysconfig/network-scripts/ifcfg-eth0:$count 
    echo "DEVICE=eth0:$count\nBOOTPROTO=static\nIPADDR=$line\nNETMASK=255.255.255.255\nONBOOT=yes\nBROADCAST=$line" > filename 
    count=$((count+1)) 
done < myfile.txt 
+0

Спасибо за ответ. Как запустить этот скрипт? bash add.sh 1.2.1.2? – Harmonytalk

+0

Я просто добавляю IP-адреса в myfile.txt? что не работает – Harmonytalk

+0

Да добавьте ips в файл myfile.txt (по одному ip в строке). – SMA

0

код, который SMA отвечал не работает для меня на CentOS 6.8, однако я редактировал его немного, и это сработало:

#!/bin/bash 

count=1 
while read line; 

do 
    echo "Creating eth0:$count with IP: $line" ; 
    filename=/etc/sysconfig/network-scripts/ifcfg-eth0:$count 
    echo -e "DEVICE=eth0:$count\nBOOTPROTO=static\nIPADDR=$line\nNETMASK=255.255.248.0\nONBOOT=yes\n" > $filename 
    chmod 644 $filename 
    count=$((count+1)) 
done < myfile.txt 
Смежные вопросы