Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm trying to install nvidia display driver on pretty old machine.
OS is redhat linux 9. I know it is very old but updating OS is because of various of reasons not an option.
I'll try to explain the problem I'm having. Nvidia installer is in run package and it cannot install nvidia driver because it cannot find a precompiled kernel nor it can find required kernel sources.
The installation CD is broken and I cannot use it for instaling missing rpms any more.
I hope I can still solve my problem with your help and with another similar machine.
Procedure for installing Nvidia driver is described here: https://download.nvidia.com/XFree86/...alldriver.html
I have two very similar machines with the same version of redhat linux installed at the same time.
First machine used nvidia display graphic card from the start and second used some matrox.
Nvidia display driver is successfully installed on first machine a long time ago and it works correctly.
I didn't consider to copy kernel from first machine to second machine because few years ago SCSI HDD is replaced with SAS, while on second machine original HW is still in use (SCSI drive).
Is there any way I can copy only video libraries from irst to second machine?
Kernel version is 2.4.26.
Is it possible in any way to use first machine to overcome this problem.
If boot disk had not been changed, I'd make disk image on first machine and restore it on second, change hostname, IP address and that would solved the problem.
I have found that very similar problems were discussed here more than years ago, but now most links don't work any more.
Distribution: Currently: OpenMandriva. Previously: openSUSE, PCLinuxOS, CentOS, among others over the years.
Posts: 3,881
Rep:
Quote:
Originally Posted by Micik
Hello linux experts,
...
Is there any way I can copy only video libraries from irst to second machine?
Kernel version is 2.4.26.
Is it possible in any way to use first machine to overcome this problem.
...
Not easily if at all, no.
I wouldn't manually copy libraries from one machine to another, or you'll very likely have problems.
Why can't you upgrade to the latest version of CentOS? Hardware too old? Can you give some hardware spec's of the machine(s) in question?
The reason I ask is because, if it can run kernel 2.x, then I'd think it's quite possible it could run kernel 3.x (CentOS uses kernel 3.10, and is basically the free version of Red Hat itself). Do the machines in question at least have DVD drives?
Thank you for the reply.Update of OS is not possible at the moment because of some specific application software that runs on a computer.
However, maybe I don-t need the first machine at all.
Here is actually error log I receive:
ERROR: Unable to find the kernel source tree for the currently running kernel. Please make sure you have installed the kernel source files for your kernel and that they are properly configured; on Red Hat Linux systems, for example, be sure you have the 'kernel-source' or 'kernel-devel' RPM installed. If you know the correct kernel source files are installed, you may specify the kernel source path with the '--kernel-source-path' command line option.
So I tried to execute nvidia installer with the following option
sh ./NVIDIA*.run --kernel-source-path=/usr
since kernel.h and other files are in located in usr/include/linux directory
IN that case I receive the following error:
The kernel source path '/usr' is invalid...
Yhen I tried to start .run installer with the following option:
--kernel-source-path=/usr/include/linux
and the error is:
'/usr/include/linux/include/linux/kernel.h' does not exist. The most likely reason for this is that the kernel source path '/usr/include/linux' is incorrect.
But I know for sure that Kernel.h header file any many others are located in /usr/include/linux directory
Somehow, installer added additionally /include/linux in the specified path
Is there anz way I can chek whether source package is installed or not?
Especially one thing is interesting to me:
Can I add my own precompiled kernel interfaces to a .run file?
Yes, the --add-this-kernel .run file option will unpack the .run file, build a precompiled kernel interface for the currently running kernel, and repackage the .run file, appending -custom to the filename. This may be useful, for example. if you administer multiple Linux computers, each running the same kernel
So, maybe I can use other machine to add precompiled kernel with nvidia and then transfer new .run file to actual machine?
Micik, with that old of a system, why not just run the old nv drivers that were the default FOSS drivers for Nvidia cards at the same time as that OS was still supported?
Is that not an option? For what do you need Nvidia drivers on a system that old. Do you have the correct Nvidia driver from nearly 2 decades ago when RH9 was supported and active? RH9 hit EOL in 2004.
edit /etc/X11/XF86Config and look for the following:
The bold font line should read nv and should work without Nvidia drivers. If you must have Nvidia drivers than you will need to change the "nv" to "nvidia" and restart the GUI.
Hello guys.
I have managed to solve this. I have examined other machine and couldn't find src files there. It seems they are deleted after they've been used for nvidia install.
I was trying to use old nvidia driver (from year 2009 available on nvidia download page). https://mirrors.edge.kernel.org/pub/linux/kernel/v2.4/
I have downloaded tar files from this page, put on a machine, extracted and specify the path when installing nvidia.
It worked. The installation procedure makes all needed changes in X11 files.
Does Redhat 9 use YUM?
On the computer that has Nvidia installed, it likely has kernel headers installed, using command: rpm -qa on that machine, you should be able to figure out the exact name of the kernel header RPM package installed. Then search for that package here, if found, you'll also see a list with download link of all dependencies.
yum list installed will show all but not actual package name format
Does Redhat 9 use YUM?
On the computer that has Nvidia installed, it likely has kernel headers installed, using command: rpm -qa on that machine, you should be able to figure out the exact name of the kernel header RPM package installed. Then search for that package here, if found, you'll also see a list with download link of all dependencies.
yum list installed will show all but not actual package name format
No,"man yum" returns "Na manual entry". I already searched other computer with find / -name *kernel.h" and I have indeed found it in /boot and in /usr/include/linux directory. These were the very same directory like on machine I was working on.
I expected to find it in any other directory and to copy it on machine where I tred to install nvidia.
Anyway the problem issolved, I hav efound rpm packed for my kernel on the Internet, downloaded it, extracted to tmp and use this new source path.
It worked.
I have learned now, that there could be another way to solve the problem by using machine on which Nvidia graphics display adapter was already installed.
I have found this guideline:
To use this feature, simply invoke the .run installer package with the --add-this-kernel option; e.g.
# sh ./NVIDIA-Linux-x86-319.12.run --add-this-kernel
This will unpack NVIDIA-Linux-x86-319.12.run, compile a kernel interface layer for the currently running kernel (use the --kernel-source-path and --kernel-output-path options to specify a target kernel other than the currently running one), and create a new installer package with the kernel interface layer added.
Administrators of large groups of similarly configured computers that are configured to require trusted signatures in order to load kernel modules may find this feature especially useful when combined with the built-in support for module signing in nvidia-installer. To package a .run file with a precompiled kernel interface layer, plus a detached module signature for the linked module, just use the --module-signing-secret-key and --module-signing-public-key options alongside the --add-this-kernel option. The resulting package, besides being installable without kernel headers or a compiler on the target system, has the added benefit of being able to produce a signed module without needing access to the private key on the install target system.
So what I could do is to run installer on machine that already has Nvidia driver installed but with this option "--add-this-kernel". Then I could have copied the new installer file on target machine and run it there. This new installer would ave had alredy precompiled kernel and never would have asked me for source files.
I decided to post this here, because somebody else might have same or similar problem.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.