LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 06-10-2009, 05:12 PM   #1
xr200
LQ Newbie
 
Registered: Jan 2009
Posts: 8

Rep: Reputation: 0
How to install Vista on a working Slack PC


I'm running Slackware 12.2 with kernel linux-2.6.27.7
I have 4 hard drives in my PC,

/dev/sda: 9G SCSI
/dev/sdb: 30G SCSI
/dev/sdc: 250G SATA
/dev/sdd: 40G EIDE

Slackware is installed on the /dev/sdc (SATA) drive. The other hard drives
are used primarily for backups and testing. For example, when a new version of
Slackware is released, I will install it on /dev/sdb to test it, and I can continue
to use Slack 12.2 while I'm testing.

I use lilo as my boot manager, Here's my /etc/lilo.conf:

######################################3
boot = /dev/sdc
timeout = 40
vga = normal
default = SLACK
nowarn
lba32
prompt

image = /boot/vmlinuz-huge-smp-2.6.27.7-smp
read-only
label = SLACK
root = /dev/sdc8
######################################3

I now need to install Windows Vista on this computer (for my wife).
I want to install it on the /dev/sdd EIDE drive. I absolutely positively
do not want to screw up anything on my perfectly working Slackware system.
I already have a working rescue CD (made with mkrescue) so I'm feeling
pretty safe.


What is the correct way to install Vista on a different hard drive after
Linux has already been installed? I'm really thinking I should unplug
the SCSI and SATA cables from the motherboard to insure that Vista cannot
write anything to those drives. But if I did that, I'm assuming Windows
will write something to the MBR on the EIDE drive because it's the only drive
the PC knows about when Vista is installed, and that could screw up Lilo
and I'm not sure that the BIOS would do when I try to boot up.

And once Vista is installed on the EIDE drive, what do I need to do to
be able to dual-boot into Slackware or Vista?
 
Old 06-11-2009, 02:14 PM   #2
justwantin
Member
 
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Slackware, Slackwarearm
Posts: 878

Rep: Reputation: 120Reputation: 120
I haven't done this but if I wanted to this would be how I'd go about it on first thought.

When bothering with dual booting in the past I have only installed windows (98 and 2000) on the first primary partition, e.g. /dev/hda1 since I believe they had to be there although that may have been an old wives tale. In any case MS systems seem to be fussy so Id disconnect the drive with your slack on it and then install vista and let it think it owns the box.

Once vista is installed reconnect your slack hd making that sda and connect the vista hd as sdb. Boot order in bios should be first hd, second hd, etc, i.e. sda, sdb, etc. Then add a stanza for booting vista in lilo.conf addressing the vista sytem on sdb accordingly. Dual booting and lilo have been discussed on this list many times before so you can find info on those threads if you need it.

BTW have you thought about giving your wife vista via virtualbox instead of dual booting? I've installed xp several times now on slack using virtualbox. My daughter needs MS office for school and I am considering it as an alternative to cxoffice when I upgrade her machine after the forthcoming new release.

Last edited by justwantin; 06-11-2009 at 02:18 PM. Reason: tyops
 
Old 06-11-2009, 05:43 PM   #3
mattydee
Member
 
Registered: Dec 2006
Location: Vancouver, BC
Distribution: Debian,Ubuntu,Slackware
Posts: 479

Rep: Reputation: 48
I've installed Vista before on a machine that had slack, ubuntu and xp.

Vista is actually pretty good as far as letting you choose what partition you want to install on. As far as the boot loader goes, it will rewrite the MBR of the first hard disk (usually hda) so you have to reinstall lilo (or in my case, grub). AFAIK, there is no way to avoid this.

As long as you have a Slack boot cd handy, its not too big of an issue: Once lilo or grub is reinstalled, you can get it to chainload the vista loader.

Last edited by mattydee; 06-11-2009 at 05:45 PM.
 
Old 06-11-2009, 09:25 PM   #4
Erik_FL
Member
 
Registered: Sep 2005
Location: Boynton Beach, FL
Distribution: Slackware
Posts: 821

Rep: Reputation: 258Reputation: 258Reputation: 258
There are some advantages to disconnecting (or disabling) all the other hard disks when you install Vista.

Windows assigns a drive letter to the Windows partition and that drive letter will be used forever. If it ever changes then Windows won't boot. You can change the location of the Windows partition but NOT the drive letter used to refer to that partition. When you install Windows to the first (or only) connected hard disk and partition then it will be assigned drive letter C. Many programs don't care about the OS drive letter but a few may not work correctly with an OS drive letter other than C.

Windows always installs its boot loader files to the active (usually first) partition on the first hard disk. If you only connect the drive for Vista then the boot loader files will be installed on that disk along with Windows. The boot loader files are "bootmgr" and the contents of the "boot" directory including the Boot Configuration Database "bcd".

After you connect all the drives then you can add a menu entry for Grub or Lilo to chain to the first sector of the Windows boot loader partition.

The Windows boot loader can be in any file system that Windows understands (FAT16, FAT32 or NTFS). You don't have to put it in the same partition as Windows but if it isn't in the active partition on the first hard disk then some other boot loader has to chain to it.

You can also temporarily install the Vista boot loader to the first partition on the first hard disk, then copy the partition boot sector into a file and re-install Grub or Lilo. Chain to the contents of the file rather than a hard disk sector to start the Vista boot loader. For example, if you made your first hard disk's first partition FAT32 you could put Grub and "bootmgr" there.

The Vista "bootmgr" can chain to binary files containing a copy of a boot sector. For example, my system has NTFS and "bootmgr" in the first partition of the first hard disk along with Vista. The Vista "bootmgr" chains to Grub using a boot sector file. Grub is installed in the second (ext3) partition along with Linux. The Vista "bootmgr" can't chain directly to a hard disk sector. The sector has to be copied to a file and then "bootmgr" can chain to the file. That makes Lilo a bit inconvenient since every change to the Lilo configuration requires updating the file for Vista. That's why it makes more sense to have Lilo chain to Vista's "bootmgr".

If you try to chain to "bootmgr" and it is located on some disk other than the first one then you have to change the BIOS drive IDs or patch the boot sector to use the correct drive ID. Windows always writes drive ID 80 into boot sectors and that won't work if "bootmgr" is not somewhere on the first hard disk. What I usually do is copy the boot sector to a file, change the drive ID in the file, and then have Lilo or Grub chain to the file.

Here are the drive IDs.

80 (hex) - First Hard Disk
81 (hex) - Second Hard Disk
82 (hex) - Third Hard Disk
83 (hex) - Fourth Hard Disk
...

I do mean "hard disk" and not "drive letter". Drive letters or device names are assigned based on partitions but booting uses the BIOS that doesn't know about partitions at all.

Some BIOS software will not work properly booting from any drive ID except 80 (hex). In that case the drive IDs have to be rearranged. For example, in Grub one can do this.

title Windows Vista
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
chainloader +1

Without the "map" commands the drive ID would have to be changed to 81 (hex) in the boot sector, or a file would have to be used instead of the actual boot sector.

I prefer to leave the drive IDs set to 80 (hex) in the boot sectors on all the disks so that I can connect them and boot them without other disks. Usually I make copies of boot sectors into files and then patch the drive IDs in the files. My current BIOS doesn't support that so I have to use the "map" commands to make any drive that is booting have drive ID 80.

After Windows or Linux finishes loading the BIOS drive IDs are not important (except for installing boot loaders). The BIOS isn't used to perform disk I/O after those operating systems boot.

When you change the default boot disk in the BIOS that may change the drive ID assignments. Usually the BIOS will assign 80 to the disk that is booting first. The BIOS may re-assign the drive IDs for other disks even when that isn't necessary. When you change the default boot device or boot priority in the BIOS be prepared for drive ID assignments to change.
 
Old 06-12-2009, 08:10 AM   #5
tronayne
Senior Member
 
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,541

Rep: Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065
I have had excellent results using both VMware Server (http://www.vmware.com) and VirtualBox (http://www.virtualbox.org) -- and, after side-by-side evaluation I'm more in favor of VirtualBox over VMware; although both are reliable and support multiple operating systems, I've been finding VirtualBox a little easier to use and much, much simpler than dual booting.

I have a second SATA drive that's used for the virtual machines (and some extremely large GIS files and other stuff), have had zero problems and my wife is a happy camper logging in, starting a browser and clickity-click starting up winders in VirtualBox: no fuss, no muss, no fiddling around, no BIOS problems, no LILO problems, no nuthin.

Might be worth a look-see.
 
Old 06-12-2009, 11:19 AM   #6
Erik_FL
Member
 
Registered: Sep 2005
Location: Boynton Beach, FL
Distribution: Slackware
Posts: 821

Rep: Reputation: 258Reputation: 258Reputation: 258
Quote:
Originally Posted by tronayne View Post
I have had excellent results using both VMware Server (http://www.vmware.com) and VirtualBox (http://www.virtualbox.org) -- and, after side-by-side evaluation I'm more in favor of VirtualBox over VMware; although both are reliable and support multiple operating systems, I've been finding VirtualBox a little easier to use and much, much simpler than dual booting.

I have a second SATA drive that's used for the virtual machines (and some extremely large GIS files and other stuff), have had zero problems and my wife is a happy camper logging in, starting a browser and clickity-click starting up winders in VirtualBox: no fuss, no muss, no fiddling around, no BIOS problems, no LILO problems, no nuthin.

Might be worth a look-see.
I use VirtualBox quite a lot. It isn't perfect but the features surpass any other free software including Microsoft Virtual PC. Just being able to run the same VM software under Linux and Windows is helpful although the virtual disks are not 100% compatible between the two.

I've only run into a few issues where a real PC works better than a virtual machine. Games or anything requiring 3D acceleration don't run as fast through the simpler VM graphics interface. Time synchronization software can't be easily tested due to the VM time synchronization services. So far VirtualBox does not take advantage of multiple CPU cores or hyper threading.

Some things are much more convenient using a virtual machine. I can create boot floppy disks without having a real floppy drive and then use those floppy images to create boot CDs that emulate the floppy disks. That allows me to use older floppy based operating systems or software on computers without a floppy disk.

A VM is great for testing an OS or software likely to affect the OS. For Linux it can be used to compile drivers and software for a new release to allow installation on the real hardware. Things like fake hardware RAID may require additional software that isn't part of the Linux Setup CD.
 
Old 06-12-2009, 01:48 PM   #7
justwantin
Member
 
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Slackware, Slackwarearm
Posts: 878

Rep: Reputation: 120Reputation: 120
At the risk of hijacking this thread although it may be relevant for xr200, do either of you guys access networked printers on the systems run on virtualbox? I have a cups/slack print server on another box and while I was able to set up a printer on virtualbox xp using ipp (not samba), meaning that the xp system saw the printer and installed the necesary driver, I was never able to print. That has been my one hang up with switching over from cxoffice so my daughter can use msoffice aps.

Otherwise I'd agree with tronayne, and say that a virtual windows system would be my preference over dual booting.

Last edited by justwantin; 06-12-2009 at 01:50 PM. Reason: tyops
 
Old 06-12-2009, 02:35 PM   #8
Erik_FL
Member
 
Registered: Sep 2005
Location: Boynton Beach, FL
Distribution: Slackware
Posts: 821

Rep: Reputation: 258Reputation: 258Reputation: 258
Quote:
Originally Posted by justwantin View Post
At the risk of hijacking this thread although it may be relevant for xr200, do either of you guys access networked printers on the systems run on virtualbox? I have a cups/slack print server on another box and while I was able to set up a printer on virtualbox xp using ipp (not samba), meaning that the xp system saw the printer and installed the necesary driver, I was never able to print. That has been my one hang up with switching over from cxoffice so my daughter can use msoffice aps.

Otherwise I'd agree with tronayne, and say that a virtual windows system would be my preference over dual booting.
I don't know a whole lot about Linux printing. I got my Brother networked laser printer working with Postscript and CPUS.

I can give you some suggestions about Windows file and printer sharing through virtual machines. The biggest problem most people run into is that NetBIOS over TCP/IP (NetBT or NBT) does not work across IP sub-networks. If you use the NAT network interface in VirtualBox that creates some issues. You can get around those issues if you understand the basics of NetBIOS and SMB (Server Message Block) and the Windows network browser.

File and Printer Sharing can be divided into three main areas.

- Network Browsing (My Network Places, etc.)
- Computer Name to IP resolution
- SMB sessions, shares and file transfers

You don't absolutely need the first two. If you know the IP address of a computer (or shared printer) that you want to access then you don't need the browser to show you that the computer/printer exists. You also don't need a way to find the IP address from the name, since you already know the IP address. If you create shortcuts or path names using the IP address then all you need is the third function, SMB.

Network Browsing uses UDP broadcasts to port 138. Computers broadcast their existence, and also "elect" some computers to maintain the list of computers. Computers in other sub-networks or workgroups don't see this list or participate in maintaining the list. You can support browsing across sub-networks using the LMHOSTS file but that isn't required. To do without Network Browsing you just need to know either the name or IP address of a computer, or create a permanent shortcut that refers to the name or IP address. Network Browsing works through NetBIOS over TCP/IP so if you disable that you don't have network browsing.

Computer name to IP resolution can be done in many different ways. Windows tries to use all of them.

- NetBIOS broadcasts to UDP port 137 (NetBIOS name service)
- DNS (Domain Name System) servers
- WINS (Windows Internet Name Service)
- The "hosts" file
- The "LMHOSTS" file

Most home LANs use the first method for name resolution and broadcast requests with a computer name to UDP port 137. The target computer responds to the requesting computer on UDP port 137. This doesn't work across sub-networks and a virtual machine using NAT can't use this method. To make this work with a virtual machine, use the network configuration that puts the virtual machine on the LAN using an IP address on the LAN (bridged).

The DNS server provided by an Internet Service Provider can't be used for computer name resolution because computers on the LAN can't register their names with the DNS server. Only a DNS server on the LAN can be used, and computers have to register their names with the server (or a database has to be entered manually). If you provide a DNS server then your virtual machine can use that DNS server and resolve names for computers on your LAN.

A Windows server or SAMBA server in Linux can be a WINS server. You have to separately identify the WINS server in the network settings for client computers. In Linux you configure that in the SAMBA settings. A WINS server can also act as a proxy and it will use NetBIOS broadcasts on UDP port 137 to resolve names that aren't in the WINS database. The main advantage to this is one can use a mixture of computers that support WINS and computers that only support NetBIOS name resolution. Using a DNS server works equally as well.

IP addresses for computers can be added to the hosts files of the computers that will access them. Usually this requires a static IP or manually configured IP for the computers so that the addresses don't change. Some routers support static DHCP assignment but I'm not sure about VirtualBox NAT. One can certainly assign an IP address manually such as 10.0.2.100 and then use the hosts files.

The "LMHOSTS" file can contain computer names with the associated IP addresses. It can also contain more complicated information about network browsers for maintaining the list of computers. For most people this is overkill and "seeing" the names of computers on the network from a virtual machine is not necessary.

The last part of file sharing is what does the useful work of listing shares and transferring information. It is called Server Message Block or SMB. There are two ways for SMB to communicate.

TCP port 139 (NetBIOS session)
TCP port 445 (SMB session)

Windows establishes a connection on both ports at the same time and if port 445 is successfully established then Windows disconnects port 139 and uses port 445. A virtual machine can't use port 139 since NetBIOS does not work across sub-networks. However, port 445 works just fine across sub-networks.

From inside a virtual machine behind NAT, it is possible to access Windows file and printer shares using the IP address in place of the computer name. SMB will use port 445 to communicate.

To use computer names behind a NAT add those computer names to the hosts file or set up a DNS or WINS server on some computer that can resolve the names.

To get a complete list of computers in the network "browser" read the documentation for the LMHOSTS settings and configure the required browser information in the virtual machine OS and the other computers. This is probably not for the timid. I haven't tried it myself.

Once you understand the limitations of Windows file and printer sharing across sub-networks you can get around them, or simply keep in mind that you have to use IP addresses instead of names for computers and you won't get a nice list of computers "seen" on the network. All three parts of Microsoft networking are separate so one can still access shared files and printers even when network browsing or computer name resolution aren't working.
 
Old 06-12-2009, 03:07 PM   #9
justwantin
Member
 
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Slackware, Slackwarearm
Posts: 878

Rep: Reputation: 120Reputation: 120
Thanks Erik_FL, that must've taken some time to write.

I'll have to read that again tonight and maybe it'll provide some insight,

I once had a win2k box printing directly to cups using ipp, I figured this wouldn't be much different.

I was using static IPs on our net then and still do now. I've been thinking that it might have something IP's and maybe the Cups server access. Cups was recieving the print request but it wouldn't print. Unfortunately I just upgraded the server to 12.2 so I've lost the old error log.

My understanding of network protocol is limited so your input is most welcomed. I have only set up bridging once to use IPCop on a server. Here with this modem set to static ip and everything connected via a switch it all "just worked" until I tried to print with xp on vb
 
Old 06-13-2009, 06:52 AM   #10
tronayne
Senior Member
 
Registered: Oct 2003
Location: Northeastern Michigan, where Carhartt is a Designer Label
Distribution: Slackware 32- & 64-bit Stable
Posts: 3,541

Rep: Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065Reputation: 1065
I have an H-P Deskjet 2280tn PostScript printer that's a network printer (on the router, fixed IP); works just fine from multiple Slackware boxes with CUPS, from virtual XP, from virtual Ubuntu and from virtual Win98. The Windows virtual machines need the H-P software installed in them, but that's to be expected. This is true from both VMware Server and from VirtualBox. For my purposes I don't run a print server, I just let CUPS do the job on each Slackware box and let the virtual machines do their thing as needed. Probably not the "right" way but it works for me and I don't need a dedicated print server to mess with.
 
Old 06-13-2009, 02:57 PM   #11
Woodsman
Senior Member
 
Registered: Oct 2005
Distribution: Slackware 14.1
Posts: 3,482

Rep: Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546
Just to throw in some additional two cents:

I dual-booted for a long time. Although as a proof-of-concept experiment I once upon a time set up qemu on my old box, the hardware did not have the muscle to keep two operating systems running. When I bought my current dual core hardware, I quickly set out to install and configure VirtualBox. I now run three different versions of Windows in a virtual machine. I need Windows primarily for professional reasons and the virtual machine route has worked well for me.

One nice aspect about virtual machines is I never have to concern myself with the usual Microsoft arrogance about being the only operating system on a drive. Being self-contained in a virtual environment keeps that arrogance isolated. No fussing or worrying about MBR overwrites.

I'm running the OSE version, so no USB, but that never has been a problem for me. I can install a USB device through my host Slackware operating system and then manually share the mounted USB directory through VirtualBox.

With respect to printing from a virtual machine, I set up the Samba server on my host Slackware. Then I reconfigured the printer connection in Windows to use a network device rather than a local LPT1 printer. Works quite well.

I also use the VirtualBox network bridge device so I can use host interface networking in VirtualBox. Using simple NAT pass-through will not provide access to the host box printer. I'm using version 2.0.8 and have had no reason to update to the latest version of VirtualBox. I think the bridge device setup has changed in recent versions.

Another note: I install all of my virtual machines on a different drive than my primary host operating system drive. This helps reduce hard drive wear and tear with two operating systems running. This also improves response times in both systems.

In all, running a virtual machine is much nicer than dual booting.
 
Old 06-13-2009, 04:21 PM   #12
justwantin
Member
 
Registered: Aug 2003
Location: Melbourne, Australia
Distribution: Slackware, Slackwarearm
Posts: 878

Rep: Reputation: 120Reputation: 120
I don't know if that helps xr200 any but thanks all for the input guys. Its a scripting and compiling in current day today but I'll get back to VB soon... VB as in software that is :^)
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
New install on vista system, want dual boot for vista and fedora. lhelden Linux - Newbie 9 08-21-2008 10:22 AM
After installing Vista on one disk, Knoppix or Ubuntu Install CDs stopped working dkaplowitz Linux - General 2 12-09-2007 08:38 AM
Keyboard not working after Slack install spune Slackware - Installation 13 04-11-2006 08:00 AM
GUI in new Slack 10.0 install not working migraine Linux - Newbie 4 06-26-2004 08:24 PM
Keyboard not working on new Slack 9.1 install DruBo Slackware 2 10-30-2003 03:21 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:09 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration