Yellow Dog Linux, like other RPM based Linux distributions, uses online repositories ("repos") to download applications and updates. This means you'll need a working internet connection in order to use the "Add/Remove Software" or the "yum" command to install software or updates from these online repos. The locations of these online software repositories are defined in .repo files located in the /etc/yum.repos.d directory.
As described in the How to Install Software (the easy way) guide, it's possible to set up third-party repos in addition to the three which YDL uses by default (yellowdog-base.repo, yellowdog-extras.repo, and yellowdog-updates.repo). These third-party repos are untested by Fixstars/YDL and also meant for a different distribution of Linux (Fedora 6 for livna and fedora-extras, or Fedora 7 for dribble).
For this reason, when you add third-party repos you also need to set up a plugin for the software installer called "protectbase" -- this prevents certain packages from other repos from overwriting those included with Yellow Dog Linux. The process for setting this up is included in the "How to Install Software" guide. It's also possible to use a plugin called "priorities" instead of "protectbase," but for simplicity the guide suggests using "protectbase" since it provides the same function.
Common Issues
Existing lock /var/run/yum.pid: another copy is running as pid 9947. Aborting.
This error occurs when automatic updates are running in the background when you try to use yum to install something. You can either wait for the updater to finish and try running the yum install again, or disable automatic updates.
To disable the automatic update service from the command line:
- Code: Select all
su -
<enter root password>
- Code: Select all
chkconfig yum-updatesd off
- Code: Select all
exit
(to turn on automatic updates again later, follow the same procedure but use chkconfig yum-updatesd on instead)
Config Error: File contains no section headers.
This error occurs when your .repo file has spaces in front of the first line, or has other typos so that the software installer doesn't find what it expects. For example, if you have the dribble.repo set up and you're getting this error:
- Code: Select all
Config Error: File contains no section headers.
file: file://///etc/yum.repos.d/dribble.repo, line: 1
' [dribble]\n'
Looking closely at the last line, you'll see there's a space in front of [dribble]. Removing the space(s) will fix this problem. The same applies to all the other repo files -- there must be NO spaces or blank lines at the beginning of the repo file.
Temporary failure in name resolution
This means that the software installer looked in the location defined in the repo file but couldn't access the server. This happened recently with the rpm.livna.org site being inaccessible. Here's a full example:
- Code: Select all
Setting up Install Process
Parsing package install arguments
http://rpm.livna.org/fedora/6/ppc/repodata/repomd.xml: [Errno 4] IOError: <urlopen error (-3, 'Temporary failure in name resolution')>
Trying other mirror.
To deal with this problem, I've added a list of "mirrors" to the livna-stable.repo file (earlier versions of the "How to Install Software" guide only specified the rpm.livna.org server). This means that if the software installer has trouble accessing the first server, it moves on to the next, and so on, until it's able to access one of the servers.
If none are accessible, the software installer will fail to run. In that case, you can temporarily disable the repo file by changing the enabled=1 line to enabled=0, or add enabled=0 if there is no enabled line at all.
You can think of the repo files like "Christmas lights" ... if one goes out, they all go out! Meaning that in the default setup, if the software installer has difficulty accessing one of the servers specified in the repo files, it will fail to do anything at all. If you're using the "yum" command you'll generally get a useful error message letting you know which repo didn't work. If you're using the GUI "Add/Remove Software" from your menu, it will say something like:
unable to retrieve software information. this could be caused by not having a network connection available
details: none
To get a more useful error message, try installing something from the command line instead using yum. To use yum to install software you need to have "super user" or "root" privileges. You don't have to log in as root, though -- the "su -" command allows you to temporarily become "root" as shown below:
Becoming root user:
- Code: Select all
su -
<enter root password>
Trying to install unrar -- a small archive utility that allows you to extract .rar archive files:
- Code: Select all
yum install unrar
If your repo files are configured incorrectly or the installer is unable to access one of the repo servers, you should get an error message specifying which one it's having trouble with.
If it all goes OK but ends with "Nothing to do" this means that A) it couldn't find the package you're trying to install or B) the package you're trying to install is already installed.
[Errno 14] HTTP Error 401: Authorization Required
This error occurs when you've installed Yellow Dog 6.1 and checked the option to use ydl.net enhanced downloads, but you don't have a ydl.net account (you have to purchase a ydl.net account -- see here for details). ydl.net account holders are issued a username and password to access a private server, and this username and password goes in your yellowdog repo files.
Here's an example of the error message:
- Code: Select all
http://www.ydl.net/enhanced/yum/6.1/extras/repodata/repomd.xml: [Errno 14] HTTP Error 401: Authorization Required
Trying other mirror.
Error: Cannot open/read repomd.xml file for repository: extras
To fix this problem, you need to either purchase a ydl.net account and set your repo files accordingly with the username and password issued by Fixstars, or set up your repo files to access the public servers. I've described the process of changing them for public server access in this post:
viewtopic.php?p=24427#p24427
When installing YDL 6.1, do NOT check the option to use ydl.net enhanced downloads if you don't have or don't plan on purchasing a ydl.net account.
Config Error: Error accessing file for config file://///etc/yum.repos.d/yellowdog-extras.repo
This error occurs on YDL 6.1 if you try to use yum to search for an application as a regular user instead of root.
The reasons behind why this doesn't work on YDL 6.1 are described in this post:
viewtopic.php?p=24477#p24477
Changing the permissions on the yellowdog repo files is optional, and not recommended for ydl.net account holders since they would include your ydl.net username and password AND be readable by any user.
Another post showing how to change the permissions on the repo files so you can run a yum search as regular user instead of root:
viewtopic.php?p=23359#p23359
Still having problems? How to ask for help
We're always happy (or at least willing ) to help new users on this forum. If you're having trouble installing software, you've read this guide, and you still don't know what's going on, feel free to post to this topic and ask for help.
The first thing we'll be looking for is any error message you received and how your repo files are set up. To get your repo setup info, use these commands from a terminal window:
- Code: Select all
su -
<enter root password>
- Code: Select all
more /etc/yum.repos.d/*
(you'll need to press the spacebar a few times to get the full output)
Copy/paste all the output from the above command to this topic and we'll go from there. NOTE: If you have a ydl.net account, your username/password will be in your yellowdog repo files -- if that is the case, edit that part out before posting! For those who don't have a ydl.net account, no private info will be included in your repo files.