Linux镜像

Linux镜像
下载安装镜像
http://ftp.sjtu.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1503-01.iso
注:此镜像为示例,具体实际镜像版本以实际要求为准

创建一个空镜像

#qemu-img create -f qcow2 [filename] 10G

安装linux镜像

#qemu-system-x86_64 -hda [filename] cdrom CenOS-7.0-14.06-x86_64-DVD.iso -boot d --enable-kvm -m 2048 -smp 2 -net nic,vlan=0,macaddr=XX:XX:XX:XX:XX:XX(随机生成) -net tap -vnc :x

根据步骤安装

(注:此安装步骤按照需求去制作server或者desktop版,无法统一步骤,所以余下图略另外请注意centos的分区,需要自定义分区,只要一个/boot分区和一个根分区即可,且根分区为磁盘最后一个分区,这样cloudinit初始化虚机的时候才会扩展根分区)

安装完成后启动

#qemu-system-x86_64 -hda [filename] -boot c –enable-kvm -m 2048 -smp 2 -net nic,vlan=0,macaddr=XX:XX:XX:XX:XX:XX(随机生成) -net tap -vnc :x

修改虚拟机镜像源

Centos镜像

#yum install –y wget
#cd /etc/yum.repos.d/
#mv CentOS-Base.repo CentOS-Base.repo.bak
#wget –O CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
#yum clean all && yum makecache

(注:如有其它的repo文件将其中的baseurl统一改成选择的外部源地址,centos6的应该改为CentOS6-Base-163.repo)
Ubuntu镜像

#vim /etc/apt/sources.list
%s/cn.archive.ubuntu.com/mirrors.aliyun.com/g

或者直接复制该博客中的内容到该文件/etc/apt/sources.list

https://blog.csdn.net/jieniyan2680/article/details/90692438

执行以下命令

#apt-get update
#apt-get upgrade
#apt-get dist-upgrade

Ubuntu镜像安装openssh-server

#apt-get install openssh-server

打开ssh

centos 
 rpm -qa | grep ssh
ubuntu 
dpkg -l  | grep ssh

如果有的话说明已经打开
没有的话:
centos:service sshd start
Ubuntu:/etc/init.d/ssh start

修改ssh配置确保用户可以通过密码登录

创建一个新用户,名称为inesa
密码设置复杂一些,如Inesa2016!!
CentOS下:
修改sshd_config文件
vim /etc/ssh/sshd_config
PasswordAuthentication yes
service sshd restart
(为了安全,默认镜像是不允许root密码登录的,如果需要root登录请自行按以下方式打开)

vim /etc/ssh/sshd_config

PermitRootLogin yes
service sshd restart
Ubuntu下:
vim /etc/ssh/sshd_config
修改:
PermitRootLogin yes
重启服务:

/etc/init.d/ssh restart

配置DNS

vim /etc/resolv.conf
nameserver 203.95.1.2
2.11 查看是否安装cloudinit

rpm –qa | grep cloud-init

如果没有的话
Centos:
yum install cloud-init
Ubuntu:
apt-get install cloud-init
apt-get install cloud-initramfs-growroot

添加或修改/etc/cloudinit(或cloud)/cloud.cfg

如下:

chpasswd:
  expire: false
  list: 'root:inesa2014'
disable_root: 0
password: inesa2014
ssh_pwauth: 1

Ubuntu 系统下(需严格按照格式):

添加:
users:
   - default
chpasswd:
  expire: false
  list: root:inesa2014
password: inesa2014
ssh_pwauth: true
修改:
disable_root: false
注释:
#-apt-configuration

Centos6解决无法扩展根分区问题

yum install –y epel-release
yum install –y dracut-modules-growroot
rpm -qa kernel | sed 's/^kernel-//' | xargs -I {} dracut -f /boot/initramfs-{}.img {}

安装qemu-guest-agent

Centos: yum install –y qemu-guest-agent

vim /etc/sysconfig/qemu-ga
BLACKLIST_RPC=
Ubuntu: apt-get install qemu-guest-agent(不需要配置)

Centos镜像修改多余网卡配置文件(centos 6没有此步骤)

#rm –rf /etc/sysconfig/network-scripts/ifcfg-ens3(只有一个网卡时不需要删除直接进行)
删除该文件后,直接关机,不要重启,重启系统会自动生成一个新的网络配置文件。

关闭selinux

vim /etc/selinux/config

SELINUX=disabled(Ubuntu镜像默认关闭,不用配置)

#网卡名修改为eth0(Centos6没有此步骤)
详见博客如何把ethX改为eth0

https://blog.csdn.net/jieniyan2680/article/details/89331250

date确保时区是CST

如果不是:rm -rf /etc/localtime && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

确保安装ntp

#yum install -y ntp
设置时间排程为0 12 * * * /usr/sbin/ntpdate time.nist.gov (通过crontab -e)
即:#crontab -e

0 12 * * * /usr/sbin/ntpdate time.nist.gov

另外,由于i-stack需求,需要在定时任务上加入下面一条:
#crontab -e

* * * * * cp -f /proc/meminfo /tmp/meminfo

Glance上传linux镜像

Glance上传镜像格式:
#glance image-create --disk-format=qcow2 --container-format=bare --visibility=public --file [filename] --name [name] --property hw_scsi_model=virtio-scsi --property hw_qemu_guest_agent=yes --property os_require_quiesce=yes --property os_admin_user=root

你可能感兴趣的:(镜像)