Mailinglist Archive: opensuse-autoinstall (70 mails)

< Previous Next >
[opensuse-autoinstall] [SLES 10] error using autoyast=device://cciss/c0d0p1/autoinst.xml (nested devices)
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

< Previous Next >
Follow Ups