一.ubuntu系统简介
在本地测试部署hadoop或者ceph存储集群的时候用的是centos,但是生产环境服务器上的系统都是Ubuntu,运维在按照我们的安装文档从开发测试环境转移到生产环境的时候就会遇到一些centos转Ubuntu的问题。
Centos与Ubuntu的使用习惯和命令上还是有很多的不同,下面简单列举一下:
- centos中新建的非root用户是没有sudo的权限的,如果需要使用sudo权限必须在/etc/sudoers 中加入账户和权限,所以切换到root账号的时候只需要输入:su,加入root账号的密码即可。 在Ubuntu中,一般使用sudo+命令,如果是第一次使用会提示输入当前用户的密码(而不是root的密码)
- 在线安装软件中,centos使用的是yum命令,而ubuntu中使用的是apt-get命令。除此之外yum中还有一个从软件源中搜索摸个软件的方法:yum search + 软件名
- centos是来自于redhat,所以centos支持rpm格式的安装,而ubuntu显然是不支持的
- 有某条命令,只有centos支持,Ubuntu不支持,在转移的过程当中运维就得想办法解决这样的问题,这时候要是有docker我们就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。
二.Docker中ubuntu镜像在centos上的应用
1.下载ubuntu镜像,并且进行本地导入镜像
2.使用ubuntu镜像创建容器并且进入容器,可以看到与系统共用一个内核,并且通过桥接docker0和内核建立通信
在退出之后查看出现docker0桥接,如果不显示桥接命令可以安装桥接相应的软件
查看brctl命令所需安装包并且安装:
查看网桥有docker0:
3.进入容器
[root@server1 ~]# docker attach vm2
[root@server1 ~]# docker container attach vm2
4.建立文件并且按ctrl+d强制退出,查看时显示该容器不可用,但是查看所有容器时可以看到刚刚强制退出的容器
4.删除vm2容器
5.再次运行vm2容器时发现文件丢失
6.再次建立文件并且强制退出,显示不可用但是在所有容器里面还是可以看到vm2容器,但是文件会丢失
强制退出容器时文件或者数据丢失的恢复:
1.将容器保存为新的镜像,在ubuntu镜像下再创建一个镜像,并且把容器再强制退出vm2时丢失的文件进行添加
2.删除强制退出的vm2容器
3.再次以新建的ubuntu:v1的镜像运行vm2容器,查看时数据会恢复
在容器中删除文件强制退出即使在创建镜像文件还时不会恢复的
1.在容器中删除新建立的文件并且强制退出
2.在ubuntu镜像上建立ubuntu:v2镜像,新建立的镜像是在unbuntu上建立的ubuntu:v1镜像的基础上进行叠加的,可以查看
3.以ubuntu:将vm2容器保存为新的镜像
发现文件是无法恢复的!