手頭有一臺式機,但願安裝配置一個工做使用的Mediawiki,下面就動起手來。php
一、下載admincd-amd64-*.iso文件
下面給出幾個鏡像站的下載地址:
網易開源鏡像站:
http://mirrors.163.com/gentoo/releases/amd64/autobuilds/current-admincd-amd64/
Sohu.com Open Source Mirror Site:
http://mirrors.sohu.com/gentoo/releases/amd64/autobuilds/current-admincd-amd64/
阿里雲開源鏡像站:
http://mirrors.aliyun.com/gentoo/releases/amd64/autobuilds/current-admincd-amd64/
二、使用Universal USB Installer製做Getnoo啓動U盤
注:製做前修改admincd-amd64-*.iso文件名,在文件名前加入「livedvd」mysql
一、開機按F9選擇U盤啓動
二、光標提示「gentoo:」輸入sql
gentoo
三、出現「livecd ~ #」啓動成功數據庫
一、判斷網卡是否正常工做,若是網絡環境裏配置了 DHCP,經過命令 ifconfig -a 命令檢查機器是否分配到IPapache
# ifconfig -a enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.7.202 netmask 255.255.255.0 broadcast 192.168.7.255 inet6 fe80::250:baff:fece:70c prefixlen 64 scopeid 0x20<link> ether 00:50:ba:ce:07:0c txqueuelen 1000 (Ethernet) RX packets 5041 bytes 333681 (325.8 KiB) RX errors 0 dropped 4 overruns 0 frame 0 TX packets 292 bytes 40225 (39.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 19 memory 0xf0500000-f0520000
二、若是須要手動配置網絡,則可以使用net-setup加網卡名命令啓動圖形界面配置windows
# net-setup enp0s25 My network is wired(有線網絡) Specify an IP address manually(手動制定IP地址) Use ifconfig to configure the network(使用ifconfig配置網絡) Please enter an IP address for enp0s25: 192.168.7.202(輸入IP地址) Please enter a Broadcast address for enp0s25: 192.168.7.255(輸入廣播地址) Please enter a Network Mask for enp0s25: 255.255.255.0(輸入子網掩碼) Please enter a Gateway for enp0s25 (hit enter for none:): 192.168.7.1(輸入網關地址) Please enter a name server to use (hit enter for none:): 85.12.25.16(輸入域名服務器地址) Please enter any domains which you would like to search on DNS queries (hit enter for none:): 85.12.25.16(輸入備用域名服務器地址)
三、測試網絡是否暢通bash
# ping www.baidu.com
注:
(1)若是須要更改MAC地址可以使用以下命令組服務器
# ifconfig enp0s25 down # ifconfig enp0s25 hw ether 00:50:ba:ce:07:0c # ifconfig enp0s25 up
(2)有時使用「net-setup」配置網絡沒法添加域名服務器地址可以使用以下命令查看並配置網絡
# nano /etc/resolv.conf nameserver 85.12.25.16 search 85.12.25.16
注:所使用網絡配置均屬於杜撰,若有雷同純屬巧合dom
一、修改sshd_config配置文件
# nano -w /etc/ssh/sshd_config PermitRootLogin yes
注:在/etc/ssh/下有個很相似的ssh_config配置文件,不要修改錯了哦!
二、開啓sshd服務
# /etc/init.d/sshd start
三、修改登陸密碼
# passwd
注:本人在windows下使用putty遠程登陸軟件
一、查看內存容量與磁盤容量命令,肯定內存容量以此容量肯定交換分區大小,肯定磁盤容量用以規劃分區
# free -m total(下的數字爲內存容量) # fdisk -l
二、磁盤分區
這裏進行簡單分區規劃
boot分區 100m
swap分區 4g
root分區 剩下所有
磁盤分區使用以下命令:
# fdisk /dev/sda boot 100m sda1 n-->p--a swap 4g sda2 n-->p-->t-->82 root 剩下所有 sda3 n w
注:
(1)fdisk內的命令以下
n 建立一個分區
p 顯示全部的分區
a 指定一個分區爲啓動分區
d 刪除一個分區
t 改變一個分區的類型,Linux swap / Solaris 的編號是 82
l 顯示全部的分區類型
w 保存退出
(2)上述分區規劃中的「100m」和「4g」是能夠直接輸入的分區容量,輸入方法爲「+100m」和「+4g」
(3)確認分區是否正確
# fdisk -l Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 206847 204800 100M 83 Linux /dev/sda2 206848 8595455 8388608 4G 82 Linux swap / Solaris /dev/sda3 8595456 625142447 616546992 294G 83 Linux
# mkfs.ext2 -L BOOT /dev/sda1 # mkfs.ext3 -L ROOT /dev/sda3 # mkswap -L SWAP /dev/sda2
# mount /dev/sda3 /mnt/gentoo # mkdir /mnt/gentoo/boot # mount /dev/sda1 /mnt/gentoo/boot # swapon /dev/sda2
# cd /mnt/gentoo/ # wget http://mirrors.163.com/gentoo/releases/amd64/autobuilds/current-admincd-amd64/stage3-amd64-hardened-20160428.tar.bz2 # tar xvjpf stage3-amd64-hardened-20160428.tar.bz2 # wget http://mirrors.163.com/gentoo/snapshots/portage-latest.tar.bz2 # tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
# cp -L /etc/resolv.conf /mnt/gentoo/etc/ # mount -t proc proc /mnt/gentoo/proc # mount --rbind /sys /mnt/gentoo/sys # mount --rbind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash # source /etc/profile # export PS1="(chroot) $PS1"
# nano -w /etc/portage/make.conf GENTOO_MIRRORS="http://mirrors.sohu.com/gentoo/" SYNC="rsync://rsync.cn.gentoo.org/gentoo-portage"
# emerge --sync
# eselect profile list # eselect profile set 14
# cp /usr/share/zoneinfo/Asia/Chongqing /etc/localtime # nano -w /etc/conf.d/hwclock clock="local"
# nano -w /etc/locale.gen en_US ISO-8859-1 en_US.UTF-8 UTF-8 # locale-gen
一、肯定CPU內核數,肯定/etc/make.conf文件中MAKEOPTS的參數,下例中「processor : 3」爲四核CPU
# cat /proc/cpuinfo processor : 3
二、獲取/etc/make.conf文件中-march的參數,下例「core2」爲CPU型號
# gcc -c -Q -march=native --help=target | grep march -march= core2
三、添加/etc/make.conf文件參數
# nano -w /etc/make.conf CFLAGS="-march=core2 -O2 -pipe" CXXFLAGS="${CFLAGS}" MAKEOPTS="-j5"
注:
(1)CFLAGS="-march=core2 -O2 -pipe"中的「core2」能夠修改成上文的取值
(2)MAKEOPTS="-j5"中的「5」能夠修改成上文中的取值加2,意思爲CPU總核數加1
# emerge gentoo-sources
# emerge genkernel
# genkernel --menuconfig all
注:模塊選擇後別忘了保存,退出圖形界面後可自動進行編譯
# blkid /dev/sda1: LABEL="BOOT" UUID="72a28cb6-5219-4428-b01b-d3a05ab6e0fe" TYPE="ext2" PARTUUID="8c2f5fd3-01" /dev/sda2: LABEL="SWAP" UUID="24ca0b2c-1aef-4283-979f-e8389ea96134" TYPE="swap" PARTUUID="8c2f5fd3-02" /dev/sda3: LABEL="ROOT" UUID="63372648-7999-4072-9caf-c82e4f57f4ab" SEC_TYPE="ext2" TYPE="ext3" PARTUUID="8c2f5fd3-03" # nano -w /etc/fstab UUID="72a28cb6-5219-4428-b01b-d3a05ab6e0fe" /boot ext2 noauto,noatime 1 2 UUID="63372648-7999-4072-9caf-c82e4f57f4ab" / ext3 noatime 0 1 UUID="24ca0b2c-1aef-4283-979f-e8389ea96134" none swap sw 0 0 /dev/cdrom /mnt/cdrom auto noauto,ro 0 0
使用UUID配置分區穩定性更高
# nano -w /etc/conf.d/hostname hostname="Goodluck"
注:選個吉祥點的名字
# nano -w /etc/conf.d/net mac_enp0s25="00:50:ba:ce:07:0c"(配置網卡MAC地址) config_enp0s25="192.168.7.202 netmask 255.255.255.0"(指定IP地址、子網掩碼) routes_enp0s25="default via 192.168.7.1"(指定網關地址) # cd /etc/init.d # ln -s net.lo net.enp0s25 # rc-update add net.enp0s25 default
注:上例中「enp0s25」爲網卡名,硬件不一樣網卡名也不盡相同,請留意
# nano -w /etc/hosts 127.0.0.1 Goodluck localhost
注:在localhost前加入主機名
# passwd
注:必定要改哦!
# nano -w /etc/ssh/sshd_config PermitRootLogin yes # rc-update add sshd default
# emerge syslog-ng # rc-update add syslog-ng default
# emerge vixie-cron # rc-update add vixie-cron default
# emerge mlocate
# emerge pciutils
# emerge sys-boot/grub # grub2-install /dev/sda # grub2-mkconfig -o /boot/grub/grub.cfg
# exit
# umount -l /mnt/gentoo/dev{/shm,/pts,} # umount -l /mnt/gentoo{/boot,/proc,}
# reboot
注:重啓時需拔出U盤
# emerge gentoolkit
# emerge --update --deep --newuse -avt @world # revdep-rebuild # etc-update
# nano -w /etc/portage/make.conf USE="... apache2 ..."
# emerge www-servers/apache
# nano -w /etc/apache2/httpd.conf ServerName 192.168.7.202 # rc-update -v add apache2 default
# /etc/init.d/apache2 start # netstat -tnlp
# emerge dev-db/mysql # emerge --config dev-db/mysql
# rc-update add mysql default # /etc/init.d/mysql start # mysql_secure_installation
# nano -w /etc/portage/make.conf USE="... php mysqli mysql imagemagick..." PHP_INI_VERSION="production" PHP_TARGETS="php5-4"
# emerge --oneshot dev-lang/php
注:添加--oneshot參數,意爲不將php添加到world文件中,除非被其餘包依賴而被動升級,不然不會升級。
# emerge --ask --changed-use --deep @world
# nano -w /etc/conf.d/apache2 ## (settings for PHP5) APACHE2_OPTS="... -D PHP5 ..."
# find / -name "libphp5.so" # cp /usr/lib64/php5.6/apache2/libphp5.so /usr/lib64/apache2/modules/
注:此操做因PHP編譯安裝後未將papache2所需模塊文件保存在指定位置引發