您的位置:首页 > 运维架构 > Linux

linux-0.11调试教程,安装minix-1.5.10到硬盘

2013-02-04 20:52 489 查看
http://pan.baidu.com/share/link?shareid=256036&uk=453348606

minix-1.15.10安装软盘包及bochs的img映像,百度网盘下载

minix-1.15.10 源代码 bochs的img硬盘 by chenghao0511 20130204

 地址:http://download.csdn.net/detail/sitelist/5053271


上述压缩包解压后的minix.img的映像是本文作者已经把软盘包的内容安装到了硬盘内,如果你下载后想亲自实践一下,请把minix.img挂到linux-0.11下执行:mkfs /dev/hd6 60000 和 mkfs /dev/hd7
60000 和mkfs /dev/hd8 60000,既格式化为60M的3个minix的分区。Bochs-2.2请自己下载并安装后再点击minix.bxrc实践。

安装步骤

1,正确设置bochs的配置文件,floppya: 360k="univ_boot.01", status=inserted,软盘就设置一个。

2,先选b,再选=,点A盘选disk04既rootfilesystem盘,回车,再选disk05既systembinaries
#1 (/usr)回车。

3.输入年月日,接着用root/Geheim登录,如果来不及输入密码可以在bochs配置中将ips的值加大,另外一种登录方式是用bin登录,不要密码,进入后输入su回车,用密码Geheim就可以了







4.安装/etc/setup_root和安装/etc/setup_usr,我用的是一个239M的虚拟硬盘,分为三个区hd1和hd2,hd3,在hd1上安装root,hd2上安装usr,具体命令分别为/etc/setup_root  /dev/hd1
32 60000 60000
60000 0; /etc/setup_usr /dev/hd2

/etc/setup_root的使用说明:

Usage:setup_root  device  ram_size  hd1_size  hd2_size  hd3_size  hd4_size

/etc/setup_usr的使用说明:/etc/setup_usr
/dev/hd1

minix.bxrc配置文件:

romimage: file=$BXSHARE\BIOS-bochs-latest, address=0xf0000

megs: 16

vgaromimage: $BXSHARE\VGABIOS-elpin-2.40

floppya: 360k="univ_boot.01", status=inserted

ata0-master: type=disk, path="minix.img", mode=flat, cylinders=487, heads=16, spt=63

boot: a

log: bochsout.txt

parport1: enable=0

vga_update_interval: 300000

keyboard_serial_delay: 200

keyboard_paste_delay: 100000

floppy_command_delay: 50000

ips: 4000000

mouse: enabled=0

private_colormap: enabled=0

fullscreen: enabled=0

screenmode: name="sample"

下面是/etc/setup_root脚本文件内容:

case $# in

6)    ;;

*)    echo "Usage: setup_root  device  ram_size  hd1_size  hd2_size  hd3_size  hd4_size"

    exit 1

    ;;

esac

old_dir=`pwd`            # save current directory

if /etc/mount $1 /user

   then :             # successful mount

   else echo "Unable to mount $1.  Root file system not created."

    exit 1

fi

# Make the directories

cd /user

mkdir        bin dev etc lib tmp user usr

chown bin    bin dev etc lib tmp user usr

chgrp bin    bin dev etc lib tmp user usr

chmod 777    bin dev etc lib tmp user usr

# Make the special files.

cd dev

/etc/mkdev $2 $3 $4 $5 $6

# Copy /bin and /etc

cpdir -m /bin /user/bin

cpdir -m /etc /user/etc

fixbin /user/bin /user/bin >/dev/null 2>&1

chown bin  /user/etc/*

chown root /user/etc/*mount

chmod 4755 /user/etc/*mount

cd $old_dir

/etc/umount $1

下面是/etc/setup_user脚本文件的内容:

# Install the /usr file system

disk=6                # starting disk (1-3 are boot diskettes)

STOP=18                # first disk that does not exist

i=/usr/include

s=/usr/src

l=/usr/src/lib

# Unmount all hard disk partitions and see if the argument can be mounted.

case $# in

1)    ;;

*)    echo Please specify the special file for the MINIX partition

    echo For example:   /etc/setup_usr /dev/hd1

    exit 1

    ;;

esac

cd /

/etc/umount /dev/hd1 >/dev/null 2>&1

/etc/umount /dev/hd2 >/dev/null 2>&1

/etc/umount /dev/hd3 >/dev/null 2>&1

/etc/umount /dev/hd4 >/dev/null 2>&1

if /etc/mount $1 /user >/dev/null 2>&1

   then :

   else echo Unable to mount $1

    exit 1

fi

PATH=$PATH:/user/bin        # hard disk will be mounted on /user

# Make the principal MINIX directories.

echo Making directories

mkdir /user/adm 2>/dev/null

mkdir /user/ast 2>/dev/null

mkdir /user/bin  2>/dev/null

mkdir /user/doc 2>/dev/null

mkdir /user/etc 2>/dev/null

mkdir /user/include 2>/dev/null

mkdir /user/include/minix 2>/dev/null

mkdir /user/include/sys 2>/dev/null

mkdir /user/lib 2>/dev/null

mkdir /user/lib/tmac 2>/dev/null

mkdir /user/man 2>/dev/null

mkdir /user/spool 2>/dev/null

mkdir /user/spool/at 2>/dev/null

mkdir /user/spool/lpd 2>/dev/null

mkdir /user/spool/mail 2>/dev/null

mkdir /user/spool/uucp 2>/dev/null

mkdir /user/src 2>/dev/null

mkdir /user/src/amoeba 2>/dev/null

mkdir /user/src/amoeba/examples  2>/dev/null

mkdir /user/src/amoeba/kernel 2>/dev/null

mkdir /user/src/amoeba/fs 2>/dev/null

mkdir /user/src/amoeba/mm 2>/dev/null

mkdir /user/src/amoeba/util 2>/dev/null

mkdir /user/src/commands 2>/dev/null

mkdir /user/src/commands/bin 2>/dev/null

mkdir /user/src/commands/ibm 2>/dev/null

mkdir /user/src/commands/bawk 2>/dev/null

mkdir /user/src/commands/de 2>/dev/null

mkdir /user/src/commands/dis88 2>/dev/null

mkdir /user/src/commands/ic 2>/dev/null

mkdir /user/src/commands/indent 2>/dev/null

mkdir /user/src/commands/kermit 2>/dev/null

mkdir /user/src/commands/m4 2>/dev/null

mkdir /user/src/commands/make 2>/dev/null

mkdir /user/src/commands/mined 2>/dev/null

mkdir /user/src/commands/nroff 2>/dev/null

mkdir /user/src/commands/patch 2>/dev/null

mkdir /user/src/commands/sh 2>/dev/null

mkdir /user/src/commands/zmodem 2>/dev/null

mkdir /user/src/elle 2>/dev/null

mkdir /user/src/fs 2>/dev/null

mkdir /user/src/lib 2>/dev/null

mkdir /user/src/lib/ansi 2>/dev/null

mkdir /user/src/lib/ibm 2>/dev/null

mkdir /user/src/lib/other 2>/dev/null

mkdir /user/src/lib/posix 2>/dev/null

mkdir /user/src/lib/string 2>/dev/null

mkdir /user/src/kernel 2>/dev/null

mkdir /user/src/mm 2>/dev/null

mkdir /user/src/test 2>/dev/null

mkdir /user/src/tools 2>/dev/null

mkdir /user/tmp 2>/dev/null

# At this point, the root file system is in place and diskette #5 is in

# drive 0 mounted on /usr.  The MINIX hard disk partition is on /user.

# Copy /bin and /etc to the hard disk.

echo Copying /bin

cpdir -m /bin /user/bin        # copy /bin to the hard disk

echo Copying /etc

cpdir -m /etc /user/etc        # copy /etc to the hard disk

cpdir -m /usr/bin /user/bin    # copy /usr/bin to the hard disk

echo Copying diskette 5

fixbin /user/bin /user/bin >/dev/null 2>&1

echo Diskette 5 copied

/etc/umount /dev/fd0

while test $disk != $STOP

do getlf "Please insert disk $disk, then hit the ENTER key "

   /etc/mount /dev/fd0 /usr -r

   cd /usr

   for dir in *

   do   echo Copying $dir

    if test $dir = 'LAST_DISK'; then disk=`expr $STOP - 1`; fi

    # Establish base name

    case $dir in

        include)    base=/user/include ;;

        ast)        base=/user/ast ;;

        bin)        base=/user/bin ;;

        etc)        base=/user/etc ;;

        usrlib)        base=/user/lib ;;

        kernel)        base=/user/src/kernel ;;

        fs)        base=/user/src/fs ;;

        mm)        base=/user/src/mm ;;

        tools)        base=/user/src/tools ;;

        test)        base=/user/src/test ;;

        elle)        base=/user/src/elle ;;

        amoeba)        base=/user/src/amoeba ;;

        lib)        base=/user/src/lib ;;

        commands)    base=/user/src/commands ;;

        LAST_DISK)    base=/tmp ;;

        *)        base=/user/$dir ;;

    esac

    cd /            # cpdir creates pipes in current dir

    cpdir -m /usr/$dir $base

   done

   disk=`expr $disk + 1`

   cd /

   /etc/umount /dev/fd0

done

#All the disks have now been loaded.  Unpack them.

echo Loading finished.  Please remove the last diskette from the drive.

echo The files will now be unpacked.

cd /

fixbin /user/bin /user/bin >/dev/null 2>&1

/etc/umount $1 >/dev/null 2>&1

/etc/mount $1 /usr >/dev/null 2>&1

echo Unpacking /usr/lib

cd /usr/lib

compress -d *Z >/dev/null 2>&1

rm -f *Z 2>/dev/null

chown bin *

for d in $i            \

    $i/minix        \

    $i/sys            \

    $s/elle            \

    $s/kernel         \

    $s/fs             \

    $s/mm            \

    $s/tools        \

    $s/test            \

    $l/ansi            \

    $l/posix        \

    $l/other        \

    $l/ibm            \

    $l/string        \

    $s/commands        \

    $s/commands/ibm        \

    $s/commands/bawk    \

    $s/commands/de        \

    $s/commands/dis88    \

    $s/commands/indent    \

    $s/commands/ic        \

    $s/commands/m4        \

    $s/commands/make    \

    $s/commands/mined    \

    $s/commands/nroff    \

    $s/commands/patch    \

    $s/commands/sh        \

    $s/commands/zmodem    \

    $s/commands/kermit    \

    $s/commands/elvis    \

    $s/amoeba        \

    $s/amoeba/kernel    \

    $s/amoeba/fs        \

    $s/amoeba/mm        \

    $s/amoeba/examples    \

    $s/amoeba/util

do echo Unpacking $d

   cd $d

   compress -d *Z >/dev/null 2>&1

   rm -f *.Z 2>/dev/null

   for j in *.a; do ar x $j >/dev/null 2>&1; done

   rm -f *.a 2>/dev/null

   chown bin * .

done

# link commands/nroff/tmac.an to lib/tmac/tmac.an

ln /usr/src/commands/nroff/tmac.an /usr/lib/tmac/tmac.an

rm -rf /usr/LAST_DISK 2>/dev/null

chown bin /usr/*

cd /usr/lib

chmod 755 cem cpp cg opt

echo Installation completed.

exit 0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐