LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3163|回复: 9

[个人贴]Gentoo2004.1

[复制链接]
发表于 2004-6-5 11:36:27 | 显示全部楼层 |阅读模式
www.linuxsir.cn 上学到的一些Gentoo入门知识,整理了一下,主要给自己以后学习使用,也许也有新手用得上。
Gigabyte 845GL + C4 2.0G + HY 256MB DDR + ST 60GB + 52xCDROM + SyncMaster 763MB + RealTek 8139
Windows XP Professional + SP1
Fedora Core 1 (2.4.22-1.2188.nptl)
在Fedora Core 1 下硬盘方式安装Gentoo2004.1,只用了一个 / 分区(hda10),install-x86-universal-2004.1.iso和packages-x86-2004.1.iso放在F盘根目录,开了ADSL猫的Route和NAT,只需设置网卡和网关ip就可以了。步骤如下:

分区、格式化、挂载
#mke2fs -j /dev/hda10
#mkdir /mnt/gentoo /mnt/iso
#mount /dev/hda10 /mnt/gentoo
#mount /dev/hda7 /mnt/cdrom
#mount -o loop /mnt/cdrom/install-x86-universal-2004.1.iso /mnt/iso

解压stage、portage
#tar -xvjpf /mnt/iso/stages/stage3-i686-2004.1.tar.bz2 -C /mnt/gentoo
#tar -xvjf /mnt/iso/snapshots/portage20040413.tar.bz2 -C /mnt/gentoo/usr
#mkdir /mnt/gentoo/usr/portage/distfiles
#cp /mnt/iso/distfiles/* /mnt/gentoo/usr/portage/distfiles/

进入Gentoo环境
#cp /etc/resolv.conf /mnt/gentoo/etc
#mount -o bind /proc /mnt/gentoo/proc
#chroot /mnt/gentoo /bin/bash
#env-update
#source /etc/profile

编译内核
#emerge -k gentoo-sources
#cd /usr/src/linux
#make menuconfig
#make dep && make bzImage modules modules_install
#cp /usr/src/linux/System.map /boot/System.map-2.4.25
#cp /usr/src/arch/i386/boot/bzImage /boot/vmlinuz-2.4.25

#make menuconfig

Code maturity level options --->
  • Prompt for development and/or incomplete code/drivers"

    File systems --->
    <*> Reiserfs support
    <*> Ext3 journalling file system support
  • Virtual memory file system support (former shm fs)
  • /proc file system support
  • /dev file system support (EXPERIMENTAL)
  • Automatically mount at boot
    [ ] /dev/pts file system for Unix98 PTYs
    <*> Second extended fs support

    Processor type and features
    [ ] Symmetric multi-processing support

    General setup ---> ACPI Support
  • ACPI Support
    <*> Button
    <*> Fan
    <*> Processor

    系统日志
    #emerge -k syslog-ng
    #rc-update add syslog-ng default

    系统配置
    时区
    #ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    主机名
    #echo MyName > /etc/hostname
    #echo homenetwork > /etc/dnsdomainname (这一步好象不起什么作用?)
    #rc-update add domainname default

    网络
    #nano -w /etc/conf.d/net
    #rc-update add net.eth0 default

    开启DMA100
    #nano -w /etc/conf.d/local.start
    #hdparm -c 1 -d 1 /dev/hda

    #passwd
    #exit

    添加引导菜单
    #vi /boot/grub/grub.conf 添加
    root (hd0,9)
    kernel /boot/vmlinuz-2.4.25 root=/dev/hda10

    #umount /mnt/gentoo/proc
    #umount /mnt/gentoo
    #reboot

    进入Gentoo后,提示fsck错误。
    #nano -w /etc/fstab

    /dev/hda8       /                     ext3           noauto,noatime        1 1
    /dev/hda9       none               swap         sw
    /dev/hdc         /mnt/cdrom       iso9660     noauto,ro                0 0
    /dev/fd0          /mnt/floppy       auto          noauto,owner          0 0
    none              /proc                proc         defaults                   0 0
    none              /dev/shm          tmpfs         defaults                   0 0

    硬盘安装
    #mount /dev/hda7 /mnt/floppy
    #mount -o loop /mnt/floppy/packages-x86-2004.1.iso /mnt/cdrom
    #export="/mnt/cdrom"

    #emerge -k xfree
    #USE="bindist" emerge -k kde

    #emerge -p kde
    #nano -w /etc/rc.conf
    CLOCK="local" (以后可用 date 更改本地时间)
    DISPLAYMANAGER="kdm"
    XSESSION="KDE-3.2.1"

    配置XFree
    #xf86config
    鼠标的协议使用IMPS/2

    #nano -w /etc/X11/XF86Config
    Section "Device"
    Identifier "Intel845GL"
    Driver "vga"
    EndSection
    把Driver "vga"改成Driver "i810"

    Identifier "Mouse1"
    Driver "mouse"
    Option "rotocol" "Auto"
    Option "Device" "/dev/mouse"
    添加
    Option "ZAxisMapping" "4 5"

    #LINGUAS zh_CN emerge kde-i18n
    cp了simsum字体, 在控制中心regional & accessibility->country/region & language里添加Simplified Chinese。
    把有设置字体的地方,字体都改为simsun.

    开启小键盘、fcitx输入法
    #emerge numlockx
    #emerge fcitx
    #nano -w /.xinitrc
    export LC_CTYPE=zh_CN.gbk
    export LANG=zh_CN.gbk
    export XMODIFIERS=@im=fcitx
    fcitx &
    numlockx &
    exec startkde

    #reboot
  • 发表于 2004-6-6 08:08:48 | 显示全部楼层
    我正考虑开设一个初学者安装心得日记到置顶, 你这个心得不错。。。谢谢
     楼主| 发表于 2004-6-9 15:28:03 | 显示全部楼层
    alsa解决方案
    编译内核时(2.4.25-gentoo-r1),sound项仅选sound support编入内核。
    #emerge alsa-driver
    #emerge alsa-lib
    #emerge alsa-utils
    #emerge alsa-oss
    #rc-update add alsasound boot

    #nano -w /etc/modules.d/alsa
    alias snd-card-0 snd-intel8x0
    alias sound-slot-0 snd-card-0

    重启后调整音量( m 键静音开关 )
    #alsamixer

    xmms完美支持中文的解决方案
    #nano -w /etc/gtk/gtkrc.zh_CN
    style "gtk-default-zh-cn" {
    fontset = "-misc-simsun-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0, -*-*-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0,*-r-*"
    }
    class "GtkWidget" style "gtk-default-zh-cn"
    #cp /etc/gtk/gtkrc.zh_CN ~/.gtkrc

    xmms字体改为:
    -sony-*-*-*-*-*-16-*-*-*-*-*-iso8859-1,-*-*-*-*-*-*-16-*-*-*-*-*-gbk-0
     楼主| 发表于 2004-6-9 15:38:48 | 显示全部楼层
    系统时间不准的解决方案
    #emerge rdate
    #rdate -s time.nist.gov

    domainname解决方案(myhost,mydomain,myip根据实际情况改变)
    #echo myhost > /etc/hostname
    #echo mydomain > /etc/dnsdomainname
    #echo myip myhost.mydomain myhost >> /etc/hosts
    #rc-update add domainname default

    为Konqueror添加flash插件的解决方案
    到官方网站下载flash插件
    http://www.macromedia.com/shockw ... eFlash&
    #tar zxvf install_flash_player_7_linux.tar.gz
    #cd install_flash_player_7_linux
    #mkdir ~/.netscape
    #mkdir ~/.netscape/plugins
    #cp flashplayer.xpt  libflashplayer.so ~/.netscape/plugins

    然后在Kconqueror的“设置”--“配置Konqueror”--“插件”中,“扫描新插件”,重启Konqueror就可以了。
     楼主| 发表于 2004-7-4 20:21:10 | 显示全部楼层
    Apache2 + PHP + Mysql

    #emerge mysql
    #ebuild /var/db/pkg/dev-db/mysql-x.x.xx/mysql-x.x.xx.ebuild config
    #/etc/init.d/mysql start
    #rc-update add mysql default

    #USE="mysql apache2 -qt -qtmt -pdflib -java" emerge mod_php apache phpmyadmin
    #/etc/init.d/apache2 start
    #rc-update add apache2 default

    #nano -w /etc/conf.d/apache  (加入对 PHP 和 SSL 的支持)
    APACHE2_OPTS="-D SSL -D PHP4"

    #nano -w /etc/apache2/conf/apache2.conf
    ServerName myhostname.mydomainname

    #nano -w /etc/apache2/conf/commonapache2.conf
    ServerAdmin webmaster@localhost
    DirectoryIndex index.php
    AddDefaultCharset gb2312

    在浏览器地址栏中输入 http://localhost 或 http://yourServerName,测试 apache2 安装成功。

    在 /var/www/localhost/htdocs 中编辑一文件 phpinfo.php,内容如下:
    <?php  phpinfo();  ?>
    在浏览器地址栏中输入 http://localhost/phpinfo.php,测试PHP 安装成功。

    在浏览器地址栏中输入 http://localhost/phpmyadmin/ 进入 phpMyAdmin 界面,点击“更改密码”修改 root 密码,然后重新打开该地址,用新密码登录。


    Proftpd
    #emerge proftpd

    现在来配置 proftpd,这里是一个 /etc/proftpd/proftpd.conf,可以参考修改。主要配置下面几项:
      ServerName        "My FTP Site"
      ServerType        standalone   // 如果是依靠 xinetd 启动,这里改为 inetd
      Port                        21
      
      // 下面是配置一个匿名登录服务
      <Anonymous /var/ftproot>   // 匿名登录主目录设在 /var/ftproot(需要先建立相应目录),默认的是 /home/ftp
      <Limit LOGIN>
        AllowAll
      </Limit>
      MaxClients                5 "Sorry, max %m users -- try again later"
      User                        ftp
      Group                        ftp
      UserAlias                        anonymous ftp
      <Limit WRITE>
        DenyAll
      </Limit>
    </Anonymous>

    启动 proftpd
    #/etc/init.d/proftpd start
    #rc-update add proftpd default

    查看目前 ftp 服务器运行情况可以使用 ftptop 命令。


    Webmin
    #emerge webmin
    #/etc/init.d/webmin start
    #rc-update add webmin default

    在浏览器地址栏中输入 http://localhost:10000 登录 webmin。
     楼主| 发表于 2004-7-28 17:16:23 | 显示全部楼层
    离线安装软件
    把软件下载好放到/usr/portage/distfiles下就可以了。想安装什么软件,emerge -pv 一下。

    比较快的镜像站点
    #nano -w /etc/make.conf
    GENTOO_MIRRORS="http://www.zentek-international.com/mirrors/gentoo"

    官方内核下载
    http://www.kernel.org/

    Gentoo2004 ISO高速下载
    http://www.zentek-international.com/mirrors/gentoo/
    http://mirror.gentoo.gr.jp/
     楼主| 发表于 2004-7-28 17:31:08 | 显示全部楼层
    给系统减肥
    rm -rf /usr/portage/distfiles/*
    rm -rf /var/tmp/package/*


    设置引导程序
    #emerge -k grub
    #grub
    grub> root (hd0,0)
    grub> setup (hd0)
    grub> quit

    #nano -w /boot/grub/grub.conf
    default 0
    timeout 30
    splashimage=(hd0,0)/grub/splash.xpm.gz

    title=Gentoo Linux 2.6.7
    root (hd0,0)
    kernel (hd0,0)/kernel-2.6.7-gentoo root=/dev/hda10

    title=Windows XP
    rootnoverify (hd0,1)
    chainloader +1
    发表于 2004-7-29 11:10:51 | 显示全部楼层
    export LC_CTYPE=zh_CN.gbk
    俺的fcitx有问题,如果有了上面这行。。。
    不知道怎么回事。。
     楼主| 发表于 2004-8-27 09:55:01 | 显示全部楼层

    quota磁盘配额

    #cd /home
    #touch quota.user
    #touch quota.group
    #chmod 600 quota.user
    #chmod 600 quota.group

    在/etc/conf.d/local.start文件尾部加入quota启动脚本:
    if [ -x /sbin/quotacheck ]
    then
    echo "Checking quotas. This may take some time..."
    /sbin/quotacheck -avug
    echo "Done"
    fi
    if [ -x /sbin/quotaon ]
    then
    echo "Turning on quota"
    /sbin/quotaon -avug
    echo "OK"
    fi

    修改/etc/fstab文件中定义/home分区的那一行:
    原内容: /dev/hda11 /home ext3 defaults 1 2
    新内容: /dev/hda11 /home ext3 defaults,usrquota,grpquota 1 2

    重启,在启动过程中会出错,主要是因为quota在/home目录下打不到aquota.user和aquota.group两个文件。

    用root登录,然后生成aquota.user和aquota.group两个文件:
    #convertquota -u /home
    #convertquota –g /home
    若以上步骤不出错的话,用ls /home –al就会看到aquota.user,aquota.group两个文件了。

    #edquota –u test
    Filesystem blocks soft hard inodes soft hard
    /dev/hda3 0 0 0 0 0 0
    注解标识: A B C D E F
    在讲解各参数之前先说说限制的两种方式:soft,hard
    soft:又称软限制,当用户到达这个限制以后,系统会给予警告,但仍可写入。
    hard:又称硬限制,到达这个限制,就完全禁止任何写入啦。
    ABC为磁盘空间的限制设置,而DEF为总文件个数的限制
    A:已使用空间,无需设置
    B:用户空间使用限制,为软限制,需要设置。
    C:用户空间使用限制,为硬限制,需要设置。
    D:已有文件总数,无需设置。
    E:文件总数限制,为软限制,需要设置。
    F:文件总数限制,为硬限制,需要设置。

    我们要限制test用户使用空间100M,最多不能超过120M,文件总数为2000个,
    最多不能超过2500个,设置如下:
    Filesystem blocks soft hard inodes soft hard
    /dev/hda3 0 102400 122880 0 2000 2500
    注:空间限制是以k为单位的。

    其它命令的使用:
    复制相同调协至其它用户:
    #edquota –p test –u username1 username2 username3 username4……
    显示某个用户当前磁盘使用情况:
    #quota –v username
    显示所有用户当前磁盘使用情况:
    #repquota –a
     楼主| 发表于 2004-8-27 12:14:19 | 显示全部楼层

    squid代理服务器

    #emerge squid

    #nano -w /etc/squid/squid.conf
    配置如下:
    http_port 3128
    cache_mem 64 MB
    cache_dir ufs /var/squid/cache 1000 16 256
    http_access allow all
    cache_effective_user squid
    cache_effective_group squid
    (http加速端口设置,透明代理能用上)
    httpd_accel_port 80
    httpd_accel_with_proxy on
    httpd_accel_uses_host_header on
    保存,然后用squid -z来定位缓存目录,如果出现失败,就chmod 777 /var/cache -R (或chown squid:squid /var/cache/squid -R)

    设置iptables:
    在/etc/conf.d/local.start下加入如下几行:
    #加载iptables的相关模块:
    modprobe ip_tables
    modprobe ip_nat_ftp
    modprobe ip_conntrack
    modprobe ip_conntrack_ftp
    #把80端口的包全部转向3128端口
    iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
    #ip转向,192.168.1.0/24为内网网段
    iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j SNAT --to 192.168.1.12

    设置完毕,找一台内网的机器,设定IP地址为 192.168.1.3,网关为192.168.1.2,试试不用代理能否直接上网,用IE或者QQ试试看。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    快速回复 返回顶部 返回列表