Mailinglist Archive: opensuse-autoinstall (70 mails)
| < Previous | Next > |
[opensuse-autoinstall] [SLES 10] error using autoyast=device://cciss/c0d0p1/autoinst.xml (nested devices)
- From: "Sylvain Le Courtois (alplog)" <s.lecourtois@xxxxxxxxx>
- Date: Tue, 12 Dec 2006 22:59:57 +0100
- Message-id: <001201c71e38$dd584560$6701a8c0@xx74c379c17c70>
Hello All,
I send this message to give information about a bug I encountered using autoyast SLES 10 and Profilant HP servers.
The HP Smart array raid controllers creates "nested" devices in /dev : cciss/c0d0p1 is the first partition of the first logical drive of the first controller
The use of : autoyast=device://cciss/c0d0p1/autoinst.xml failed (profile file not found error in Yast)
After some time consuming investigations, I found these lines in the y2log file :
006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:227 nested device found
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:232 Host=cciss/ Path=c0d0p1/autoinst/autoinst.xml
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:227 nested device found
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:232 Host=cciss//c0d0p1 Path=autoinst/autoinst.xml
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [agent-system] SystemAgent.cc(Read):544 Can't access directory '/dev/cciss//c0d0p1': Not a directory'
2006-07-17 17:18:06 <3> 192.168.0.43(3346) [bash] ShellCommand.cc(shellcommand):78 /bin/cp: cannot stat `/tmp/YaST2-03346-Op2jd3/tmp_mountautoinst/ autoinst.xml': No such file or directory
2006-07-17 17:18:06 <3> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:243 file /tmp/YaST2-03346-Op2jd3/tmp_mountautoinst/autoinst.xml can't be found
The guilty lines are located in the Get function of the io.ycp module.
It seems that there is some lines of code to take care of "nested devices" but it does not work.
/*
sometimes we have devices like /dev/cciss/c1d0p5
those "nested" devices will be catched here
as long as we find a directory where we expect a device,
we cut down the Path and enhance the Host (device name)
*/
while( SCR::Read( .target.dir, "/dev/"+Host ) != nil ) {
y2milestone("nested device found");
list<string> l = splitstring( Path, "/" );
Host = Host + "/" + l[0]:"";
l = remove(l,0);
Path = mergestring(l,"/");
y2milestone("Host=%1 Path=%2",Host,Path);
}
// catching nested devices done
autoyast=device://cciss/c0d0p1///autoinst.xml works as a workaround.
Hoping that this information can be useful to other happy SuSE administrators.
Regards,
--
To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-autoinstall+help@xxxxxxxxxxxx
I send this message to give information about a bug I encountered using autoyast SLES 10 and Profilant HP servers.
The HP Smart array raid controllers creates "nested" devices in /dev : cciss/c0d0p1 is the first partition of the first logical drive of the first controller
The use of : autoyast=device://cciss/c0d0p1/autoinst.xml failed (profile file not found error in Yast)
After some time consuming investigations, I found these lines in the y2log file :
006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:227 nested device found
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:232 Host=cciss/ Path=c0d0p1/autoinst/autoinst.xml
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:227 nested device found
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:232 Host=cciss//c0d0p1 Path=autoinst/autoinst.xml
2006-07-17 17:18:06 <1> 192.168.0.43(3346) [agent-system] SystemAgent.cc(Read):544 Can't access directory '/dev/cciss//c0d0p1': Not a directory'
2006-07-17 17:18:06 <3> 192.168.0.43(3346) [bash] ShellCommand.cc(shellcommand):78 /bin/cp: cannot stat `/tmp/YaST2-03346-Op2jd3/tmp_mountautoinst/ autoinst.xml': No such file or directory
2006-07-17 17:18:06 <3> 192.168.0.43(3346) [YCP] autoinstall/io.ycp:243 file /tmp/YaST2-03346-Op2jd3/tmp_mountautoinst/autoinst.xml can't be found
The guilty lines are located in the Get function of the io.ycp module.
It seems that there is some lines of code to take care of "nested devices" but it does not work.
/*
sometimes we have devices like /dev/cciss/c1d0p5
those "nested" devices will be catched here
as long as we find a directory where we expect a device,
we cut down the Path and enhance the Host (device name)
*/
while( SCR::Read( .target.dir, "/dev/"+Host ) != nil ) {
y2milestone("nested device found");
list<string> l = splitstring( Path, "/" );
Host = Host + "/" + l[0]:"";
l = remove(l,0);
Path = mergestring(l,"/");
y2milestone("Host=%1 Path=%2",Host,Path);
}
// catching nested devices done
autoyast=device://cciss/c0d0p1///autoinst.xml works as a workaround.
Hoping that this information can be useful to other happy SuSE administrators.
Regards,
--
To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-autoinstall+help@xxxxxxxxxxxx
| < Previous | Next > |