Difference between revisions of "User:Rpeters"

From Info Wiki
Jump to: navigation, search
(Procedure)
(bootable USB)
 
(92 intermediate revisions by the same user not shown)
Line 1: Line 1:
== DOS USB ==
+
= Projector =
  +
Be aware that projectors and monitors have two fundamental differences as external displays
  +
*The majority of projectors, particularly those oriented to "home theatre" are still manufactured with 4:3 ratio display generators
  +
*projectors have many fewer megapixels than do laptops and medium to large monitors
   
=== For General Users ===
+
== For General Users ==
   
  +
Virtually any computer having two display outputs can be made to drive two displays (whether monitor(s) or projector(s) - '''after a fashion'''
==== Purpose ====
 
  +
*occasional users should get adequate result by following the simple guidelines below
The main requirement for a USB memory device that boots to DOS operating system arises when a BIOS/Firmware update of a computer is required.
 
  +
*regular users might want to follow the more technical guidelines to try to optimise the displays somewhat
   
  +
Now the bad news:
It is advisable to use a new, or little used memory device, because any error in reading the BIOS/Firmware code during the actual update is likely to result in an unusable computer. USB "thumb" drives could be used. SD cards, which can be removed and stored in a secure place, might be more applicable.
 
  +
The potential combinations of hardware and software capabilities are huge.
   
==== Procedure ====
 
   
HP provide two techniques for producing DOS USB sticks. Both place utility software on a Windows computer, in order to generate the bootable stick - see "Getting Technical" below, if Windows is not available.
 
   
  +
Additionally, flat panel displays, whether generated via LCD, LED or DLP, produce clearest display only at their native resolution
Instructions are provided on the HP support site for installing these utilities to Windows and creating bootable USB stick(s)
 
   
*HP's generic utility HPUSBFW is not self contained but is more flexible.
 
**it produces a mimimal DOS bootable USB stick containing only nnnDOS.sys & COMMAND.COM
 
**the user can then add relevant firmware and flashing utility
 
**although it has an option for formatting to FAT 32 only FAT actually works
 
**requires one of HP's "Softpacs" (firmware updates) for one of their recent commercial notebooks, from which to obtain the Windows utility program, plus
 
**also requires FreeDOS (which can be downloaded at no cost in the form of fd11src.iso from http://www.freedos.org/download/)
 
*those wanting to upgrade the firmware in a HP computer might find the second tool more suitable. HP provide some of their firmware updates as Windows dotEXE files, which:
 
**install a utility program to Windows and then have facility called ROMPAQ for creating a bootable DOS on a USB device of not greater than 2 GB (FAT 16)
 
**automatically adds the firmware and flashing utility to the USB stick
 
**the naming convention for these files is SPnnnnn.exe
 
   
  +
=== Projectors for Presentations ===
Note that in order to use the former, generic technique, general users would need to burn the above ISO image to CD. Those not familiar with ISO images should read http://www.pcug.org.au/info/index.php/Using_dotISO_Files
 
  +
Image clarity is paramount for still images as used with presentations
  +
*the human eye cannot resolve high resolution images at the distance typically used with projection screens
   
  +
#ascertain the aspect ratio of the projector
The step of burning the ISO image can be avoided - see "Getting Technical" below
 
  +
*if documentation is not available, the ratio of the plain, white image produced when a computer is not connected is a good guide.
  +
#ascertain the native resolution of the projector. In the absence of documentation:
  +
*1024 x768 is typical for 4:3 ratio projectors
  +
*1280 x 800 is typical for 16:10 ratios
  +
*1280 x 720 is typical for 16:9 ratios
  +
#from the computer's Control Panel go to Display and set:
  +
*resolution to same a projector
  +
*tick the box "duplicate/clone these displays"
  +
#click "save" and the desktop should be duplicated on the projector
   
  +
Display on the laptop/PC will be less than optimum
=== Getting Techhnical ===
 
  +
*"wide-screen" displays may have unlit areas at sides of display
  +
*may be less clear as a result of lower resolution
   
  +
The above are unavoidable compromises to obtaining clearest display on the projector
The techniques above have Syslinux bootloader inbuilt. The bootloader can also be added to a USB memory device via Linux. Generic instructions are at the following site, from which (superceded versions of) the code are also available
 
   
  +
==== Common Problems ====
http://goebelmeier.de/bootstick/
 
  +
*display on the projector is a plain desktop wallpaper without icons or windows for apps
  +
**This is caused by not having the displays duplicated
  +
**revisit Display setup on the computer
  +
*"wide-screen" display on a 4:3 ratio projector
  +
**this is a faulty configuration, which results in less clear display and needs to be corrected
  +
**revisit Display setup on the computer
  +
**if still not corrected, this likely results from default settings in the projector
  +
#activate projector's on-screen display
  +
#navigate to aspect ratio
  +
#change from "auto" or 16:9 to 4:3
   
  +
First the good news:
The following would need to be downloaded to obtain up-to-date software:
 
  +
Virtually any computer having two display outputs can be made to drive two displays (whether monitor(s) or projector(s) - '''after a fashion'''
   
  +
Now the bad news:
http://www.freedos.org/download/fd11src.iso
 
  +
The potential combinations of hardware and software capabilities are huge.
https://www.kernel.org/pub/linux/utils/boot/syslinux/6.xx/
 
  +
*occasional users should get adequate result by following the simple guidelines below
  +
*regular users might want to follow the more technical guidelines to try to optimise the displays somewhat
   
  +
Be aware that projectors and monitors have two fundamental differences as external displays
Syslinux will already be installed on many Linux systems. However, Ubuntu and openSUSE will produce a USB stick that invokes graphics at boot time and it is undesirable to have superfluous code on a device that will be used for firmware upgrades.
 
  +
#The majority of projectors, particularly those oriented to "home theatre" are still manufactured with 4:3 ratio display generators
  +
#projectors have many fewer megapixels than laptops and medium to large monitors
   
  +
=== Projectors for Presentations ===
The above procedure should also work on FAT32 formatted sticks of > 2 GB capacity.
 
   
  +
==== Preliminary Configuration for Laptops ====
--[[--[[User:Rpeters|Rpeters]] 18:15, 18 August 2012 (EST)]]
 
--[[Category:Technical Info]]
 
== CUPS ==
 
== Overview ==
 
   
CUPS is a newer printing sub-system, that has inbuilt support for network printing. Its use can enable printing over a LAN to be achieved relatively simply, often requiring:
 
   
*no additional installation of software or "drivers"
 
*only simple configuration changes
 
   
  +
=== Projectors for Presentations ===
One feature of CUPS which can frequently be useful is its ability to print to a network/shared printer when the computer from which the print job is created has no relevant printer drivers installed. Three examples:
 
   
  +
=== Projectors for Home Theatre Use ===
*a laptop/netbook/tablet computer being used away from its home location
 
  +
The majority are still 4:3 native ratio
  +
*but have the capability to accept 16:9 ratio input, typically to support movies
  +
**many default to this ratio and require no reconfiguration
  +
**will display 16:9 ratio input via "letterboxing", ie blanking out the top & bottom 100 or so rows of pixels and displaying image in reduced size
  +
***uses more than the native number of pixels and causes some reduction in image clarity
  +
***which is not significant for movies
  +
***but noticeable with still images (as in presentations)
   
  +
Up-market projectors are now being manufactured with 16:9 ratio display generators
*an OS for which a suitable printer driver can't be obtained eg Android
 
   
  +
== Getting Technical ==
*a computer where the administrator password (which may be required to install drivers) is unknown.
 
   
  +
Be aware that 3 ratios are in common use for displays - 4:3 and 16:9 for consumer grade devices plus business grade monitors & projectors that support the 16:10 wide-screen ratio
CUPS is now the default print sub-system in most Operating Systems - Android, ChromeOS, MacOS, Linux and BSD.
 
  +
*better quality 16:9 and 16:10 displays might present the complete, alternative image correctly via blanking some rows or columns of pixels with slight "letterboxing" or blank right & left margins
  +
*others will distort the image slightly to occupy the full visible area
   
  +
All digital displays, whether LCD, LED, Plasma or DLP provide the sharpest image only at their native resolution
Consequently, it is widely deployed on many devices, such as Smartphones, Tablets, Media Centres & Macintoshes, as well as emerging "pocket computers" and might/could be on other Net/Notebooks, Laptops amd Desktop computers.
 
   
  +
Linux & iOS support different resolutions on the two displays
=== Limitations with Windows OS ===
 
  +
*low end hardware might not support this well, if at all
  +
*if the resolutions selected have differing vertical resolutions on the two displays, then the bottom panel used by many desktops will be absent on the shorter display
  +
**might need to compromise with either
  +
***identical vertical resolutions or
  +
***setting the primary display to the higher vertical resolution
   
  +
== Strictly for Geeks ==
Windows network printing is much less flexible than CUPS
 
*requires a printer driver on any computer from which a print job is prepare whereas
 
*CUPS requires only that a driver be accessible on the network (typically from a server or other computer)
 
   
and i would be of limited value bealthough work-arounds are available, these are the province of intermediate/advanced users and probably only worth pursuing in the following mid/long term scenarios:
 
   
  +
== For General Users ==
*routine printing from a Windows version for which a particular printer "driver" is not available
 
  +
The idea of having both Windows and Linux installed on a computer and being able to select one at boot time appeals to many who are trying, or migrating to, Linux.
*minimising maintenance of a mixed OS LAN
 
  +
*Windows own bootloader cannot boot Linux
  +
**a Linux bootloader must be used with dual-booting
   
  +
The better known Linux distributions will set this up automatically, during installation to a '''single''' hard disk drive in the computer
An overview of the techniques that are feasible for Windows and guides to implmenting those is available from:
 
  +
*<span style="color:#ef2108; background:#black">''' It is likely to cease functioning following the next update of Windows'''</span> and
 
  +
**restoring dual-boot requires Getting Technical
http://en.opensuse.org/SDB:Printing_from_Windows_to_Linux
 
   
  +
Keep at least one emergency boot medium handy. See [[Emergency_Boot - Including for Dual-Boot]]
A lower tech solution for small LAN, having Windows as well as other OS, is long "USB" cables
 
*the limit of length to 5 metres for USB cables can be overcome by using a pair of USB-Ethernet/RJ45 converters, which enable a USB printer to be accessed from up to 100 metres over Cat 5 cabling.
 
**sets of these converters are available from specialisist computer hardware suppliers
 
**might variously be described as "printer extenders" "USB extenders" etc
 
*although this is '''not''' network printing, it can suffice.
 
   
==== Windows 7 ====
+
== Getting Technical ==
  +
The above problem can usually be obviated by having additional hard disk(s) in the computer. This is not an expensive option, given current HDD prices.
  +
=== USB Drive ===
  +
==== Pros ====
  +
*easily added
  +
*no change to internal HDD
   
  +
==== Cons ====
This section requires input from an experienced Windows 7 user
 
  +
*Linux relies on the absolute order of storage devices detected by the computer's firmware
*CUPS, per se, is not apparently available
 
  +
**plugging in (say) a uSB memory drive, may upset the booting
**the underlying protocol IPP is available, (but not necessarily installled) for editions other than "Starter"
 
  +
**many bootloaders will identify partitions via UUID, to overcome this limitation
**it prints via the Internet, which may not meet a user's security requirements
 
   
==== Windows XP ====
+
=== Internal HDD ===
  +
*ensures permanent order of drives
   
  +
=== Installation ===
*requires 3rd party software, which wont be installed by default
 
  +
*mainstream Linux will allow installation to== Strictly for Geeks == a second HDD
*installing CUPS on Windows XP is complicated
 
*when installed, it can work only with Postscript capable printers (this excludes most ink-jets and many low cost laser printers)
 
**this limitation may also apply to Windows 7
 
   
=== Mac OS ===
 
Apple's implementation of CUPS includes some proprietary extensions. That is unlikely to effect Mac to Mac printing but may introduce limitations in printing between Mac OS and other Unix like OS.
 
   
== Situation ==
+
=== Selecting Boot Device ===
  +
The selection of "drive" and hence OS is done at POST stage and depends on type of firmware in the computer
   
  +
see [[Booting from Removable Media]]
This guide assumes that CUPS is installed and generally functioning on both computers. The screen shots are from CUPS version 1.4.x/1.5.x. Versions 1.3.x provide the functionality required but have different menus.
 
   
=== Prerequisites ===
+
== Strictly for Geeks ==
   
  +
*the bootloader must also be installed to the second HDD, in this technique
==== Definitions ====
 
  +
**can require "drilling down" the installation options
   
*"client computer" means the computer/device from which the print job will be generated
 
*it must have CUPS client installed, which is the default condition for Max OSX and Linux
 
*it need not have any printer drivers installed
 
**indeed, it is less confusing if it does not
 
   
  +
--[[User:Rpeters|Rpeters]]11:28, 24 August 2012 (EST)
*"server computer" means the computer controlling the printer. It can be:
 
  +
--[[Category:Technical Info]]
*for network printers, which are connected directly to a network, any computer on the network, having the relevant CUPS print drivers installed
 
  +
== Bootloaders ==
**network may be wired, WiFi or bluetooth
 
**it is perfectly acceptable to configure several computers to use a particular network printer
 
*for USB/parallel attached printers, the computer to which the printer is attached
 
**it must have CUPS server installed, which is the default condition for Max OSX and Linux
 
**the relevant printer must appear in its "Printers" list, and be working
 
**the computet must be posered on, to enable printing, although logon won't usually be required .
 
   
=== CUPS Versioning Issues ===
+
=== Elilo ===
   
  +
Only for computers having EFI firmware
Devices sold by Apple Inc can deploy proprietary extensions to CUPS. Consequently, some features may not work as expected, if the print job is sent to a printer that is controlled by another version of CUPS
 
   
  +
Fairly simple and reliable
As a general rule, the print server should have a version not earlier than the client
 
  +
*but requires a running Linux to generate its config file, in advance
Version 1.5 of CUPS is likely to produce a print job as a PDF file, whereas version 1.3 & 1.4 servers accept only PostScript files
 
*check in the Home tab of CUPS for version number
 
   
  +
=== GRUB Legacy (aka 0.97 ) ===
[[Image:Cups_printers_listing.png]]
 
   
  +
A simple, reliable bootloader, although being phased out and no longer maintained. Use situations:
   
  +
*have only Linux on /ext(n) partitions and (maybe) Windows
=== Configuration ===
 
   
  +
=== GRUB (aka GRUB 2 ) ===
CUPS is configured via a web browser. Its URL on the local computer is:
 
   
  +
GRUB 2 is now the most frequently used bootloader in Linux, but has many remaining issues. Some work-arounds:
http://localhost:631
 
  +
  +
==== "on-the-fly" Mode ====
   
  +
GRUB 2 relies on a pre-defined config file /boot/grub(2)/grub.cfg. If this is not located, for any reason, GRUB 2 may boot to a grub> prompt. To boot from here use the following commands, substituting relevant drive and partition numbers:
Windows might not implement the short-cut "localhost". If not, then substitute the real IP address of the PC. Execute "IPCONFIG" from a Windows command line to find this address.
 
   
  +
::grub> set root='hd0,gpt10'
From the server computer, in the CUPS "administration" tab, ensure that "Share printers connected to this system" is checked:
 
  +
::grub> linux /boot/vmlinuz root=/dev/sda10
  +
::grub> initrd /boot/initrd
  +
::grub> bootBlockquote</blockquote
   
  +
notes
  +
*drive numbers start from 0
  +
*must specify whether partitioned mbr or gpt
  +
*set root refers to location of partition containing /boot for the operating system to be booted
  +
**which will often also be the root file system for Linux
  +
**or merely the system partition for Win
  +
**partition numbers start from 1 (unlike in GRUB legacy)
  +
*this procedure is easiest if kernel & initrd have easily remembered names
  +
**either soft-link generic names or
  +
**press TAB to see possible names
  +
*ctrl-x or F10 may be pressed in lieu the "boot" command
   
  +
The above procedure may be modified to cater for the situation where the menu '''is''' presented but the desired OS is not included or fails to boot. either
[[Image:Cups_admin_home.png]]
 
  +
*press e to edit a menu item or
  +
*press Esc to get to command line, then proceed as above.
   
  +
==== Menu mode ====
   
  +
See GRUB 2 downloadable manual or use "info grub2" to obtain details.
then click "Change Settings" button to save any changes, if necessary
 
  +
Consistent themes amongst various documentation for GRUB 2 are that:
   
  +
*it is unreliable beyond the basics
Then click on the "Manage Printers" button in the same tab, select the relevant printer and pull down the "Administration" menu
 
  +
*OS-probe module is particularly so
  +
*not putting bootstrap in MBR (protective MBR in case of GPT) will
  +
be problematic
   
  +
Indeed, "info grub2" recommends avoid all automated installs & configs by
#select "modify printer" then click the "continue" button to proceed to its second screen
 
  +
distro. Instead, manually grub2-install then write a simple, static
  +
/boot/grub2/grub.cfg. See below for outline of this procedure.
   
  +
As of Jan 2014 and following application of two patches to GRUB in openSUSE 13.1, its GRUB has been brought to ver 2.00-39.4.1. The
  +
automated process works well enough for most Linux plus Windows
   
  +
It failed to find ArchLinux - which uses unusual names for kernels & initrd.
[[Image:Cups_printer_network.png]]
 
  +
Simple work-around for that is to add a 90_persistent section at the end of
  +
/boot/grub2/grub.cfg
   
  +
<nowiki>### BEGIN /etc/grub.d/90_persistent ###</nowiki>
   
  +
menuentry 'ArchLinux (<your descriptor>) {
[[Image:Cups_printer_configuration2.png]]
 
  +
set root='hd<n>,gpt<n>'
  +
linux /boot/vmlinux-linux root=/dev/sd<x><n>
  +
initrd /boot/initramfs-linux.img
  +
}
   
  +
<nowiki>### END /etc/grub.d/90_persistent ###</nowiki>
   
  +
Essentially, the 90_persistent section gets copied verbatim during any
#ensure that "share this printer" is checked
 
  +
subsequent manual or automated run of grub2-mkconfig. Note that this feature might be unique to openSUSE
#it will be helpful to make the "Location" the name of the computer controlling this printer
 
#click "continue" until the process completes
 
 
From the client computer, in the CUPS "administration" tab, ensure that "Show printers shared by other systems" is checked
 
   
  +
The curly braces are essential and enclose GRUB2 commands.
   
  +
This was for a HDD partitioned GPT. replace partition number with mbr<n> if
[[Image:Cups_admin_home.png]]
 
  +
applicable.
   
  +
Multiple menuentries could be put in 90_persistent to cope with multiple
  +
Linuxes.
   
  +
then click "Change Settings" button to save any changes, if necessary
 
   
  +
It's also possible to add an entry by pressing "c". In this mode only the 3
=== Quicktest ===
 
  +
commands are input, followed by a fourth command 'boot'CTL-x at the
  +
Someone asked how to increase the font size in boot menu. The manual
  +
grub.cfg essentially does that by using whatever font will fit on the http://www.pcug.org.au/info/index.php?title=User:Rpeters&action=submit#on
  +
in GRUB legacy. press 'e' to edit an entry.
   
  +
It's also possible to add an entry by pressing "c". In this mode only the 3
Both computers must be connecting to the local LAN via wired or wireless interface. A quick test is to start a web browser and check that the Internet is accessible. Provided that network access is working:
 
  +
commands are input, followed by a fourth command 'boot'CTL-x at the
  +
Someone asked how to increase the font size in boot menu. The manual
  +
grub.cfg essentially does that by using whatever font will fit on the
  +
default screen resolution. Alternatively, one could try to make sense of
  +
the "loadfont" parameters in /etc/grub.d/00_header.
   
  +
Wheras GRUB legacy uses similar syntax in command and menu mode, GRUB 2 uses somewhat different syntax in the two modes.
#Start a text editor (kate, leafpad etc)
 
#*if the application is already running then it may need to be shutdown and restarted to recognize newly available printers
 
#Open a new document and type a few words
 
#From the file menu, select "Print"
 
#Select the relevant printer from the drop-down dialog
 
#*which should list all shared printers on the LAN
 
#click on the properties/settings button
 
#ensure that the key settings are suitable eg A4 paper size, portrait orientation
 
#click OK/print
 
   
=== Preliminary Troubleshooting ===
+
==== Rescue mode ====
   
  +
An ISO image can be prepared, that is tailored to the OS on a specific computer. See above documentation for details on preparation of this image. It can be tested by "dd" to a USB memory device.
''1. No printers listed in the print dialog''
 
   
  +
=== ReFind ===
This problem frequently is the result of a firewall running on one or both computers. Network printing can work only if either:
 
   
  +
Only for computers having EFI firmware
*firewalls on each computer allow port 631 through or
 
  +
*a CD can be downloaded, to test, if uncertain of firmware
*Ethernet zones are set as "trusted/internal" in the firewalls on each computer
 
   
Only printers powered up will appear in the list
 
   
  +
default screen resolution. Alternatively, one could try to make sense of
*confirm that the relevant printer is powered on
 
  +
the "loadfont" parameters in /etc/grub.d/00_header.
*if it is attached to another PC via parallel or USB cable then that PC must also be powered on
 
**(it is not necessary to log in to the sharing PC)
 
   
  +
Wheras GRUB legacy uses similar syntax in command and menu mode, GRUB 2 uses somewhat different syntax in the two modes.
''2. Print Job accepted but no output on Printer''
 
   
  +
==== Rescue mode ====
This can be a result of many possible causes. Some simple checks:
 
   
  +
An ISO image can be prepared, that is tailored to the OS on a specific computer. See above documentation for details on preparation of this image. It can be tested by "dd" to a USB memory device.
#is CUPS known to be installed and working on the computer from which the text was created ?.
 
#Can it print to some printer at its home base ?
 
#does a similar print job created on the server computer give output on the printer ?
 
   
  +
=== ReFind ===
''3. Print Job rejected by Server''
 
*possible permissions issue - check that:
 
**printer is set as "share this printer" on the server
 
***follow "modify this printer" dialog
 
*possibly incompatible CUPS verions
 
**as a general rule, the print server should have a version not earlier than the client
 
**version 1.5 clients produce jobs as PDF files, that are likely to be rejected by 1.3/1.4 servers, which expect PostScript files
 
**preferably upgrade the complete CUPS system on the server to version 1.5
 
***a new version of the driver for '''each''' printer is required at the server end, to support PDF print jobs
 
***if a binary driver, from the manufacturer, was previously used, check whether a driver is now included in CUPS or, failing that, whether an updated driver can be obtained from the manufacturer
 
**following the upgrade, follow the "modify this printer" dialog for '''each''' printer and select the most recent PPD file.
 
   
  +
Only for computers having EFI firmware
If all else fails, then the CUPS Administration page has a button "View Error Log". Text towards the end of that file may give some clues.
 
  +
*a CD can be downloaded, to test, if uncertain of firmware
   
---[[-[[User:Rpeters|Rpeters]] 18:02, 18 August 2012 (EST)]]
 
--[[Category:Technical Info]]
 
   
  +
=== Syslinux ===
== Distributions 64-bit or 32-bit ==
 
== For General Users ==
 
64-bit Linux is generally recommended for computers that support it - see below for simple tests
 
*it has been in general use for over a decade and is now quite mature
 
*it supports an overwhelming majority of hardware
 
*usually includes the NX feature, that is likely to provide additional protection against malware
 
   
  +
A proven bootloader, that continues being developed and maintained. Main limitations:
Note that Linux Distributions may variously refer to 64-bit Linux as "x86_64" or "AMD64". The two are equivalent and the latter works on computers that are trade-marked "Intel Inside" as well as AMD-based computers.
 
  +
*can't directly boot programs on other than its own partition, resulting in the need for work-arounds:
  +
**either chain load all but one OS or
  +
**put the boot code for each OS in a different sub-directory on the syslinux partition
   
=== Test for CPU Model ===
+
== DOS USB ==
==== 64-bit CPU ====
 
A simple and reliable way to check whether a CPU supports 64-bit code is to boot a 64-bit distribution
 
*Parted Magic is a suitable distribution for this purpose, because a 64-bit only ISO is available and it is only ~ 200 MB.
 
*alternatively, any 64-bit Distribution media could be used, if already to hand.
 
*a 64-bit kernel will quickly present an error message along the lines of "unsupported CPU/architecture" if a 64-bit capable CPU is not detected
 
   
==== 32-bit CPU ====
+
=== For General Users ===
If the above test indicates that 64-bit Linux is not supported then most 32-bit Linux should be suitable.
 
*the latter might variously be labelled "x86", "i586", "i686" or frequently no differentiator at all
 
   
  +
==== Purpose ====
Exceptions where a Distribution is unsuitable include:
 
  +
The main requirement for a USB memory device that boots to DOS operating system arises when a BIOS/Firmware update of a computer is required.
*a small minority are compiled for CPU later than "i686" (Pentium II or equivalent)
 
**these would begin to boot on earlier CPU, but quickly halt and display and error message
 
**beginners are faced with using a different Distribution (or obtaining a later computer)
 
*some Distributions are collated for specific hardware platforms eg eeePC netbooks
 
**these are likely to work incompletely on Desktops as well as other laptops
 
**the purpose of the Distribution would be clearly identified by the provider
 
   
  +
It is advisable to use a new, or little used memory device, because any error in reading the BIOS/Firmware code during the actual update is likely to result in an unusable computer. USB "thumb" drives could be used. SD cards, which can be removed and stored in a secure place, might be more applicable.
== Getting Technical ==
 
=== NX Option ===
 
NX (non-execute) is a security feature. A common technique used by malware is to hide code in data-only areas of memory. NX makes that technique ineffective by preventing any such code from running. Consequently it is desirable to utilise NX, where available.
 
   
  +
==== Procedure ====
Advantages of 64-bit distributions include
 
*NX features are provided in hardware, thereby supported and usually included in the kernel
 
*64-bit CPU include many additional instructions which can improve performance somewhat
 
*64-bit CPU and most applicable mainboards support >> 4 GB RAM
 
**8 (or more) GB of RAM is now affordable
 
**2 or 3 RAM modules improve performance if populating dual or triple-channel mainboards and the "sweet-spot" pricing would result in 8 or 12 GB RAM
 
*64-bit Linux code is mature and fairly complete
 
**core hardware drivers for peripherals tend to be manufacturer-agnostic and provided with 64-bit kernels - eg for printers, scanners, usb-storage
 
**manufacturer-specific code for peripherals tends to be provided via programs rather than "drivers" and 32-bit variants can be used where 64-bit are not available
 
   
  +
HP provide two techniques for producing DOS USB sticks. Both place utility software on a Windows computer, in order to generate the bootable stick - see "Getting Technical" below, if Windows is not available.
=== PAE Kernels ===
 
Many kernel options must be included at compile time ie those cannot be loaded later "on-demand". Included in this category are:
 
*NX feature
 
*PAE option for 32-bit CPU, via which NX is implemented on such CPU
 
*CPU instruction set - typically identified via CPU model eg Pentium, Pentium III etc
 
   
  +
Instructions are provided on the HP support site for installing these utilities to Windows and creating bootable USB stick(s)
In general, it is desirable to use a PAE kernel, with 32-bit CPU, simply to obtain the NX feature. Such kernels occupy approximately 200 MB and might not be included on installation media. Typical mechanisms for obtaining them include:
 
*if the option is provided via the installation routine and a broad-band Internet connection is accessible eg via Router
 
*as a post-installation update either from DVD media or via direct download from the Internet
 
   
  +
*HP's generic utility HPUSBFW is not self contained but is more flexible.
== Distributions 64-bit or 32-bit
 
  +
**it produces a mimimal DOS bootable USB stick containing only nnnDOS.SYS & COMMAND.COM
Advantages of 64-bit distributions include
 
  +
**the user can then add relevant firmware and flashing utility
*NX features are included in hardware and thereby supported
 
  +
**although it has an option for formatting to FAT 32 only FAT actually works
*64-bit CPU and most mainboards support >> 4 GB RAM
 
  +
**requires one of HP's "Softpacs" (firmware updates) for one of their recent commercial notebooks, from which to obtain the Windows utility program, plus
**8 (or more) GB of RAM is now affordable
 
  +
**also requires FreeDOS (which can be downloaded at no cost in the form of fd11src.iso from http://www.freedos.org/download/)
**2 or 3 RAM modules are preferable if populating dual or triple channel mainboards and the "sweet-spot" pricing would result in 8 or 13 GB RAM
 
  +
*those wanting to upgrade the firmware in a HP computer might find the second tool more suitable. HP provide some of their firmware updates as Windows dotEXE files, which:
*64-bit Linux code is mature and fairly complete
 
  +
**install a utility program to Windows and then have facility called ROMPAQ for creating a bootable DOS on a USB device of not greater than 2 GB (FAT 16)
*core hardware drivers tend to be manufacturer-agnostic and provided with 64-bit kernels - eg printers, scanners, usb-storage
 
  +
**automatically adds the firmware and flashing utility to the USB stick
**manufacturer-specific code for peripherals tends to be programs rather than "drivers" and 32-bit can be used where 64-bit are not available
 
  +
**the naming convention for these files is SPnnnnn.exe
   
  +
Note that in order to use the former, generic technique, general users would need to burn the above ISO image to CD. Those not familiar with ISO images should read http://www.pcug.org.au/info/index.php/Using_dotISO_Files
==
 
== Work in Progress ==
 
   
  +
The step of burning the ISO image can be avoided - see "Getting Technical" below
=== eWaste ===
 
{| border="1" cellpadding="5" style="background: #efefef;"
 
|-
 
!Device !! Issue !! Task/Test !! Result !! Reserved !! Sitrep !! Action !! Volunteer
 
|-
 
|rowspan="2"|qty 5 AOpen midATX chassis (from circa 2000 Train PC) ||rowspan="2"| || style="color:red;"| 1.erase HDD || - || style="color:#ee3900;"| || - || - || any
 
|-
 
|style="color:red;"| 1.erase HDD || style="color:#ee3900;"| no change || - || style="color:#ee3900;"| unresolved || - ||
 
|-
 
|qty 2 short ATX chassis (from previous gen Gateway) || ||style="color:#ee3900;"| no change || - || style="color:#ee3900;"| unresolved ||
 
|-
 
| r ||style="color:#ee3900;" || - ||style="color:#ee3900;"| || - ||
 
|-
 
| || style="color:#ee3900;"| || - || style="color:#ee3900;"| unresolved || - ||
 
|-
 
| || style="color:green;"y || - || style="color:#ee3900;"| || - ||
 
|-
 
| || style="color:green;"|r || - || - || style="color:#ee3900;"| ||
 
   
  +
=== Getting Techhnical ===
|}
 
=== Equipment Issues ===
 
   
  +
The techniques above contain the Windows version of Syslinux in the Windows software package and install the former as a bootloader on the USB device. The Syslinux bootloader can also be added to a USB memory device via Linux. Generic instructions are at the following site, from which (superceded versions of) the code are also available
{| border="1" cellpadding="5" style="background: #efefef;"
 
|-
 
!Device !! Issue !! Task/Test !! Result !! Reserved !! Sitrep !! Action !! Volunteer
 
|-
 
|rowspan="4"|Huawei 16 port Gb switch (main office)||rowspan="4"| reposition away from Helper's desk || longer, 10 m Cat 5e required||- || - || - || style="color:#ee3900;"| requisitioned || Rod
 
|-
 
| - ||style="color:red;"| - || - || style="color:#ee3900;"| unresolved || ||
 
|-
 
| - || style="color:green;"|runs normally || - || style="color:red;" | - || style="color:#ee3900;" | - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"|Additional Member Use PC (main office) redeployed Old Train 01 || rowspan="4"| "freezing" || - || - || - || style="color:#ee3900;"| hardware testing required- || style="color:#ee3900;"| required || Rod
 
|-
 
| - ||style="color:red;"| - || - || style="color:#ee3900;"| unresolved || ||
 
|-
 
| - || style="color:green;"|runs normally || - || style="color:red;" | - || style="color:#ee3900;" | - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"|Additional Member Use PC (main office) redeployed Old Train 05 || rowspan="4"| unreliable boot from SATA HDD || - || - || - || style="color:#ee3900;"| hardware testing required- || style="color:#ee3900;"| required || Rod
 
|-
 
| - ||style="color:red;"| - || - || style="color:#ee3900;"| unresolved || ||
 
|-
 
| - || style="color:green;"|runs normally || - || style="color:red;" | - || style="color:#ee3900;" | - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"|Train 01 || rowspan="4"| - ||-||- || - || style="color:#ee3900;"| unresolved || ||
 
|-
 
| - ||style="color:red;"| - || - || style="color:#ee3900;"| unresolved || ||
 
|-
 
| - || style="color:green;"|runs normally || - || style="color:red;" | - || style="color:#ee3900;" | - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"| || rowspan="4"| || - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"| || rowspan="4"| || - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| rowspan="4"| || rowspan="4"| || - || - || - || - || style="color:#ee3900;"| ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"| || rowspan="4"| || - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"| ||rowspan="4"| || - || - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="4"| || rowspan="4"| || - || - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
| - || - || - || - || - ||
 
|-
 
- || #005900 - || || - || - || - || ||
 
|-
 
|rowspan="4"|Old Train 11||rowspan="4"| powers up for only<br/> a few seconds ||1 power supply tester ||style="color:#ee3900;"| OK only intermittently || - || style="color:#ee3900;"| unresolved || || Rod
 
|-
 
| 2 alternate power supply ||style="color:red;"|fails to start|| - || style="color:#ee3900;"| unresolved || - || Rod
 
|-
 
| 3 revert to original power supply || style="color:green;"|runs normally || - || style="color:red;" |intermittent & unreliable || style="color:#ee3900;" | set asside as spares || Rod
 
|-
 
| - || - || - || - || - ||
 
|-
 
|rowspan="5"|Old Train 13||rowspan="5"| persistent, annoying, <br/> random video flicker ||1 set CMOS to "failsafe defaults" ||style="color:#ee3900;"| no change || - || style="color:#ee3900;"| unresolved || - || Rod
 
|-
 
| 2.flash upgrade BIOS to F6 level || style="color:#ee3900;"| no change || - || style="color:#ee3900;"| unresolved || - || Rod ||
 
|-
 
|3 run memtest || style="color:#ee3900;"| one faulty cell at 991 MB in '''one only''' of 6 passes || - || style="color:#ee3900;"| unresolved || - || Rod
 
|-
 
| |1 set CMOS to "failsafe defaults" ||style="color:#ee3900;"| no change || - ||style="color:#ee3900;"| unresolved || - ||
 
|-
 
| || - || - || - || - || - ||
 
|}
 
   
  +
http://goebelmeier.de/bootstick/
== Table ==
 
   
  +
The following would need to be downloaded to obtain up-to-date software:
{| class="wikitable"
 
|+''Equipment Issues''
 
!Device !!Problem !!Tests !!Results !!Prognosis !!Helper|
 
|}
 
{|
 
|+
 
|-
 
   
  +
http://www.freedos.org/download/fd11src.iso
|Old Train 11 |||| power supply tester || erratic || || Rod
 
align="bottom" style="color:#e76700;"|
 
   
  +
https://www.kernel.org/pub/linux/utils/boot/syslinux/6.xx/
{| class="wikitable"
 
!colspan="6"|Shopping List
 
|-
 
|rowspan="2"|Bread & Butter
 
|Pie
 
|Buns
 
|Danish
 
|colspan="2"|Croissant
 
|-
 
   
  +
Syslinux will already be installed on many Linux systems. However, Ubuntu and openSUSE might produce a USB stick that invokes graphics at boot time and it is undesirable to have superfluous code on a device that will be used for firmware upgrades.
{| style="border-collapse: collapse; border: 1px solid #000"
 
|!colspan="5"|"Old Train 11''
 
| style="border-style: solid; border-width: 1px"|
 
|-
 
|rowspan="3"|
 
| style="border-style: solid; border-width: 1px"|
 
*power supply tester
 
| style="border-style: solid; border-width: 1px"|
 
OK only intermittently
 
| style="border-style: solid; border-width: 1px"; "color:#e76700;" |set asside as spares
 
| style="border-style: solid; border-width: 1px";Rod
 
|}
 
   
  +
FreeDOS supports FAT 32 and consequently the above procedure should also work on FAT 32 formatted sticks of > 2 GB capacity.
== Templates ==
 
'''this is it'''
+
'''''PRINTING VIA NETWORK'''''
-[[User:Rpeters|Rpeters]]13:25, 24 August 2012 (EST)
 
--[[Category:Technical Info]]
 
   
;def:definition list
 
;:def:definition list
 
   
  +
'''PRINTING VIA CUPS'''
== AF Drives ==
 
== For General Users ==
+
== Overview ==
  +
CUPS is not applicable to Windows. Windows users see [[Printing via Network]]
   
  +
CUPS now the default print sub-system in most Operating Systems - Android, ChromeOS, MacOS, Linux and BSD.
=== Overview ===
 
Advanced Format (AF) Hard Disk Drives are used in many pre-built computers and USB drives from about 2011 onwards.. By way of explanation
 
*AF drives have 4 kB hard sectors in lieu of
 
*the traditional 512 B sectors
 
   
  +
Its use can enable printing over a LAN to be achieved relatively simply, often requiring:
==== Advantages ====
 
  +
*no additional installation of software or "drivers"
*much faster (less disk overhead)
 
  +
*only simple configuration changes
*more space efficient (larger disk capacity from same hardware)
 
*overcomes immutable capacity limit of ~2.19 TeraByte for conventional drives
 
   
==== Disadvantages ====
+
== Applicability ==
  +
=== Android & iOS ===
*Windows 32 bit systems cannot boot from AF drives
 
  +
Typically these require an App to be downloaded from the relevant Store and connect with WiFi enabled printers.
**requires driver from HDD manufacturer, to use as data only internal drives
 
  +
=== Linux & OSX ===
  +
Both use CUPS and can be configured as below.
   
  +
== For General Users ==
No action is required by the typical purchaser, because the manufacturer will have taken care of the special formatting required with AF drives. ''Getting Technical'' below, provides guidelines for those needing to:
 
  +
=== Definitions ===
*repartition drives
 
  +
Those acquainted with client/server model can skip to sub-item "CUPS Versioning Issues"
*install new, "bare" drives
 
  +
*"client computer" means the computer/device from which the print job will be generated
*
 
  +
*it must have CUPS client installed, which is the default condition for Max OSX and Linux
  +
*it need not have any printer drivers installed
  +
**indeed, it is less confusing if it does not
   
  +
*"server computer" means the computer controlling the printer. It can be:
== Getting Technical ==
 
  +
*for network printers, which are connected directly to a network, any computer on the network, having the relevant CUPS print drivers installed
=== Advanced Format Drives ===
 
  +
**network may be wired, WiFi or bluetooth
New HDD from about 2011 onwards are likely to be Advance Formatted
 
  +
**it is perfectly acceptable to configure several computers to use a particular network printer
*usually pre-formatted
 
  +
*for USB/parallel attached printers, the computer to which the printer is attached
*likely to be stated on drive or packaging
 
  +
**it must have CUPS server installed, which is the default condition for Max OSX and Linux
*essential for drives over 2.1 TeraByte capacity
 
  +
**the relevant printer must appear in its "Printers" list, and be working
*has been used on new drives as small as 250GB
 
  +
**the computet must be posered on, to enable printing, although logon won't usually be required .
  +
=== Prerequisites ===
  +
This guide assumes that CUPS is installed and generally functioning on both computers. The screen shots are from CUPS version 1.4.x/1.5.x. Versions 1.6 et seq have similar menus, but fewer options, with some changes having to be effected via computer's Control Panel instead.
   
  +
=== CUPS Versioning Issues ===
Avoid reformatting drives to MBR
 
  +
Firstly it is essential to ascertain which release of CUPS is in use, because versions 1.6 and later are largely incompatible with earlier releases. If uncertain, then on '''each''' machine involved in the network printing browse to:
*performance loss of up to 40% if reformatted MBR
 
  +
https://localhost:631/admin
*requires special procedure - see "Strictly for Geeks" below
 
  +
[[Image:Cups_printers_listing.png]]
.
 
A new type of partition table called Globally Unique Identifier(GUID) Partition Table (GPT) is required to optimise the performance of AF disks. The partition table previously in common use has no univerwsally agreed name but is given the nomenclature
 
Master Boot Record (MBR), because that was a unique feature of it.
 
   
  +
the release number should be displayed in the title bar
Legacy partitioning tools do not handle GPT. A suitable tool for intermediate users is "parted" or its GUI front-end "gparted". The simplest way to use these is from a bootable utility CD
 
  +
*CUPS <= 1.5.4 uses substantially different process from 1.6 and later
  +
**printing between machines mixing these versions is complicated. see below for guidelines, if unavoidable
  +
**as CUPS <= 1.5.4 is now used mainly in older OS, there is a case for upgrading the OS on such machines to a current release.
  +
***it is not feasible for General Users to upgrade the version of CUPS '''without''' upgrading the whole OS
  +
*CUPS 1.6 and later
  +
*Devices sold by Apple Inc can deploy proprietary extensions to CUPS. Consequently, some features may not work as expected, if the print job is sent to a printer that is controlled by another version of CUPS
   
  +
As a general rule, the print server should have a version not earlier than the client
http://www.sysresccd.org/Download
 
http://partedmagic.com/doku.php?id=downloads
 
   
  +
=== CUPS mixed networks <= 1.5.4 plus 1.6 et seq ===
=== Altering Partitions ===
 
  +
Network printing in this environment is more complex. For a guide to procedures see:
It is not advisable to delete or alter patitions of type ef01 or ef02, because these have a special purpose in GPT. Other partitions may be re-sized or added, as required. Note that:
 
  +
http://doc.opensuse.org/release-notes/x86_64/openSUSE/Leap/42.1/
*all partitons in GPT are Primary
 
*up to 128 primaries are permitted
 
*GPT has no concept of "Extended" or "Logical" partitions.
 
*partition type numbers sometimes differ from those used with MBR partition tables
 
   
  +
Sample screen images displayed in the following sections are similar for CUPS 1.4 and later.
A compleat description of GPT is available at:
 
  +
=== CUPS 1.6 and later ===
  +
Later releases of CUPS impose greater network security. Default settings vary with system and may require some troubleshooting if client and server have different origin.
   
  +
The following client systems automatically discover network printers, from default configurations
http://www.rodsbooks.com/gdisk
 
  +
*Linux Mint 17.3
=== New Drives ===
 
  +
*openSUSE Leap
 
  +
*openSUSE Tumbleweed
The full capacity of Drives over 2.1 TB can be utilised only via recent mainboards or add-on SATA controllers
 
*support for SATA 3 (aka 6 Gb/sec) is required
 
 
 
  +
Other environments may require changes For a quick test, from the client computer, open any page in a browser or editor and select "Print"
The boot flag in GPT does *not* make a disk bootable from a BIOS mainboard. See the procedures at:
 
  +
*if any of the networked printers can be selected then no further configuration is required
  +
**if not then:
   
  +
====Temporary Fix ====
http://www.sysresccd.org/Sysresccd-Partitioning-EN-The-new-GPT-disk-layout
 
  +
The following procedure is adequate for portable machines that are away from home base. It might also suffice for other computers that are rarely used to print.
  +
*does not require Admin privileges on most systems
  +
*but '''does require ''' IP address or host name of the machine sharing printers
  +
*settings '''cannot''' be saved
   
   
   
  +
[[Image:Print_Settings_Applet.png |left|frame|]]The Print Settings applet is usually accessible from the main menu and typically has the icon at left
  +
Start this applet to get its main window as below
   
 
== Strictly for Geeks ==
 
=== Capacity ===
 
The international standard for data capacity uses multipliers of 2 ^ 10 in lieu of SI decimal multipliers of 10 ^ 3 eg
 
*kiB = 1024 Bytes
 
*kB = 1000 Bytes
 
through
 
*TiB = 2.198 TB
 
   
Why does this matter ?
 
#drives have always had sectors that are multiples of kiB
 
#*0.5 kiB for conventional HDD
 
#*2 kiB for CD & some Magneto Optics
 
#*4 kiB for AF drives
 
#*32 kiB for DVD
 
#advanced formatting tools allocate partitions in MiB, GiB, TiB increments
 
#*partition sizes will be reported larger by older OS
 
#*formatted capacity of a drive will be somewhat '''less''' than manufacturer's nameplate rating, which is usually in decimal
 
#advanced formatting tools might align partitions on MiB boundaries
 
#*helps optimise performance
 
   
=== Tools ===
 
A more capable partitioning tool is required to set up the advanced features of GPT. The partitioning tool '''gdisk''' is downloadable from
 
http://www.rodsbooks.com/gdisk/download.html
 
=== Partition Conversion ===
 
MBR drives can be converted to GPT partition table, without erasing data, subject to some limitations and risks
 
*essential to backup data & system files
 
*use the "r" menu option in gdisk, followed by "g"
 
*some partition numbers might be changed
 
   
=== Advanced Patitioning Layouts ===
 
*non-sequential partition numbering
 
*spaces between partitions
 
*partition alignment on 1 MiB boundaries
 
   
  +
[[Image:Print_settings_localhost.png |none]]
   
   
==== Re-formatting ====
 
Drives up to 2.1 TB,manufactured during the transitional period, logically divide each 4kB sector into eight 512 B sectors
 
*permits partitioning using legacy programs
 
*deprecated because doing so can decrease performance up to 40%
 
**essential for boot drives in Windows 32 bit systems
 
   
  +
Pull down the Server tab and select Connect, to get the following pop-up dialog
AF drives that are re-formatted to MBR might behave unreliably unless expert options in gdisk are used
 
*see "z" menu option
 
   
== File Migration ==
 
The simplest approach is to install additional HDD '''before''' any systems are installed or data created. If that is not feasible then any existing files/folders at the intended mount point need to be migrated
 
#ensure that the files to be migrated are firstly backed up to independent media
 
#as user root mount the new partition to a temporary point, typically /mnt/
 
#cd to the mount point that will later be used permantly for the new partition
 
#use the "cp -ax" command to copy all files from within the folder of the mount point to ./mnt
 
#*do not use use file managers for this purpose, because those may set incorrect timestamps, permisisons etc for files
 
#unount from the temporary point
 
#set the permanent mount point (and change permissions, if necessary) as in sections "User Storage" or "System Storage" below
 
#the above procedure '''duplicates''' existing files. To remove the originals:
 
#*temporarily '''unmount''' the new partition
 
#*delete all files in the folder of the permanent mount point
 
#*remount the new partition to its permanent mount point
 
   
  +
[[Image:CUPS_server_connect.png |left]]
   
== Firewalls ==
 
   
== Packet-Filtering v Router ==
 
a perenniel question is whether it is preferable to run a packet-filtering style firewall on '''each''' workstation/laptop/pocket-PC or to use a '''single''' "hardware" router to protect the whole LAN
 
=== Packet-Filtering v Router ===
 
   
==== Advantages ====
 
*no additional hardware, cost, wattage
 
*zero acreage
 
   
  +
Change the name of the server to hostname
==== Disadvantages ====
 
  +
or IP address of that required and click on Connect
*generally less "hardened"
 
**many more background prolcesses need to be running to support user apps
 
== Linux ==
 
Most Linux include a packet-filtering style firewall
 
*usually activated, by default
 
**but '''check'''
 
*efficacy likely to be similar
 
**based on iptables
 
**may also include ip6tables and ebtables
 
*administrative interface specific to distribution
 
**"Guarddog" in KDE provides consistent interface
 
   
== Mac OSX ==
 
citation needed
 
== Windows ==
 
citation needed
 
=== Gateway/Router ===
 
*generally regarded as "abandon-ware" by manufacturers - typically
 
**updates are not announced
 
**only a few updates provided
 
**for about three years only
 
   
== Firewalls ==
 
   
Virtually no commercial router is capable of handling all four common types of Internet connection:
 
*Broadband via Cable or NBN
 
**technically HFC, FTTN, FTTH/P (NBN)
 
**TransACT's "cable"/Phase 1/VDSL(n)/NBN is in this category
 
*Broadband via ADSL
 
**also called "ULL" by some suppliers
 
*Broadband via USB modem (2G/3G/4G)
 
*Dial-up via phone line
 
   
If an ISP offers a "router" for their service then it is probably of the applicable type. Otherwise a user would need to choose carefully from the following types of "routers"
 
   
ADSL Modem/Routers
 
*always applicable to ADSL connections
 
*some provide for alternate connection via USB modem as well
 
**check features carefully some USB slots support only USB printer
 
*few, if any, can be used with Cable/NBN
 
*need to distinguish from ADSL modem (only) devices
 
**were popular ~ 10 years ago
 
**supported only''' one''' computer, in absence of additional router
 
*WiFi LAN included in many models
 
   
Broadband Routers
 
*might be described simply as "Router"
 
**primarily for use with HFC, FTTN, NBN
 
*many have USB port
 
**need to check whether supports USB moblie broadband modem
 
**might support only USB printer
 
*technically could be used in conjunction with ADSL modem or ADSL modem/router
 
**new, combined ADSL modem/router device generally a better solution
 
**suitable choice only when ADSL device already owned in order to:
 
***extend ADSL modem service to multiple computers
 
***enhance security of older ADSL devices
 
*WiFi LAN included in many models
 
   
  +
From the client computer, open any page in a browser or editor and select "Print"
Mobile Broadband Routers
 
  +
*if any of the networked printers can be selected then no further configuration is required
*usually physically small devices intended for moblie use with laptop/netbook/tablet
 
  +
**if not then:
**require mobile phone plan of some type
 
**those having slot for SIM card should have inbuilt 2/3/4G wireless broadband modem
 
**others require separate, plug-in USB wireless broadband modem
 
***'''essential''' to check router manufacturer's web-site for compatible modem models
 
*might not be a good choice for use only at fixed location (home/office)
 
*almost invariably include WiFi LAN capabliity
 
*may include "wired" LAN via Ethernet or USB connection
 
*some powered by internal, rechargable battery
 
**these models tend to have limited transmission range
 
**usable only in medium/strong signal areas for moble phone reception
 
**WiFi LAN may have limited range and/or ability to penetrate walls etc
 
*need to stand '''vertically''' for best signal strength
 
   
USB Wireless Broadband Modem
 
*'''not''' a router
 
*requires one of the above separate routers, if routing required
 
   
  +
Main window should now display all discovered printers on the network
Selection
 
   
  +
[[Image:Print_settings_discovered.png |none|frame]]
A wide range of devices are commercially available in each of the above categories. Suggested guidelines:
 
  +
From the client computer, open any page in a browser or editor and select "Print"
*an ISP is likely to be better able to provide techical support for a device they sell
 
  +
*if any of the networked printers can be selected then no further configuration is required
*if relying on friends/relatives/acquaintances for technical assistance then choose a model with which they are familiar
 
  +
**if not then:
*if also relying on the router as primary firewall for a LAN, compare firewalling features
 
**see [[Commercial]]
 
   
  +
If printers are discovered then any newly opened app eg LibreOffice, browsers, editors etc should be able to select and print to one of the printers
Configuration
 
*Routers are generally configured via a Web Browser
 
**other, more technical routers are generally unsuited to home users
 
*Reputable manufacturers have their User Guides available for download from their web-site
 
**peruse manual '''prior''' to purchasing device
 
*user interface via web browser varies widely
 
**impractical to provide generic configuration guidelines
 
**good quality manuals cover the physical connections and setup procedures well
 
   
  +
If no printers are discovered then changes in configuration are required, as below
== Packet-Filtering v Router ==
 
a perenniel question is whether it is preferable to run a packet-filtering style firewall on '''each''' workstation/laptop/pocket-PC or to use a '''single''' "hardware" router to protect the whole LAN
 
=== Packet-Filtering ===
 
   
==== Advantages ====
+
==== Retained Configuration ====
*no additional hardware, cost, wattage
 
*zero acreage
 
   
  +
Neither of the two tools widely deployed for administering CUPS are able to make permanent changes to printer discovery. Both amend the same underling config files:
==== Disadvantages ====
 
  +
*system-config-printer (aka Print Settings)
*generally less "hardened"
 
  +
*the URL https://<localhost or URL>:631
**many more background prolcesses need to be running to support user apps
 
== Linux ==
 
Most Linux include a packet-filtering style firewall
 
*usually activated, by default
 
**but '''check'''
 
*efficacy likely to be similar
 
**based on iptables
 
**may also include ip6tables and ebtables
 
*administrative interface specific to distribution
 
**"Guarddog" in KDE provides consistent interface
 
== Packet-Filtering v Router ==
 
a perenniel question is whether it is preferable to run a packet-filtering style firewall on '''each''' workstation/laptop/pocket-PC or to use a '''single''' "hardware" router to protect the whole LAN
 
=== Packet-Filtering ===
 
   
  +
Some of the changes required below need to be made by editing conf files and executing commands at a terminal
==== Advantages ====
 
*no additional hardware, cost, wattage
 
*zero acreage
 
   
==== Disadvantages ====
+
=== Summary of Changes ===
*generally less "hardened"
 
**many more background prolcesses need to be running to support user apps
 
== Linux ==
 
Most Linux include a packet-filtering style firewall
 
*usually activated, by default
 
**but '''check'''
 
*efficacy likely to be similar
 
**based on iptables
 
**may also include ip6tables and ebtables
 
*administrative interface specific to distribution
 
**"Guarddog" in KDE provides consistent interface
 
   
  +
Several settings might need to be changed to print via network - in summary:
== Mac OSX ==
 
  +
*amend firewall settings, on both ends, if necessary
citation needed
 
  +
**firewall on router should '''not''' be altered
== Windows ==
 
  +
*set client to use printers shared by another machine on the network
citation needed
 
  +
**in many installations this suffices to get printing working via network
=== Gateway/Router ===
 
  +
*activate cups-browsed service via system services (systemd) on both ends
Although these are typically a separate hardware item they are not necessarily an '''additional''' hardware item, often being combined with an ethernet switch and/or DSL modem
 
  +
**only in deployments using this separate service
==== Advantages ====
 
  +
*set CUPS on server to share printers but only to the local network
*generally more "hardened"
 
  +
**often the default setting
**by eliminating many background prolcesses that are not needed to support user apps
 
*'''single''' point of installation, configuration and update
 
   
  +
It might pay to configure the client computer first, because other machines are often set to share their printers to the local network.
  +
*must be done via Control Panel or a combination of editing files then executing commands
   
  +
The Print Settings applet typically has the icon [[Image:Print_Settings_Applet.png | Print_Settings_Applet]]
==== Disadvantages ====
 
*possible additional hardware, cost, wattage
 
*update support for commercial units is typically infrequent and limited-term
 
zero acreage
 
== Linux ==
 
Most Linux include a packet-filtering style firewall
 
*usually activated, by default
 
== Gateway/Router ==
 
== For General Users ==
 
The relative advantages of a separate gateway/router are discussed at
 
   
A packaged commercial uint is the most suitable option
 
*ADSL modem/router for ADSL users
 
*"broadband" roiuter for other connection types
 
**as of 2012, a router for dial-up connections appears to be unavailable
 
   
  +
From the client computer, use "Control Panel" to set the following, if available (exact menus and terminology will vary):
== Disadvantages ==
 
  +
*firewall on server must have port 631 open
*generally regarded as "abandon-ware" by manufacturers - typically
 
  +
*configure "Printers" to use network printers
**updates are not announced
 
  +
**note that in many Control Panel apps this item is merely a link the applet "Print Settings", which does not allow changes to print server to be retained.
**only a few updates provided
 
**for about three years only
 
*firewalling functions eg SPI, often default to DISABLED
 
**apparently to ensure that it "just works"
 
**ensure that these functions are re-configured to ENABLED
 
   
  +
In cases where Print Settings is the only tool available:
== Recommendations ==
 
  +
*temporary changes to select print server can be made from the applet
  +
*permanent changes need to be made manually, as follows:
   
  +
#modify "system services" (exact terminology will vary)
A commerical uint that overcomes the above disadvantages ''at a price'' is the FritzBox
 
  +
*enable '''and''' activate "cups-browsed"
*available from http://www.internode.on.net
 
  +
**not identified as a separate service in some distro (and then not required)
*note that the upmarket model is required to support IPv6
 
  +
#modify the file /etc/cups/client.conf**does not require a web browser, which might not be present on a server
  +
*on many systems this will '''not''' exist by default, but creating it, pointing to a valid IP address that is sharing printers, is usually sufficient to enable the client to use shared printers. Only one line is required in this file:
  +
<nowiki>ServerName <IP address of machine sharing printers></nowiki>
  +
*one only servername is used
  +
**where multiple appear the '''last''' is used
  +
**many systems default to "localhost" or /var/run/cups/cups.sock
  +
***can be retained, provided not the last listed
  +
**does not require a web browser, which might not be present on a server
  +
Some distro are issued as specific desktop (client) or server releases. The desktop releases might not provide for changed settings to be saved. That allows eg a laptop away from its home base to print, without disturbing longer term settings.
   
  +
A much lower pirced unit is the DLink DIR-615
 
  +
From the server computer, use "Control Panel" to set the following, if available (exact menus and terminology will vary):
*this is a broadband router only (no modem)
 
  +
*firewall on server must have port 631 open
 
  +
*modify "system services" (exact terminology will vary)
== Getting Technical ==
 
  +
**enable '''and''' activate "cups-browsed"
DIY routers overcome the support limitations of commercial units, although until recently this has been at a cost of:
 
  +
***not identified as a separate service in some distro (and then not required)
*acreage
 
*wattage
 
*additional terminology
 
   
  +
From the server computer, use any browser to https://localhost:631/admin
Most DIY units have been based on superceded PC. Additional hardware will be required:
 
*modem (if not provided by ISP as modem or Set Top Box)
 
*ethernet switch (unless only one computer will be accessing the Internet)
 
*WiFi Access Point
 
**if required
 
**might be implemented as a PCI/PCIe WiFi card in the routing PC
 
 
==== Hardware ====
 
Minimum suggested specs are approximately
 
*CPU - any X86 compatible of 333 Mhz or faster
 
**ARM CPU may now be viable in lieu x86 compatible see "Strictly for Geeks" below
 
*RAM - 256 MB
 
**additional functions, particularly caching, require extra RAM
 
*storage - 2 GB
 
**effective caching requires several GB more disk space
 
*network interfaces
 
**PCI, PCIe or USB-Ethernet required
 
**10 Mb/s suffice - unless running ADSL 2 or faster link
 
**'''NB''' - speed of other devices on the LAN is irrelevant, LAN performance depends on the ethernet switch deployed
 
 
Wattage for DIY has been somewhat higher than for commerical routers. A suitable objective, using 2010 or later componentry is 25 W. Lower wattage units are addressed under "Strictly for Geeks" below. CPU wattage is a poor indicator because other chips and peripherals consume somewhat more. Suggested basis for low wattage router:
 
#HP Proliant Microserver
 
#mainboards based on C50 CPU - which appears to have been used only in netbooks
 
#mainboards based on E350 CPU
 
#mainboards based on Atom CPU are something of an enigma
 
#*can be the lowest cost available but
 
#*wattage surprisingly high, because of associated chips
 
#mainboards based on VIA CPU
 
#*expensive unless s/hand
 
#*not particularly low wattage
 
#mainboards based on Pentium III CPU
 
#*reliability might be reduced because of age
 
#*zero cost & acceptable wattage
 
 
==== Software ====
 
Many Linux and BSD can be configured a gateway-router, but it is generally simpler and more watt efficient to use a specialised firewall/gateway distribution. Better known ones are listed in [[Linux_Distribution_Recommendations]] Although BSD based distributions such as Monowall are quite functional, their use would involve an additional learning curve for most people
 
 
 
  +
and activate radio buttons to:
==== Zoning ====
 
  +
*Share printers connected to this system
Software for DIY routers implements similar network zoning to that in commercial routers. An aspect that is different is the colour coding of zones:
 
  +
**using protocols DNSSD & CUPS
  +
*restrict sharing to "Local Network"
  +
**could also be set as IP address eg 192.168.0.0/24
  +
*Allow remote administration
   
  +
It is inadvisable to enable
*<span style="color:#c93800">'''RED'''</span> for untrusted/unfiltered Internet
 
  +
*Allow printing from the Internet*print via network
*<span style="color:green">'''GREEN'''</span> for most trusted, '''wired''' LAN connections
 
*<span style="color:blue">'''BLUE'''</span> for less trusted WiFi connections
 
*<span style="color:#800080">'''PURPLE'''</span> for additional LAN zone
 
*<span style="color:#FF8000">'''ORANGE'''</span> for Demilitarized Zone, (DMZ)
 
**not required by most home users
 
**typically used for stand-alone servers, to which access from the Internet is permitted
 
== Strictly for Geeks ==
 
DIY routers based on ARM CPU have become viable during 2012.
 
#have potential to match commerical routers in wattage and acreage
 
#*whilst maintaining advantage of frequent software updates
 
#require more careful matching of hardware and software
 
#*ARM compilations are not as "portable" as x86 compilations
 
#**advisable to select hardware having an ARM CPU series matching the compilation
 
#raspberry pi is best known hardware example - see [[Raspberry Pi]]
 
#*IPFire is the only well-known firewall/router that has reached '''released''' level for it
 
#*alternatively, raspbian could be adapted as a firewall/router for it
 
   
   
  +
[[Image:Cups_admin_home.png]]
== Rescue CD ==
 
== For General Users ==
 
=== Boot Only Rescue CD ===
 
A computer which fails to start as far as the login screen (or "Safe Mode" in the case of Windows) might have a mal-configured bootloader. Such condition can result following routine software updates. The following CD can sometimes succeed in booting a system which is failing to start from hard disk drive. Success rate varies between the rescue CD, as described below. Some can deal with greater mal-configuration of the installed system(s) than others.
 
   
*rEFInd
 
*Supergrub 1.98
 
*custom Grub rescue CD
 
   
  +
then click "Change Settings" button to save any changes, if necessary
All can boot most operating systems, including Linux, MacOSX and Windows
 
   
  +
Then click on the "Manage Printers" button in the same tab, select the relevant printer and pull down the "Administration" menu
Try rEFInd for systems manufactured from early 2011 onwards. If it does not start on your computer then try Supergrub 1.98 One of the Grub rescue CD would be required for older computers
 
   
  +
#select "modify printer" then click the "continue" button to proceed to its second screen
#a custom Grub rescue CD, as the name implies, must be custom built for a particular compter
 
#*as descrbied in Getting Technical, below
 
#*many users would require assistance to do so
 
#The other CD are downloadable, at no cost, as a dotISO file.
 
#*http://sourceforge.net/projects/refind/files/0.6.0/refind-cd-0.6.0.zip/download
 
#*http://download.berlios.de/supergrub/super_grub_disk_hybrid-1.98s1.iso
 
#Use the following procedure to burn that file to a '''bootable''' CD
 
#*[[Using dotISO Files]]
 
#Then insert the CD in the faulty computer and reboot
 
#enter Setup, at the early stage of reboot and move CDROM above HDD in the boot order, if necessary
 
#*Setup is initiated by pressing Del key on most computers.
 
#*brand name computers tend to use the F2 key instead
 
#save changes and exit Setup
 
#after the CD boots menu items can be selected only via arrow keys - '''mouse''' does not work at this stage of boot
 
#*rEFInd or a custom Grub rescue CD should find all bootable operating systems
 
#**highlight the required one and press enter
 
#*Supergrub requires an additional step
 
#**select the first menu line and press Enter
 
#**it should then identify all bootable operating systems
 
#**highlight the required one and press enter
 
   
Systems that don't boot via the above procedures can often still be recovered, but it gets more technical. As described below. Some prior preparation can increase the success rate of rEFInd on newer computers
 
   
  +
[[Image:Cups_printer_network.png]]
== Getting Technical ==
 
   
== UEFI Mainboards ==
 
Computers manufactured from 2011 onwards are likely to use UEFI firmware in lieu of BIOS firmware on the mainboard
 
*identication of boot entities on these computers is generally more reliable than with BIOS
 
*the "boot order" setting in UEFI firmware can include software entities such as boot managers/loaders as well as hardware entities such as HDD, CD/DVD, USB, SD devices
 
**the Windows bootloader should already be included in the boot order by the system supplier, if the system includes Windows
 
   
  +
[[Image:Cups_printer_configuration2.png]]
=== Quick Fix ===
 
  +
22
#download the latest release of rEFInd CD from
 
#*http://sourceforge.net/projects/refind/files/
 
#burn this CD to optical media or as a bootable USB device
 
#boot this CD, which should produce a display of icons, one for each boot manager/loader
 
#*including an icon for the Windows loader (if Windows is on the system) and
 
#*icons for each Linux boot loader or bootable kernel image
 
#use arrow keys to highlight the required OS and press "Enter"
 
#*Windows should still be bootable and some Linux may also be, if only the first stage of the boot loader is misconfigured
 
#if no icons are displayed, or the system boots to (faulty) boot entities on the HDD, then the mainboard is not truely booting in UEFI mode
 
#*in this situation, follow the procedures for BIOS mainboards under later heading
 
   
  +
#ensure that "share this printer" is checked
=== Create Bootable Entities ===
 
  +
#it will be helpful to make the "Location" the name of the computer controlling this printer
In order for this rescue mechanism to work Linux must
 
  +
#click "continue" until the process completes
*have been installed to a boot disk :
 
**partitioned using GPT partition table and
 
**having an ESP partition (type ef00) formatted '''FAT 32''' (ideally as partition 1)
 
*be using a kernel that has the "EFI stub-loader" compiled in
 
** mainstream kernels from 3.3 onwards typically do
 
#as user "root" use "cp -a" to copy the current "vmlinuz-n.n.n" and matching "initrd-n.n.n" to the root directory of the ESP partition
 
#*the files must be '''copied''' because FAT 32 does not support Linux style linking
 
#rename the "vmlinuz" to have a dotefi extension
 
#*FAT 32 is not, strictly speaking, case sensitive
 
#*the "initrd" file retains any existing extension
 
#**or no extension, as the case may be
 
**many distro give and expect it to have a dotgz extension
 
#reboot the computer and enter mainboard setup mode
 
#the UEFI reference implementation includes facility for directly editing the boot order
 
#*if this option is available, amend boot order to include the kernel that was added to ESP root directory above
 
#*if this option is not available, then the rEFInd CD can be used for emergency boot, as in the following step
 
#the rEFInd CD should now be ablt to boot kernel images directly, including when the Linux bootloader is broken or mis-configured
 
   
== BIOS Mainboards ==
 
   
=== Disk Order ===
 
Booting Linux from a separate HDD will be much more reliable if it is put on the '''first''' HDD that is identified by the BIOS
 
*contrary to 20th century notions, Windows XP and later do '''not''' need to be on the first HDD, nor indeed on the first primary partition
 
*many BIOS default IDE HDD '''ahead''' of SATA HDD in the boot order
 
**interchanging HDD logically in the BIOS settings is likely to cause ongoing boot failures.
 
**ie use either two IDE or two SATA HDD and not a mixture, if Windows is to be booted on one of the disks.
 
   
=== Quick Fix ===
 
#download the latest release of a utility/rescue CD, which do a good job of providing a generic boot CD eg:
 
#**Parted Magic
 
#*
 
#**Systemrescue
 
#burn this CD to optical media or as a bootable USB device
 
#boot this CD and select an option to boot from local hard disk
 
#*precise menu path will vary between rescue CD
 
#*a menu of bootable OS should be displayed
 
#**including an icon for the Windows loader (if Windows is on the system) and
 
#**including each installed Linux, notwithstanding that the boot loader on HDD might be "broken"
 
#use arrow keys to highlight the require OS and press "Enter"
 
#*Windows should still be bootable and some Linux may also be, "matched pairs" of kernel and initrd can be located
 
#if no bootable options are found then mainboard or HDD hardware problems , or the system boots to (faulty) boot entities on the HDD, then the mainboard is not truely booting in UEFI mode
 
   
  +
**does not require a web browser, which might not be present on a server
=== Grub Rescue CD ===
 
GRUB-legacy and GRUB2 have provisions for making bootable GRUB CD (actually ISO images, from which a CD may be burnt)
 
*the command to create the ISO image is less much complicated in GRUB2
 
   
  +
==== Quicktest ====
It is diffcult to create a generic boot CD because GRUB looks for particular hard disk drives, partition numbers, kernal images and initrd images that are specified in its configuration file
 
*nevertheless, downloadable r
 
*if a a custom rescue CD is required for a specific PC then using the /boot/grub2/grub.cfg file from the PC to be booted is a useful starting point
 
#read the outine of process that is provided by via the command "info grub"
 
#*the GRUB routine to be used is "mkrescue"
 
#create a folder to hold the contents of files to be used for the image
 
#*a subdirectory off /boot would keep all boot routines in a single area, although it requires root privilleges
 
#*$mkdir ISO
 
#*$mkdir -p ISO/boot/grub2
 
#*$cp -a /boot/grub2/* ISO/boot/grub2/
 
#*edit the file ISO/boot/grub2/grub.cfg to remove references to specific kernel versions
 
#* eg linux /vmlinuz-3.4.6-12 becomes /vmlinuz
 
#*/initrd-3.4.6-12 becomes /initrd
 
#*check that your distribution has created the logical links vmlinuz & initrd. If not, then create them manually to point to the current kernel & initrd
 
#*if this has to be done manually, then it will need to be repeated after each kernel update, to ensure that the rescue CD will continue to sucessfully boot from HDD
 
#*any menu items for Windows should work unchanged
 
#*grub2 has scope for much "eye candy"
 
#**which can usefully give the menu from the rescue CD a different appearance from that of the HDD boot
 
#**simplest change to implement is that of background colour
 
#***likely to require changes in grub.cfg as well as the themes script in sub-directory.ISO/boot/grub/<distro name>/themes.txt
 
#if a background.png is implemented then save a copy of the original an edit background colour in GIMP etc
 
#if there appears to be no background image, then background colour can be changed to a desired value, specified via either RGB or HTML colour values
 
#*save the modified file(S)
 
#'''from the parent directory of ISO''', invoke the command to create the ISO image
 
#*$grub2-mkrescue -o grub.iso ISO
 
#**the prefix varies with distro
 
#**see distro specific notes below
 
#burn the ISO image to a CDRW or "DD" it to USB stick
 
#*a USB memory device will provide '''much faster''' iterative testing of the rescue "CD"
 
#*test and iteratively modify the ISO image
 
#*it can be difficult to differentiate between booting from HDD and CD, if the background colour change is not "taking"
 
#**one option is to add a dummy menu item to one boot method
 
#put the final, tested image on a CD or USB device.
 
   
  +
Both computers must be connecting to the local LAN via wired or wireless interface. A quick test is to start a web browser and check that the Internet is accessible. Provided that network access is working:
   
  +
#Start a text editor (kate, leafpad etc)
  +
#*if the application is already running then it may need to be shutdown and restarted to recognize newly available printers
  +
#Open a new document and type a few words
  +
#From the file menu, select "Print"
  +
#Select the relevant printer from the drop-down dialog
  +
#*which should list all shared printers on the LAN
  +
#click on the properties/settings button
  +
#ensure that the key settings are suitable eg A4 paper size, portrait orientation
  +
#click OK/print
   
=== Distribution specific notes ===
+
==== Working Environments ====
  +
The following client systems automatically discover network printers, from default configurations
  +
*Linux Mint 17.3 Mate
   
  +
==== Preliminary Troubleshooting ====
#openSUSE postfixes all grub 2 related material with "2"
 
#**default folder becomes /boot/grub2
 
#**commands become eg grub2-mkrescue
 
#openSUSE invokes the command "xorriso" to create the ISO image from a script or at CLI
 
#**this command is in package "libburnia-tools, which is not installed by default
 
#openSUSE has long had a bunch of perl scripts which take control of the bootloader configuration and which will quickly overwrite any changes made to /boot/grub/grub.cfg
 
#**any customisation is best confined to the rescue CD working directory .
 
#YMMV with other distributions
 
   
  +
''1. No printers listed in the print dialog''
[[Category:Technical Info]]
 
[[Category:Recommendations]]
 
   
  +
This problem frequently is the result of a firewall running on one or both computers. Network printing can work only if either:
== Projector ==
 
== Overview ==
 
The projector in PCUG Training Room is set up for optimal use with the Trainer's PC, that is also provided.
 
   
  +
*firewalls on each computer allow port 631 through or
Anyone planning to give a course or presentation using their own laptop computer is strongly advised to work through these guidelines well in advance and ensure that their laptop is working with external displays.
 
  +
*Ethernet zones are set as "trusted/internal" in the firewalls on each computer
*output to external display enabled
 
**need to bring own Displayport-to-VGA-F or Displayport-to-HDMI-F adapter for high-end notebooks, including Macbooks
 
*appropriate resolution
 
**optimum for projector is any of 1280 x 800, 1280 x 768, 1024 x 768
 
**higher resolutions give poor quality display on the projector
 
**Windows XP or 7 require the '''same''' resolution on both laptop internal screen and projector
 
*appropriate screen "layout"
 
**most OS default to "Extend Display" (putting the second display (projector) to the right of main display)
 
**appropriate for desktop situations with dual monitors to provide larger working display
 
**'''not''' usually appropriate for presentations where the requirement is to "Clone/Duplicate" the same screen to two displays
 
   
  +
Only printers powered up will appear in the list
Up to three settings might might neeed to be changed to have a notebook computer display output via its external video connector. The following description is, of necessity, generic because of variations between different hardware and operating systems. Refer to the User's Guide for the notebook, if necessary, for specific guidance regarding the following settings :
 
   
  +
*confirm that the relevant printer is powered on
Manuals for many models may be downloaded from he following site
 
  +
*if it is attached to another PC via parallel or USB cable then that PC must also be powered on
  +
**(it is not necessary to log in to the sharing PC)
   
  +
''2. Print Job accepted but no output on Printer''
http://www.laptopmanual.net/
 
   
  +
This can be a result of many possible causes. Some simple checks:
== Procedures ==
 
   
  +
#is CUPS known to be installed and working on the computer from which the text was created ?.
=== Connect Video Cable ===
 
  +
#Can it print to some printer at its home base ?
#contemporary Operating Systems dynamicallly configure video devices
 
  +
#does a similar print job created on the server computer give output on the printer ?
#ensure that video cable between note/netbook and external display is connected before proceeding
 
#*HDMI cables are the simplest to connect and provide the best quality, if the computer has relevant output socket
 
#**if a DVI-HDMI adapter must be used then this must be connected with both devices powered '''OFF'''
 
#*older devices may be connected via VGA cable
 
=== Enable External Video Output in the BIOS ===
 
   
  +
''3. Print Job rejected by Server''
#power up or reboot the notebook and press the key/keystroke sequence required to enter Setup mode
 
  +
*possible permissions issue - check thehat:
#*known sequences for various devices:
 
  +
**printer is set as "share this printer" on the server
#**Dell - press F2 at start-up
 
  +
***follow "modify this printer" dialog
#**manyothers - press Del at start-up
 
  +
*possibly incompatible CUPS verions
#find any options for external video output.
 
  +
**most suitable arrangement is for all machines using CUPS #< 1.6
#*not all notebooks have BIOS settings for this because many have the external video permanently enabled at hardware level
 
  +
***achievable only by upgrading the complete OS
#*note also that this setting is usually not related to "docking station" on larger notebooks ie external video should work regardless of whether or not use of a docking station is enabled.
 
  +
***a new version of the driver for '''each''' printer is required at the server end, to support PDF print jobs
#*ensure that any option for external video is "enabled"
 
  +
***if a binary driver, from the manufacturer, was previously used, check whether a driver is now included in CUPS or, failing that, whether an updated driver can be obtained from the manufacturer
#Save, then exit Setup
 
  +
***following the upgrade, follow the "modify this printer" dialog for '''each''' printer and select the most recent PPD file.
  +
**on older installations, it might be necessary to keep all machines at CUPS version #< 1.5.4
   
  +
If all else fails, then the CUPS Administration page has a button "View Error Log". Text towards the end of that file may give some clues.
=== Configure the ''Second'' Display/Monitor/Video card ===
 
   
  +
=== CUPS <= 1.5.4 ===
#note that this is done at Operating System level
 
  +
With this version, a (different) CUPS browsing module is usually enabled by default. Simpler configuration changes usually suffice.
#*If more than one Operating System is installed then boot to the one which will be used with the external display.
 
#typically the ''second'' display is configured by invoking "Control Panel" and selecting the option "Display" The exact nomenclature is operating system dependent
 
#*if there is an on-screen button labelled "identify displays" or equivalent, then left-click on that
 
#**a "1" appearing on the inbuilt LCD display indicates that the external display will be the '''second''' display
 
#**proceed to configure the display other than the inbuilt LCD
 
#it is better to pick conservative settings if the notebook will be used at various locations with different external display devices
 
#*most notebooks, including those having wide-screen inbuilt LCD displays, can have the external display set for conventional 4:3 ratio and that will provide the most flexible arrangement.
 
#**resolution 1024 x 768
 
#**vertical refresh rate 60 Hz
 
#*the above settings are also safe for most LCD monitors. Higher settings might not work and might also damage the device.
 
#the main Training Room projector, for example, does handle widescreen modes. It works best with the following settings:
 
#*resolution 1280 x 800
 
#*vertical refresh rate 60 Hz
 
#there will probably be an option to setup "multiple monitors"
 
#*within this option select "clone" or equivalent in order to have the full screen sent to both displays
 
#*Windows will operate multiple displays at identical resolutions
 
#*other Operating System should adjust the image sent to the two displays automatically, to cater for differing aspect ratios and resolutions.
 
# Save the settings and exit Control Panel.
 
   
  +
At the server end, browse to
=== Use External Power Supply ===
 
  +
https://localhost:631/admin
  +
and activate radio buttons to:
  +
*Share printers connected to this system
   
  +
At the workstation/client end, browse to
#the external video display will add to the power drain of the notebook and may discharge the battery much more quickly. Plug in and power up the external power supply for the notebook, if available
 
  +
https://localhost:631/admin
#*if the external power supply is not available, then do not activate the external display, as per next step, for prolonged periods
 
  +
and activate radio button:
   
  +
"Show printers shared by other systems"
=== Activate Output to External Display/Projector ===
 
 
#on most notebooks this is achieved by pressing a keystroke combination. Known combinations:
 
#* Dell combination is Fn ''simultaneously'' with F8
 
#although a notebook will accept this change at any time, whilst running, many OS require a subsequent re-boot, in order to recognise a second display
 
#each time the combination is pressed, the notebook switches to the next of the three options:
 
#*internal LCD only
 
#*external display only
 
#*internal LCD plus external display
 
#note that if the external display, in particular, is in "sleep" mode, then it may take 5 to 10 seconds to respond the the input signal. Therefore, wait at least 10 seconds between ''each'' press of the keystroke combination and check whether the external display responds.
 
   
=== Repeat Display Configuration for other Operating Systems ===
 
   
  +
[[Image:Cups_admin_home.png]]
#''Configure the ''Second'' Display/Monitor/Video card'' is the only setting which is Operating System dependent
 
#*that procedure may be repeated for other Operating Systems, if desired, after output to the external display has been successfully achieved with the first Operating System
 
   
== Additional Issues with Training Room Projector ==
 
   
  +
then click "Change Settings" button to save any changes, if necessary
Some further notes regarding the projector in the Training Room.
 
# Video Cables
 
#*preferably use the HDMI cable that is now provided
 
#**Some modern notebooks have DVI connector only and Apple brand notebooks may have a different connector again. Users would need to bring their own adapter.
 
#*a VGA cable is also connected to the projector, for use with older computers
 
#**it may be necessary to by-pass the VGA splitter
 
#Remote
 
#*use the menu on the remote control of the projector to select which input (HDMI or VGA) is in use
 
#**this function is '''not''' automatic
 
#the projector has been known to mis-interpret apparently valid resolutions and either truncate the display or not display at all. If difficulty is experienced, then:
 
#*try connecting the notebook to a CRT display (which are generally more tolerant of resolutions) at the Centre and try to ascertain whether the notebook is actually putting signal to the external display connector.
 
#*if so, then revisit "Control Panel" and check that the settings for the second display are as above.
 
#*in some scenarios the only solution might be to work with the truncated display on the projector and rely on the notebook's LCD screen for the bottom few rows
 
#**with most Operating Systems the "task bar" can temporarily be repositioned at top of screen, to minimise inconvenience in this scenario
 
   
  +
The troubleshooting tips for version 1.6 and above still apply
== ISO Hybrids ==
 
   
=== Using/Creating ISOhybrid Files ===
+
=== Getting Techhnical ===
  +
As a general rule, the print server should have a version not earlier than the client
This task is for intermediate/advanced users
 
  +
*Version 1.5 of CUPS is likely to produce a print job as a PDF file, whereas version 1.3 & 1.4 servers accept only PostScript files
   
  +
The above changes can also be implemented via a combination of editing config files and commands via CLI.
==== Overview ====
 
Some dotISO files are now being provided as "ISOhybrids"
 
*which have the main advantage of typically booting much faster from USB/SD devices
 
**because most OS use conservative settings to boot USB/SD devices, in order to cope with older/buggy BIOS
 
*boot speed is also highly dependent on the "Class" of SD media and (probably) unstated/indeterminate grade of USB "thumbdrive"
 
   
  +
At the server end:
ISOhybrids may also be burnt to conventional CD/DVD/Bluray optical media, or written to USB/SD media, as in general/intermediate procedures above
 
  +
#ensure that /etc/cups/cups-browsed.conf includes the statements
*hence the "hybrid" descriptor
 
  +
*BrowseRemoteProtocols DNSSD,CUPS
*but require the alternative procedure below to achieve faster performance from USB/SD devices
 
  +
*BrowseProtocols DNSSD CUPS
  +
*BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  +
#Log to a terminal as root and execute:
  +
<nowiki># systemctl cups-browsed.service enable</nowiki>
   
  +
<nowiki># systemctl cups-browsed.service start</nowiki>
==== Hybridisation ====
 
#this procedure may be skipped, if the ISO is known to already be hybridised
 
#dotISO of unknown type may safely be converted to hybridISO via the program "isohybrid"
 
#*the conversion adds a few tens of kB, if the ISO is not already hybridised, which may push the ISO beyond the maximum capacity of optical media
 
#**alhough these ISOhybrids could still be written to USB/SD media, as in ntermediate procedures above.
 
#*it makes no perceptable difference if the ISO is already hybridised
 
   
  +
At the client end:
==== Writing ISOhybrids ====
 
  +
#ensure that /etc/cups/cups-browsed.conf includes the statements
#as a precaution, disconnect all other USB devices from the computer
 
  +
*BrowseRemoteProtocols DNSSD,CUPS
#*including printers, scanners, mobile broadband sticks, modems etc
 
  +
*BrowseProtocols DNSSD CUPS
#**any of which could include "storage"
 
  +
*BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
#verify the drive letter/number of the USB/SD media
 
  +
#Log to a terminal as root and execute:
#*in Windows use "Computer" menu and open the drive
 
  +
<nowiki># systemctl cups-browsed.service enable</nowiki>
#*in other OS use hdparm, fdisk etc
 
#*check by manufacturer ID, size, partitioning etc
 
#the partitioning/format of the USB/SD media to be used is probably immaterial
 
#*if in doubt, format the single/first partition as '''FAT 32'''
 
#launch a program for direct writing disk images of storage media eg
 
#*in Windows use http://www.softpedia.com/get/CD-DVD-Tools/Data-CD-DVD-Burning/Win32-Disk-Imager.shtml or "rawwrite"
 
#*in other OS use "dd" (or preferably "ddrescue")
 
#**in this procedure "dd" operates on an '''unmounted''' device
 
#more detailed instructions are at:
 
http://en.opensuse.org/SDB:Live_USB_stick#Bootable_USB_from_DVD_or_Net-install
 
   
  +
<nowiki># systemctl cups-browsed.service start</nowiki>
{|border="1" align="center" style="text-align:center;"
 
|<span style="color:red; background:#d0c9cc">'''execise great caution with the above programs - an error in selecting the USB/SD device could result in hard disk partition being overwritten'''</span>
 
|}
 
   
   
== Printing ==
 
   
== For General Users ==
 
New users of Linux may find that their printer (and scanner) is neither supported nor supportable. Simplest option is to (wisely) purchase a new printer.
 
   
   
  +
Save changes
=== Selection Guideance ===
 
   
  +
It will then be necessary to use the Admin tab and select "manage printers" -> "Modify Printer", then modify '''each''' printer to == Situation ==be shared by ticking the box "Share this Printer"
*be aware that Linux uses Postscript or PDF technology as the basis for its print sub-system
 
**printers that use Postscript, PDF or perhaps PCL print languages are readily supportable and likely to remain so
 
**most entry-level printers do '''not''' use those technologies, that require additonal processing resouces which in turn adds cost
 
**be prepared to purchase a mid-range printer (or multi-function device).
 
   
  +
Often the above steps suffice to make printers visible to a client machine. If not, then the following additional steps might be required, at the '''client''' end:
'''All''' of the following pre-purchase research is strongly recommended
 
  +
Use "Control Panel" to set the following, if available (exact terminology will vary):
*'''download''' the relevant driver from the manufacturer's web site
 
  +
*print via network
*check for availability of alternate drivers at: http://www.openprinting.org/printers
 
  +
*allow printing to local network only eg 192.168.0.0/24, for non-portable machines
*'''install''' the relevant driver prior to purchase
 
**in almost all cases this can be achieved without the printer physically present
 
*seek assistance in a Linux forum if the drivers are not available or don't install
 
   
  +
== Getting Techhnical ==
  +
The above changes can also be implemented via a combination of editing config files and commands via CLI.
   
  +
At the server end:
=== Troubleshooting ===
 
  +
#ensure that /etc/cups/cups-browsed.conf includes the statements
  +
*BrowseRemoteProtocols DNSSD,CUPS
  +
*BrowseProtocols DNSSD CUPS
  +
*BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  +
#Log to a terminal as root and execute:
  +
<nowiki># systemctl cups-browsed.service enable</nowiki> 2
   
  +
<nowiki># systemctl cups-browsed.service start</nowiki>
The direct interface to the Linux printing sub-system (CUPS) on your computer is via the URL http://localhost:631
 
*this is also usually the most capable and reliable interface
 
*other setup routines are provided in many Distributions
 
**these might not detect downloaded drivers and are thus less reliable
 
   
  +
At the client end:
Failure to print, although the driver is installed, can result from unsuitable settings.
 
  +
#ensure that /etc/cups/cups-browsed.conf includes the statements
#from the CUPS Administratin tab, select
 
  +
*BrowseRemoteProtocols DNSSD,CUPS2
#*Manage Printers -> Set Default Options
 
  +
*BrowseProtocols DNSSD CUPS
#check the settings for and adjuxt if necessary
 
  +
*BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
##paper size (usually A4 is correct)
 
  +
#Log to a terminal as root and execute:
##paper source (tray (cassette) or manual)
 
  +
<nowiki># systemctl cups-browsed.service enable</nowiki>
   
  +
<nowiki># systemctl cups-browsed.service start</nowiki>
   
=== Printer Recommendations ===
+
=== Strictly for Geeks ===
   
  +
= Bootable Media =
*HP provide Linux support for most of their devices
 
  +
== USB ==
**low-end devices would be reliant on continuation of this support, as would be the case with other brands
 
  +
USB devices either "thumb" drives or card readers, usually for SD or microSD cards, have several advantages for booting OS:
*Fuji-Xerox have argueably the best colour laser technology
 
  +
*generally much faster than DVD
**CP/CM 305 series are the lowest cost models having Linux support
 
  +
*bootable from UEFI firmware, whereas DVD might not be
*Brother multi-functions all support scanning via network
 
  +
*higher capacity
**mid-range models do use Postscript
 
  +
*reusable
   
  +
Special techniques are required to prepare bootable USB devices.
  +
== For General Users ==
  +
if the ISO image has been prepared as an '''isohybrid''', then the following tools can readily put it on USB device:
  +
*http://wiki.rosalab.com/en/index.php/ROSA_ImageWriter
  +
**this tool is also available for MacOS and Windows
  +
*https://en.opensuse.org/SDB:Live_USB_stick#Using_SUSE_Studio_Image_Writer
   
  +
A previously popular tool was "unetbootin". However this '''breaks''' isohybrids and should be used only with non-hybridised ISO.
== Scanning ==
 
   
   
== Raspberry Pi ==
 
   
=== Cases ===
+
== Getting Techhnical ==
  +
It is now possible to put multiple bootable OS on a single USB device and then boot any from UEFI or non-UEFI firmware. This requires working knowledge of the boot parameters as well as running a number of command line programs. Detailed instructions are at:
 
==== Heat Load ====
 
Quick Start Guide from distributor RS Components recommends:
 
*"use in well-ventillated area"
 
*"should not be covered"
 
 
It's debatable whether or hot the majority of cases being sold meet the above criteria.
 
 
==== Alternatives to Cases ====
 
A DIY cover can be made usiing discarded CD media. The original concept was at
 
 
http://discpi.vkspartak.sk/
 
 
That "case" does not anchor the RPi down and dimensions for accuately positioning the plastic supports are not provided. A variation, including critical dimensions is at
 
 
[[Image:Raspberry_Pi_CD_Case.png]]
 
 
Some construction factors to note, In either variant
 
*RPi have been produced on at least two production lines
 
**precise dimensions of the board might vary
 
**check prior to construction, preferably using '''plastic''' vernier calipers
 
**adjust position of supports accordingly
 
*single plastic disks/CD media, although quite tough, are fairly flexible
 
**two can be "laminated" together to form each of the top and base
 
**the plastic in them is not tolerant of most solvents/glues - alternative is to place near the perimeter:
 
**several small dots of hot-melt glue '''or'''
 
**several strips of (non-foam) "double-sided" tape
 
*metal components of the case must be well insulated
 
*surprising force is required to insert/remove the SD Card & USB plugs, in particular. The supports must resist horizontal movement of the board
 
*the board is offset longitudinally towards the USB/RJ45 end, in order to:
 
**facilitate insertion removal of USB/Ethernet plugs
 
**prevent SD card overhanging case
 
*a minimium standoff of about 7 mm is required for board above lower CD.to facilitate insertion/removal of plugs
 
*if actual CD media are used (in lieu of plastic spacers from CD stacks) then the reflective sides must face '''inwards'''
 
**top sides of media can be conductive aluminium
 
**clear any drillled holes of flaked aluminium swarf
 
**reflective surfaces aid monitoring of the RPi's five tell-tale LED
 
*drill CD media at '''slow''' speed
 
**otherwise the plastic is inclined to melt and clog drlll bits
 
*on early production (at least) of the RPi model B, the Ethernet socket is not well anchored
 
**desirable to adhere plastic spacers above it so the top CD holds it down
 
*a discarded case from a stack of 20/25 CD/DVD media can be used to protect the "CD-RPi" during transport
 
**need to cut off the central spigot of the media case
 
 
The two (only) chips on RPi can get quite hot in operation. Small, self-adhesive heatsinks are now available from:
 
 
http://geekroo.com/site/
 
 
 
== Arduino ==
 
 
===For General Users===
 
The Arduino is an interface between a controlling PC and stuff you want
 
to control.
 
 
A set of links that should get inexperienced users started is below.
 
 
Power arduino from battery
 
 
http://www.jaycar.com.au/productView.asp?ID=XC4258
 
 
Great hardware selection
 
http://www.pololu.com
 
http://www.freetronics.com/
 
 
oz hardware site
 
http://www.robotgear.com.au
 
 
arduino home
 
http://www.arduino.cc/
 
 
arduino software
 
http://arduino.cc/en/Main/Software
 
 
Language Reference
 
http://arduino.cc/en/Reference/HomePage
 
 
Lots of different boards such as
 
https://shop.ruggedcircuits.com/index.php?main_page=product_info&cPath=1&products_id=23
 
 
Simon Monk as written everal books toget you started.
 
The code from his books can be downloaded from here
 
http://www.arduinobook.com/downloads
 
   
   
   
   
  +
---[[-[[User:Rpeters|Rpeters]] 18:02, 18 August 2012 (EST)]]
   
--[[--[[User:Rpeters|Rpeters]] 18:15, 18 August 2012 (EST)]]
+
--[[User:Rpeters|Rod]] 09:05, 7 October 2013 (EST)
 
--[[Category:Technical Info]]
 
--[[Category:Technical Info]]

Latest revision as of 07:10, 3 February 2017

Projector

Be aware that projectors and monitors have two fundamental differences as external displays

  • The majority of projectors, particularly those oriented to "home theatre" are still manufactured with 4:3 ratio display generators
  • projectors have many fewer megapixels than do laptops and medium to large monitors

For General Users

Virtually any computer having two display outputs can be made to drive two displays (whether monitor(s) or projector(s) - after a fashion

  • occasional users should get adequate result by following the simple guidelines below
  • regular users might want to follow the more technical guidelines to try to optimise the displays somewhat

Now the bad news: The potential combinations of hardware and software capabilities are huge.


Additionally, flat panel displays, whether generated via LCD, LED or DLP, produce clearest display only at their native resolution


Projectors for Presentations

Image clarity is paramount for still images as used with presentations

  • the human eye cannot resolve high resolution images at the distance typically used with projection screens
  1. ascertain the aspect ratio of the projector
  • if documentation is not available, the ratio of the plain, white image produced when a computer is not connected is a good guide.
  1. ascertain the native resolution of the projector. In the absence of documentation:
  • 1024 x768 is typical for 4:3 ratio projectors
  • 1280 x 800 is typical for 16:10 ratios
  • 1280 x 720 is typical for 16:9 ratios
  1. from the computer's Control Panel go to Display and set:
  • resolution to same a projector
  • tick the box "duplicate/clone these displays"
  1. click "save" and the desktop should be duplicated on the projector

Display on the laptop/PC will be less than optimum

  • "wide-screen" displays may have unlit areas at sides of display
  • may be less clear as a result of lower resolution

The above are unavoidable compromises to obtaining clearest display on the projector

Common Problems

  • display on the projector is a plain desktop wallpaper without icons or windows for apps
    • This is caused by not having the displays duplicated
    • revisit Display setup on the computer
  • "wide-screen" display on a 4:3 ratio projector
    • this is a faulty configuration, which results in less clear display and needs to be corrected
    • revisit Display setup on the computer
    • if still not corrected, this likely results from default settings in the projector
  1. activate projector's on-screen display
  2. navigate to aspect ratio
  3. change from "auto" or 16:9 to 4:3

First the good news: Virtually any computer having two display outputs can be made to drive two displays (whether monitor(s) or projector(s) - after a fashion

Now the bad news: The potential combinations of hardware and software capabilities are huge.

  • occasional users should get adequate result by following the simple guidelines below
  • regular users might want to follow the more technical guidelines to try to optimise the displays somewhat

Be aware that projectors and monitors have two fundamental differences as external displays

  1. The majority of projectors, particularly those oriented to "home theatre" are still manufactured with 4:3 ratio display generators
  2. projectors have many fewer megapixels than laptops and medium to large monitors

Projectors for Presentations

Preliminary Configuration for Laptops

Projectors for Presentations

Projectors for Home Theatre Use

The majority are still 4:3 native ratio

  • but have the capability to accept 16:9 ratio input, typically to support movies
    • many default to this ratio and require no reconfiguration
    • will display 16:9 ratio input via "letterboxing", ie blanking out the top & bottom 100 or so rows of pixels and displaying image in reduced size
      • uses more than the native number of pixels and causes some reduction in image clarity
      • which is not significant for movies
      • but noticeable with still images (as in presentations)

Up-market projectors are now being manufactured with 16:9 ratio display generators

Getting Technical

Be aware that 3 ratios are in common use for displays - 4:3 and 16:9 for consumer grade devices plus business grade monitors & projectors that support the 16:10 wide-screen ratio

  • better quality 16:9 and 16:10 displays might present the complete, alternative image correctly via blanking some rows or columns of pixels with slight "letterboxing" or blank right & left margins
  • others will distort the image slightly to occupy the full visible area

All digital displays, whether LCD, LED, Plasma or DLP provide the sharpest image only at their native resolution

Linux & iOS support different resolutions on the two displays

  • low end hardware might not support this well, if at all
  • if the resolutions selected have differing vertical resolutions on the two displays, then the bottom panel used by many desktops will be absent on the shorter display
    • might need to compromise with either
      • identical vertical resolutions or
      • setting the primary display to the higher vertical resolution

Strictly for Geeks

For General Users

The idea of having both Windows and Linux installed on a computer and being able to select one at boot time appeals to many who are trying, or migrating to, Linux.

  • Windows own bootloader cannot boot Linux
    • a Linux bootloader must be used with dual-booting

The better known Linux distributions will set this up automatically, during installation to a single hard disk drive in the computer

  • It is likely to cease functioning following the next update of Windows and
    • restoring dual-boot requires Getting Technical

Keep at least one emergency boot medium handy. See Emergency_Boot - Including for Dual-Boot

Getting Technical

The above problem can usually be obviated by having additional hard disk(s) in the computer. This is not an expensive option, given current HDD prices.

USB Drive

Pros

  • easily added
  • no change to internal HDD

Cons

  • Linux relies on the absolute order of storage devices detected by the computer's firmware
    • plugging in (say) a uSB memory drive, may upset the booting
    • many bootloaders will identify partitions via UUID, to overcome this limitation

Internal HDD

  • ensures permanent order of drives

Installation

  • mainstream Linux will allow installation to== Strictly for Geeks == a second HDD


Selecting Boot Device

The selection of "drive" and hence OS is done at POST stage and depends on type of firmware in the computer

see Booting from Removable Media

Strictly for Geeks

  • the bootloader must also be installed to the second HDD, in this technique
    • can require "drilling down" the installation options


--Rpeters11:28, 24 August 2012 (EST) --

Bootloaders

Elilo

Only for computers having EFI firmware

Fairly simple and reliable

  • but requires a running Linux to generate its config file, in advance

GRUB Legacy (aka 0.97 )

A simple, reliable bootloader, although being phased out and no longer maintained. Use situations:

  • have only Linux on /ext(n) partitions and (maybe) Windows

GRUB (aka GRUB 2 )

GRUB 2 is now the most frequently used bootloader in Linux, but has many remaining issues. Some work-arounds:

"on-the-fly" Mode

GRUB 2 relies on a pre-defined config file /boot/grub(2)/grub.cfg. If this is not located, for any reason, GRUB 2 may boot to a grub> prompt. To boot from here use the following commands, substituting relevant drive and partition numbers:

grub> set root='hd0,gpt10'
grub> linux /boot/vmlinuz root=/dev/sda10
grub> initrd /boot/initrd
grub> bootBlockquote</blockquote

notes

  • drive numbers start from 0
  • must specify whether partitioned mbr or gpt
  • set root refers to location of partition containing /boot for the operating system to be booted
    • which will often also be the root file system for Linux
    • or merely the system partition for Win
    • partition numbers start from 1 (unlike in GRUB legacy)
  • this procedure is easiest if kernel & initrd have easily remembered names
    • either soft-link generic names or
    • press TAB to see possible names
  • ctrl-x or F10 may be pressed in lieu the "boot" command

The above procedure may be modified to cater for the situation where the menu is presented but the desired OS is not included or fails to boot. either

  • press e to edit a menu item or
  • press Esc to get to command line, then proceed as above.

Menu mode

See GRUB 2 downloadable manual or use "info grub2" to obtain details. Consistent themes amongst various documentation for GRUB 2 are that:

  • it is unreliable beyond the basics
  • OS-probe module is particularly so
  • not putting bootstrap in MBR (protective MBR in case of GPT) will

be problematic

Indeed, "info grub2" recommends avoid all automated installs & configs by distro. Instead, manually grub2-install then write a simple, static /boot/grub2/grub.cfg. See below for outline of this procedure.

As of Jan 2014 and following application of two patches to GRUB in openSUSE 13.1, its GRUB has been brought to ver 2.00-39.4.1. The automated process works well enough for most Linux plus Windows

It failed to find ArchLinux - which uses unusual names for kernels & initrd. Simple work-around for that is to add a 90_persistent section at the end of /boot/grub2/grub.cfg

### BEGIN /etc/grub.d/90_persistent ###

menuentry 'ArchLinux (<your descriptor>) { set root='hd<n>,gpt<n>' linux /boot/vmlinux-linux root=/dev/sd<x><n> initrd /boot/initramfs-linux.img }

### END /etc/grub.d/90_persistent ###

Essentially, the 90_persistent section gets copied verbatim during any subsequent manual or automated run of grub2-mkconfig. Note that this feature might be unique to openSUSE

The curly braces are essential and enclose GRUB2 commands.

This was for a HDD partitioned GPT. replace partition number with mbr<n> if applicable.

Multiple menuentries could be put in 90_persistent to cope with multiple Linuxes.

It's also possible to add an entry by pressing "c". In this mode only the 3 commands are input, followed by a fourth command 'boot'CTL-x at the Someone asked how to increase the font size in boot menu. The manual grub.cfg essentially does that by using whatever font will fit on the http://www.pcug.org.au/info/index.php?title=User:Rpeters&action=submit#on in GRUB legacy. press 'e' to edit an entry.

It's also possible to add an entry by pressing "c". In this mode only the 3 commands are input, followed by a fourth command 'boot'CTL-x at the Someone asked how to increase the font size in boot menu. The manual grub.cfg essentially does that by using whatever font will fit on the default screen resolution. Alternatively, one could try to make sense of the "loadfont" parameters in /etc/grub.d/00_header.

Wheras GRUB legacy uses similar syntax in command and menu mode, GRUB 2 uses somewhat different syntax in the two modes.

Rescue mode

An ISO image can be prepared, that is tailored to the OS on a specific computer. See above documentation for details on preparation of this image. It can be tested by "dd" to a USB memory device.

ReFind

Only for computers having EFI firmware

  • a CD can be downloaded, to test, if uncertain of firmware


default screen resolution. Alternatively, one could try to make sense of the "loadfont" parameters in /etc/grub.d/00_header.

Wheras GRUB legacy uses similar syntax in command and menu mode, GRUB 2 uses somewhat different syntax in the two modes.

Rescue mode

An ISO image can be prepared, that is tailored to the OS on a specific computer. See above documentation for details on preparation of this image. It can be tested by "dd" to a USB memory device.

ReFind

Only for computers having EFI firmware

  • a CD can be downloaded, to test, if uncertain of firmware


Syslinux

A proven bootloader, that continues being developed and maintained. Main limitations:

  • can't directly boot programs on other than its own partition, resulting in the need for work-arounds:
    • either chain load all but one OS or
    • put the boot code for each OS in a different sub-directory on the syslinux partition

DOS USB

For General Users

Purpose

The main requirement for a USB memory device that boots to DOS operating system arises when a BIOS/Firmware update of a computer is required.

It is advisable to use a new, or little used memory device, because any error in reading the BIOS/Firmware code during the actual update is likely to result in an unusable computer. USB "thumb" drives could be used. SD cards, which can be removed and stored in a secure place, might be more applicable.

Procedure

HP provide two techniques for producing DOS USB sticks. Both place utility software on a Windows computer, in order to generate the bootable stick - see "Getting Technical" below, if Windows is not available.

Instructions are provided on the HP support site for installing these utilities to Windows and creating bootable USB stick(s)

  • HP's generic utility HPUSBFW is not self contained but is more flexible.
    • it produces a mimimal DOS bootable USB stick containing only nnnDOS.SYS & COMMAND.COM
    • the user can then add relevant firmware and flashing utility
    • although it has an option for formatting to FAT 32 only FAT actually works
    • requires one of HP's "Softpacs" (firmware updates) for one of their recent commercial notebooks, from which to obtain the Windows utility program, plus
    • also requires FreeDOS (which can be downloaded at no cost in the form of fd11src.iso from http://www.freedos.org/download/)
  • those wanting to upgrade the firmware in a HP computer might find the second tool more suitable. HP provide some of their firmware updates as Windows dotEXE files, which:
    • install a utility program to Windows and then have facility called ROMPAQ for creating a bootable DOS on a USB device of not greater than 2 GB (FAT 16)
    • automatically adds the firmware and flashing utility to the USB stick
    • the naming convention for these files is SPnnnnn.exe

Note that in order to use the former, generic technique, general users would need to burn the above ISO image to CD. Those not familiar with ISO images should read http://www.pcug.org.au/info/index.php/Using_dotISO_Files

The step of burning the ISO image can be avoided - see "Getting Technical" below

Getting Techhnical

The techniques above contain the Windows version of Syslinux in the Windows software package and install the former as a bootloader on the USB device. The Syslinux bootloader can also be added to a USB memory device via Linux. Generic instructions are at the following site, from which (superceded versions of) the code are also available

http://goebelmeier.de/bootstick/

The following would need to be downloaded to obtain up-to-date software:

http://www.freedos.org/download/fd11src.iso

https://www.kernel.org/pub/linux/utils/boot/syslinux/6.xx/

Syslinux will already be installed on many Linux systems. However, Ubuntu and openSUSE might produce a USB stick that invokes graphics at boot time and it is undesirable to have superfluous code on a device that will be used for firmware upgrades.

FreeDOS supports FAT 32 and consequently the above procedure should also work on FAT 32 formatted sticks of > 2 GB capacity. PRINTING VIA NETWORK


PRINTING VIA CUPS

Overview

CUPS is not applicable to Windows. Windows users see Printing via Network

CUPS now the default print sub-system in most Operating Systems - Android, ChromeOS, MacOS, Linux and BSD.

Its use can enable printing over a LAN to be achieved relatively simply, often requiring:

  • no additional installation of software or "drivers"
  • only simple configuration changes

Applicability

Android & iOS

Typically these require an App to be downloaded from the relevant Store and connect with WiFi enabled printers.

Linux & OSX

Both use CUPS and can be configured as below.

For General Users

Definitions

Those acquainted with client/server model can skip to sub-item "CUPS Versioning Issues"

  • "client computer" means the computer/device from which the print job will be generated
  • it must have CUPS client installed, which is the default condition for Max OSX and Linux
  • it need not have any printer drivers installed
    • indeed, it is less confusing if it does not
  • "server computer" means the computer controlling the printer. It can be:
  • for network printers, which are connected directly to a network, any computer on the network, having the relevant CUPS print drivers installed
    • network may be wired, WiFi or bluetooth
    • it is perfectly acceptable to configure several computers to use a particular network printer
  • for USB/parallel attached printers, the computer to which the printer is attached
    • it must have CUPS server installed, which is the default condition for Max OSX and Linux
    • the relevant printer must appear in its "Printers" list, and be working
    • the computet must be posered on, to enable printing, although logon won't usually be required .

Prerequisites

This guide assumes that CUPS is installed and generally functioning on both computers. The screen shots are from CUPS version 1.4.x/1.5.x. Versions 1.6 et seq have similar menus, but fewer options, with some changes having to be effected via computer's Control Panel instead.

CUPS Versioning Issues

Firstly it is essential to ascertain which release of CUPS is in use, because versions 1.6 and later are largely incompatible with earlier releases. If uncertain, then on each machine involved in the network printing browse to: https://localhost:631/admin Cups printers listing.png

the release number should be displayed in the title bar

  • CUPS <= 1.5.4 uses substantially different process from 1.6 and later
    • printing between machines mixing these versions is complicated. see below for guidelines, if unavoidable
    • as CUPS <= 1.5.4 is now used mainly in older OS, there is a case for upgrading the OS on such machines to a current release.
      • it is not feasible for General Users to upgrade the version of CUPS without upgrading the whole OS
  • CUPS 1.6 and later
  • Devices sold by Apple Inc can deploy proprietary extensions to CUPS. Consequently, some features may not work as expected, if the print job is sent to a printer that is controlled by another version of CUPS

As a general rule, the print server should have a version not earlier than the client

CUPS mixed networks <= 1.5.4 plus 1.6 et seq

Network printing in this environment is more complex. For a guide to procedures see: http://doc.opensuse.org/release-notes/x86_64/openSUSE/Leap/42.1/

Sample screen images displayed in the following sections are similar for CUPS 1.4 and later.

CUPS 1.6 and later

Later releases of CUPS impose greater network security. Default settings vary with system and may require some troubleshooting if client and server have different origin.

The following client systems automatically discover network printers, from default configurations

  • Linux Mint 17.3
  • openSUSE Leap
  • openSUSE Tumbleweed

Other environments may require changes For a quick test, from the client computer, open any page in a browser or editor and select "Print"

  • if any of the networked printers can be selected then no further configuration is required
    • if not then:

Temporary Fix

The following procedure is adequate for portable machines that are away from home base. It might also suffice for other computers that are rarely used to print.

  • does not require Admin privileges on most systems
  • but does require IP address or host name of the machine sharing printers
  • settings cannot be saved


Print Settings Applet.png
The Print Settings applet is usually accessible from the main menu and typically has the icon at left

Start this applet to get its main window as below



Print settings localhost.png


Pull down the Server tab and select Connect, to get the following pop-up dialog


CUPS server connect.png



Change the name of the server to hostname or IP address of that required and click on Connect




From the client computer, open any page in a browser or editor and select "Print"
  • if any of the networked printers can be selected then no further configuration is required
    • if not then:


Main window should now display all discovered printers on the network

Print settings discovered.png
From the client computer, open any page in a browser or editor and select "Print"
  • if any of the networked printers can be selected then no further configuration is required
    • if not then:

If printers are discovered then any newly opened app eg LibreOffice, browsers, editors etc should be able to select and print to one of the printers

If no printers are discovered then changes in configuration are required, as below

Retained Configuration

Neither of the two tools widely deployed for administering CUPS are able to make permanent changes to printer discovery. Both amend the same underling config files:

  • system-config-printer (aka Print Settings)
  • the URL https://<localhost or URL>:631

Some of the changes required below need to be made by editing conf files and executing commands at a terminal

Summary of Changes

Several settings might need to be changed to print via network - in summary:

  • amend firewall settings, on both ends, if necessary
    • firewall on router should not be altered
  • set client to use printers shared by another machine on the network
    • in many installations this suffices to get printing working via network
  • activate cups-browsed service via system services (systemd) on both ends
    • only in deployments using this separate service
  • set CUPS on server to share printers but only to the local network
    • often the default setting

It might pay to configure the client computer first, because other machines are often set to share their printers to the local network.

  • must be done via Control Panel or a combination of editing files then executing commands

The Print Settings applet typically has the icon Print_Settings_Applet


From the client computer, use "Control Panel" to set the following, if available (exact menus and terminology will vary):
  • firewall on server must have port 631 open
  • configure "Printers" to use network printers
    • note that in many Control Panel apps this item is merely a link the applet "Print Settings", which does not allow changes to print server to be retained.

In cases where Print Settings is the only tool available:

  • temporary changes to select print server can be made from the applet
  • permanent changes need to be made manually, as follows:
  1. modify "system services" (exact terminology will vary)
  • enable and activate "cups-browsed"
    • not identified as a separate service in some distro (and then not required)
  1. modify the file /etc/cups/client.conf**does not require a web browser, which might not be present on a server
  • on many systems this will not exist by default, but creating it, pointing to a valid IP address that is sharing printers, is usually sufficient to enable the client to use shared printers. Only one line is required in this file:

ServerName <IP address of machine sharing printers>

  • one only servername is used
    • where multiple appear the last is used
    • many systems default to "localhost" or /var/run/cups/cups.sock
      • can be retained, provided not the last listed
    • does not require a web browser, which might not be present on a server

Some distro are issued as specific desktop (client) or server releases. The desktop releases might not provide for changed settings to be saved. That allows eg a laptop away from its home base to print, without disturbing longer term settings.


From the server computer, use "Control Panel" to set the following, if available (exact menus and terminology will vary):
  • firewall on server must have port 631 open
  • modify "system services" (exact terminology will vary)
    • enable and activate "cups-browsed"
      • not identified as a separate service in some distro (and then not required)
From the server computer, use any browser to https://localhost:631/admin 

and activate radio buttons to:

  • Share printers connected to this system
    • using protocols DNSSD & CUPS
  • restrict sharing to "Local Network"
    • could also be set as IP address eg 192.168.0.0/24
  • Allow remote administration

It is inadvisable to enable

  • Allow printing from the Internet*print via network


Cups admin home.png


then click "Change Settings" button to save any changes, if necessary

Then click on the "Manage Printers" button in the same tab, select the relevant printer and pull down the "Administration" menu

  1. select "modify printer" then click the "continue" button to proceed to its second screen


Cups printer network.png


Cups printer configuration2.png 22

  1. ensure that "share this printer" is checked
  2. it will be helpful to make the "Location" the name of the computer controlling this printer
  3. click "continue" until the process completes



    • does not require a web browser, which might not be present on a server

Quicktest

Both computers must be connecting to the local LAN via wired or wireless interface. A quick test is to start a web browser and check that the Internet is accessible. Provided that network access is working:

  1. Start a text editor (kate, leafpad etc)
    • if the application is already running then it may need to be shutdown and restarted to recognize newly available printers
  2. Open a new document and type a few words
  3. From the file menu, select "Print"
  4. Select the relevant printer from the drop-down dialog
    • which should list all shared printers on the LAN
  5. click on the properties/settings button
  6. ensure that the key settings are suitable eg A4 paper size, portrait orientation
  7. click OK/print

Working Environments

The following client systems automatically discover network printers, from default configurations

  • Linux Mint 17.3 Mate

Preliminary Troubleshooting

1. No printers listed in the print dialog

This problem frequently is the result of a firewall running on one or both computers. Network printing can work only if either:

  • firewalls on each computer allow port 631 through or
  • Ethernet zones are set as "trusted/internal" in the firewalls on each computer

Only printers powered up will appear in the list

  • confirm that the relevant printer is powered on
  • if it is attached to another PC via parallel or USB cable then that PC must also be powered on
    • (it is not necessary to log in to the sharing PC)

2. Print Job accepted but no output on Printer

This can be a result of many possible causes. Some simple checks:

  1. is CUPS known to be installed and working on the computer from which the text was created ?.
  2. Can it print to some printer at its home base ?
  3. does a similar print job created on the server computer give output on the printer ?

3. Print Job rejected by Server

  • possible permissions issue - check thehat:
    • printer is set as "share this printer" on the server
      • follow "modify this printer" dialog
  • possibly incompatible CUPS verions
    • most suitable arrangement is for all machines using CUPS #< 1.6
      • achievable only by upgrading the complete OS
      • a new version of the driver for each printer is required at the server end, to support PDF print jobs
      • if a binary driver, from the manufacturer, was previously used, check whether a driver is now included in CUPS or, failing that, whether an updated driver can be obtained from the manufacturer
      • following the upgrade, follow the "modify this printer" dialog for each printer and select the most recent PPD file.
    • on older installations, it might be necessary to keep all machines at CUPS version #< 1.5.4

If all else fails, then the CUPS Administration page has a button "View Error Log". Text towards the end of that file may give some clues.

CUPS <= 1.5.4

With this version, a (different) CUPS browsing module is usually enabled by default. Simpler configuration changes usually suffice.

At the server end, browse to https://localhost:631/admin and activate radio buttons to:

  • Share printers connected to this system

At the workstation/client end, browse to https://localhost:631/admin and activate radio button:

"Show printers shared by other systems"


Cups admin home.png


then click "Change Settings" button to save any changes, if necessary

The troubleshooting tips for version 1.6 and above still apply

Getting Techhnical

As a general rule, the print server should have a version not earlier than the client

  • Version 1.5 of CUPS is likely to produce a print job as a PDF file, whereas version 1.3 & 1.4 servers accept only PostScript files

The above changes can also be implemented via a combination of editing config files and commands via CLI.

At the server end:

  1. ensure that /etc/cups/cups-browsed.conf includes the statements
  • BrowseRemoteProtocols DNSSD,CUPS
  • BrowseProtocols DNSSD CUPS
  • BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  1. Log to a terminal as root and execute:

# systemctl cups-browsed.service enable

# systemctl cups-browsed.service start

At the client end:

  1. ensure that /etc/cups/cups-browsed.conf includes the statements
  • BrowseRemoteProtocols DNSSD,CUPS
  • BrowseProtocols DNSSD CUPS
  • BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  1. Log to a terminal as root and execute:

# systemctl cups-browsed.service enable

# systemctl cups-browsed.service start



Save changes

It will then be necessary to use the Admin tab and select "manage printers" -> "Modify Printer", then modify each printer to == Situation ==be shared by ticking the box "Share this Printer"

Often the above steps suffice to make printers visible to a client machine. If not, then the following additional steps might be required, at the client end: Use "Control Panel" to set the following, if available (exact terminology will vary):

  • print via network
  • allow printing to local network only eg 192.168.0.0/24, for non-portable machines

Getting Techhnical

The above changes can also be implemented via a combination of editing config files and commands via CLI.

At the server end:

  1. ensure that /etc/cups/cups-browsed.conf includes the statements
  • BrowseRemoteProtocols DNSSD,CUPS
  • BrowseProtocols DNSSD CUPS
  • BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  1. Log to a terminal as root and execute:

# systemctl cups-browsed.service enable 2

# systemctl cups-browsed.service start

At the client end:

  1. ensure that /etc/cups/cups-browsed.conf includes the statements
  • BrowseRemoteProtocols DNSSD,CUPS2
  • BrowseProtocols DNSSD CUPS
  • BrowseAllow 192.168.1.0/24 (or network address your LAN, if not this)
  1. Log to a terminal as root and execute:

# systemctl cups-browsed.service enable

# systemctl cups-browsed.service start

Strictly for Geeks

Bootable Media

USB

USB devices either "thumb" drives or card readers, usually for SD or microSD cards, have several advantages for booting OS:

  • generally much faster than DVD
  • bootable from UEFI firmware, whereas DVD might not be
  • higher capacity
  • reusable

Special techniques are required to prepare bootable USB devices.

For General Users

if the ISO image has been prepared as an isohybrid, then the following tools can readily put it on USB device:

A previously popular tool was "unetbootin". However this breaks isohybrids and should be used only with non-hybridised ISO.


Getting Techhnical

It is now possible to put multiple bootable OS on a single USB device and then boot any from UEFI or non-UEFI firmware. This requires working knowledge of the boot parameters as well as running a number of command line programs. Detailed instructions are at:



---[[-Rpeters 18:02, 18 August 2012 (EST)]]

--Rod 09:05, 7 October 2013 (EST) --