1. 程式人生 > >系統優化和克隆過程

系統優化和克隆過程

系統優化和克隆過程

系統優化和克隆過程

要克隆一臺或者幾臺虛擬機,需要先進行系統的優化,下面就是系統的優化步驟

1.1在虛擬機中,打開虛擬機設置

技術分享

1.2添加一塊網卡,即一共兩塊網卡,選擇網絡適配器,單擊添加

技術分享

1.3來到添加硬件向導,選擇網絡適配器,單擊下一步

技術分享

1.4這裏不做設置,保持默認即可,單擊完成

技術分享

還是在虛擬機設置界面,選擇網絡適配器2,—LAN區段—LAN區段

技術分享

選擇添加,設置LAN區段172.16.1.0/24

技術分享

選擇LAN區段,將區段添加上,然後確定即可

技術分享

然後點擊編輯—虛擬網絡編輯器,點擊NAT設置

技術分享

在NAT設置裏面只修改網關地址,其它默認即可,點擊確定

技術分享

取消本地DHCP服務,設置子網IP和子網掩碼完成單擊確定即可

技術分享

接下來啟動虛擬機,輸入用戶名密碼,之後輸入命令setup,進入第一塊網卡eth0設置,將所有信息設置為如下即可,確認即可

技術分享

新添加一塊網卡eth1,設置信息如下,確認即可

技術分享

上面的步驟完成之後,在命令行輸入/etc/init.d/network restart重啟網卡,接下來就進入系統的優化階段,首先將虛擬機連入到xshell中。

命令行的優化

2.1更改yum源(默認從國外下載軟件)

mv /etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup &&\

wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-6.repo

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

-O 指定將下載的信息保存當哪個路徑中

epel 表示擴展的yum源


2.2關閉selinux

sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/‘/etc/selinux/config

grep SELINUX=disabled /etc/selinux/config

setenforce 0

getenforce


2.3關閉iptables

/etc/init.d/iptables stop

/etc/init.d/iptables stop

chkconfig iptables off


2.4精簡開機自啟動服務

chkconfig|egrep -v"crond|sshd|network|rsyslog|sysstat"|awk ‘{print"chkconfig",$1,"off"}‘|bash

export

chkconfig --list|grep 3:on


2.5提權oldboy可以sudo(可選優化)

useradd oldboy

echo 123456|passwd --stdin oldboy

\cp /etc/sudoers /etc/sudoers.ori

echo "oldboy ALL=(ALL) NOPASSWD: ALL " >>/etc/sudoers

tail -1 /etc/sudoers

visudo -c


2.6中文字符集(不用做)

cp /etc/sysconfig/i18n /etc/sysconfig/i18n.ori

echo ‘LANG="zh_CN.UTF-8"‘ >/etc/sysconfig/i18n

source /etc/sysconfig/i18n

echo $LANG


2.7時間同步

echo ‘#time sync by oldboy at 2010-2-1‘>>/var/spool/cron/root

echo ‘*/5 * * * * /usr/sbin/ntpdate time.nist.gov>/dev/null 2>&1‘ >>/var/spool/cron/root

crontab -l


2.8命令行安全(千萬別做)

#echo ‘export TMOUT=300‘ >>/etc/profile

#echo ‘export HISTSIZE=5‘ >>/etc/profile

#echo ‘export HISTFILESIZE=5‘ >>/etc/profile

#tail -3 /etc/profile

#. /etc/profile

2.9加大文件描述

echo ‘* - nofile 65535 ‘>>/etc/security/limits.conf

tail -1 /etc/security/limits.conf

2.10內核優化

cat >>/etc/sysctl.conf<<EOF

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_keepalive_time = 600

net.ipv4.ip_local_port_range = 4000 65000

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 36000

net.ipv4.route.gc_timeout = 100

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384

net.core.netdev_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384

#以下參數是對iptables防火墻的優化,防火墻不開會提示,可以忽略不理。

net.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_tcp_timeout_established= 180

net.netfilter.nf_conntrack_tcp_timeout_time_wait =120

net.netfilter.nf_conntrack_tcp_timeout_close_wait =60

net.netfilter.nf_conntrack_tcp_timeout_fin_wait =120

net.core.wmem_default = 8388608

net.core.rmem_default = 8388608

net.core.wmem_max = 16777216

net.core.rmem_max = 16777216

EOF

sysctl -p查看內核信息


2.11下載安裝系統基礎軟件

yum install lrzsz nmap tree dos2unix nc -y


2.12系統升級操作(暫時不用操作升級)

#yum update或yum upgrade

#yum -y update 升級所有包,改變軟件設置和系統設置,系統版本內核都升級

#yum -y upgrade 升級所有包,不改變軟件設置和系統設置,系統版本升級,內核不改變

模板機優化腳本處理技巧:方便後續克隆改IP和主機名等

修改主機名和IP腳本

===================================================

[[email protected] ~]# cat /server/scripts/m.sh

#!/bin/sh

if [ $# -ne 2 ];then

echo "/bin/sh $0 hostname PartIP"

exit 1

fi

sed -i "s#oldboy#$1#g" /etc/sysconfig/network

hostname $1

sed -i "s#100#$2#g"/etc/sysconfig/network-scripts/ifcfg-eth0

sed -i "s#100#$2#g"/etc/sysconfig/network-scripts/ifcfg-eth1

調整克隆後網站正常配置

[[email protected] ~]# tail -1 /etc/rc.local

>/etc/udev/rules.d/70-persistent-net.rules

刪除模板及網卡配置裏mac所在行及uuid所在行。

===================================================

模板機解析配置

===================================================

a./etc/hosts

hosts解析

cat >/etc/hosts<<EOF

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5 lb01

172.16.1.6 lb02

172.16.1.7 web02

172.16.1.8 web01

172.16.1.9 web03

172.16.1.51 db01 db01.etiantian.org

172.16.1.31 nfs01

172.16.1.41 backup

172.16.1.61 m01

EOF

===================================================

Linux基礎優化與安全重點小結

1)不用root登錄管理系統,而以普通用戶登錄通過sudo授權管理。

2)更改默認的遠程連接SSH服務端口,禁止root用戶遠程連接,甚至要更改SSH服務只監聽內網IP。

3)定時自動更新服務器的時間,使其和互聯網時間同步。

4)配置yum更新源,從國內更新源下載安裝軟件包。

5)關閉SELinux及iptables(在工作場景中,如果有外部IP一般要打開iptables,高並發高流量的服務器可能無法開啟)。

6)調整文件描述符的數量,進程及文件的打開都會消耗文件描述符數量。

7)定時自動清理郵件臨時目錄垃圾文件,防止磁盤的inodes數被小文件占滿(註意Centos6和Centos5要清除的目錄不同)。

8)精簡並保留必要的開機自啟動服務(如crond、sshd、network、rsyslog、sysstat)。

9)Linux內核參數優化/etc/sysctl.conf,執行sysctl -p生效。

10)更改系統字符集為“zh_CN.UTF-8”,使其支持中文,防止出現亂碼問題。

11)鎖定關鍵系統文件如/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/etc/inittab, 處理以上內容後把chattr、lsattr改名為oldboy,轉移走,這樣就安全多了。

12)清空/etc/issue、/etc/issue.net,去除系統及內核版本登錄前的屏幕顯示。

13)清除多余的系統虛擬用戶賬號。

14)為grub引導菜單加密碼。

15)禁止主機被ping。

16)打補丁並升級有已知漏洞的軟件。

===================================================

# 虛擬主機配置(系統克隆)

1. 克隆前系統準備

1清空;

>/etc/udev/rules.d/70-persistent-net.rules

echo ‘>/etc/udev/rules.d/70-persistent-net.rules‘>>/etc/rc.local

兩刪除(網卡配置文件中UUID信息和HWADDR)

sed -ri ‘/HWADDR|UUID/d‘ /etc/sysconfig/network-scripts/ifcfg-eth[01]

cat /etc/sysconfig/network-scripts/ifcfg-eth[01]

2. 進行系統克隆

然後模板機關機,接著選擇要克隆的模板機單擊右鍵,依次選擇管理—克隆

技術分享

接著選擇下一步。

技術分享

因為是第一次克隆,所以選擇虛擬機的當前狀態,然後單擊下一步。

技術分享

在這裏因為鏈接克隆比完整克隆的速度快,節省空間,所以我們選擇創建鏈接克隆,然後單擊下一步。

技術分享

然後在這裏設置虛擬機的名稱和路徑,然後單擊完成。

技術分享

這裏出現完成,就表示我們已經創建好了一個虛擬機,然後開機進行配置。

技術分享

# 虛擬主機配置(設置克隆主機)

#01. 網卡地址修改

sed -i ‘s#200#41#g‘/etc/sysconfig/network-scripts/ifcfg-eth[01]

#02. 修改系統主機名稱

hostname backup

sed -i ‘s#oldboyedu-39-nb#backup#g‘/etc/sysconfig/network

#03. 重啟網絡

/etc/init.d/network restart

#04. 重新建立xshell標簽進行連接

至此,第一臺克隆主機完成


本文出自 “heyong” 博客,請務必保留此出處http://heyong.blog.51cto.com/13121269/1961244

系統優化和克隆過程