рдиреНрдпреВрдирддрдо рд╢реНрд░рдо рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдХрд╛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдпрд╛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдкреНрд░рдХреНрд╖реЗрдкрдг

рд╣рдорд╛рд░реЗ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╣реА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рдереА, рд╣рдо рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рдЗрддрдиреА рдХрдо рдЪрд░реНрдЪрд╛ рд╡рд╛рд▓реЗ рдореБрджреНрджреЗ рдкрд░ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдЬрд▓реНрджрдмрд╛рдЬреА рдХрд░рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрддреНрдпрдзрд┐рдХ рднрд░реА рд╣реБрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реИрдХрдбрд╝реЛрдВ рд╕рд░реНрд╡рд░реЛрдВ рдХреА рддреЗрдЬреА рд╕реЗ рддреИрдирд╛рддреА рд╣реИред

рднреМрдЧреЛрд▓рд┐рдХ рд░реВрдк рд╕реЗ рджреВрд░рд╕реНрде рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░ рдореЗрдВ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреМрддрд┐рдХ рдкрд╣реБрдВрдЪ рдХреЗ рд╕рд╛рде рдХрдИ рд╕реМ рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рдХреИрд╕реЗ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рдП? рдХреИрд╕реЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ?
рд╣рдо рдЖрдкрдХреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдмрддрд╛рдПрдВрдЧреЗред

рдиреАрдЪреЗ рд╣рдо рд╕рд░реНрд╡рд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдкрд╣рд▓реЗ рдЪрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ; рдХрд┐рддрдиреА рдЬрд▓реНрджреА рдФрд░ рд╕рдордп рдкрд░ рд╣рдордиреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рдкреВрд░рд╛ рдХрд┐рдпрд╛, рдФрд░ рдЗрд╖реНрдЯрддрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВред рдпрджрд┐ рдпрд╣ рд╡рд┐рд╖рдп рдЖрдкрдХреЛ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдУрдПрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдХрд╛рдо рдХреЗ рдорд╛рд╣реМрд▓ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрди рд╣реЛрдВрдЧреЗ, рдЬрд┐рд╕рдХреА рдЕрдкрдиреА рд╕реВрдХреНрд╖реНрдорддрд╛рдПрдВ рднреА рд╣реИрдВред

рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдХрдИ рд╕реМ рдирдП рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдЕрднреА рд╣рдорд╛рд░реЗ рджреЛ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдкрд░ рдЖрдП рдереЗред

рд╕рдлрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдкрд░, рдЖрдЙрдЯрдкреБрдЯ рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:рдЬрд╛рдирдХрд╛рд░реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдереА:рдмреЗрд╢рдХ, рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрдард┐рдирд╛рдЗрдпрд╛рдВ рдереАрдВред рдкрд╣рд▓реЗ, рд╣рдорд╛рд░реЗ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреА рд╕рд░реНрд╡рд░ рддрдХ рднреМрддрд┐рдХ рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рдереАред рджреВрд╕рд░реЗ, рдбрд┐рд▓реАрд╡рд░реА рдХреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдореЗрдВ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдереЗред рдФрд░ рддреАрд╕рд░рд╛, рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рд╕рднреА рдЬрд╛рдирддреЗ рдереЗ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЗрд╡рд▓ рдЙрдирдХреЗ рдХрд╛рд░рдЦрд╛рдиреЗ рдХреЗ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдереЗред

рдЬреНрдпрд╛рджрд╛рддрд░, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдбреЗрдЯрд╛ рд╕реЗрдВрдЯрд░ рдХреЗ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реБрдП рдПрдХ dd , PXE рд╕рд░реНрд╡рд░ рдФрд░ rsync , рдХрд╛рд░реНрдп рд╕реЗрдЯрд┐рдВрдЧ рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рд╣рдордиреЗ рд╕рд╡рд╛рд▓ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ред

рд╣рдордиреЗ рдЬреЛ рд╕рдорд╛рдзрд╛рди рдкрд╛рдпрд╛, рдЙрд╕рдореЗрдВ рдХреБрдЫ рд╕реНрд╡рдЪрд╛рд▓рди рд╢рд╛рдорд┐рд▓ рд╣реИред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдиреАрдЪреЗ рджреА рдЧрдИ рд╕рднреА рд▓рд┐рдкрд┐рдпрд╛рдБ рдХреЗрд╡рд▓ рд╕реВрдЪрдирд╛ рдХреЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИрдВ рдФрд░ рдкреВрд░реНрдг рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред

рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдп рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдирдП рд╕рд░реНрд╡рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХреМрди рд╕реЗ рдЖрдИрдкреА рдкрддреЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдЧрдП рдереЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдиреЛрдб рдмрдирд╛рдпрд╛

  ILOHOSTNAME1 ILOPASSWORD1
 ILOHOSTNAME2 ILOPASSWORD2 

рд╣рдореЗрдВ рдмрд╛рд░рдХреЛрдб рд╕реНрдХреИрдирд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрд╡рд░ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╕реНрдЯрд┐рдХрд░ рд╕реЗ рдпрд╣ рдбреЗрдЯрд╛ рдорд┐рд▓рд╛ рд╣реИред рдорд╛рдирдХ рд▓реЙрдЧрд┐рди рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ - рдкреНрд░рд╢рд╛рд╕рдХред рд╕реНрдЯреАрдХрд░ рдЙрджрд╛рд╣рд░рдг:


рдЕрдм рдПрдХ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдирд╛ рд╕рдВрднрд╡ рдерд╛ рдЬреЛ рд╣рдореЗрдВ рд╣реЛрд╕реНрдЯрдирд╛рдо рдФрд░ рдЖрдИрдкреА рдореИрдЪ рдПрдХрддреНрд░ рдХрд░рддрд╛ рдерд╛:

  $ i рдореЗрдВ (рдХреИрдЯ рдиреЛрдбреНрд╕ | awk {'рдкреНрд░рд┐рдВрдЯ $ 1'});  do j = $ (cat nodes | grep $ i | awk {'$ $ 2'});  ssh DHCPD_SERVER_FQDN "sudo cat / var / log / messages | grep $ i | tail -1 | sed 's / $ /' $ j '/ g'";  рдХрд┐рдпрд╛ 

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдиреАрдЪреЗ рдХреА рддрд░рд╣ рд▓рд╛рдЗрдиреЗрдВ рдорд┐рд▓реАрдВ, рдЙрдиреНрд╣реЗрдВ рдиреЛрдбреНрд╕рд╡рд┐рдк рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛:

  рдЬреБрд▓рд╛рдИ 1 10:31:23 рд╕реНрдерд╛рдиреАрдп @ DHCPD_SERVER dhcpd: DHCPACK 10.10.10.213 рд╕реЗ 9c: 8e: 99: 19: 3a: 68 (ILOUSE125NDBF) 10..10.10.13 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ W3G554L7
 Jul 1 10:31:35 рд╕реНрдерд╛рдиреАрдп @ DHCPD_SERVER dhcpd: DHCPACK 10.10.10.210 рд╕реЗ 9c: 8e: 99: 19: b6: aa (ILOUSE125NDBA) 10.10.1.1 BJCP691P рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
 рдЬреБрд▓рд╛рдИ 1 10:31:47 рд╕реНрдерд╛рдиреАрдп @ DHCPD_SERVER dhcpd: DHCPACK 10.10.10.211 рд╕реЗ 9c: 8e: 99: 19: 58: 7c (ILOUSE125NDBG) 10..10.10.1 67MG91SV рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 

рдЕрдм рд╣рдореЗрдВ рдирдП рд╕рд░реНрд╡рд░ рдХреЗ рд╕рднреА рдЖрдИрдкреАрдПрдордЖрдИ рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдЙрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдорд╛рдирдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдЖрдЧреЗ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП рд╢реБрджреНрдз рдФрд░ рдПрдордЬреАрдПрдо рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдореИрдХ рдкрддреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛

  рдХреЗ рд▓рд┐рдП рдореИрдВ $ рдореЗрдВ (рдмрд┐рд▓реНрд▓реА nodeswip | awk {'рдкреНрд░рд┐рдВрдЯ $ 8'});  do j = $ (grep $ i nodeswip | awk {'print $ 14'});  рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ expwip.sh $ i $ j |  grep Port1NIC_MACAddress;  рдХрд┐рдпрд╛; 

рдЬрд╣рд╛рдВ sh-script expwip.sh рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рдерд╛:

  #! / usr / рдмрд┐рди / рдЙрдореНрдореАрдж
 рдЯрд╛рдЗрдордЖрдЙрдЯ 600 рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ  
 IP рд╕реЗрдЯ рдХрд░реЗрдВ [lindex $ argv 0]
 рд╕реЗрдЯ рдкрд╛рд╕ [lindex $ argv 1]
 spawn ssh рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ @ $ ip
 рд╕реЗрдЯ рдЙрддреНрддрд░ "$ рдкрд╛рд╕"
 рд╕реЗрдЯ рдХрдо 1 "create / map1 / accounts1 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо = рдирд┐рдпреЛрдЬрдХ рдкрд╛рд╕рд╡рд░реНрдб = рдкрд╛рд╕рд╡рд░реНрдб рдирд╛рдо = рдирд┐рдпреЛрдЬрдХ рд╕рдореВрд╣ = рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, oemhp_vm, oemhp_power, oemhp_rc"
 рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ @ $ ip рдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб:"
 "$ answer \ r" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ "</> hpiLO->"
 "$ comm1 \ r" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ "</> hpiLO->"
 "рд╢реЛ / system1 / network1 / Integrated_NICs \ r" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ "</> hpiLO->"
 "рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ 

рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдХреЗ рдиреЗрдЯ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдореИрдХ рдкрддреЗ рдХреА рдкрд░рд┐рдгрд╛рдореА рд╕реВрдЪреА рдХреЛ рдЯреЗрдмрд▓ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рд╕реЗ рд╣рдореЗрдВ рд╕рднреА рдореИрдЪреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓реАред

рдлрд┐рд░ рд╣рдордиреЗ рдбреАрдПрдЪрд╕реАрдкреА рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд░рдгреЛрдВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛, рдФрд░ рдлрд┐рд░ рд╕рд░реНрд╡рд░ рдХреЛ рдиреЗрдЯрдмреВрдЯ рдкрд░ рднреЗрдЬрд╛ред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдИрдкреАрдПрдордЖрдИ рдЗрдВрдЯрд░рдлреЗрд╕ рднреЗрдЬрдирд╛ рдерд╛ рддрд╛рдХрд┐ рд╡реЗ рдЙрдиреНрд╣реЗрдВ рд╕реМрдВрдкреЗ рдЧрдП рдкрддреЗ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓реЗрдВред рдпрд╣ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

  рдЙрдореНрдореАрдж рд╣реИ reset_ilo.sh $ i $ j 

рдЬрд╣рд╛рдВ $ i рдкрд╣рд▓реЗ рдкреНрд░рд╛рдкреНрдд рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рд╣реИ, $ j рдХрд╛рд░рдЦрд╛рдирд╛ рдкреНрд░рд╢рд╛рд╕рдХ рдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╣реИ

Reset_ilo.sh рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ:

  #! / usr / рдмрд┐рди / рдЙрдореНрдореАрдж
 рдЯрд╛рдЗрдордЖрдЙрдЯ 600 рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ  
 IP рд╕реЗрдЯ рдХрд░реЗрдВ [lindex $ argv 0]
 рд╕реЗрдЯ рдкрд╛рд╕ [lindex $ argv 1]
 spawn ssh рдПрдбрдорд┐рдирд┐рд╕реНрдЯреНрд░реЗрдЯрд░ @ $ ip
 рд╕реЗрдЯ рдЙрддреНрддрд░ "$ рдкрд╛рд╕"
 рд╕реЗрдЯ рдХрдо 1 "рд░реАрд╕реЗрдЯ / рдореИрдк 1"
 рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ @ $ ip рдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб:"
 "$ answer \ r" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ "</> hpiLO->"
 "$ comm1 \ r" рднреЗрдЬреЗрдВ
 рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ 

рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо RAID-рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЧрдарди рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗ, рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкрд░ рд╕рднреА рд╕рдВрднрд╡ рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░реВрдк рдореЗрдВ рд╕рд░реНрд╡рд░ рдХреЗ рд▓реЗрдЖрдЙрдЯ рдкрд░ рд╡реНрдпрд╛рдкрдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХреАред рдпреЗ рд╕рднреА рдСрдкрд░реЗрд╢рди рдиреЗрдЯрд╡рд░реНрдХ рдмреВрдЯ рдХреЗ рджреМрд░рд╛рди рдХрд┐рдП рдЧрдП рдереЗред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, init рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢реБрд░реВ рд╣реБрдИ, рдЬрд┐рд╕рдиреЗ RAID рд╕рд░рдгреА рдХреЛ "рддреИрдпрд╛рд░" рдХрд┐рдпрд╛:

  LD = `/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рд▓реЙрдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛред awk '$ 0 ~ / RAID 5 / ||  / RAID 0 / ||  / RAID 1 / {рдкреНрд░рд┐рдВрдЯ $ 1 "" $ 2} ''

 LD = $ {LD: -NULL}

 рдЕрдЧрд░ ["$ LD"! = "NULL"];  рдлрд┐рд░ / usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 $ рдПрд▓рдбреА рдбрд┐рд▓реАрдЯ рдордЬрдмреВрд░;  рдлрд╛рдИ
 / usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдХреНрд░рд┐рдПрдЯ рдЯрд╛рдЗрдк рдХрд░реЗрдВ = ld рдбреНрд░рд╛рдЗрд╡реНрд╕ = `/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдлрд┐рдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛред awk '$ 1 ~ / physicaldrive / ($ 2, arr,": "); рдкреНрд░рд┐рдВрдЯ $ 2} '| tr "\ n" "," | sed' s /, $ // '' рдЫрд╛рдкреЗ = 1 + 0
 рдЕрдЧрд░ [`/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдлрд┐рдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛ |  grep physicaldrive |  wc -l` -gt 1];  рдлрд┐рд░ r = `/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдлрд┐рдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛ |  grep physicaldrive |  wc -l`;  рдЪрд▓реЛ рдЯреА = $ рдЖрд░% 2;  рдЕрдЧрд░ [$ t -ne 0];  рддреЛ рдЪрд▓реЛ tl = $ r-1;  / usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдХреНрд░рд┐рдПрдЯ рдЯрд╛рдЗрдк = ld рдбреНрд░рд╛рдЗрд╡ = `/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдлрд┐рдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛ | grep physicaldrive |  рд╕рд┐рд░ - $ tl | awk '$ 1 ~ / physicaldrive / {рд╡рд┐рднрд╛рдЬрди ($ 2, рдЧрд┐рд░рдлреНрддрд╛рд░реА, ":"; рдкреНрд░рд┐рдВрдЯ $ 2}' | tr "\ n" "," | sed "s /, $ // '' рдЫрд╛рдкрд╛ = 1 + 0;  / usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рд╕рд░рдгреА рд╕рднреА рдЬреЛрдбрд╝ рдкреБрд░реНрдЬреЛрдВ = `/ usr / sbin / hpacucli ctrl рд╕реНрд▓реЙрдЯ = 0 рдлрд┐рдЬрд┐рдХрд▓рдбреНрд░рд╛рдЗрд╡ рд╕рднреА рд╢реЛ | grep physicaldrive |  рдкреВрдВрдЫ -1 | awk '$ 1 ~ / physicaldrive / {рд╡рд┐рднрд╛рдЬрд┐рдд ($ 2, рдЧрд┐рд░рдлреНрддрд╛рд░реА, ":); рдкреНрд░рд┐рдВрдЯ 2 2}'ред tr" \ n "", "| sed 's /, $ //' ';  рдлрд╛рдИ;  рдлрд╛рдИ 

рдирддреАрдЬрддрди, рд╣рдореЗрдВ 1 + 0 рдпрд╛ "рджрд░реНрдкрдг" рдорд┐рд▓рд╛ред рдлрд┐рд░, рдПрдХ рдПрдЬреЗрдВрдЯ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдиреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЬрд╛рдирдХрд╛рд░реА рднреЗрдЬреАред рд╣рдо рдПрдХ рдлреНрдпреВрдЬрди рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдПрдЬреЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рд╣рдордиреЗ рд╕реВрдЪрдирд╛ рд╕рдВрдЧреНрд░рд╣ рд╕рд░реНрд╡рд░ рдХреЗ рдкрддреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рд╛ред рдкрд░рд┐рдгрд╛рдо рдлреНрдпреВрдЬрди рдЗрдиреНрд╡реЗрдВрдЯрд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:


рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкрд░ рд╕рднреА рдлрд░реНрдорд╡реЗрдпрд░ рдЕрджреНрдпрддрди рдХрд░ рд░рд╣рд╛ рдерд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдХрдардкреБрддрд▓реА рдореЗрдВ рдХрдИ рд╡рд░реНрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдирдП рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдЪрд▓рд╛рдП рдЬрд╛рддреЗ рдереЗред рдиреАрдЪреЗ рдПрдХ рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░ "рджрд┐рдЦрддрд╛ рд╣реИ" рдФрд░, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ RAID рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрд╡рд╢реНрдпрдХ рдПрдХ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред рдЗрд╕реА рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ, рд╢реЗрд╖ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЕрджреНрдпрддрди рдХрд┐рдП рдЧрдП рдереЗред

  рд╡рд░реНрдЧ hp_raid_update_rom {
         рдирд┐рд╖реНрдкрд╛рджрд┐рдд {"updateraid":
                 рдХрдорд╛рдВрдб => "wget тАЛтАЛ-P / tmp / http: //WEBSERVER/install/soft/firmware/hp/raid/5_12/CP015960.scexe; wget -P / tmp / http:: WEBSERVER / install / soft / update_hp_raid_firmware_512 рд╢; chmod + x /tmp/CP015960.scexe; chmod + x /tmp/update_hp_raid_firmware_512.sh ;/tmp/update_p_raid_firmware_512.sh; рдЧреВрдВрдЬ '5.12'> / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░_
                 onlyif => "/ usr / bin / test` / sbin / lspci | grep -i 'Hewlett-Packard Company Smart Array G6' | wc -l`! = '0' && / usb / bin / test` / usr / sbin / hpacucli ctrl рд╕рднреА рд╢реЛ рдбрд┐рдЯреЗрд▓ | grep -i рдлрд░реНрдорд╡реЗрдпрд░ | awk {'Print \ $' '}}! =' 5.12 '&& ([! -f / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░]] [' cat / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░`! '' 5.12 ']) ",
                 рдкрде => "/ usr / рдмрд┐рди: / рдмрд┐рди",
                 рдЖрд╡рд╢реНрдпрдХрддрд╛ => Exec ["remove_report_file", "remove_empty_report_file",,
         }
         рдирд┐рд╖реНрдкрд╛рджрд┐рдд {"remove_report_file":
                 рдХрдорд╛рдВрдб => "/ рдмрд┐рди / рдЖрд░рдПрдо / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░",
                 onlyif => "[-f / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░] && [` рдмрд┐рд▓реНрд▓реА / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░` == `/ usr / sbin / hpacucli ctrl рд╕рднреА рд╢реЛ рд╡рд┐рд╡рд░рдг | grep -i рдлрд░реНрдорд╡реЗрдпрд░ред awk {'Print \ $ 3'}`] "
                 рдкрде => "/ usr / рдмрд┐рди: / рдмрд┐рди",
         }
         рдирд┐рд╖реНрдкрд╛рджрд┐рдд {"remove_empty_report_file":
                 рдХрдорд╛рдВрдб => "/ рдмрд┐рди / рдЖрд░рдПрдо / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░",
                 onlyif => "[-f / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░] && [` рдмрд┐рд▓реНрд▓реА / tmp / рдлрд░реНрдорд╡реЗрдпрд░_ рдбрд░ | wc -l` == '0'] ", |
                 рдкрде => "/ usr / рдмрд┐рди: / рдмрд┐рди",
         }
 } 

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдордиреЗ рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред рд╣рдорд╛рд░реЗ рд╕рднреА рдорд╢реАрди рдПрдХ рдореБрдХрд╛рдмрд▓рд╛ рдУрдПрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ, рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ Badoo рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдереЗред

рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдореЗрдВ рдХреЗрд╡рд▓ рдЙрдкрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рддреИрдпрд╛рд░реА рдХреЗ рдЪрд░рдг рдХрд╛ рд╡рд░реНрдгрди рд╣реИ, рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рдХреЗ рдмрд╛рд╣рд░ рдУрдПрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рд╢реНрди рдереЗред рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЦреБрд╢реА рд╕реЗ xCAT рдФрд░ рдХрдардкреБрддрд▓реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЗрди рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд╣рдорд╛рд░реЗ рддрд░реАрдХреЗ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВрдЧреЗред

рдЖрдк рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рдкрд░ рдЕрдкрдиреЗ рд╕реБрдЭрд╛рд╡, рд╕рд╡рд╛рд▓ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ - рд╣рдо рд╣рдореЗрд╢рд╛ рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП рдЦреБрд▓реЗ рд╣реИрдВ!

рд╕рдЧрд╛рдИ рдХрдВрдкрдиреА

Source: https://habr.com/ru/post/In133387/


All Articles