linux: how to access DHCP options from client

As you may know, you can configure any DHCP server to send many options to the clients; for example to setup dns domains, http proxy (WPAD) and so on. If you need to access these options from a linux client, you must configure the client to ASK the server for the new options, by editing /etc/dhcp/dhclient.conf, and add an entry like: option WPAD code 252 = string; also request WPAD; done that, when you’ll ask for a dhcp, the dhclient process will invoke your hook scripts with two new environment variables, old_WPAD and new_WPAD, with the values before and after the renewal. ...

November 6, 2017 · Andrea Manzini

Sincronizzare una directory tra due server linux

Obiettivo vogliamo mantenere la stessa directory sincronizzata su due server linux. Questo significa che ogni aggiunta/rimozione/modifica di file in questa directory verrà automaticamente riportato sull’altro (salvo conflitti). Diamo per assunto che i due server siano raggiungibili via rete, ma per qualsiasi motivo non sia possibile collegare dello spazio disco condiviso. Implementazione Per raggiungere lo scopo, utilizzeremo il tool: csync2 su entrambi i server (che chiameremo nodo1 e nodo2), installiamo i pacchetti necessari: ...

March 20, 2015 · Andrea Manzini

gestire i led delle schede PC Engines ALIX in Ruby

Natale si avvicina: mentre smanettavo su queste ottime PC Engines ALIX su cui ho installato una Debian modificata, ho scritto una comoda interfaccia per accendere/spegnere e far lampeggiare i led alla velocita’ desiderata… class Led #numero da 1 a 3 def initialize(ledno) ledno++ # passo 0 ma comando 1 ledno=1 if ledno<1 ledno=3 if ledno>3 @ledsyspath="/sys/devices/platform/leds_alix2/leds/alix:#{ledno}/" end def blink(millisec) File.open(@ledsyspath+'trigger','w') { |f| f.write('timer') } File.open(@ledsyspath+'delay_off','w') do |f| f.write(millisec.to_s) end File.open(@ledsyspath+'delay_on','w') do |f| f.write(millisec.to_s) end end def blink_slow! blink(500) end def blink_fast! blink(50) end def on! File.open(@ledsyspath+'trigger','w') { |f| f.write('default-on') } File.open(@ledsyspath+'brightness','w') do |f| f.write('1') end end def off! File.open(@ledsyspath+'trigger','w') { |f| f.write("none") } File.open(@ledsyspath+'brightness','w') do |f| f.write('0') end end end

November 9, 2012 · Andrea Manzini