折腾一天安装Centos7,以及后面恢复Win7引导的曲折历程
访问镜像网站,http://mirrors.aliyun.com/centos/7.0.1406/isos/x86_64/
或者直接下载:http://mirrors.aliyun.com/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-livecd.iso
为什么选择这个ISO?
因为足够简洁,该有的基本上有了。新手的话还是带图形界面更容易上手。高端玩家可以下载其他的ISO文件。
如果用于服务器实装,也可以用这个ISO安装完后设置为INIT 3。
二、制作USB引导盘
如果是linux系统,使用dd命令直接制作。
dd if=CentOS-7.0-1406-x86_64-livecd.iso of=/dev/sdc
注意:
dd命令制作的USB KEY无法在WIN中正常查看。但在LINUX系统中没有任何问题。
/dev/sdc为U盘的设备名。不要照抄。可以先用命令fdisk -l 查看对应的设备名
不要使用诸如/dev/sdc1这样的分区名,而是/dev/sdc这样的。因为是写入整个USB KEY。
如果是WIN系统,下载并安装Universal-USB-Installer应用程序来制作。因为RHEL、FEDROA、CENTOS都是血脉相连。该程序只能制作LIVE CD,这也是为什么我要选择该ISO的原因之一。
这个应用程序在二楼的打包文件中已经提供了。
下面贴一些实际安装过程中会出现的图片:
注意:对于U盘安装,我们需要修改镜像位置。
2.2、选择第一项:Install CentOS 7 ,按 e 键进入编辑界面。
将 vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
改为 vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quiet,这里sdb4为U盘所在分区,也可能是sdb1 ,可根据实际情况修改(也可以用其他方法)(这个部分是网上说U盘安装时需要修改的参数部分,但实际上我并没修改直接选择第一项安装就顺利完成了)
2.3、修改后,按Ctrl+x执行修改,正常情况下,将进入安装界面,如下图:
选择想要安装的语言,点继续,如下图:
2.3.1、时区的选择
如果你安装的是英文版,需要将时区改为上海
2.3.2、键盘
英文键盘和中文键盘布局是一样的!!
2.3.3、语言支持
可同时选择支持多种语言
2.3.4、安装源(可以默认不动)
程序将自动选择,进入可以手动制定,还可以直接指定为网络位置!!
2.3.5、软件选择(注意)
进入后,可以看到有多个选项,根据需要选择,如下图:
注意:默认为最小安装,安装后是没有界面的哦!!!!2.3.6、安装位置(重要)
这里我没有截图,下图来自网络,与实际有些不同 1、本地标准磁盘 项中,应该为 本地磁盘 和 U盘 ,选择本地硬盘
2、其他存储选项 中,选择 我要配置分区
3、注意: 最下面的 完整磁盘摘要以及引导程序 ,打开,选择不添加引导(后面再添加),不知道是我这里的问题还是共性问题,先选择 安装引导 下一步将出错!!!,最后点击完成,进入如下界面这里面的“引导程序”是一个坑,安装Centos6.4的时候是可以选择引导程序安装到哪个分区的,但是Centos7不能添加引导到默认的分区,因此安装Centos7会覆盖掉windows的MBR引导程序,所以安装Centos7后需要为Windows添加Grub引导,也是很麻烦的一件事儿、
注意:这里的分区最好选择 为标准分区。因为:在用grub引导时,无法挂载LVMPV分区,根本不识别!!最好不要用自动创建 1、点击 + 号,分别添加 swap 和 /
两个分区
大小 : swap 一般为内存的两倍
/ 为剩余的所有空间
这步需要格外注意:
(1)在选择自动创建分区时,分区信息将不能在更新,(这可能是我自己的问题,等待大家测试)
完成后,点完成,返回配置摘要界面
注意:此时,我们再选择安装位置项,将上面没添加的分区引导一项选上,直接点完成,直到返回配置界面!!
2.3.6、网络和主机名
默认网络是关着的,可以再此处打开
2.4、最后,点击开始安装,如下:
在安装过程中,可以设置 root 密码 和 新的用户 (安装后半部分不能再修改了!!)等待安装即可!!
注意: 安装过程中,如果密码太简单,需要点击两次完成来确认!
至此,安装已完成,重启,就剩下引导了!!!!!!!!!
为Centos 7添加Windows引导程序
网络方案1:
安装CentOS 7后,原来的Windows 7不会出现在启动项目里,网上查找一番后解决办法是修改grub.cfg文件。因为CentOS 7已采用新式的grub2系统,所以需要进入/boot/grub2目录后使用vim编辑grub.cfg文件。:
将下面这段Windows 7的启动项声明:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-XXX' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
加在### END /etc/grub.d/00_header ###之后。其中的XXX为你的Windows 7系统分区的UUID。
经过此番修改后,重启动后,Windows 7启动项可以看到了,并且也可以成功进入Windows 7。(我这样去操作了但是未成功)
网络方案②:打开终端,su成root,
vi /etc/grub.d/40_custom
在最后加入以下行
menuentry 'win7'{
set root=(hd0,1)
chainloader +1
}
然后重设grub2,执行以下命令:
grub2-mkconfig -o /boot/grub2/grub.cfg
重启电脑 (按照此步骤操作,Windows引导失败):
menuentry 'win7'{
insmod chain
insmod ntfs
set root=(hd0,msdos1)
chainloader +1
}
menuentry 'win7 search'{
insmod chain
insmod ntfs
search -f /ntldr --set root
chainloader +1
}
重新检测本地硬盘上是否存在有操作系统,然后自动生成启动菜单。
不需要手动去编辑,而且不用担心手工编辑出错(这样设置后重启还是没有出现Windows的引导,仔细思考什么原因呢? O !明白了Linux只能认识Ext3/4,fat32格式,而Windows是NTFS格式磁盘分区,因此Linux的Grub2识别不了NTFS上的操作系统)。
linux下ntfs硬盘的加载(安装NTFS-3G)
问题:
# mount –t ntfs /dev/sdb1 /mnt/
mount: unknown filesystem type ‘ntfs’
这是由于CentOS release 5.5(Final)上无法识别NTFS格式的分区。
解决办法:
通过使用 ntfs-3g 来解决。
打开ntfs-3g的下载点http://www.tuxera.com/community/ntfs-3g-download/ ,将最新稳定(当前最新版本为ntfs-3g-2011.1.15 )下载到CentOS,执行以下命令安装:
1) 编译安装 ntfs-3g:
# tar zxvf ntfs-3g-2011.1.15.tgz
# cd ntfs-3g-2011.1.15
#./configure
#make
#make install
已经安装完成啦!!
1. mount命令
mount -t 文件格式 -o 选项参数 磁盘分区挂载点目录名
比如:mount -t vfat -o iocharset=utf8,umask=000 /dev/hda5 /mnt/D
再如:mount -t ntfs -o nls=utf8,umask=000 /dev/hdd1 /mnt/sysc
但到这里出现了问题,首先是我的系统不识别该文件格式NTFS,其次是你会问:"你怎么知道外挂的那个系统盘C就是hdd1?"是阿,请继续...
>>2.判断哪个分区是NTFS格式,加载NTFS分区;
>>[root@localhost kalon]# /sbin/fdisk -l l
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x21d3ce88
Device Boot Start End Blocks Id System
/dev/sda1 * 1 26 204800 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 5223 14593 75272557+ f W95 Ext'd (LBA)
/dev/sda3 26 4700 37544960 83 Linux
/dev/sda4 4700 5222 4194304 82 Linux swap / Solaris
/dev/sda5 5223 14593 75272526 7 HPFS/NTFS
Partition table entries are not in disk order
Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf0b1ebb0
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 2611 20972826 7 HPFS/NTFS
/dev/sdb2 2612 19456 135307462+ f W95 Ext'd (LBA)
/dev/sdb5 2612 5875 26218048+ 7 HPFS/NTFS
/dev/sdb6 5876 15539 77626048+ 7 HPFS/NTFS
/dev/sdb7 15540 19456 31463271 7 HPFS/NTFS
.............................................................................................................
现在进入NTFS的分区的加载过程;通过上面的查看,我们知道/dev/sda5是NTFS格式的;
1]我们要建一个挂载点的目录,比如是在/mnt/目录下建一个 win1 的目录:
[root@localhost kalon]# mkdir /mnt/win1
2]把/dev/ sda5 挂载到 /mnt/ win1 中,这样我们如果查看/dev/ sda5磁盘内容时,就会在/mnt/ win1 中找得到;
[root@localhost kalon]#
mount -t ntfs-3g -o nls=utf8,umask=000 /dev/sda5 /mnt/win1
注: -t ntfs 说明文件系统的格式是ntfs的;-o是选项 ,nls=utf8 ,意思是Native Language Support(本地语言支持)是utf8,也就是大家常说的语言编码,也可以换成iocharset=utf8;Fedora core 4.0 默认的语言编码就是utf8的,这样能显示出中文来;umask=000表示所有的用户组都可读可写,但因为NTFS在Linux中写入不安全,所以只能 读,不能写入;
是不是挂载好了呢?....
2.dh -lh 磁盘使用情况命令
>>[root@localhost kalon]# df -lh
文件系统 容量 已用 可用 已用%% 挂载点
/dev/sda3 36G 4.4G 30G 13% /
tmpfs 1012M 1.7M 1010M 1% /dev/shm
/dev/sda1 194M 24M 161M 13% /boot
/dev/sda5 72G 1.4G 71G 2% /mnt/win1
..........................说明已挂载好,可以cd /mnt/sysc/去看看了,余下的我就不多说了 .................................
............................................................................................................................................................
>>开机分区自动挂载:应把一下命令放入/etc/fstab中
/dev/sda5 /mnt/win1ntfs-3g umask=000,iocharset=utf8 0 0
>>cp -r -f srcDir dstDir //复制目录文件
>>rm -rf dstDir //删除目录文件
>>.......
2.umount命令
如果想卸载已经挂载好的目录或盘符,可输入以下命令:
[root@localhost kalon]# umount /mnt/win1