Gentoo Linux 學習筆記1

     Gentoo Linux是一個基於portage進行包管理的Linux發行版,最先版本始於2002年。其官方官網爲http://www.gentoo.orgphp

目前,Gentoo Linux已經在在互聯網企業中使用,其它最大的應用就是豆瓣網。聽說豆瓣網的服務器全都使用Gentoo Linux。java

Gentoo Linux的安裝和RHEL SUSE等這些發行版有一些不一樣,其安裝方式通常採用mini CD +stage3 進行安裝。首先,是網易有gentoo鏡像上下載安裝包,共3個python

包. 地址爲http://mirrors.163.com/gentoo/releases/  下載包,linux

 install-amd64-minimal-20130711.iso   LiveCD,使用這個iso來引導系統shell

stage3-amd64-20130711.tar.bz2    stage3是一個/目錄的文件進行打包apache

 portage-20130704.tar.bz2     這是gentoo的ebuild的集合vim

用 install-amd64-minimal-20130711.iso引導系統,進行系統後,設置root密碼,設置IP地址,啓動sshd服務,對硬盤進行分區, 掛載分區,將stage3-amd64-20130711.tar.bz2和 portage-20130704.tar.bz2文件上傳至硬盤,將這兩個文件解壓至相應目錄。chroot到新環境下,安裝gentoo內核,emerge gentoo-sources, 再安裝gentoo內核編譯工具,emerge  genkernel, 從新編譯內核,安裝grub,修改grub配置文件,設置網絡,修改/etc/fstab文件等。ruby

查看Gentoo Linux系統相關信息bash

gentoo ~ # emerge --info  Portage 2.1.12.2 (default/linux/amd64/13.0, gcc-4.6.3, glibc-2.15-r3, 3.8.13-gentoo x86_64) ================================================================= System uname: Linux-3.8.13-gentoo-x86_64-Intel-R-_Core-TM-_i5-2435M_CPU_@_2.40GHz-with-gentoo-2.2 KiB Mem: 1009420 total,    898752 free KiB Swap: 0 total,         0 free Timestamp of tree: Fri, 12 Jul 2013 23:15:01 +0000
ld GNU ld (GNU Binutils) 2.23.1 app-shells/bash:          4.2_p45 dev-lang/python:          2.7.5, 3.2.5-r1 dev-util/pkgconfig:       0.28 sys-apps/baselayout:      2.2 sys-apps/openrc:          0.11.8 sys-apps/sandbox:         2.6-r1 sys-devel/autoconf:       2.69 sys-devel/automake:       1.12.6 sys-devel/binutils:       2.23.1 sys-devel/gcc:            4.6.3 sys-devel/gcc-config:     1.7.3 sys-devel/libtool:        2.4-r1 sys-devel/make:           3.82-r4 sys-kernel/linux-headers: 3.7 (virtual/os-headers) sys-libs/glibc:           2.15-r3 Repositories: gentoo ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://mirrors.163.com/gentoo/" #使用網易鏡像,加快軟件的下載速度 LDFLAGS="-Wl,-O1 -Wl,--as-needed" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://mirrors.163.com/gentoo-portage" #使用網易的rsync源,加快portage同步速度 USE="acl amd64 berkdb bindist bzip2 cli cracklib crypt cxx dri fortran gdbm gpm iconv ipv6 mmx modules mudflap multilib ncurses nls nptl openmp pam pcre readline session sse sse2 ssl tcpd unicode zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

 

Gentoo的網絡、主機等配置信息位於/etc/conf.d/目錄下服務器

-rw-r--r-- 1 root root  328 Jul 11 06:03 bootmisc -rw-r--r-- 1 root root  876 Jul 11 06:03 consolefont -rw-r--r-- 1 root root  412 Jul 11 04:58 crypto-loop -rw-r--r-- 1 root root  117 Jul 11 06:03 dmesg -rw-r--r-- 1 root root 1402 Jul 11 06:03 fsck -rw-r--r-- 1 root root  580 Jul 11 05:15 gpm -rw-r--r-- 1 root root   56 Jul 13 07:23 hostname #主機名配置信息
-rw-r--r-- 1 root root  877 Jul 11 06:03 hwclock #硬件時間配置信息 -rw-r--r-- 1 root root  918 Jul 11 06:03 keymaps #鍵盤配置信息 -rw-r--r-- 1 root root  105 Jul 11 06:03 killprocs -rw-r--r-- 1 root root  121 Jul 11 06:03 localmount -rw-r--r-- 1 root root  898 Jul 11 06:03 modules -rw-r--r-- 1 root root  336 Jul 13 10:45 net #網絡配置信息 lrwxrwxrwx 1 root root    3 Jul 13 10:49 net.enp2s1 -> net -rw-r--r-- 1 root root 1335 Jul 11 06:03 netmount -rw-r--r-- 1 root root  271 Jul 11 05:54 pydoc-2.7
-rw-r--r-- 1 root root  271 Jul 11 05:32 pydoc-3.2
-rw-r--r-- 1 root root  149 Jul 11 05:23 rsyncd -rw-r--r-- 1 root root  396 Jul 11 06:06 sshd -rw-r--r-- 1 root root   76 Jul 11 06:03 tmpfiles -rw-r--r-- 1 root root 1639 Jul 11 06:07 udev -rw-r--r-- 1 root root  282 Jul 11 06:03 urandom

主機配置:

gentoo conf.d # more hostname # Set to the hostname of this machine hostname="gentoo" gentoo conf.d # 

網絡配置信息

gentoo conf.d #more net # This blank configuration will automatically use DHCP for any net.* # scripts in /etc/init.d.  To create a more complete configuration, # please review /usr/share/doc/openrc*/net.example* and save your configuration # in /etc/conf.d/net (this file :]!). config_enp2s1=("192.168.222.132/24") #網卡符號爲enp2s1 routes_enp2s1=("default via 192.168.222.2") #網關配置信息

gentoo的ebuild的集合位於系統的/usr/portage目錄下,系統進行了按應用、開發、遊戲、媒體等進行了分類

gentoo portage # ls app-accessibility  app-portage   dev-ruby         games-simulation  media-libs     net-print          sec-policy         www-misc app-admin          app-shells    dev-scheme       games-sports      media-plugins  net-proxy          skel.ChangeLog     www-plugins app-antivirus      app-text      dev-tcltk        games-strategy    media-radio    net-voip           skel.ebuild        www-servers app-arch           app-vim       dev-tex          games-util        media-sound    net-wireless       skel.metadata.xml  x11-apps app-backup         app-xemacs    dev-texlive      gnome-base        media-tv       net-zope           sys-apps           x11-base app-benchmarks     dev-ada       dev-util         gnome-extra       media-video    perl-core          sys-auth           x11-drivers app-cdr            dev-cpp       dev-vcs          gnustep-apps      metadata       profiles           sys-block          x11-libs app-crypt          dev-db        distfiles        gnustep-base      net-analyzer   razorqt-base       sys-boot           x11-misc app-dicts          dev-dotnet    eclass           gnustep-libs      net-dialup     rox-base           sys-cluster        x11-plugins app-doc            dev-embedded  games-action     gpe-base          net-dns        rox-extra          sys-devel          x11-proto app-editors        dev-games     games-arcade     gpe-utils         net-firewall   sci-astronomy      sys-firmware       x11-terms app-emacs          dev-haskell   games-board      header.txt        net-fs         sci-biology        sys-freebsd        x11-themes app-emulation      dev-java      games-emulation  java-virtuals     net-ftp        sci-calculators    sys-fs             x11-wm app-forensics      dev-lang      games-engines    kde-base          net-im         sci-chemistry      sys-infiniband     xfce-base app-i18n           dev-libs      games-fps        kde-misc          net-irc        sci-electronics    sys-kernel         xfce-extra app-laptop         dev-lisp      games-kids       licenses          net-libs       sci-geosciences    sys-libs app-leechcraft     dev-lua       games-misc       lxde-base         net-mail       sci-libs           sys-power app-misc           dev-ml        games-mud        mail-client       net-misc       sci-mathematics    sys-process app-mobilephone    dev-perl      games-puzzle     mail-filter       net-nds        sci-misc virtual app-office         dev-php       games-roguelike  mail-mta          net-news       sci-physics        www-apache app-officeext      dev-python    games-rpg        media-fonts       net-nntp       sci-visualization  www-apps app-pda            dev-qt        games-server     media-gfx         net-p2p        scripts            www-client

Gentoo Linux對於一個軟件包,有如下幾個描述文件,

gentoo ktorrent # ls ChangeLog #修改日誌 Manifest files #gentooo爲軟件包打的patch ktorrent-4.3.1.ebuild #ebuild文件 metadata.xml #元數據文件
相關文章
相關標籤/搜索