Answers 112

From LXF Wiki

Answers 112

<title>Linux for all</title>

<question>I am considering moving to Linux from Windows, but I must have a screen reader because I have recently lost my sight. I have listened to a podcast by a blind user installing Ubuntu 8.04 using the Orca screen reader, which sounded pretty cool. Will Orca read out all screen text with all Linux programmes, and is Ubuntu 8.04 the best distro for this, bearing in mind that blind users cannot read the screen or use the mouse, and that screenreaders cannot read out graphics or icons with synthetic speech? Commercial screenreaders cost around £500 and work only with Microsoft programs, so I am faced with an upgrade cost of £250 if I want to change from Outlook Express 6 to OE7. Which would be the most suitable distro, and where can I obtain a disk to install on my PC? </question>

<answer>Orca appears to do that you need. While it doesn't work with all programs, it does work with any that support the Assistive Technology Service Provider Interface (AT-SPI). This includes the Gnome desktop and many of the applications that run on it. All the common tasks are catered for with at least one program; office suites, web browsing, email, accounting and even a terminal, so this should fulfil your needs. Orca doesn't work well with KDE, so you'll need to use the Gnome desktop (though there are proposals to change the AT-SPI to make it possible to work with KDE). This is the default desktop for Ubuntu, making it a good platform for such a setup. Ubuntu 8.04 was on the DVD in LXF107, or you can download it from www.ubuntu.com. If you don't have broadband, you can also request a CD from the Ubuntu website, free of charge. The Orca screen reader is included in the standard Ubuntu installation. Go to the System menu and select Preferences > Assistive Technologies. Here you can set the screen reader and/or magnifier to run at startup. You also have to deal with the login screen. There are two ways to do this, both set in System > Administration > Login Window. One is to enable automatic logins for your user under the Security tab. You should be aware that, although more convenient, this does make your system somewhat less secure, as anyone turning on the computer is automatically logged in as you. The other option is to enable Orca for the login screen by ticking the `Enable accessible login' box under the Accessibility tab. You can find more information on Ubuntu's accessibility features at www.ubuntu.com/products/whatisubuntu/accessibility, and details on Orca, including a list of supported programs, at http://live.gnome.org/Orca. </answer>

<title>Harmony through Unison</title>

<question>I am familiar with rsync and would like to be able to use Unison, so I found Chris Brown's article in LXF110 very interesting. However there are one or two things that are not made clear. The text says "...my desktop system, which I call hardy..." and goes on to use the name `hardy' in commands. Where is the name `hardy' specified in his systems? Several command sequences are shown, but nowhere does it say on which PC they are executed, laptop or desktop. The first sequence begins "$ ssh hardy unison -version" which suggests it was entered on the laptop, but other sequences are ambiguous in this context ­ such as "$ unison -playtime". </question>

<answer>`Hardy' is the computer's hostname, and you can find the correct name for each of your machines by running the hostname command in a terminal. Where this is set varies from one distro to the next, but you'll usually find it in the network configuration section of your distro's tools. Although Unison has no real concept of server and client computers, it can be run on either of the pair of computers you are synchronising. In the context of the article all commands are run on the laptop and work with the server, which is called hardy (apparently, Chris likes to keep the name of his laptop secret, either for security or because he uses a silly name for it). The first command, ssh hardy unison -version runs unison -version on hardy over an SSH connection. As long as this gives the same output as the second command, you are able to proceed. Provided the ~/.unison/playtime.prf is present on both computers, you can execute unison playtime (there's no leading -) on either computer to initiate the synchronisation. When I start working on my laptop or desktop, I generally run Unison first to make sure it is in sync with the other computer before I start. If you want to be able to start synchronising from either computer, you need similar, but not identical profiles. The list of files to include needs to be the same, but you may want to switch the order of the root lines. Otherwise the same computer will always appear on the left of the list, while I prefer to always have the local machine on the left. The way I manage this is to use the include option and keep the root settings and file lists in separate files. So playtime.prf would contain

label = Test sync between here and hardy 
include playtime.roots
times = true
include playtime.files

This means that playtime.files, which contains the meat of the configuration, is the same for all machines, and can even be included in the list of files to synchronise to keep it that way. Incidentally, you may have noticed the times line ­ this ensures that file and directory modification times are preserved, which is a good idea. </answer>

<title>New user worries</title>

<question>I'm a complete newbie to Linux, and have recently installed Fedora 9 from your LXF108DVD. I've been looking forward to getting started, but now find myself getting a bit stuck. I can't figure out how to get my wireless network running. I gather that only a handful of adaptors will work, chipsets vary, and even when you find one that supports Linux, driver installation seems to be quite an involved procedure using code. (My adaptor's a Netgear WG111v2 USB stick, but I'd like to use a PCI card.) I'm terrified by the amount of code, and the languages that seem to be required to use Linux effectively. I just can't understand what's written most of the time, and I'm far from computer illiterate. How do you get a wireless network adaptor to work with Fedora 9? Second, and I guess most importantly, can you suggest any resources/books that could lower me into the Linux pond gently? I want to escape Windows, but find myself almost creeping back to the familiar environs of XP because Linux, with its heavy jargon, myriad variants and bizarre-looking code looks so inaccessible. I'm raring to get stuck in, and would love to learn as much as I can, but don't quite know where to begin; any suggestions would be gratefully received. </question>

<answer>Wireless chipsets can be a problem, and the situation is worsened by manufacturers changing the chipset in a product without changing the model name or number. Almost all wireless chipsets are supported in one way or another nowadays, although the effort required varies from one to the next. As you plan to buy a new PCI card anyway, I would suggest you buy it from Linux Emporium (www.linuxemporium.co.uk), which provide hardware that is known to work with Linux and can will give support for most distros. It also provides Linux drivers for those distros that don't have support built in (usually older distros, as wireless support in Linux has improved a lot recently). You don't need to know any programming languages to use Linux, but a willingness to type commands in a shell from time to time does help. The various distros have gone a long way towards providing system tools that avoid the need for the command line, but sometimes it's quicker and easier, and not as scary as it first seems. Linux's jargon is not so much heavy as unfamiliar ­ try explaining Windows to someone who has never used it before. There are plenty of resources for Linux users old and new. Man pages are documents for the various commands, which you access by typing man commandname in a shell or, if you use the KDE desktop, press Alt+F2 and type man:commandname to open an HTML version of the man page in the web browser. There are various online resources you can use such as Rute (http://rute.2038bug.com/index.html.gz), which provides a useful introduction to working with Linux, and the Linux Documentation Project (http://tldp.org), which contains a collections of HOWTO guides, FAQs, man pages and some longer guides, such as `Introduction to Linux ­ A Hands-on Guide'. If you prefer a proper book, there are plenty of introductory works for the various distros, with Fedora options including Beginning Fedora from Apress and Fedora Unleashed, co-written by our esteemed editor (both of these are available from Amazon ­ other book retailers are available). And of course, you should continue reading Linux Format to steadily improve and widen your Linux knowledge. It's also worth revisiting previous issues as your knowledge increases. Articles that went right over your head a few months earlier will give you useful information after just a few months of learning. </answer>

<title>Disappearing display</title>

<question>In Ubuntu 7.10 I was doing automatic data backups using crontab to run Bash scripts containing Zenity messages. Since I upgraded to Ubuntu 8.04 the messages no longer display, though data backup still takes place normally. I have tried many suggestions from the internet for alternative code to display messages from crontab without success. I have tested the procedures in Linux Mint 5.0 Light and Ubuntu 7.10 on other machines and they work OK, so I suppose that this is a problem with the kernel. The hardware on my machine has not changed since these procedures were working in Ubuntu 7.10. I have been waiting in hope that a patch would arrive with the many updates to Ubuntu 8.04 but no luck so far! The command line in crontab is

16 10 * * * export DISPLAY=:0.0 && /home/
bruceadmin/Scripts/dayback.sh > /dev/null 2>&1

and export | less at a terminal shows that :0.0 is correct for my DISPLAY value. </question>

<answer>The first step is to remove or change the output redirection so that you are not dumping the error message your command is probably producing. Removing it will have the error emailed to you, or you could direct it to a file. If the backup script produces lots of output, you should consider redirecting stdout and stderr to different files. I suspect your error message may contain "cannot connect to X server :0.0", so you may also see rejection messages in /var/log/Xorg.0.log. Are you running this command from your user's crontab or /etc/crontab? If the latter, you need to run

xhost local:

to allow other users (/etc/crontab entries are run as root) access to your display. Alternatively, run the script as your user and use sudo within the script for any commands that need root access. Another possibility that would affect your user's crontab as well as the system one is your use of export to set DISPLAY separately from running the command. Export is only needed when commands are run separately from the settings of the environment variable and there is no need for this here. Instead use

16 10 * * * DISPLAY=":0.0" /home/bruceadmin/
Scripts/dayback.sh &>/home/user/cron.log

which works perfectly on our Hardy test rig. When you're happy, change the logfile to /dev/null, but until then it can be useful for debugging. </answer>

<title>Missing thumb drive</title>

<question>I have just installed the latest OpenSUSE 11 from LXF109's DVD. I kept all my backup files in a thumb drive (/media/disk) before the installation, which completed without any hitches. When I opened the Konsole terminal and tried to change directory by keying cd /media/disk I got this error message:

bash: cd: /media/disk: no such file or directory

The same thing happens when I tried to get to my thumb drive using Konqueror. But I noticed that Dolphin can recognise the thumb drive as `Volume (vfat)' It is only after I have clicked on the Volume (vfat) icon that I am able to do cd /media/disk using the terminal. The same goes with the Konqueror browser. </question>

<answer>This is normal. It means that your system is set to not automount removable devices when they are connected. The automount system creates the appropriate directory in /media just before mounting the device, and removes it when the device is unmounted ­ that's why /media/disk does not exist. When you open it in Dolphin, the device is mounted, which is why you can then access it in a terminal. KDE should pop up a notification when a new removable device is connected, with an option to open it in Dolphin. KDE 3 enables you to set an action to be performed automatically when a device is connected (set in the Peripherals > Storage Media section of the KDE Control Centre), though KDE 4 unfortunately doesn't at the time of writing doesn't. However, It isn't a major hassle to open the device in Dolphin before trying to access it from the shell, now that you understand what's going on. </answer>

<title>Fixing DNS</title>

<question>I'm using an E220 USB HSDPA modem under Fedora 9, all working with the new Network Manager 0.7.x. I have a little wireless connection showing up on the task bar and got a IP address. When I right-click on the icon and go to Connection Settings, it keeps showing up 4.2.2.3 and 4.2.2.4 for the DNS settings even when I go to /etc/resolve.conf to change them to use the OpenDNS setting. I don't use an Ethernet cable or wireless with this laptop, only the USB modem. All the websites I've seen have told me to change it in Network Manager and the /etc/resolv.conf file, but when I do, it goes back to 4.2.2.3 and 4.2.2.4. How can I change the DNS settings for the PPP connection (mobile broadband) and get them to stick? </question>

<answer>Fedora is obtaining the DNS addresses from your ISP as part of the DHCP negotiation (see the Frequently Asked Questions box on page 110 for more details on DHCP), which also gives your IP address, default route and some other bits and pieces. It is possible to change this by running the network configuration tool at System > Administration > Network, selecting your modem and pressing the Edit button. Leave the setting to `Automatically obtain IP address settings with:' at DHCP and untick the box to `Automatically obtain DNS information from provider' Press OK, then go to the DNS tab and specify your addresses manually. Don't try to edit /etc/resolv. conf, as this is generated each time you bring up a network interface using the settings you just changed. Some other distros allow you to specify the options used when requesting information from the ISP with either dhcpcd or pump, two common DHCP programs. In such cases, the option to be passed to dhcpcd is -R, which tells it not to rewrite /etc/resolv.conf; pump uses --no-resolvconf to do the same thing. </answer>

<title>Souped-up system</title>

<question>I installed HardInfo (the system profiler and benchmark app) from the LXFDVD on to my Ubuntu 8.04 system. When I run it from the command line I get "hardinfo: error while loading shared libraries:

libsoup-2.2.so.8:
cannot open shared object file: No such file or
directory"

Yet locate libsoup shows

/usr/lib/libsoup-2.4.so.1
/usr/lib/libsoup-2.4.so.1.1.0
/usr/share/doc/libsoup2.4-1
/usr/share/doc/libsoup2.4-1/AUTHORS
/usr/share/doc/libsoup2.4-1/NEWS.gz
/usr/share/doc/libsoup2.4-1/README
 /usr/share/doc/libsoup2.4-1/changelog.Debian.gz
 /usr/share/doc/libsoup2.4-1/copyright

</question>

<answer>HardInfo requires version 2.2 of libsoup, and it looks like you have the later 2.4 installed. HardInfo is included in the Ubuntu repositories and can be installed directly from Synaptic. When you try to do this, it picks up on the dependency on libsoup2.2 and installs that too. So the solution to your problem is to either install HardInfo with Synaptic, or at least install libsoup2.2 from there. Libsoup 2.4 is not simply a newer version of the library: it's a different version that is not backward-compatible with 2.2. This keeps the code clean and compact because it is not burdened with legacy code and functions, but it means it will not work with programs that were written specifically for libsoup 2.2. This is not a problem as long as you are aware of the situation, because you can have both versions installed and programs can then use the version they need. </answer>

<title>Windows networking</title>

<question>I installed OpenSUSE from the LXF109 DVD on to a PC that had been fine with Windows, including browsing the web. With OpenSUSE it was also able to browse web, but on reverting to Windows, there was no LAN light on the modem-router (a TalkTalk-supplied Huawei SmartAX MT882). I uninstalled the Windows driver and re-installed, with no improvement. Multiple complete shut-downs and re-starts made no impact. Reversion to the previous day's restore point made no impact. Restarting OpenSUSE again made the LAN light come up and browsing was OK, but this didn't help the situation in Windows. Deeply disenchanted, I switched the power off at the wall and went to bed. This morning I fired up the PC in Windows, and the LAN light is back, with all seeming OK. Can you advise what was wrong and what may have changed to resolve it? I have no idea if the issue lies in the PC or the modem-router but I hate `miracle cures'. </question>

<answer>The problem lies in the PC, and more specifically in the way that Windows initialises the network controller. When you start the computer from cold, the device is in its default state and Windows has no trouble initialising it. When you reboot Windows, things still work, because the driver expects the device to be in the state it left it before the boot. The problem arises when you boot from Windows to Linux. Windows sees this as a warm boot, but the card has not been initialised in the way it expects, because the Linux driver was handling it last. These problems are usually caused by drivers uploading specific firmware to the card ­ it is possible that the Windows and Linux drivers use different firmware versions, or simply the Linux driver leaving registers set in a way that confuses the Windows driver. Either way, the simplest solution is to shut down the computer instead of rebooting when you want to switch from Linux to Windows. A simple Shutdown from the desktop menu followed by a press of the powerbutton may suffice for this. However, as the motherboard still receives some power after a shutdown, you may find you have to switch off the power at the wall socket or the switch on the back of the PSU for a few seconds to ensure a fully cold restart. This would explain it working again when you switched on the next morning. </answer>

<title>Portable filesystems</title>

<question>I would like to get rid of Windows, completely! But it seems that, as far as filesystems are concerned, we are always obliged to pass through either FAT, FAT32 or NTFS. What should we use for USB keys? They are always FAT formatted. I've tried to format a shared partition as ext3 on my PC where I have different distros, but it comes to be a read-only partition, while NTFS-3G allows read-write without any further operation. At work I have a MacBook with Leopard and Ubuntu, but it seems that to share a partition I have to use NTFS. OS X can't read ext3 and Linux can't write on HFS+, while both can read and write NTFS. Can you suggest which filesystem I should use when using different OSes and Linux distros? Are we really obliged to always use the Microsoft filesystems? </question>

<answer>The reason USB keys and flash memory cards are formatted with FAT as standard is that everything can read and write FAT. Manufacturers of these items are less concerned with using the most effective filesystem than making sure it works for everyone. Having said that, you can use almost any filesystem you like on a flash memory device. You should steer clear of journalled filesystems, like ext3, ReiserFS, XFS and NTFS because the journal can severely reduce the life of the device. Flash memory can only accept a limited number of writes to any one location (most manufacturers quote 100,000). A block that is written to every time anything on the filesystem is changed will be subject to much heavier wear and will fail far sooner than the rest of the drive. HFS+ filesystems are supported in Linux, although with limited journalling support, which is a good thing for the above reasons but is also a reason to not use HFS+ on memory sticks on a Mac. Ext2 is a good choice as it is fast, reliable and non-journalled. It is also supported on other operating systems, but not by default. There is an ext2 driver for Mac OS X available from http://sourceforge.net/projects/ext2fsx and one for Windows from www.fs driver.org. Is your ext3 filesystem actually read-only, or simply not writeable by your user? The output from mount will show this ­ it will contain `ro' if mounted read-only. Otherwise, it is likely that, as the filesystem was created by the root user, it is owned, and only writeable by, root. To fix this, mount the stick and run

sudo chown -R youruser: /media/usbstick

So you see you have a great deal of choice for filesystems, some better than others. For ubiquitous support, FAT is the popular choice, but watch out for the 4GB file size limit if you use a large device. If you are only going to use the device on systems you know will have a suitable driver installed, ext2 is a good alternative. </answer>

<title>Video downloading</title>

<question>I'm trying to download streaming flash video SWF files to a folder for later viewing. I am using Ubuntu 7.10 on a Compaq Presario SR1720NX. Is there some way to do this? When I drag the icon to a folder all I get is the link to the download. </question>

<answer>The first thing to do is check the link in the file you did manage to download. Paste that link into a browser, or download it with

a command line downloader like Wget:

wget [link]

If the link is an mms:// URL, you can usually play it directly with MPlayer: mplayer "mms://blah....." You may need to enclose the full link in quote marks, because they often contain characters like ? that the shell tries to interpret. Enclosing the URL in quotes prevents this and ensures the URL is passed to program unmolested. If you are trying to play YouTube videos there are a number of scripts available that will determine the correct URL and download the video. One such script is Youtube-dl from www.arrakis.es/~rggi3/youtube-dl. Call it with the URL of the YouTube page containing the video, using quotes as above, to download the video to the current directory. Then play it with your favourite player. If you use KDE and the Konqueror web browser, there is a servicemenu available from www.kde-apps.org/content/show.php/Get+Yo uTube+Video+(improved)?content=41456. Once it's installed, you can right click on any YouTube page or embedded video and download or play it.

</answer>

<title>Kaffeine to DVD</title>

<question>I record TV programmes using Kaffeine. It saves them in files with a file type of M2T. I want to convert them to a format that I can burn to DVD using K3b so that I can play them back on my DVD player to my TV. Can you recommend any combination of routines that will do the job? </question>

<answer>Kaffeine uses the .m2t extension for MPEG2-TS (Transport Stream) files. These are programs transmitted in MPEG2 format on a DVB (Digital Video Broadcast) channel, such as Freeview. DVDs use MPEG2-PS (Program Stream), which is a variation on the same format. The main difference is that TS files contain extra, redundant information that ensures the stream is still playable in the event all the data doesn't get through. As a result they are somewhat larger than a file of the same duration and bitrate extracted from a DVD. One of the simplest apps for converting these files, or almost any other type of video file, into a DVD is the Tovid package from http://tovid.wikia.com. As with most such programs, it can take a while if each file has to be re-encoded, but it does the job with a minimum of fuss. Tovid has a graphical front-end, where you can build a menu structure, add videos, set background images and music and many of the other frills that comes with a DVD. It also comes with a handy script, todisc, that does everything from the command line, requiring just a list of files to encode. If all you want is an easy way to view your computer-recorded files on the family TV and are not bothered about fancy menus, todisc is the simplest option. This is another example of how quickly things can be done in the shell, although the actual task of creating the DVD can still take quite a while, even on a fast dual-core system with lots of memory. While todisc is also capable of some fairly complex layouts, it comes into its own when you just want to put a couple of videos on a DVD. Todisc will take a list of video files and convert them to the correct format, generate menus and the DVD structure and write the whole thing to an ISO file ready for writing to a DVD, like this

todisc -pal -files video1.mpg video2.m2t video3. 
avi -titles "First video" "Second video" "Third
video" -out mydvd

The number of files and titles must be the same, and you should quote the titles if they contain spaces. Run this program, wait a while and you'll find a DVD image ready for burning to disc. There are a couple of alternative programs. Q DVD-Author is a graphical front-end to dvdauthor, the program that generates a full DVD file structure from the component video and menu files, which is also used by Tovid. You could also consider MythTV. While it is more complex to set up, it provides a great deal more flexibility, allows you to schedule program recording and has a plugin to burn recorded programs to DVD that takes care of all the work. Just select the programs by title and make a cup of tea while it is converting and burning the videos. </answer>