LILOにパスワードを設定するには、/etc/lilo.confの「label=linux」と
書かれている行の下に、「restricted」と「password=LILOのパスワード」と
いう2行を追加する。
image=/boot/vmlinuz-2.2.17-0vl10 label=linux restricted password=LILOのパスワード read-only root=/dev/hda1
「restricted」を指定すると、「LILO boot: linux 1」のように、パラメータ
を指定したときのみ、パスワードの入力を求める。「restricted」がなければ、
LILOでのパスワード入力が必須になる。
/etc/lilo.confの編集が終わったら、以下のコマンドを入力して、root以外の
ユーザーがパスワードを見られないようにする。
chmod go-r /etc/lilo.conf
Version 21.5以降(Vine3.0:Version 22.5.8)ではキャラクタベースの
メニューでもカラフルな
---------------------------------------- | | | LILO Boot Menu | | | ---------------------------------------- | | win || | | | | linux || | | | | || | | | | || | | | | || | | ---------------------------------------- | Hit any key to cancel timeout 00:30| | Use ........................... | | ............................... | ----------------------------------------
ようなのメニューが出る。これを取り除くためには
/etc/lilo.confに
boot=/dev/hda map=/boot/map #message=/boot/message.txt install=/boot/boot-text.b <---追加
を追加する。
/boot/boot-text.bはこれをDownloadを する。
変更後は
# /sbin/lilo
を実行する。
ここからDownladするがlilo-22.7.3はVineのdev86(as96,ld86,bcc86)のバージョンが0.16.3で必要なのは0.16.10以降なので、obsolete/からlilo-22.6.1.src.tar.gzをDownload
$ tar zxvf lilo-22.6.1.src.tar.gz $ cd lilo-22.6.1 $ su <--rootでないとコンパイルエラーする。/sbinへのパスも必要。 # make all gcc -O2 -Wall -g `if [ -f /usr/include/linux/version.h ]; then echo \ -DHAS_VERSION_H; fi` -DLILO=0x8171ec98 `( if [ -r $ROOT/etc/lilo.defines];\ then cat $ROOT/etc/lilo.defines; else echo -DBDATA -DDSECS=3 -DEVMS \ -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE \ -DSOLO_CHAIN -DVERSION -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` -DSHS_MAIN -o\ version common.c echo "#define CFLAGS \"" -O2 -Wall -g `if [ \ -f /usr/include/linux/version.h ]; then echo -DHAS_VERSION_H; fi` \ -DLILO=0x8171ec98 `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines; else echo -DBDATA -DDSECS=3 -DEVMS -DIGNORECASE \ -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION \ -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` "\"" >flags.i grep -v "0x" _TmP_ (略) gcc -E -traditional `if [ -f /usr/include/linux/version.h ]; then echo \ -DHAS_VERSION_H; fi` -DLILO=0x8171ec98 `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines; else echo -DBDATA -DDSECS=3 -DEVMS \ -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE \ -DSOLO_CHAIN -DVERSION -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` \ -DSIZEKRNL=`wc -c diag3.img rm pseudo3.img pseudo.img pseudo.o pseudo3.o make[1]: ディレクトリ `/usr/local/src/lilo-22.6.1' から出ます rm os2_d.o chain.img bootsect.img mbr2.o pseudo1.img os2_d.img bitmap.img disk.img second.img bootsect.o mbr.o pseudo1.o first.img third.img disk.o # make install (略) cp mkrescue $ROOT/sbin cp lilo $ROOT/sbin strip $ROOT/sbin/lilo cp keytab-lilo.pl $ROOT/usr/sbin cp manPages/lilo.8 $ROOT`if [ -f /usr/bin/manpath ]; then manpath | sed "s/:.*//"; else echo /usr/man; fi`/man8 cp manPages/mkrescue.8 $ROOT`if [ -f /usr/bin/manpath ]; then manpath | sed "s/:.*//"; else echo /usr/man; fi`/man8 cp manPages/lilo.conf.5 $ROOT`if [ -f /usr/bin/manpath ]; then manpath | sed "s/:.*//"; else echo /usr/man; fi`/man5 /sbin/lilo must now be run to complete the update.
後は以前のlilo.confを参考に/etc/lilo.confを作成し、
# /sbin/lilo
でOK