zoukankan      html  css  js  c++  java
  • LFS全过程历险

    2004年9月1日晚,正式开始动手LFS,本帖将把每次的安装过程都记录下来,最后形成一份属于我自己的安装历程日记 

    今天,首先在WinXP下安装了vmware workstation 4.5,然后启动,安装RedHat9,RH9中,首先在分区上,使用手动分区,具体分区如下: 
    CODE: SELECT ALL
    1、/boot 100M  设备名:/dev/sda1(设置VMWare虚拟了SCSI的硬盘)

    2、/   1671M     设备名:/dev/sda2

    3、/swap  320M  设备名:/dev/sda3(交换分区,因为虚拟内存给了160M)

    4、剩余了2000M(2G)的空间未分配(留给lfs用的)


    然后,在安装软件包的选择上,去掉了所有X Window的东西,包括KDE和GNOME,只安装命令行界面;也去掉了除NetWork Server之外的全部server型软件(如web server、sql server等等);加上了Development Tool和Kernel Develop包,总共安装大小993M(下次再安装的时候,可以把Kernel Develop组中的linux-src-2.4.20这个包去掉,因为这个包是RH9的内核源码,使用了2.4.20的核心,这个包就有190M左右,装了也没什么用,下次安装可以去掉!) 

    安装完毕后,以root用户登录进入系统,键入命令: 

    fdisk /dev/sda 
    开启fdisk界面,此时可以键入m获取帮助,也可以键入p打印当前的分区信息,然后键入n,表示新建一个分区,fdisk首先问我是建立一个Extend Partition还是建立一个Primary Partition,当然选择建立逻辑区(建立主分区指的就是/dev/sda1~/dev/sda4这四个主分区),后面的磁道参数都取默认值,fdisk会将我们在上文的2G空间都算上的 ^_^ 

    建立逻辑区完成后,继续键入n,此时fdisk直接就询问开始磁道和结束磁道了,选用默认值,表示将这剩余的2G都作为一个分区使用(当然这里可以自定义将这个逻辑区再多划分成几个分区),第一个逻辑分区的设备名是/dev/sda5,如果建了多个依次类推,完成后键入w,表示保存并退出,最后重启系统(使新分区表生效) 

    重启后,首先将这个新分区格式化,然后再mount上来,使用命令: 

    mke2fs /dev/sda5 
    也可以使用mkfs -t ext2 /dev/sda5 mkfs就是一个前端界面,根据-t参数自动去寻找对应的命令,如这里使用的mkfs -t ext2,其实最后调用的还是mke2fs 

    然后将该分区mount上来: 

    mkdir -p /mnt/lfs 

    mount /dev/sda5 /mnt/lfs 

    完成后,编辑/etc/fstab文件,使下次重启后该分区能自动挂载起来,在/etc/fstab中添加一行: 

    /dev/sda5 /mnt/lfs ext2 defaults 0 0 

    完成后就大功告成,第一步为LFS准备分区已顺利完成 

    完成后可以使用df -ah命令来验证,看分区是否已经挂载,大小是否正确等等,这里-a参数就是--all,-h参数就是--human(表示以可读性较好的方式显示)
    2004-09-03开始继续LFS的安装 

    首先,mkdir -p /mnt/lfs/sources,然后chmod a+wt /mnt/lfs/sources 

    以上两个命令都在root下执行,第二个命令就是给所有的用户都加上对sources这个目录的可写权限,t(sticky)权限对于一个目录来说,就是说只有该目录的宿主才可以删除目录和文件,其他人都无法删除;如果是一个文件加上了sticky位(黏附位),则表示内核将尽可能长的把该文件保存在内存中,即使不被执行也是如此,因为这样作能减少执行的时间,不过现在Linux在这方面并不是十分关注 

    然后,继续新建目录,mkdir -p $LFS/tools ln -s $LFS/tools / (该命令在/下建立一个链接文件tools,指向$LFS/tools) 

    然后是新增LFS用户,useradd -s /bin/bash -m lfs passwd lfs 

    然后修改sources和tools两个目录的宿主,这样以后就可以使用lfs用户来操作了,chown lfs $LFS/sources chown lfs $LFS/tools 

    然后就可以从root切换到lfs用户了,使用su - lfs 

    然后编辑lfs用户的.bash_profile文件,具体操作如下(具体命令含义看lfs文档): 

    cat > ~/.bash_profile << "EOF" //使用EOF字符来结束,不用按ctrl+D了 
    set +humask 022 
    LFS=/mnt/lfs 
    LC_ALL=POSIX 
    PATH=/tools/bin:$PATH 
    export LFS LC_ALL PATH 
    unset CC CXX CPP LD_LIBRARY_PATH LD_PRELOAD 
    EOF 
    source ~/.bash_profile //source命令将读取参数定义的脚本并执行,也就是说不用去执行脚本本身了 
    上述工作全部装完,开始安装Binutils(第一遍) 
    本次安装的时间就是标准的SBU时间,在我的笔记本 
    (P10 Pentium 4 M 1.7G 512内存,vmware中运行,分配了256M内存给Linux用)下,安装时间一共是23分钟! 
    安装过程完全按照LFS的文档,首先下载Binutils 2.14的包,然后在$LFS/sources目录下tar zxvf ...解开,得到binutils-2.14的目录, 
    然后再新建一个binutils-build的目录,再cd到该目录,然后运行: 

    ../binutils-2.14/configure --prefix=/tools --disable-nlsmake configure-hostmake LDFLAGS="-all-static"make installmake -C ld cleanmake -C ld LDFLAGS="-all-static" LIB_PATH=/tools/lib 

  • 相关阅读:
    HDU 1069 Monkey and Banana
    HDU 1029 Ignatius and the Princess IV
    HDU 1024 Max Sum Plus Plus
    Gym100923H Por Costel and the Match
    Codeforces 682C Alyona and the Tree
    Codeforces 449B Jzzhu and Cities
    Codeforces (ccpc-wannafly camp day2) L. Por Costel and the Semipalindromes
    Codeforces 598D (ccpc-wannafly camp day1) Igor In the Museum
    Codeforces 1167c(ccpc wannafly camp day1) News Distribution 并查集模板
    快乐数问题
  • 原文地址:https://www.cnblogs.com/super119/p/1910254.html
Copyright © 2011-2022 走看看