Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 12
I'm reposting this with some updated instructions since my last thread is not able to be edited, and I've improved it greatly. I had to go through some pain to ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Linux Enthusiast meton_magis's Avatar
    Join Date
    Oct 2006
    Location
    arizona
    Posts
    699

    Thumbs up Fedora 18 Proprietary NVIDIA driver install.


    I'm reposting this with some updated instructions since my last thread is not able to be edited, and I've improved it greatly.

    I had to go through some pain to get the proprietary nvidia driver to install on Fedora 18, and had to repeat the process when the new kernel was installed today. I'm including my "script" to get this done so that hopefully someone else won't have as hard a time. Everything here is from a default install. I did not install rpmfusion, or change any system settings. If you have done so, these instructions may not work, and I can't take responsibility for any problems that may come up. Straying from these directions may lead to a system that doesn't boot. Please don't experiment unless you know what you're doing, or are willing to take that risk. ALWAYS make a backup of important files. PS, Raid is not a backup.

    Feel free to critique my process, I don't learn anything if no one points out my flaws.

    This process was created on an x86_64 default install (Gnome) on an Nvidia Geforce 250 GTS.

    First, go to the NVIDIA website and download the most recent driver for your card, I have tested this on the NVIDIA-Linux-x86_64-310.32.run driver for my Geforce GTS 250.

    Drivers - Download NVIDIA Drivers

    All instructions below are to be run as root. You can use `sudo -i ` to get a root shell, or preface the commands with sudo if you prefer.

    Code:
    # do a yum update to make sure you're on newest kernel release, better to not have to do this twice
    yum update
    
    # install the required compiler and source files
    yum -y install kernel-devel kernel-headers gcc
    
    # change default runlevel to multi-user (the old init 3)
    sudo ln -fs /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
    
    # reboot into the new kernel & runlevel
    shutdown -r now
    
    #make sure Open source nouveau driver is blacklisted from starting on next reboot.
    egrep -i "blacklist\s*nouveau" /etc/modprobe.d/blacklist.conf || echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
    
    # move the nouveau module out of the default path so that we won't have it built into the new initramfs.
    mv /usr/lib/modules/$(uname -r)/kernel/drivers/gpu/drm/nouveau/nouveau.ko /usr/lib/modules/$(uname -r)/kernel/drivers/gpu/drm/nouveau/nouveau.ko.blacklist
    
    # move the old initramfs to a backup location. Not strictly necessary, but a good idea to keep backups IMO, feel free to skip this step.
    mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).nouveau.img
    
    # make the new initramfs.
    dracut /boot/initramfs-$(uname -r).img $(uname -r)
    # there will be a couple messages about a missing "nouveau.ko" file, this is normal and intended (we're rebuilding the initramfs to not load nouveau on boot.)
    
    # reboot into new initramfs where nouveau won't be loaded.
    shutdown -r now
    
    # create link for version.h
    # This is necessary for kernels 3.7 and 3.8 using nvidia driver x86_64-310.32
    ln -fs /lib/modules/$(uname -r)/build/include/generated/uapi/linux/version.h /lib/modules/$(uname -r)/build/include/linux/version.h
    
    # cd to where you downloaded the NVIDIA driver. In my case, it was in my unprivileged user's Downloads directory.
    cd ~username/Downloads
    
    # make the file executable, and run it, follow onscreen instructions
    chmod 700 NVIDIA-Linux-*.run
    ./NVIDIA-Linux-*.run
    
    # If you're running any proprietary games (to include steam games) make sure to install the 32 bit compatibility drivers, and update the xorg.conf file when prompted.
    
    # when it is installed, change back to the default runlevel,
    ln -fs /lib/systemd/system/graphical.target /etc/systemd/system/default.target
    
    # and reboot
    shutdown -r now
    When your system comes back up, you should be at the graphical login screen. Log in, open a teminal, and run

    Code:
    nvidia-settings
    and setup your stuff how you want. If there are errors at any step, please let me know so that I can modify my instructions.

    ####################################### RPM Fusion Method ########################
    Here is a good link for installing via RPMFusion. They are a great deal easier, but don't have as much flexibility (harder to choose a different video driver than what they have there.)

    http://www.if-not-true-then-false.co...-nvidia-guide/

    #########################################

    The original thread for this topic can be found here
    http://www.linuxforums.org/forum/red...team-beta.html
    However it's mostly just Gruven and I discussing the method. Thank again to him for testing out my "script" and reminding me of the rpmfusion method.
    New to the internet, technical forums, or the hacker / open source community??
    Read this to learn good posting habits http://www.catb.org/~esr/faqs/smart-questions.html

    RHCE for RHEL version 5
    RHCT for RHEL version 4

  2. #2
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    Posts
    11,677
    The latest nvidia drivers are now using dkms so if you change your kernel, you should not have to reinstall the driver. However, if you update the driver, you will have to switch to runlevel 3 instead of 5 as it won't install if the X server is running.
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  3. #3
    Linux Enthusiast meton_magis's Avatar
    Join Date
    Oct 2006
    Location
    arizona
    Posts
    699
    I did not know that. How is it supposed to work? If you update the kernel, you reboot into runlevel 3 and it'll automatically create the new module ??
    New to the internet, technical forums, or the hacker / open source community??
    Read this to learn good posting habits http://www.catb.org/~esr/faqs/smart-questions.html

    RHCE for RHEL version 5
    RHCT for RHEL version 4

  4. $spacer_open
    $spacer_close
  5. #4
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    Posts
    11,677
    Quote Originally Posted by meton_magis View Post
    I did not know that. How is it supposed to work? If you update the kernel, you reboot into runlevel 3 and it'll automatically create the new module ??
    You don't even need to do that (boot into RL3). It will re-create the loadable modules when the system boots, before it gets into any run level.
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  6. #5
    Linux Enthusiast meton_magis's Avatar
    Join Date
    Oct 2006
    Location
    arizona
    Posts
    699
    So I just updated my kernel, and the Nvidia driver did NOT load. In fact my system just kind of hung. Luckily I was able to boot into runlevel 3 and get it all fixed by redoing the guide, but for whatever reason it was not automatic. It may be a problem with Fedora going with nouveau by default as much as it is nvidia. The initramfs will try to load nouveau unless explicitly built without it.

    Oh well, at least it seems to be working OK for now.
    New to the internet, technical forums, or the hacker / open source community??
    Read this to learn good posting habits http://www.catb.org/~esr/faqs/smart-questions.html

    RHCE for RHEL version 5
    RHCT for RHEL version 4

  7. #6
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    Posts
    11,677
    Quote Originally Posted by meton_magis View Post
    So I just updated my kernel, and the Nvidia driver did NOT load. In fact my system just kind of hung. Luckily I was able to boot into runlevel 3 and get it all fixed by redoing the guide, but for whatever reason it was not automatic. It may be a problem with Fedora going with nouveau by default as much as it is nvidia. The initramfs will try to load nouveau unless explicitly built without it.

    Oh well, at least it seems to be working OK for now.
    You need to blacklist the nouveau driver when you use the nvidia proprietary one. As I mentioned, the current versions do support dkms so they will reinstall the driver when the kernel changes. However, you cannot have the nouveau driver running as well. This is probably the cause of your problem - they were conflicting.
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  8. #7
    Linux Enthusiast meton_magis's Avatar
    Join Date
    Oct 2006
    Location
    arizona
    Posts
    699
    I blacklisted it both in the modprobe.d, and in the kernel boot line. The problem is that Fedora auto bundles the nouveau driver into your initramfs. By the time init (or systemd now I guess ) is actually loaded, you're already running nouveau.

    Am I missing another location I need to blacklist it?
    New to the internet, technical forums, or the hacker / open source community??
    Read this to learn good posting habits http://www.catb.org/~esr/faqs/smart-questions.html

    RHCE for RHEL version 5
    RHCT for RHEL version 4

  9. #8
    Administrator MikeTbob's Avatar
    Join Date
    Apr 2006
    Location
    Texas
    Posts
    7,864
    Follow this guide. It worked flawlessly for me not more than 30 minutes ago.
    https://ask.fedoraproject.org/questi...vidia-drivers/
    I do not respond to private messages asking for Linux help, Please keep it on the forums only.
    All new users please read this.** Forum FAQS. ** Adopt an unanswered post.

    I'd rather be lost at the lake than found at home.

  10. #9
    Linux Guru Rubberman's Avatar
    Join Date
    Apr 2009
    Location
    I can be found either 40 miles west of Chicago, in Chicago, or in a galaxy far, far away.
    Posts
    11,677
    Add this line to /etc/modprobe.d/blacklist.conf: blacklist nouveau
    and then reboot.
    Sometimes, real fast is almost as good as real time.
    Just remember, Semper Gumbi - always be flexible!

  11. #10
    Linux Enthusiast meton_magis's Avatar
    Join Date
    Oct 2006
    Location
    arizona
    Posts
    699
    Hey guys, just want to say thanks for the suggestions, I've got it working great for myself, but it's still a bit on the tough side for someone who's not a Linux guru (I still have to install it for my sister when there is a kernel update.)

    MikeTbob,
    I do have a link to the rpmfusion method in the original post, and it works great for most people, I highly recommend anyone who can get away with it, use that, it's much easier to get working. The 1 downside is that they are pretty slow to update to new drivers. I've been using NVIDIA's 310.XX versions since before Fedora 18 came out, and rpmfusion is still on 304.XX; even in their updates-testing repo they've only got 304. This in itself isn't a HUGE loss since it's mostly small improvements, but it's impossible to use rpmfusion for Beta drivers, or if you need to use an older driver for some reason ( I had trouble with my laptop's card on the rpmfusion driver, but was fine once I rolled it back a couple releases; this was back in Fedora .... 11 or 12 though, some time ago.)

    I was hoping to have a resource for people who are having trouble getting the manual method to work, and I think I have it good enough for people who are experienced with Linux, but it's still out of reach for newer users.

    Rubberman,
    That is one of the steps in the guide.
    Code:
    #make sure Open source nouveau driver is blacklisted from starting on next reboot.
    egrep -i "blacklist\s*nouveau" /etc/modprobe.d/blacklist.conf || echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
    does exactly that. That's why it's SO confusing as to why it keeps loading nouveau on boot ... even in runlevel 3 ... er ... I mean multi-user target.

    I'll keep googling about. Hopefully this can become a little easier to do with the right configuration.
    New to the internet, technical forums, or the hacker / open source community??
    Read this to learn good posting habits http://www.catb.org/~esr/faqs/smart-questions.html

    RHCE for RHEL version 5
    RHCT for RHEL version 4

Page 1 of 2 1 2 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •