[opensuse-autoinstall] Identification of NICs by MAC address
Hi, is there a way of identifying NICs by MAC address rather than by interface name? We have several multi-nic machines where we run into trouble with "normal" interface names. They have e.g. 4 onboard nics, powered by the bnx2 driver and an additional quad-port card powered by the e1000 driver. If the e1000 gets loaded before the bnx2, the first onboard (which is our usual link into the install network) comes up as eth4 instead of eth0. Identifying the adapter by its mac address would do a great job to avoid this confusion... Is there a way of specifying this in the autoyast file and at the boot prompt? Best regards Sebastian -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hello, in /etc/udev/rules.d/70-persistent-net.rules you can identify your NIC with the pci id Number change this ATTR{address}=="MAC Addr" to this ID=="<PCI BUS Addr>" Dirk Lohmann -----Ursprüngliche Nachricht----- Von: Sebastian Wenner [mailto:sebastian.wenner@web.de] Gesendet: Montag, 28. Februar 2011 14:04 An: opensuse-autoinstall@opensuse.org Betreff: [opensuse-autoinstall] Identification of NICs by MAC address Hi, is there a way of identifying NICs by MAC address rather than by interface name? We have several multi-nic machines where we run into trouble with "normal" interface names. They have e.g. 4 onboard nics, powered by the bnx2 driver and an additional quad-port card powered by the e1000 driver. If the e1000 gets loaded before the bnx2, the first onboard (which is our usual link into the install network) comes up as eth4 instead of eth0. Identifying the adapter by its mac address would do a great job to avoid this confusion... Is there a way of specifying this in the autoyast file and at the boot prompt? Best regards Sebastian -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
On Mon, Feb 28, 2011 at 10:04 AM, Sebastian Wenner <sebastian.wenner@web.de> wrote:
Hi,
Is there a way of specifying this in the autoyast file and at the boot prompt?
Yes, you can add a section under "networking": <net-udev config:type="list"> <rule> <name>eth0</name> <rule>ATTR{address}</rule> <value>xx:xx:xx:xx:xx:xx</value> </rule> </net-udev> where you should substitute "xx:xx:xx..." for the actual MAC address. You could also use a placeholder string in that field, like "__MACADDR__" which could be substituted later via a pre-script. Add more rules for other interfaces as needed. -- -- Erico -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi Yet another - and perhaps more hassle-free approach - is to name the NICs by bus-ID. This way you can ensure that the NIC in slot x always is ethx and you don't have to update the profile with different MAC addresses for every machine. I documented that in http://www.novell.com/support/viewContent.do?externalId=7006937&sliceId=1 a while ago. Best regards Andreas
On 2/28/2011 at 15:40, Erico Mendonça<erico.mendonca@gmail.com> wrote: On Mon, Feb 28, 2011 at 10:04 AM, Sebastian Wenner <sebastian.wenner@web.de> wrote:
Hi,
Is there a way of specifying this in the autoyast file and at the boot prompt?
Yes, you can add a section under "networking":
<net-udev config:type="list"> <rule> <name>eth0</name> <rule>ATTR{address}</rule> <value>xx:xx:xx:xx:xx:xx</value> </rule> </net-udev>
where you should substitute "xx:xx:xx..." for the actual MAC address.
You could also use a placeholder string in that field, like "__MACADDR__" which could be substituted later via a pre-script.
Add more rules for other interfaces as needed.
-- -- Erico -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
-- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Sebastian Wenner wrote
Hi,
is there a way of identifying NICs by MAC address rather than by interface name? We have several multi-nic machines where we run into trouble with "normal" interface names. They have e.g. 4 onboard nics, powered by the bnx2 driver and an additional quad-port card powered by the e1000 driver. If the e1000 gets loaded before the bnx2, the first onboard (which is our usual link into the install network) comes up as eth4 instead of eth0. Identifying the adapter by its mac address would do a great job to avoid this confusion... Is there a way of specifying this in the autoyast file and at the boot prompt?
The "old" and ugly but often helpful way is module ordering via parameters for the installer. In this case you would use sth. like linuxrc.debug=-udev.mods insmod=bnx2 autoyast=... install=... e.g. in pxelinux.cfg. This way you can still force the order in which the modules are loaded and make the bnx2 driver load before the e1000. cu, Frank -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. * -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Frank Steiner wrote:
The "old" and ugly but often helpful way is module ordering via parameters for the installer. In this case you would use sth. like
linuxrc.debug=-udev.mods insmod=bnx2 autoyast=... install=...
e.g. in pxelinux.cfg. This way you can still force the order in which the modules are loaded and make the bnx2 driver load before the e1000.
By the way, for linuxrc there is also udev.rule like this udev.rule="mac=00:11:d8:39:4e:d0,name=eth0" See http://en.opensuse.org/Linuxrc Cheers Michael -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi, Given: SLES 11 SP1 Question: Can i use more than one result for a match ? Example: parsing a ntp.xml and a dns.xml based on memsize. Only one result per rule: ( standard ) <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>dns.xml</profile> <continue config:type="boolean">true</continue> </result> </rule> <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>ntp.xml</profile> <continue config:type="boolean">false</continue> </result> </rule> More than one result per rule. ( What i would like to know ) <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>dns.xml</profile> <profile>ntp.xml</profile> <continue config:type="boolean">false</continue> </result> </rule> Motivation: With a single match a certain configuration could be build. Example: NodeTypeOne is build of standard.xml, nis.xml, dns.xml NodeTypeTwo is build of standard.xml, ldapclient.xml, dns.xml a.s.w tia Hajo -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
I will use xsltproc as mentioned by Uwe's blog entry http://ugansert.blogspot.com/2010/04/autoyast-and-its-tools.html Thus the final xml file will be created by xsltproc and not by autoyast. Example: Mynode1 *Project1.software.xml *Project1.dns.xml *Project1.ntp.xml *Project1.nis.xml *MyNode1.specialsettings.xml Mynode2 *Project1.software.xml *Project1.dns.xml *Project1.ntp.xml *Project1.ldap.xml *MyNode2.specialsettings.xml Will result in a final Mynode1.autoinst.xml and Mynode2.autoinst.xml which will be selected by a simple rule during installation. Advantage imho - I can create dynamically configuration for nodes based on a config file. - In case a xml file need a change because for example the dns has been change, the dns.xml will be updated and used for new installation AND be used to the change running systems via "export TERM=vt100; screen -D -m yast /usr/share/YaST2/clients/ayast_setup.ycp setup filename=/tmp/$i" Thus i am able to INSTALL and to MAINTAIN a Suse Linux environment in an easy way. I hope i have not reinvented the wheel. Cheers Hajo -----Original Message----- From: Hans-Joachim Ehlers [mailto:HansJoachim.Ehlers@eumetsat.int] Sent: Monday, March 21, 2011 3:39 PM To: opensuse-autoinstall@opensuse.org Subject: [opensuse-autoinstall] Using more than 1 result in a rules file Hi, Given: SLES 11 SP1 Question: Can i use more than one result for a match ? Example: parsing a ntp.xml and a dns.xml based on memsize. Only one result per rule: ( standard ) <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>dns.xml</profile> <continue config:type="boolean">true</continue> </result> </rule> <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>ntp.xml</profile> <continue config:type="boolean">false</continue> </result> </rule> More than one result per rule. ( What i would like to know ) <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>dns.xml</profile> <profile>ntp.xml</profile> <continue config:type="boolean">false</continue> </result> </rule> Motivation: With a single match a certain configuration could be build. Example: NodeTypeOne is build of standard.xml, nis.xml, dns.xml NodeTypeTwo is build of standard.xml, ldapclient.xml, dns.xml a.s.w tia Hajo -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
on Monday 21 March 2011 Hans-Joachim Ehlers wrote:
More than one result per rule. ( What i would like to know ) <rule> <memsize> <match>256</match> <match_type>greater</match_type> </memsize> <result> <profile>dns.xml</profile> <profile>ntp.xml</profile> <continue config:type="boolean">false</continue> </result> </rule>
no, that can not work. The technical reason is, that autoyast will convert the <result> structure into a map also known as hash. The hash would have the same key ("profile") twice then and that can't work in YCP. -- ciao, Uwe Gansert Uwe Gansert SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
On Tue, Mar 22, 2011 at 01:15:28PM +0100, Uwe Gansert wrote:
no, that can not work. The technical reason is, that autoyast will convert the <result> structure into a map also known as hash. The hash would have the same key ("profile") twice then and that can't work in YCP.
I ran into similar limitations a few years ago and found the way to work around it was to use pre-install scripts that do the same kind of things on the fly. Just output to /tmp/profile/modified.xml (and up to, I think, stock sle10 I found I had to then copy that to /tmp/profile/autoyast.xml due to it re-reading autoyast.xml instead of the modified.xml one). We do a lot of things like... - Determining swap size and any leftover into a /local partition we use, based on ram and a value passed via cmdline. - Networking config parts (we install using dhcp then convert to static based on the hostname lookup in DNS). - Some <package> adds/removes based on the profile (usually adding xen/kvm bits if it's going to be a hypervisor) while still using the default xml files. Pre install is also handy for doing things like saving off existing xorg.conf or ssh keys if they exist then dropping them back in the chroot. -- Mike Marion-Unix SysAdmin/Staff IT Engineer-http://www.qualcomm.com Homer: "Oh.. I hate having parties. The toilet always gets backed up!" ==> Simpsons -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
on Wednesday 23 March 2011 Mike Marion wrote:
the fly. Just output to /tmp/profile/modified.xml (and up to, I think, stock sle10 I found I had to then copy that to /tmp/profile/autoyast.xml due to it re-reading autoyast.xml instead of the modified.xml one). We do a lot of things like...
everything you wrote is correct :) But the name of modified.xml has actually never changed. It has always been modified.xml and it still is. -- ciao, Uwe Gansert Uwe Gansert SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug listening to: "Mother" by Danzig -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi there, According to , this email address is not subscribed to this list. Am I sending the request to the correct email address? I used : <LISTNAME+unsubscribe@opensuse.org> e.g opensuse-autoinstall+unsubscribe@opensuse.org Regards, Simon. ----------------------------- Hi, this is the mlmmj program managing the mailinglist opensuse-autoinstall@opensuse.org You are not subscribed to this list, so you cannot unsubscribe. To subscribe send a message to: opensuse-autoinstall+subscribe@opensuse.org And for help send a message to: opensuse-autoinstall+help@opensuse.org -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Given: Opensuse 11.1 Task: Configure the NIS client via ayast_setup.ycp setup filename=./nisclient.xml Problem: A post script does not get executed during execution of ayast_setup Example: Simplified nisclient.xml <?xml version="1.0"?> <!DOCTYPE profile> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <nis> <!-- $Id: tce_nisclient.xml.AYAST,v 1.1 2011/03/28 10:22:55 hjehlers Exp $ --> <netconfig_policy>auto</netconfig_policy> <nis_broadcast config:type="boolean">true</nis_broadcast> </nis> <scripts> <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_init_nisclient.sh</filename> <interpreter>shell</interpreter> <location></location> <network_needed config:type="boolean">false</network_needed> <source><![CDATA[ echo "INFO: Running $(basename $0 )" ]]></source> </script> </post-scripts> </scripts> </profile> Analyse: If <filename>cfg_init_nisclient.sh</filename> Is changed to <filename>cfg_init_nisclient</filename> <!-- .sh has been removed --> The script will be executed. Additional question(s): Is it correct that only post scripts are supported via ayast_setup.ycp ? At least i could not get a init script running. Cheers Hajo -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
on Monday 28 March 2011 Hans-Joachim Ehlers wrote:
Problem: A post script does not get executed during execution of ayast_setup
Analyse: If <filename>cfg_init_nisclient.sh</filename>
Is changed to
<filename>cfg_init_nisclient</filename> <!-- .sh has been removed -->
The script will be executed.
strange. Is there anything useful in the y2log file in the error case?
Additional question(s): Is it correct that only post scripts are supported via ayast_setup.ycp ? At least i could not get a init script running.
yes, init-script don't work like expected maybe. They are only executed during the boot process. So be prepared that they are executed next time you boot the machine if you had some in an XML file and used it with ayast_setup :) -- ciao, Uwe Gansert Uwe Gansert SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi Uwe, The following might help - Looks like that the AutoinstScripts.ycp has a problem. Additional note: In the error case YAST does not tell on the screen that it is executing the post script section. Cheers Hajo FAILED cfg_init_nisclient.sh ... 2011-03-28 14:23:45 <1> tcpc2115(9528) [zypp] RpmDb.cc(~RpmDb):320 ~RpmDb() end 2011-03-28 14:23:45 <1> tcpc2115(9528) [locks++] Locks.cc(save):440 nothing changed in locks - no write to file 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] AutoinstScripts.ycp:669 Writing script into /var/adm/autoinstall/scripts/cfg_init_nisclient.sh 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] clients/inst_autoconfigure.ycp:40 current step: 41 2011-03-28 14:23:45 <1> tcpc2115(9528) [Interpreter] clients/inst_autoconfigure.ycp:232 Called YaST client returned. 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] CommandLine.ycp:1354 Commandline interface finished 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] CommandLine.ycp:1355 ---------------------------------------- 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] clients/ayast_setup.ycp:111 ---------------------------------------- 2011-03-28 14:23:45 <1> tcpc2115(9528) [YCP] clients/ayast_setup.ycp:112 ayast_setup finished ... OK cfg_init_nisclient ... 2011-03-28 14:24:48 <1> tcpc2115(9824) [zypp] TargetImpl.cc(~TargetImpl):445 Targets closed 2011-03-28 14:24:48 <1> tcpc2115(9824) [zypp] RpmDb.cc(~RpmDb):315 ~RpmDb() 2011-03-28 14:24:48 <1> tcpc2115(9824) [zypp] RpmDb.cc(~RpmDb):320 ~RpmDb() end 2011-03-28 14:24:48 <1> tcpc2115(9824) [locks++] Locks.cc(save):440 nothing changed in locks - no write to file 2011-03-28 14:24:48 <1> tcpc2115(9824) [YCP] AutoinstScripts.ycp:669 Writing script into /var/adm/autoinstall/scripts/cfg_init_nisclient 2011-03-28 14:24:48 <1> tcpc2115(9824) [YCP] AutoinstScripts.ycp:695 Script Execution command: /bin/sh -x /var/adm/autoinstall/scripts/cfg_init_nisclient 2&> /var/adm/autoinstall/logs/cfg_init_nisclient.log 2011-03-28 14:24:48 <1> tcpc2115(9824) [YCP] clients/inst_autoconfigure.ycp:40 current step: 41 2011-03-28 14:24:48 <1> tcpc2115(9824) [Interpreter] clients/inst_autoconfigure.ycp:232 Called YaST client returned. 2011-03-28 14:24:48 <1> tcpc2115(9824) [YCP] CommandLine.ycp:1354 Commandline interface finished 2011-03-28 14:24:48 <1> tcpc2115(9824) [YCP] CommandLine.ycp:1355 ---------------------------------------- ...
Problem: A post script does not get executed during execution of ayast_setup
Analyse: If <filename>cfg_init_nisclient.sh</filename>
Is changed to
<filename>cfg_init_nisclient</filename> <!-- .sh has been removed -->
The script will be executed.
strange. Is there anything useful in the y2log file in the error case? ..... -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi Given: SLES11 SP1 / OpenSuse 11.1 Task: Merge 2 xml files which have a post-script section with xsltproc. So no classes or rules.xml is used Problem: Script sections does not get merged and the CDATA is missing. Note: I am aware of http://www.suse.de/~ug/autoyast_doc/merging.html but i do not how to implement this in my xml files.
From the above link the following is given:
rules.xml ... <dont_merge config:type="list"> <element>partition</element> </dont_merge> ... The reason for the whole stuff is that i would like to merge simple xml files like sw.xml + dns.xml + nis.xml which might have a post-script sections as well. In this way a xml file for a given node is build of dedicated xml files and these xml files can be used also to change an installed system since then might contain required "shell" code. I have read that "XIncludes" can be used as well but it is also not clear to me how they could help. I do not mind to have the final autoinst.xml build during installation by autoyast using many small xml files but so far i have not found an easy way todo so. Example to reproduce the problem: !$ xsltproc --novalid --param with "'script1.xml'" --param replace "'false'" --output script.out /usr/share/autoinstall/xslt/merge.xslt script2.xml With !$ cat script1.xml <?xml version="1.0"?> <!DOCTYPE profile> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <scripts> <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_post_nisclient</filename> <interpreter>shell</interpreter> <location></location> <network_needed config:type="boolean">false</network_needed> <source><![CDATA[ echo "INFO: Running $(basename $0 )" ]]></source> </script> </post-scripts> </scripts> </profile> !$ cat script2.xml <?xml version="1.0"?> <!DOCTYPE profile> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <scripts> <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_post</filename> <interpreter>shell</interpreter> <location></location> <network_needed config:type="boolean">false</network_needed> <source><![CDATA[ echo "INFO: $(basename $0 )" ]]></source> </script> </post-scripts> </scripts> </profile> Will result in: !$ cat script.out <?xml version="1.0"?> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <scripts> <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_post_nisclient</filename> <interpreter>shell</interpreter> <location/> <network_needed config:type="boolean">false</network_needed> <source> echo "INFO: Running $(basename $0 )" </source> </script> </post-scripts> </scripts> </profile> Thus the section cfg_post is lost as well as "<![CDATA[" and "]]>" Any help ? Tia Hajo -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
on Tuesday 29 March 2011 Hans-Joachim Ehlers wrote:
Problem: Script sections does not get merged and the CDATA is missing.
Note: I am aware of http://www.suse.de/~ug/autoyast_doc/merging.html but i do not how to implement this in my xml files.
From the above link the following is given:
rules.xml ... <dont_merge config:type="list"> <element>partition</element> </dont_merge> ...
xsltproc --novalid --param with "'script1.xml'" --param replace "'false'" \ --param dontmerge "'script'" --output script.out \ /usr/share/autoinstall/xslt/merge.xslt script2.xml then the script is not merged but you are right, the CDATA is gone. I'll have to check why -- ciao, Uwe Gansert Uwe Gansert SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) Business: http://www.suse.de/~ug -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Given * SLES11 SP1 * post script with location tag ( tce-nisclient ) * post script with source tag ( script.xml ) Task: Both files get merged by autoyast via a rule.xml Problem: The result has a corrupted post script section with only one section having a location and source tag. ... <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_post_tce_nisclient</filename> <interpreter>shell</interpreter> <location><![CDATA[http://@INSTSERVER@/export/suse/scripts/tce_nisclient.cmd]]></location> <network_needed config:type="boolean">false</network_needed> <rerun config:type="boolean">true</rerun> <source><![CDATA[ echo cfg_post echo cfg_post ]]></source> ... Notes: Extract from the nisclient client xml <scripts> <post-scripts config:type="list"> <script> <filename>cfg_post_tce_nisclient</filename> <rerun config:type="boolean">true</rerun> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <interpreter>shell</interpreter> <location>http://@INSTSERVER@/export/suse/scripts/tce_nisclient.cmd</location> </script> </post-scripts> </scripts> Extract from the script.xml <scripts> <post-scripts config:type="list"> <script> <filename>cfg_post</filename> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <network_needed config:type="boolean">false</network_needed> <interpreter>shell</interpreter> <source><![CDATA[ echo cfg_post echo cfg_post ]]></source> </script> </post-scripts> </scripts> -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Problem fixed by adding the dont_merge option to the rules.xml for each rule ( rules which will have a script section ) Example: ... <rule> <custom1> <match>*</match> <match_type>exact</match_type> </custom1> <result> <profile>classes/script.xml</profile> <continue config:type="boolean">true</continue> <dont_merge config:type="list"> <element>script</element> </dont_merge> </result> </rule> ... -----Original Message----- From: Hans-Joachim Ehlers [mailto:HansJoachim.Ehlers@eumetsat.int] Sent: Wednesday, August 24, 2011 4:29 PM To: opensuse-autoinstall@opensuse.org Subject: [opensuse-autoinstall] Corrupted post script section Given * SLES11 SP1 * post script with location tag ( tce-nisclient ) * post script with source tag ( script.xml ) Task: Both files get merged by autoyast via a rule.xml Problem: The result has a corrupted post script section with only one section having a location and source tag. ... <post-scripts config:type="list"> <script> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <filename>cfg_post_tce_nisclient</filename> <interpreter>shell</interpreter> <location><![CDATA[http://@INSTSERVER@/export/suse/scripts/tce_nisclient.cmd]]></location> <network_needed config:type="boolean">false</network_needed> <rerun config:type="boolean">true</rerun> <source><![CDATA[ echo cfg_post echo cfg_post ]]></source> ... Notes: Extract from the nisclient client xml <scripts> <post-scripts config:type="list"> <script> <filename>cfg_post_tce_nisclient</filename> <rerun config:type="boolean">true</rerun> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <interpreter>shell</interpreter> <location>http://@INSTSERVER@/export/suse/scripts/tce_nisclient.cmd</location> </script> </post-scripts> </scripts> Extract from the script.xml <scripts> <post-scripts config:type="list"> <script> <filename>cfg_post</filename> <debug config:type="boolean">true</debug> <feedback config:type="boolean">false</feedback> <network_needed config:type="boolean">false</network_needed> <interpreter>shell</interpreter> <source><![CDATA[ echo cfg_post echo cfg_post ]]></source> </script> </post-scripts> </scripts> -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
Hi, Another problem. Any idea how to debug pre scripts during autoyast installations ? Locks like that the output from the pre_script does not make it into /var/adm/autoinstall/logs. For some reason my modified.xml file does not get modified by the pre-script . BTW: Does autoyast used the /tmp/profile/modified.xml in SLES11 SP1 ? Tia Hajo -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
The problem was that the <scripts> tag was AFTER the </pre-scripts> Wrong: <pre-scripts config:type="list"> ... </pre-scripts> <scripts> Corrected: <scripts> <pre-scripts config:type="list"> ... </pre-scripts> Time for a beer..... -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org
participants (10)
-
Andreas Taschner
-
Dirk.Lohmann@Bertelsmann.de
-
Erico Mendonça
-
Frank Steiner
-
Hans-Joachim Ehlers
-
michael.leu@mgb.ch
-
Mike Marion
-
Sebastian Wenner
-
Simon Loewenthal/NL/Tele2
-
Uwe Gansert