2018.12.3 日更新:本文仅作为无互联网环境下安装的参考。更推荐在互联网环境下安装软件和使用系统,毕竟会自动安装依赖包,比较方便。


因个人办公电脑装的盗版Win7总是蓝屏,影响工作,加之看到 WPS Linux版也已发布,尝试安装 CentOS 作为办公系统。大学期间学过 Linux 语法,也自己玩过 Ubuntu,倒都也熟悉。

之所以选择CentOS 是因为 CentOS 是服务器最常用的 Linux 发行版,为了和生产环境保持一致,有利于部署代码,同时网上资料也丰富。版本我选择 CentOS6, 因为个人工作用服务器是 6 版本。 CentOS 7 和 CentOS 6 有些差异。国内源中阿里云最快,3分钟完成5.7G的下载。

1. 下载 CentOS

阿里云 CentOS 6.10 源

阿里云CentOS7下载。(建议选择CentOS7 EveryThing, 9G大小,你的启动U盘要够大)

2. 制作CentOS的启动U盘

使用软件YUMI(YUMI-2.0.6.0.exe), 该软件还能制作多系统(Win+Linux)的启动盘。

YUMI支持的linux系统非常多,比如fedora、linux mint、ubuntu、opensuse、centos等几十种。

如果要创建windows系统的自启动u盘,那么需要在step2处选择

try an unlisted iso/

try an unlisted iso(from memory)

,前者适合windows安装镜像,后者则适合windows pe内存系统。

YUMI在创建自启动u盘的时候,会在u盘中创建mbr,并且还带有自己的引导界面,从而可以对多个需要自启动系统进行有效的管理。

如果U盘被占满,你需要删除其中某些iso的话,还是运行YUMI,勾选“remove an installed item”来选择需要删除的已安装U盘系统。

这样一来,选定的系统也会在启动列表中被删除,而其他项目不会被影响。

3. 在Windows上安装 CentOS

首先在 WIn 上预留出一定空间的空白磁盘,

然后重启电脑,开机按F10(不同PC按键不同),选择U盘启动,进入U盘内的 YUMI 界面。以下可按照 知乎帖子 安装。

注意:知乎帖子中的 sda , sdb 不一定和你的 sda ,sdb 一致。

第19步时,点击“更换设备”,如下图选择MBR,第一个选择sda,第二个选择sdb。

这里的“BIOS驱动顺序”不能简单的选择 sda 或者 sdb,而是第一个选择你的硬盘,第二个选择 U盘或者其它非启动硬盘。

按照知乎帖子,很顺利的就装上了 CentOS6。

4. 更换启动顺序,默认启动Win7

一旦选择了grub为引导程序,下面我们来了解一下它的配置.
/boot/grub/grub.conf是grub产生一个引导选择菜单以及设置一些选项.下面是我的grub.conf:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,6)
# kernel /vmlinuz-version ro root=/dev/hda10
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,6)/grub/splash.xpm.gz
# --> Redhat Linux 8.0 <--
title Red Hat Linux (2.4.18-14)
root (hd0,6)
kernel /vmlinuz-2.4.18-14 ro root=LABEL=/
initrd /initrd-2.4.18-14.img
# --> Win7 <--
title Win7
rootnoverify (hd0,0)
chainloader +1

这个文件很简单,title 后面可以修改名称,注意只支持英文。default=0是默认第一个:ReaHat,如果改为default=1则默认启动第二个:Win7。

5. 为终端换个炫酷实用的皮肤

默认终端白底黑字,命令和文件显示内容区分不开,不好用。按 本文 给命令上个色。(注意:该文章有个错误:PS1最后的结束双引号里漏掉了个 ]

原文纰漏更正: PS1="\[\e[32m\]#\##\[\e[1;31m\]\u@\[\e[36m\]\h \w]\$\[\e[m\]"

另外,也可以参考我的 PS1,效果就是 [hp@myPC ~ 15:26:44]$ 这个命令提示符 变成了红色:

PS1="\[\e[31m\][\[\e[1;31m\]\u@\[\e[31m\]\h \w \t]\$\[\e[m\]"

简单解释下,\[\e  ..  \]     这个可以看作一个整体。用来修饰 后面紧跟元素的颜色等特性。里面的  [32m  就是颜色值,最后的  \[\e[m\]  是结束,用来关闭颜色设置的。要是你没有这个的话;那么,你的命令提示符,包括你通过命令提示符输出的东西都是和最后一次的颜色设置相同。

6. 使用DVD1 和 DVD2作为离线源

参考:使用CentOS DVD1 和DVD2做本地yum源 (简洁有力,我忍不住自己转载并作了更正)

注意:该文章有个错误。第三步的第一个命令:  cp -av /mnt/dvd1 /mnt/dvd3   应为

cp -av /mnt/dvd1/* /mnt/dvd3

其中,有个比较骚的大括号{}操作:

mv /mnt/dvd3/Packages/{TRANS.TBL,TRANS.TBL.BAK} ,其实就是

mv /mnt/dvd3/Packages/TRANS.TBL /mnt/dvd3/Packages/TRANS.TBL.BAK  的简写。大括号内的元素相当于和前后自动拼接成多个字符串。

7. 安装 rdesktop 远程Windows

有了第5步,就可以随意安装CentOS的软件了。安装远程桌面连接工具rdesktop,方便控制我/同事/闲置/远程的Win台式机/WinServer处理Linux无法做到的任务。

yum install rdesktop tsclient

远程连接windows桌面的命令

rdesktop -f -a 16 192.168.3.179

rdesktop是基于命令行的工具,使用简单,用man rdesktop可查询命令参数

即可连接远程的Windows桌面. -f表示全屏显示,-a 16 表示使用16bit色,后面是Windows服务器的地址 。

退出全屏,用Ctrl+Alt+Enter可切换到linux桌面。注意:不要用数字键盘的 Enter,该键进行组合无效。

7. 安装 WPS for Linux[放弃]

没有互联网的情况下,此操作复杂,忽略,建议使用互联网环境下安装。因为我在安装中发现系统自动安装了依赖包:mesa-libGLU.x86_64 0:9.0.0.0-4.el7

最后,CentOS中安装 VirtualBox + Windows7

双系统切换起来,显然比较麻烦。在CentOS 6 中直接装个 Win7 虚拟机用起来更舒服些,毕竟领导安排的有些东西还是需要使用 Win7 的软件。

进入VirtualBox官网,找到 【 Oracle Linux 6 / Red Hat Enterprise Linux 6 / CentOS 6 i386 | AMD64 】。根据自己是32位还是64位选择,我是64位,我选择 AMD64。

拷贝到 CentOS 6中双击安装即可。

2018年11月8日 over.

【Linux-CentOS】在无互联网-内网环境的Windows7主机上安装CentOS双系统,从安装到放弃的更多相关文章

  1. Linux内网环境DNS修改域名指向,JAVA应用程序能否实时切换的问题总结

    公司内网环境中许多调用资源(数据库.web接口等)都是通过内网DNS服务来进行域名-IP的映射. 但经常出现DNS映射修改完毕后,应用中连接的资源迟迟没有变更. 以前一直笼统的认为是linux的dns ...

  2. Linux系统如何在离线环境或内网环境安装部署Docker服务和其他服务

    如何在离线环境或纯内网环境的Linux机器上安装部署Docker服务或其他服务.本次我们以Docker服务和Ansible服务为例. 获取指定服务的所有rpm包 保证要获取rpm包的机器能够上网. 本 ...

  3. 内网环境搭建NTP服务器

    说在前面:ntp和ntpdate区别 ①两个服务都是centos自带的(centos7中不自带ntp).ntp的安装包名是ntp:ntpdate的安装包是ntpdate.他们并非由一个安装包提供. ② ...

  4. 内网环境上部署k8s+docker集群:集群ftp的yum源配置

    接触docker已经有一年了,想把做的时候的一些知识分享给大家. 因为公司机房是内网环境无法连接外网,所以这里所有的部署都是基于内网环境进行的. 首先,需要通过ftp服务制作本地的yum源,可以从ht ...

  5. 内网环境下为Elasticsearch 5.0.2 添加head服务

    背景: 本项目的服务器是内网环境,没有网络,因此需要在离线的环境中,安装head服务. 需要用到的安装包有: node的安装包 elasticsearch的head插件源码 说明:此次只讲述为elas ...

  6. 内网环境使用ansible安装software 需要外网时,如何绑定代理呢

    内网环境使用ansible安装software 需要外网时,如何绑定代理呢? 方法一: 在ansible 的脚本里,yum install 的地方,添加语句: environment: https_p ...

  7. Centos7.2内网环境安装MySQL5.7.24

    1.配置本地yum源 内网环境,首先需要配置本地yum源,以解决MySQL的依赖安装,具体参考该文:点击打开 2.查看服务器环境 uname -a 3.去官网下载MySQL安装包 MySQL官网网址: ...

  8. [转]用apache反向代理解决单外网ip对应内网多个web主机的问题

    用apache反向代理解决单外网ip对应内网多个web主机的问题 转载一个有独立外网IP,需内网服务器对外发布的例子,是应用apache虚拟主机的. 来源地址:http://www.itshantou ...

  9. win10环境下安装Ubantu双系统(超详解)

    win10环境下安装Ubantu双系统 1.准备工作: 先去ubantu官网(https://www.ubuntu.com/download)去下载ubantu镜像.根据自己的实际情况选择32位的或者 ...

随机推荐

  1. The Definitive C++ Book Guide and List--reference

    http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list Reference Style - All ...

  2. IE67不兼容display:inline-block,CSS hack解决

    追加以下代码:*display:inline.*zoom:1 ;} 块元素变为内联块, IE67不兼容:内联元素变为内联块,所有浏览器都支持 发现问题:当然,变为内联块后,有一个特性就是如果元素换行, ...

  3. net2.0实现net3.5特性,如扩展方法,Linq等

    差不多两年没碰net了,今天想做个小工具,于是打开了久违的VS2012,由于客户终端还是winxp时代,而且是net2.0,且升级存在限制,因此必需在2.0下开发,之前的常用库是3.5写的,而且因为3 ...

  4. 通过tomcat shutdown port关闭tomcat

    在tomcat server.xml配置文件中,有个配置项 <Server port="8005" shutdown="SHUTDOWN"> 通过向 ...

  5. lua继承

    lua中其实是没有类的,有的只是表(table) lua查找一个表元素时的规则,其实就是如下3个步骤: 1.在表中查找,如果找到,返回该元素,找不到则往下看: 2.判断该表是否有元表,如果没有元表,返 ...

  6. JSP初学者5

    JSP中include指令和include动作的区别 include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中,  JSP引擎在判断JSP页面未被修改,否则 ...

  7. SqlServer数据库全角和半角互转的方法

    ---摘要: SqlServer数据库全角和半角互转的方法 CREATE FUNCTION f_Convert( @str NVARCHAR(4000), --要转换的字符串 @flag bit -- ...

  8. WebSettings 最全属性说明

    setAllowContentAccess (boolean allow) 是否允许在WebView中访问内容URL(Content Url),默认允许.内容Url访问允许WebView从安装在系统中 ...

  9. matlab练习程序(Hilbert图像置乱)

    正好刚写了Hibert生成曲线,不如再加一篇应用的程序. 关于Hilbert图像置乱,我在网上搜的应用领域主要集中在数字水印和图像加密上,而这两个领域我都没怎么接触过. 大部分的图像置乱都是如下图的置 ...

  10. 国家与大洲对应关系json数据

    [ { "continent_cname": "欧洲", "continent_name": "EU", "c ...