2023年11月24日发(作者:)1双系统启动问题

win7 linux 双系统引导修复





建议先装windows再装linux,安装系统的时候都会在mbr中写引导块的 ,linux安装一般会装一个 grub,不过你不小心把linux的分区删除了,引导程序就不能读出系统所在的位置,导致出现gurb命令提示。这时候可以手动启动 比如我的win7在c盘, 输入如下3个命令就可以了



1. rootnoverify (hd0,0) 设为根分区/root设备,但不加载文件系统。(hd0,0)表示第几个硬盘的第几个分区



2. chainloader +1t 将启动引导权转交给当前分区的首扇区



3. boot



但这样每次开机你都要输入,我们就要修复一下主引导扇区MBR(硬盘的第一个扇区), 一个扇区是512个字节,前面446个字节用于引导程序,接下来64个字节用于存放分区信息,最后2个字节为结束标记。修复的方法很多,xp下可以用个工具 /resource/,运行一下就可以了,win7这个小工具不能用,我们可以从安装包中拷贝这个文件,在boot文件夹中, 然后在cmd中 输入 bootsect /nt60 SYS /mbr 就可以了。







如果你先装了linux再装windows,可能你就不能进入linux了,这时候你可以手动在windows下线添加一个grubdos的启动项, xp的添加方法比较简单, win7中需要用到bcdedit来添加, 你可以查看帮助就知道了 bcdedit /?。



bcdedit /create /d "grub" /application bootsector



bcdedit /set {id} device partition=c:t

bcdedit /set {id} path /

bcdedit /displayorder {id} /addlast







这里的是grub安装包中的,你需要拷贝到c盘或者其他盘,添加之后启动我们可以进入grub中,手动启动linux了。



kernel (hd0,x) /vmlinuz t你需要知道你安装的linux的位置第几个硬盘的第几个分区



initrd (hd0,x) /



boot







我们一样可以利用这个方法来安装linux,如果你没有安装盘,你可以把linux安装包放在FAT32格式的某一个盘中,将安装包中的 vmlinuz 和 这俩个文件拷贝出来,按照上面这个方法来启动安装文件iso所在的 盘就可以进行安装了。







Linux下有个程序可以修复MBR,先下载ms-sys,然后执行 ms-sys -mbr /dev/sda1 就行了,效果和DOS下的“fdisk /mbr”是一样的。







2 win7启动修复MBR(win7+linux删除linux后进入grub rescue的情况)

(1 在光驱插入win7安装盘或者用usb启动

(2 选择完语言选项后,进入下一步,选择底下德系统修复而不是继续安装;

(3 自动搜索完已经安装德系统后,进图下一步;

(4 不要让windows自动修复,没有用,进入命令提示符模式;

(5 先输入命令bootrec /fixmbr 回车. 再输入命令 bootrec /fixboot 回车;

重启系统即可重新恢复win7启动模式.



3 双系统下调整启动项的优先级





端输入sudo mv /etc/grub.d/30_os-prober /etc/grub.d/06_os-prober

接着提示你输入密码,输入完密码之后

然后再输入sudo update-grub

重启之后,启动时WIN7在UBUNTU上面。





windows liunx两个系统修改默认启动项

发布:dxy 字体:[增加 减小] 类型:转载

安装window和linux双系统后,系统启动就交给grub负责调控了。

要是想修改默认启动系统,就要修改grub的配置,你可以进入linux中,用文本编辑器修改,或命令行修改其配置文件:

# vi /boot/grub/ 打开之后,类似如下:



default=0

(这项就表明启动的优先级,0代表第一个系统,1代表第二个,以你的情况而定。)

timeout=7

(这项表明grub等待用户选择系统的时间,单位为秒,-1代表永远等待)

splashimage=(hd0,2)/boot/grub/

hiddenmenu

(这项表明隐藏系统选单,用“#”注释掉,则会在启动的时候,显示系统选单)

title Red Hat Enterprise Linux AS ()

(这项是我的linux的名称,“title”之后的可以随意修改,只做显示使用)

root (hd0,2)

kernel /boot/vmlinuz-2.6.9-42 EL ro root=LABEL=/

initrd /boot/initrd-2.6.9-42

title Windows XP

rootnoverify (hd0,0)

chainloader +1



grub配置基本就是这些。注意!修改之前一定要备份原文件!







Ubuntu的/boot/Ubuntu GRUB下没有Ubuntu 这个文件(一般linux系统下都是这个文件),跟它等价的文件是,他们的参数设置基本是一样的,下面以的内容来了解下各参数的意义,首先我们来看一下/boot/Ubuntu GRUB/中的内容:



default=0

timeout=5

#splashimage=(hd0,6)/boot/Ubuntu GRUB/

hiddenmenu

title Fedora Core (2.6.11-1.1369_FC4)

root (hd0,6)

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/

initrd /boot/initrd-2.6.11-1.1369_

title Windows XP

rootnoverify (hd0,0)

chainloader +1



其中:a,default=0表示默认启动的第0号的操作系统,在Ubuntu GRUB中,title定义了启动的操作系统,从第1个开始,Ubuntu GRUB中是0,而第2个是1,依次类推...



b,timeout=5表示的是出现Ubuntu GRUB界面后,无操作情况下进入default设定的操作系统的时间,如果上下移动选择,则该选项无效;如果将timeout参数删除或者将等于号后的数字改为负数,将会使该项彻底失效,Ubuntu GRUB将一直停留在引导页面等待用户选择。



c,splashimage=(hd0,6)/boot/Ubuntu GRUB/表示的是允许出现的Ubuntu GRUB背景的path,当进入Ubuntu GRUB引导界面的时候,可以看见一副背景图片,这个参数提供的就是这个功能。



为了使Ubuntu GRUB引导更加个性化,大家也可以自己准备一张XPM图片,然后将图片压缩成gz格式,最后修改splashimage参数中的文件路径即可,此项为一可选项

,所以上面将它用#注释了。



d,hiddenmenu表示隐藏Ubuntu GRUB的启动菜单,直接进入由default设定的操作系统中去,为一可选项.



linux类

其格式一般为:

title (......)

root (hd[0-n],x)

kernel (......)

initrd (......)



其中:title行,是定义一个启动操作系统,而后边可以自己随便写上喜欢的名字,呵,当然最起码你得写得要自己能认出来,没必要把linux写成windows吧?!



root行,指定相应的linux所有的/boot,如果在写分区和挂载时没有单独挂载,那么就和/在同一个分区中,hd[0-n]表示的是第几个硬盘,而x则表示的是[第几个分区-1],即x比分区号小1,特别要注意.



kernel行,在这里以kernel 起始,指定Linux的内核的文件所处的绝对路径(通过在终端输入命令:ls /boot/vmlinuz*来看内核的全名);因为内核是处在/boot目录中的,而如果/boot是独立的一个分区,则需要把boot省略,因为 /boot所在的分区在root (hd[0-n],x)中指定了,所以就无需要再指明内核处在哪个分区了;



ro 表示只读;root=LABEL=/ 来表示Linux的根所处的分区。LABEL=/ 这是硬盘分区格式化为相应文件系统后所加的标签;如果您不了解什么是标签,也可以直接以/dev/hd[a-z]X 或者/dev/sd[a-z]X来表示;就看您的Linux是根分区是在哪个分区了。比如我的是在/dev/hda3,那这里就可以写成root=/dev/hda3;



initrd行,如果是/boot独立一个分区,initrd 一行要把/boot中省略;如果/boot不是处于一个分区,而是和Linux的/分区处于同一分区,不应该省略;我们通过查看/boot中的 initrd的文件名到底是什么来写这一行代码,在终端输入:ls /boot/initrd*很容易能得到initrd文件名,然后写入.



除了上面一些参数外,还有password这个参数,它也是比较重要的一个参数。众所周知,通过编辑Ubuntu GRUB启动参数可以轻松的进入单用户模式从而修改root密码。



这对于一台多用户的计算机或服务器来说,无疑增加了安全隐患。大家一定很像为自己的Ubuntu GRUB加一把锁吧,大家可以通过Ubuntu GRUB的password参数对Ubuntu GRUB设置密码。



Ubuntu GRUB的密码设置可分为全局密码和菜单密码。为了防止他人通过Ubuntu GRUB修改root密码大家需要设置一个全局密码。vi /boot/Ubuntu GRUB/Ubuntu (或)在splashimage这个参数的下一行可以加上password=密码。



保存后重新启动计算机,再次登录到 Ubuntu GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑;



虽然我们设置了全局密码,但是如果他人得到了全局密码后仍然可以修改 Ubuntu GRUB启动标签从而修改root密码;这样我们就可以设置菜单密码,设置菜

单密码也非常简单,我们只需要在title的下一行加上password=密码,然后保存退出。



这样即使有了全局密码也必需输入菜单密码才能够引导系统。此外,如果直接对Ubuntu GRUB进行明文加密也是非常不安全的,所以就要使用MD5 对其进行加密。



在终端中输入Ubuntu GRUB-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。大家只需要将生成的MD5 密文复制下来,然后在按照password --md5 MD5密文这个格式设置全局或者菜单密码,保存退出,重启计算机即可。



附:其实在Ubuntu GRUB启动菜单不能工作的时候,进入Ubuntu GRUB命令行(可按CTRL+C键)后,我们同样可以一步一步地把系统启动起来,其实在 中,除title不是指令外,其余的都是Ubuntu GRUB指令,我们只要一步步地输入它们(错了要从新开始),中间输入关于kernel和 initrd要利用TAB键补齐写好,最后只要boot一下就行了.



解决问题:像上面说的当Ubuntu GRUB不工作的时候,可以进入Ubuntu GRUB命令行一步步的解决,这样作的前提是你知道问题出在那里!当不知道问题在那时,还是使用livecd 进入系统,查看出问题在那里,然后修改Ubuntu 或者。



在查找问题时,先进入终端在Ubuntu GRUB下用find /boot/Ubuntu GRUB/stage1命令找到内核文件的真正的位置,然后参考下面系统配置文件/etc/fstab修改Ubuntu 或者,这里最好使用各文件系统盘的UUID;当然也有可能出现别的问题:像内核丢失;Ubuntu 或者丢失,那就另当别论了。



修改后的部分内容:



title Ubuntu 8.04.1, kernel 2.6.24-19-generic

root (hd0,2)

kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=2312ec5d-592c-450f-8590-010efd1fd4a6 ro quiet splash i locale=zh_CN xforcevesa

initrd /boot/-2.6.24-19-generic

quiet



title Ubuntu 8.04.1, kernel 2.6.24-19-generic (recovery mode)

root (hd0,2)

kernel /boot/vmlinuz-2.6.24-19-generic root=UUID=2312ec5d-592c-450f-8590-010efd1fd4a6 ro single

initrd /boot/-2.6.24-19-generic



title Microsoft Windows XP Professional

root (hd0,0)

makeactive

chainloader +1





当我们的脆弱的Windows定期瘫痪,无法修复只能重新安装的尴尬时刻,我们发现“霸道”的Windows 在安装时丝毫没有顾及在硬盘的MBR上还存在操作系统的引导程序(grub),直接删除,只写入Windows的引导信息。



不管微软这样是不是有意而为,这都看出Windows的陋习和微软的强盗行径。我们怎么办,放弃Windows?但是我们还要我们心爱的游戏,反正Windows已经是我硬盘上的一个因为游戏还存在的附属系统

,我们忍了。



发扬Linux人的DIY精神,我们自己动手找回丢失的Linux引导程序。



1,使用Ubuntu live关盘引导进入 Ubuntu live 模式



2,在Ubuntu中运行终端,执行下列命令:



$sudo grub



其实,grub不仅只在我们引导时候出现在我们眼前,我们平时也可以直接运行grub命令进入模拟grub引导程序。



3,之后,我们在grub 命令行模式下接着执行



root (hdx,y)



注意:其中x为硬盘号,数字 “ 0 ”指我们机器上的第一块硬盘,grub的排列顺序是从 “ 0 ”开始的。同理,如果你的系统在第二个硬盘上则是1,依次类推。另外,其中的“ y ”表示前面所指硬盘的 /boot 所在分区号,如果实在不知道,后面信息怎么填,你可以在输入逗号后按Tab键,这样可列出硬盘的分区信息。



4,安装 grub ,执行命令:



setup (hdx)



setup (hdx)就是把GRUB写到"x"硬盘的MBR上。如果成功会有一个



5,安成安装后,退出 grub 。



quit



6,重启机器,重新引导Linux。



$sudo reboot



备注:其实,当我们安装完毕grub之后,还需要检查 grub 的配置文件信息是否正确,方法是在 Ubuntu live 模式下利用 mount 命令加载原来ubuntu 的分区,在原 /boot 目录下的 grub/ 文件中的信息。





linux双线双网卡双IP双网关设置方法



ubuntu双网卡双IP.不同网关.不同子网.如何同时ping通两块网卡的解决方法,

服务器环境如下:、

系统:ubuntu9.04 X64 server

电信IP(TEL):114.80.0.4 netmask 255.255.255.128 gateway 114.80.0.3

联通IP(CNC):112.65.0.2 netmask 255.255.255.0 gateway 112.65.0.1

1.配置网卡信息

# vi /etc/network/interfaces

auto lo

iface lo inet loopback

# The primary network interface

auto eth0

iface eth0 inet static

address 114.80.0.4

netmask 255.255.255.128

gateway 114.80.0.3

# dns-* options are implemented by the resolvconf package, if installed

dns-nameservers 202.96.209.133

auto eth1

iface eth1 inet static

address 112.65.0.2

netmask 255.255.255.0

保存配置信息并重新启动网卡

# /etc/init.d/networking restart

2.增加2个路由表分别是电信:tel 联通:cnc

# vi /etc/iproute2/rt_tables

252 tel

251 cnc

保存并推出

3.增加路由规则

# ip route flush table tel

# ip route add default via 114.80.0.3 dev eth0 src 114.80.0.4 table tel

# ip ruleadd from 114.80.0.4 table tel

此处是设置电信的网关,并可实现让电信的资源访问只从eth0网卡出去

# ip route flush table cnc

# ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc

# ip rule add from 112.65.0.2 table cnc

此处是设置联通的网关,并可实现让联通的资源访问只从eth1网卡出去

4.配置networking启动脚本文件 在结尾exit 0之前增加如下内容

# vi /etc/init.d/networking

ip route flush table tel

ip route add default via 11

4.80.0.3 dev eth0 src 114.80.0.4 table tel

ip rule add from 114.80.0.4 table tel

ip route flush table cnc

ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc

ip rule add from 112.65.0.2 table cnc

exit 0

5,退出并重启网络

# /etc/init.d/networking restart

此时再测试机器网络情况,就会发现电信和联通的地址都可以正常访问了。此方法还可以实现让从电信IP过来的请求按照电信路由返回,从网通IP过来的请求从网通路由返回。

补充:网上有些大神说如果服务器重启,或者网络服务重启,上述的路由规则就失效了,所以你需要把上面这段命令写入系统启动脚本和网络启动脚本

如果是ubuntu/debian,系统启动脚本是/etc/

如果是RedHat/centos,系统启动脚本是/etc/rc.d/

如果是ubuntu/debian,网络启动脚本是/etc/init.d/networking

如果是RedHat/centos,网络启动脚本是/etc/rc.d/init.d/network

对于系统启动脚本本次并没有做更改只是更改了网络启动脚本,有兴趣的同学可以测试下。



五大方法解决双线双IP空间解析



方法一

双线双IP解析的办法只能做镜向解析.

比如你在你的站点设置两个连接.你的域名为/那么你可以在你的网站上做一个电信访问和网通访问的连接.





比如人家访问..cn/ 是电信. 是网通

双线双IP你在我们的主机管理后台会看到两个IP.一个是电信一个是网通.你只需要将www解析到电信IP和空的不带www解析到网通.或用..cn 来解析网通也行.由自已的爱好解析.



解析成后,我们可以在网站的顶部做上连接 网通访问超连接指向电信访问超连接指向..cn





方法二

解析域名的别名记录来实现智能解析

我们推出了采用解析域名的别名记录来实现智能解析,用户只要添加域名的别名记录(cname记录),就可实现域名的智能解析,解析别名记录一般几小时就可以生效,而且没有额外复杂的操作,我们推荐用户使用别名解析的方法。



以下是新网互联mydns,其它管理方法类似,MyDNS功能 → 主机记录列表:



主机记录列表: 域名

刷新 IN

类型 指向 操作

www

. 3600 IN Cname . 提交

. 3600 IN

A

"填写电信或网通IP"

提交



别名解析注意事项:

1.添加完域名的别名记录后,不要再添加同域名的A记录,如你解析的别名记录后,就不要再添加的A记录。

2.根域名不能做别名解析,如不支持做别名解析,可以直接做一个A记录指向一个IP

3.有些域名商的控制面版(如新网互联的),做别名记录时,需在解析过去的记录结尾加“.”号,如解析的域名记录到

,在新网互联正确的填法就是“主机名”填"www",“指向目标地址”.'

4.注意事项:后有一个点,新网域名在做别名记录时候不需要加点,新网互联/万网/商务中国等需要在末尾添加点.

5.以上,该指向记录,在主机管理》管理-绑定域名》里面查看





方法三

智能解析系统双IP空间智能解析说明



本站近期推出的 三线双IP空间,建议大家使用智能解析系统,能够智能识别用户的系统并且调转相应的IP访问,大大提高了访问速度和南北网通电信互融性.使你的网站超级快!



智能解析系统地址:

/



系统相关说明如下:



前言



随着原中国电信集团按南北地域分家,新的中国电信和网通集团随即成立,互联网的骨干网也被一分为二了,北有网通、南有电信。从此,细心的网民可以发现,有些经常访问的网站速度一下子慢了下来,有时候还有访问不到的情况出现。例如北方地区的网络用户访问中国网通的服务器会非常快,而访问中国电信的服务器时,感觉非常慢。这种现象不仅影响了网站的访问量,更严重的是它直接影响了一些经营性网站的经济效益。据分析,产生这个问题的根本原因是中国电信分家之后,电信与网通之间的互连存在问题。虽然信息产业部已经在规划电信网通互联互通计划,但在今后相当长的一段时期内,南北方网互连的问题还会存在。



解决方案



智能DNS策略解析很好的解决了上面所述的问题。DNS策略解析最基本的功能是可以智能的判断访问您网站的用户,然后根据不同的访问者把您的域名分别解析成不同的IP地址。如访问者是网通用户,DNS策略解析服务器会把你的域名对应的网通IP地址解析给这个访问者。如果用户是电信用户,DNS策略解析服务器会把您域名对应的电信IP地址解析给这个访问者。



智能DNS策略解析还可以实现就近访问机制(即将推出)。有些用户在国外和国内都放置了服务器,使用我们的DNS策略解析服务可以让国外的网络用户访问你国外的服务器,国内的用户访问国内的服务器,从而使国内外的用户都能迅速的访问到你的服务器。



智能DNS策略解析还可以给你的多个主机实现负载均衡,这时来自各地的访问流量会比较平均的分布到你的每一个主机上。



我们给您提供的这套DNS策略解析服务为用户提供了完善的管理工具,用户登陆这个管理后台后就可以方便的自行添加、修改、删除您的各种域名记录。包括域名A记录、CNAME记录、MX记录。



使用智能DNS策略解析服务无需添置任何其他硬件设备。你只需要把你的域名交给我们的服务器解

析。



使用说明



要使用我们的智能DNS策略解析服务您要具备下面的条件:



1.你的主机已经申请了合法的域名;并把域名DNS改为,服务器。

2.您的主机上配置有电信、网通各一个合法的公网IP地址。

3.你在电信机房和网通机房各放置了一台主机。

4.要使用多主机负载均衡服务,你需要有多台主机并连接到了互联网上。

5.如果有其他具体需求或有不明白的地方,请联系我们以便得到专业的解答。



注意:第二条和第三条只要有一条满足条件即可。主机所使用的操作系统和这个策略解析服务无关。





方法四

域名解析时在在DNS上做智能解析,根据不同的用户IP解析回不同的IP

如是电信用户,DNS就返回电信的IP



可以几种常用的解决方法:

1www.*指定到一个

然后wangluo.*指定到另外一个

2、做一个页面,用户自己选择适应自己的

3、做一个自判断页,,用户进入以后,首先会经过3-5秒的时间判断用户的IP类型并分配线路。需要配合第一种方法三使用。



方法五

如果你申请的空间是双IP空间.首先到空间管理中添加绑定你的域名。



再到你的域名管理控制面板中做解析,因为我们的双线IP服务器是智能DNS服务器,必须使用智能DNS才能正常访问.所以不要做A记录。



双IP空间使用别名解析(CNAME) 添加方法如下:



1、添加CNAME别名解析主机头为 www 别名主机请填入系统给你分配的三级域名(在申请完空间后系统会自动分配一个三级别域名给你) 例如你的ftp用户名为abcd 那么你的空间的三级域名是 这个三级域名就是你的cname别名主机.



2、另外,你还可以使用 (xxx是服务器IP的最后那个段,例如服务器IP为111.222.333.888 那么这台服务器的别名主机名为 使用以上2种方法做的别名解析效果是一样的



双IP服务器属于智能DNS解析,由DNS自动判断访问者来自于哪个ISP 则自动分配其ISP访问最快的线路与服务器连接,高速稳定。所以域名解析必须使用CNAME别名主机。



做好域名解析等待生效后你就可以通过你的域名来访问到你的网站了。



怎样检查域名解析是否生效。你可以在DOS方式下或点“开始” 点“运行” 输入ping (假如是您的域名) 会看到显示出服务器的IP地址,这就DNS说明生效了。如果没有显示出IP说明需要等候生效。在不同ISP的线路上网PING出的IP是不一样的。