手头有一台式机,希望安装配置一个工作使用的Mediawiki,下面就动起手来。
Gentoo AMD64 Linux安装
第一步:安装前准备
一、制作Gentoo启动U盘
1、下载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/
2、使用Universal USB Installer制作Getnoo启动U盘
注:制作前修改admincd-amd64-*.iso文件名,在文件名前加入“livedvd”
第二步:使用Gentoo启动U盘启动计算机、配置网络、开启sshd服务
二、启动计算机
1、开机按F9选择U盘启动
2、光标提示“gentoo:”输入
gentoo
3、出现“livecd ~ #”启动成功
三、配置网络
1、判断网卡是否正常工作,如果网络环境里配置了 DHCP,通过命令 ifconfig -a 命令检查机器是否分配到IP
# 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
2、如果需要手动配置网络,则可使用net-setup加网卡名命令启动图形界面配置
# 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(输入备用域名服务器地址)
3、测试网络是否畅通
# 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
注:所使用网络配置均属于杜撰,如有雷同纯属巧合
四、开启sshd服务
1、修改sshd_config配置文件
# nano -w /etc/ssh/sshd_config
PermitRootLogin yes
注:在/etc/ssh/下有个很类似的ssh_config配置文件,不要修改错了哦!
2、开启sshd服务
# /etc/init.d/sshd start
3、修改登录密码
# passwd
注:本人在windows下使用putty远程登录软件
第三步、磁盘分区、下载安装文件、切换系统
五、磁盘分区
1、查看内存容量与磁盘容量命令,确定内存容量以此容量确定交换分区大小,确定磁盘容量用以规划分区
# free -m
total(下的数字为内存容量)
# fdisk -l
2、磁盘分区
这里进行简单分区规划
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
八、下载stage3与portage文件并解压缩
# 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"
十二、更新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
十六、添加/etc/make.conf文件参数
1、确定CPU内核数,确定/etc/make.conf文件中MAKEOPTS的参数,下例中“processor : 3”为四核CPU
# cat /proc/cpuinfo
processor : 3
2、获取/etc/make.conf文件中-march的参数,下例“core2”为CPU型号
# gcc -c -Q -march=native --help=target | grep march
-march= core2
3、添加/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
十七、安装Gentoo内核源码
# emerge gentoo-sources
十八、安装Gentoo内核编译工具
# emerge genkernel
十九、选择性编译内核
# genkernel --menuconfig all
注:模块选择后别忘了保存,退出图形界面后可自动进行编译
第五步、基础配置、安装软件、首次重新启动
二十、配置fstab文件
# 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”为网卡名,硬件不同网卡名也不尽相同,请留意
二十三、修改hosts文件参数
# nano -w /etc/hosts
127.0.0.1 Goodluck localhost
注:在localhost前加入主机名
二十四、修改主机登录密码
# passwd
注:一定要改哦!
二十五、修改sshd_config配置文件,将sshd加入启动项
# 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
三十、安装多重操作系统启动管理器grub
# emerge sys-boot/grub
# grub2-install /dev/sda
# grub2-mkconfig -o /boot/grub/grub.cfg
第六步、重新启动前准备
三十一、退出安装系统进入livedvd系统
# exit
三十二、卸载磁盘
# umount -l /mnt/gentoo/dev{/shm,/pts,}
# umount -l /mnt/gentoo{/boot,/proc,}
三十三、重新启动计算机
# reboot
注:重启时需拔出U盘
至此Gentoo AMD64 安装已完成,下面进入Apache、Mysql、PHP的安装
第七步、重新启动后更新系统
三十四、安装gentoo系统管理工具
# emerge gentoolkit
三十五、更新系统、错误修复、合并配置文件
# emerge --update --deep --newuse -avt @world
# revdep-rebuild
# etc-update
第八步、安装Apache
三十六、修改portage的make.conf配置文件,添加以下内容
# nano -w /etc/portage/make.conf
USE="... apache2 ..."
三十七、编译安装Apache
# emerge www-servers/apache
三十八、修改http.conf配置文件,将Apache加入启动项
# nano -w /etc/apache2/httpd.conf
ServerName 192.168.7.202
# rc-update -v add apache2 default
三十九、启动Apache服务并查看端口启用情况
# /etc/init.d/apache2 start
# netstat -tnlp
第九步、安装mysql
四十、编译安装mysql软件并对mysql初始化
# emerge dev-db/mysql
# emerge --config dev-db/mysql
四十一、启动mysql,将mysql加入启动项,mysql数据库初始化
# rc-update add mysql default
# /etc/init.d/mysql start
# mysql_secure_installation
第十步、安装PHP
四十一、修改portage的make.conf配置文件,添加以下内容
# nano -w /etc/portage/make.conf
USE="... php mysqli mysql imagemagick..."
PHP_INI_VERSION="production"
PHP_TARGETS="php5-4"
四十二、编译安装mysql软件并对mysql初始化
# emerge --oneshot dev-lang/php
注:添加--oneshot参数,意为不将php添加到world文件中,除非被其他包依赖而被动升级,否则不会升级。
四十三、编译更新系统
# emerge --ask --changed-use --deep @world
四十四、修改apache2配置文件,以支持PHP5
# nano -w /etc/conf.d/apache2
## (settings for PHP5)
APACHE2_OPTS="... -D PHP5 ..."
四十五、查找libphp5.so文件,将其保存于/usr/lib64/apache2/modules/下
# find / -name "libphp5.so"
# cp /usr/lib64/php5.6/apache2/libphp5.so /usr/lib64/apache2/modules/
注:此操作因PHP编译安装后未将papache2所需模块文件保存在指定位置引起