Я проверил систему S10, которую я должен вручить, и это смотрит точно как Ваш. Можно ли попытаться подключить что-то еще к тому же порту коммутатора и кабелю для проверки их? В системе существует ли второй NIC?
# ifconfig -a
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
inet 192.168.1.68 netmask ffffff00 broadcast 192.168.1.255
ether 0:c:29:25:22:f8
# netstat -rn
Routing Table: IPv4
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ---------- ---------
default 192.168.1.254 UG 1 8
192.168.1.0 192.168.1.68 U 1 3 e1000g0
224.0.0.0 192.168.1.68 U 1 0 e1000g0
127.0.0.1 127.0.0.1 UH 4 127 lo0
Единственный способ - обновить этот файл и затем перезапустить службу. Вы можете отправить новый файл, а затем сделать так, чтобы служба потребовала этого; таким образом, когда содержимое обновлено, служба запустится должным образом.
Если вы не хотите полностью заменять файл, вы можете использовать инструмент Puppet augeas, чтобы просто изменить одну строку в файле по умолчанию.
Есть несколько служб в Debian и его производных, которые не запускаются автоматически после установки пакета, если он не включен в / etc / default. Немного раздражает.
Edit: FYI, сценарий инициализации на самом деле считывает значения из этого файла (обычно просто извлекает его из источника).
For the hell of it I checked a few of the standard daemons on my 12.04 machines. You have to manage the file, no way around it at this point in time.
snmpd
# snmpd control (yes means start daemon).
SNMPDRUN=yes
collectd
# 0: start collectd on boot, 1: do not start collectd on boot
# default: 0
DISABLE=0
puppet
# Start puppet on boot?
START=yes
mdadm
# START_DAEMON:
# should mdadm start the MD monitoring daemon during boot?
START_DAEMON=true
haproxy
# Set ENABLED to 1 if you want the init script to start haproxy.
ENABLED=1
I use sed to modify the file. Augeas seems like overkill.
sed -i /etc/default/puppet -e 's/START=no/START=yes/'
Idea taken from here:
http://www.codelord.net/2010/12/19/using-puppet-to-automatically-configure-new-ec2-instances/
So, in your case
sed -i /etc/default/npcd -e 's/RUN="no"/RUN="yes"/'
Выполнение этого с помощью типа augeas
в Puppet - это один из способов (как предлагает @DukeLion).
Другой способ - использовать augeasproviders
] модуль с поставщиком shellvar
:
shellvar { 'npcd_default':
ensure => present,
target => '/etc/default/npcd',
variable => 'RUN',
value => 'yes',
comment => 'We want npcd to run',
}
Это лучше, потому что Augeas будет чисто использоваться поставщиком Ruby. Он также будет автоматически управлять цитированием и комментариями.