<br><br><div class="gmail_quote">On Sat, Nov 15, 2008 at 12:40 PM, Nicholas Mc Guire <span dir="ltr"><<a href="mailto:hofrat@hofr.at">hofrat@hofr.at</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">> ><br>
> > did you check that it is actually a valid character device (c 5 1) ?<br>
> > it can easaly happend during copying of a tree into your image that<br>
> > they become regular files.<br>
> ><br>
> > hofrat<br>
> ><br>
> I think that you are right, butr how can I test this validity??<br>
><br>
</div>just check with ls -l that the device file is actually still a character<br>
device with the right major/minor number.<br>
<br>
crw--w--w- 1 root tty 5, 1 Nov 13 22:18 /mnt/dev/console<br>
<br>
modes and date of course may be diferent.<br>
<br>
hofrat<br>
</blockquote></div><br>I mount my ext2.img and run ls -l and I get<br><br>crw-r----- 1 root root 5, 1 2008-11-15 02:24 console<br><br>I think is not ok ?!<br><br><br>Now regarding some steps in the creation of the rootfs:<br>
<br>use
<code>"tmpfs"</code> for cases where a writable file system is
needed and add the
following lines to the <code>/etc/rc.sh</code> script:
<pre># mount TMPFS because root-fs is readonly<br>/bin/mount -t tmpfs -o size=2M tmpfs /tmpfs<br></pre>
create the same symbolic links for device files
that must be placed in a writable filesystem:
<table border="0" cellpadding="0" cellspacing="3">
<tbody><tr><td class="twikiFirstCol"> dev/ptyp0 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp0 </td><td> </td><td> dev/ttyp0 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp0 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp1 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp1 </td><td> </td><td> dev/ttyp1 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp1 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp2 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp2 </td><td> </td><td> dev/ttyp2 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp2 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp3 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp3 </td><td> </td><td> dev/ttyp3 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp3 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp4 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp4 </td><td> </td><td> dev/ttyp4 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp4 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp5 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp5 </td><td> </td><td> dev/ttyp5 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp5 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp6 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp6 </td><td> </td><td> dev/ttyp6 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp6 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp7 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp7 </td><td> </td><td> dev/ttyp7 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp7 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp8 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp8 </td><td> </td><td> dev/ttyp8 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp8 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptyp9 </td><td> $B"*(B </td><td> /tmpfs/dev/ptyp9 </td><td> </td><td> dev/ttyp9 </td><td> $B"*(B </td><td> /tmpfs/dev/ttyp9 </td></tr>
<tr><td class="twikiFirstCol"> dev/ptypa </td><td> $B"*(B </td><td> /tmpfs/dev/ptypa </td><td> </td><td> dev/ttypa </td><td> $B"*(B </td><td> /tmpfs/dev/ttypa </td></tr>
<tr><td class="twikiFirstCol"> dev/ptypb </td><td> $B"*(B </td><td> /tmpfs/dev/ptypb </td><td> </td><td> dev/ttypb </td><td> $B"*(B </td><td> /tmpfs/dev/ttypb </td></tr>
<tr><td class="twikiFirstCol"> dev/ptypc </td><td> $B"*(B </td><td> /tmpfs/dev/ptypc </td><td> </td><td> dev/ttypc </td><td> $B"*(B </td><td> /tmpfs/dev/ttypc </td></tr>
<tr><td class="twikiFirstCol"> dev/ptypd </td><td> $B"*(B </td><td> /tmpfs/dev/ptypd </td><td> </td><td> dev/ttypd </td><td> $B"*(B </td><td> /tmpfs/dev/ttypd </td></tr>
<tr><td class="twikiFirstCol"> dev/ptype </td><td> $B"*(B </td><td> /tmpfs/dev/ptype </td><td> </td><td> dev/ttype </td><td> $B"*(B </td><td> /tmpfs/dev/ttype </td></tr>
<tr><td class="twikiFirstCol"> dev/ptypf </td><td> $B"*(B </td><td> /tmpfs/dev/ptypf </td><td> </td><td> dev/ttypf </td><td> $B"*(B </td><td> /tmpfs/dev/ttypf </td></tr>
<tr><td class="twikiFirstCol"> tmp </td><td> $B"*(B </td><td> /tmpfs/tmp </td><td> </td><td> var </td><td> $B"*(B </td><td> /tmpfs/var </td></tr>
<tr><td class="twikiFirstCol"> dev/log </td><td> $B"*(B </td><td> /var/log/log </td><td> </td><td> </td><td> </td><td> </td></tr>
<tr><td colspan="7" class="twikiFirstCol"> In case you use dhclient also: </td></tr>
<tr><td class="twikiFirstCol"> etc/dhclient.conf </td><td> $B"*(B </td><td> /tmpfs/var/lib/dhclient.conf </td><td> </td><td> etc/resolv.conf </td><td> $B"*(B </td><td> /tmpfs/var/lib/resolv.conf </td></tr>
</tbody></table>
<br>Shall I create the symlinks manually? <br>Is rc.sh executed ??<br><br>I,ve created a tmpfs directory in my rootfs directory and even if I mount it on my host it's not populateed.<br>
place the corresponding directories and device files
in the <code>tmpfs</code> file system,
the following code is added to the <code>/etc/rc.sh</code> script:
<pre>mkdir -p /tmpfs/tmp /tmpfs/dev \<br> /tmpfs/var/lib/dhcp /tmpfs/var/lock /tmpfs/var/run<br><br>while read name minor<br>do <br> mknod /tmpfs/dev/ptyp$name c 2 $minor<br> mknod /tmpfs/dev/ttyp$name c 3 $minor<br>
done <<__EOD__<br>0 0 <br>1 1 <br>2 2 <br>3 3 <br>4 4 <br>5 5 <br>6 6 <br>7 7 <br>8 8 <br>9 9 <br>a 10 <br>b 11 <br>c 12 <br>d 13 <br>e 14 <br>f 15 <br>__EOD__ <br>
chmod 0666 /tmpfs/dev/*<br></pre><br><br>Cristian<br><br>