Installing Debian 10 Buster on an Asus Vivobook N705FD

I will go through the steps to install Debian Buster on an Asus N705FD. It is highly likely this guide will work exactly the same on many other Asus models. The main challenge most people will face is getting your discreet video card working properly in Linux. This model and other current models use a technology called Nvidia Optimus. The Optimus technology was created to assist in saving battery life in our laptops and also reduce heat created by turning off the discreet video card. In Windows this system is automatic, but no so much in Linux. First lets get to the base model specifications that I am currently publishing this article with.

Specifications

  • Intel Core i7-8565U Quad Core Processor 1.8ghz
  • NVIDIA GeForce GTX 1050, 4GB GDDR5
  • 16GB DDR4 RAM
  • 17.3″ Full HD 60Hz 72% NTSC Display (1920x 1080)

During installation I had to use the NIC, at least it was detected by Debian during installation. As per usual the WLAN card was not detected. First things first, lets get the WLAN card working so we can get off of our NIC. We are going to get a list of the pci devices in the laptop with the lspci command.

Shell

This is the line we are concerned with currently.

Shell

Head over to Debian iwlwifi for wireless drivers and download the driver for the Wireless-AC 9560. First add to the /etc/apt/sources.list

deb http://httpredir.debian.org/debian/ buster main contrib non-free

Then update apt and install iwlwifi.

Shell

Now insert the module.

Shell

This should place the necessary firmware in the right location for Debian to recognize your card, now reboot with a sudo init 6

Shell

Your wifi and bluetooth should now work correctly, lets move on to the video card.

Nvidia Optimus

First let us install lshw so we can see what is going on with the video cards.

Shell
*-display                 
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:128 memory:b2000000-b2ffffff memory:90000000-9fffffff ioport:5000(size=64) memory:c0000-dffff
  *-display
       description: 3D controller
       product: NVIDIA Corporation
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:129 memory:b3000000-b3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:4000(size=128) memory:b4000000-b407ffff

Notice the discreet controller is using nouveau, this is going to slow things down. Yes it works, but very slow. Fixing it is a lot easier than I had thought.

Shell

Add user to the bumblebee group, replace with your user name.

Shell

We also need to set bumblebee to auto start on boot.

Shell

Be sure to reboot, init 6.

Shell

Now run lshw again, we are working!

Shell
*-display                 
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:128 memory:b2000000-b2ffffff memory:90000000-9fffffff ioport:5000(size=64) memory:c0000-dffff
  *-display
       description: 3D controller
       product: NVIDIA Corporation
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:142 memory:b3000000-b3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:4000(size=128) memory:b4000000-b407ffff

Notice it now longer says nouveau! Now for a real world test. Let’s install mesa-utils.

Shell
Shell

— IN PROGRESS —

Continue Reading

Installing Debian 10 Buster From Scratch!

Debian has now released Debian Buster into stable status, Buster is the successor to Debian 9 Stretch. These are my observations of notable changes to the new release.

  • Xorg has been replaced by Wayland
  • AppArmor is being installed and enabled by default
  • The install is UEFI compliant
  • Cups and cups-filters packages are installed by default
  • Many updated applications (Isn’t this really expected though)

Obtaining Buster

As with prior releases we still have a ton of options here, live images, torrent links and direct links. Unless you are pushing this out multiple times, I still suggest the netinst image.

Installation Requirements

I have yet to find any official hardware requirements, it is pretty safe to say it will be consistent with Debian Stretch.

  • 512 MB RAM
  • 10 GB HDD
  • 1GHz Pentium 4 processor
  • Installation Media (USB / DVD)

Installation

Burn your image to either a CD, DVD or Flash Drive and perform whatever voodoo magic required to get your image booted. Together we will walk through all steps of the installation with screenshots.

Step 1) Booting

We will be going through the graphical install. I have to say it is refreshing to see a new graphic in the background. After you do so many of these installations something new is great, even if it is not overly flashy. This article will only cover a graphical installation, so pick that.

Graphical Install Selection
Installation Type

We will be doing an English install with English keyboard settings, pick appropriately for your environment.

English Select
Installation Language Selection
American English Keyboard Select
Keyboard Selection

2) Host Name and Domain Settings

Your host name will be the identifier for your system. The is reflected in /etc/hostname and also noted in your DNS if you are using DHCP.

Hostname Settings
Hostname Settings

Your domain name will define your name resolution search domain, fairly important if you are actually in a Windows domain.

Domain Name Settings
Domain Name Settings

3) Users and Passwords

A small gripe here. With operating system security issues being so prevalent now, I think it is about time that Debian starts enforcing strong passwords during setup and password changes as a default. As you see here I was able to use a 1 letter password, this should really never be allowed. I hope the Debian team fixes that on the installation process soon. I am getting off my soap box now.

Root Password
Root Password

Type in your chosen root password, make it long and complex!

User login name
User Identifier

User full name, I never put a real name here.

User Short Name
Real User Name

This is actually your login name, not your login name description

User Password
One Letter User Password

Make it long and complex!

4) Partitioning

This is probably where most people new to Linux take a bit of pause not understanding their options and the implications of their options. Partitioning can be complex and until your are a seasoned Linux professional it is best to not deviate from the defaults. There are real world consequences to not sizing a particular partition to your real world needs. We will go through each of these and I will give a quick description on why you may want to change these options. If you do want to play around with the different options you can always start the installation process again and choose different partitioning options.

Partitioning Type
Partitioning Type

The first option is just to use the entire available hard drive and that is your default. The second and third option are LVM’s. And LVM stands for Logical Volume Manager. And LVM will let you take a disk, or multiple disk and do things like resize them on the fly. You can take multiple disk and aggregate them together and even chop those up into different logical partitions. The third options is just an LVM that is encrypted. I will not go into any depth on an LVM, I do not mess with them on a regular basis but I think you need to know they exist and a basic understand on why you would use one. The last option is just going complete manual and gives you granular control over your partitioning.

Partitioning Detail
Partitioning Detail

Choose your disk

Partitioning detail is an important consideration. Basically this it almost like having a quota. The first option is taking all of your hard drive space and putting it into one partition. For beginners, go this route for sure. So why would you chose the other two? Well for many reasons. Say for instance you pick the second option and have your home partition fill to capacity, it will not effect the actual operation of your computer. If you put all of your space into one partition and fill it your drive, your system will become extremely unstable and go into an almost completely non working state. Another reason is chopping up your partitions make it fairly easy to upgrade those partitions by just mounting another disk and copying your data over.

The major consideration is knowing how much space to allocate to each one. If you chose the last option and know your computer will be a web server it would be beneficial to make sure you lean that space more toward the /var folder than the /home folder. Like I said we are keeping it simple, so go with the first option.

Partitioning Detail
Partitioning Detail

Review the summary and accept the changes if they look okay.

The installation will start installing the base system, this does not take long.

Installing the base system
Installing the base system

5) Package Sources

If you have downloaded the CD or DVD set, insert each Debian disk.

Scan another disk?
Scan another disk?

If you are wanting to use a network mirror pick yes and select the mirror. I highly recommend this, even if you are using the CD or DVD set. One exception is if you know your network card and wireless will not be detected, then it really is a moot point.

network mirror
Network Mirror
Network mirror country
Network Mirror Country
Network mirror select
Network mirror select

If you use a network proxy key it in.

Proxy Selection
Proxy Selection

After your proxy selection you should start seeing a progress meter for a short period.

Progress meter
Progress Meter

Your choice, but I like my privacy and select no 🙂

Popularity Contest
Popularity Contest

We can select our software packages now. If you are going headless save your space and turn off the first check mark desktop environment. I always select SSH server so I can putty back into my box.

Software package selection
Software package selection

This portion will take a while depending on your medium. Over a slow connection it can take a while, also your selections make a huge impact.

6) Grub boot loader

The majority of the time you will be using GRUB as your boot loader, so select yes. Also the second screen you will change the selection to the second option, unless you have some special circumstance.

Grub Master Boot Record
Grub Master Boot Record
Grub MBR
Grub MBR

7) Finished Installation!

Everything is now finished, you will now be taken to your login screen and can login with the password you selected. If you are not taken to a login screen and receive an error the majority of the time you are having a video driver issue.

Install Finished
Install Finished
Login Screen
Login Screen
Debian 10 Gnome Desktop
Debian 10 Gnome Desktop
Continue Reading