Linode Library Home
Linode Library RSS Feed
Home
Print View View Source

Troubleshooting

Published: by

We know it's frustrating when you run into problems with your Linode VPS. That's why we've created this introductory troubleshooting checklist. Use it to diagnose and resolve basic issues with your Linode through a process of elimination. Here's how:

If the issue you're experiencing isn't listed here, or if the recommended solution doesn't help, please feel free to contact our support staff 24 hours a day, 7 days a week.

Contents

VPS is Slow or Unresponsive

Use the following checklist if your Linode VPS is running slowly or is completely unresponsive when you try to connect.

Is the Linode powered on?

A Linode VPS can be turned on and off, just like a physical computer. If you attempt to connect to your Linode when it's powered off, nothing will happen. To start troubleshooting, verify that your Linode is powered on. Here's how to check:

  1. Log in to the Linode Manager.
  2. Click the Linode tab. A list of your virtual private servers appears.
  3. Select a Linode. The Linode's dashboard appears, as shown below.
Check Linode boot status.
  1. Review the Server Status box on the sidebar to determine whether or not the server is powered on.
  2. If the server is powered off, click the Boot button to turn it on. Wait a couple of minutes for the server to boot.

If your Linode is already powered on, please continue to the next section.

Can you ping the Linode?

Now that you've established that your Linode is turned on, you should verify that it is connected to the Internet and responding to ICMP packets. Here's how:

  1. Open a terminal application on your computer.

  2. Enter the following command, replacing 123.456.789.0 with the IP address of your Linode:

    ping 123.456.789.0
    
  3. The terminal application should be able to ping your server, as shown below:

    beaver:.ssh linodedemo$ ping 123.456.789.0
    PING 123.456.789.0 (123.456.789.0): 56 data bytes
    64 bytes from 123.456.789.0: icmp_seq=0 ttl=47 time=94.589 ms
    64 bytes from 123.456.789.0: icmp_seq=1 ttl=47 time=89.512 ms
    64 bytes from 123.456.789.0: icmp_seq=2 ttl=47 time=90.714 ms
    
  4. If you cannot ping the server, there may be a problem. Skip to the next section and try accessing the Linode with LISH. By default, your server is configured to respond to ping, but if you configured your firewall to block ICMP packets, the absence of a response is normal.

  5. If there is packet loss or high latency, follow the instructions in Are you experiencing network issues? This section can help you diagnose and isolate networking errors.

If you can successfully ping the server, please to continue to the next section.

Can you log in to LISH?

To verify that your Linode is operating correctly, you should try to log in with the Linode Shell (LISH), which provides out of band access to your Linode from the Linode Manager. Here's how:

  1. Log in to the Linode Manager.
  2. Click the Linode tab. A list of your virtual private servers appears.
  3. Select a Linode. The Linode's dashboard appears.
  4. Click the Remote Access tab.
  5. Select the Launch Lish Ajax Console link. The LISH console window appears.
  6. Log in as root or another user. If you don't see a login prompt, press Enter. If you can't log in, reset the root password and try again.
  7. If the console is not responding, contact Linode support.

If you can log in, continue to the next section, even if there are error messages visible on the console.

Note

For more information about LISH, see this guide.

Is your disk full?

Like a local machine, if your virtual machine's disk is nearly filled to capacity it will see a massive degradation in performance. You will be able to see the total data available and free space of the current disk image using the command:

sudo egrep --color 'Mem' /proc/meminfo

The output will look akin to:

MemTotal:        1011048 kB
MemFree:          418908 kB

If you have 80%+ of your disk image used you may start seeing this degradation. You may want to start investigating temporary files, logs, and unneeded processes. You may also want to consider upgrading your Linode for more storage.

Is the Linode out of memory?

The applications on your Linode require a certain amount of physical memory to function correctly. If all of the available physical memory is consumed, your Linode could slow down, display out of memory errors, or become unresponsive. Here's how to tell if your Linode is out of memory:

  1. Log in to the Linode Manager.

  2. Click the Linode tab. A list of your virtual private servers appears.

  3. Select a Linode. The Linode's dashboard appears.

  4. Click the Remote Access tab.

  5. Select the Launch Lish Ajax Console link. The LISH console window appears. If memory errors are displayed in the LISH console, stop some running services to free up memory or upgrade to larger plan.

  6. Your Linode might be out of memory even if you do not see any error messages in the LISH console. Execute the following command in the LISH console or a terminal window to determine whether or not your Linode still has free memory available:

    free -m
    
  7. Examine the output. The free memory available (in megabytes) is shown in the -/+ buffers/cache column and the free row, as shown below.

Check free memory.
  1. A lack of free memory may indicate that an application is consuming all of your available memory. To see a list of running processes sorted by memory usage, execute the following command in the LISH console or a terminal window:

    ps -eo pmem,pcpu,rss,vsize,args --sort -pmem | less
    
  2. If an application is consuming all of your available memory, you have three options. You can kill the application, change the application's settings to reduce its memory footprint, or upgrade your Linode to a larger plan.

  3. To reduce the memory footprint of common applications like Apache and MySQL, see Troubleshooting Memory and Networking Issues.

If your Linode is not out of memory, continue to the next section.

Are you experiencing network issues?

Network issues between your desktop computer and the data center can make your server appear slow or unavailable. You can check for issues with upstream providers by following the instructions in Diagnosing Network Issues with MTR to generate my traceroute (MTR) reports. MTR combines the functionality of the ping and traceroute programs in a single tool that can help diagnose and isolate networking problems. If the MTR reports indicate that there is a networking issue, use following list to try resolving the issue yourself before contacting Linode support:

  • Most routing issues displayed in MTR reports are temporary and clear up within 24 hours.
  • If you have experienced degraded service for an extended period of time, you can contact a service provider about the issues you're experiencing. Be sure to send MTR reports and any other relevant data.
  • Network congestion over long distances and during peak times is normal. We recommended positioning hosts and resources as geographically close to the targeted audience as possible.

When contacting Linode support for assistance, please include the output of the MTR report so our technicians can help analyze your issue.

Is there a Disk I/O bottleneck?

Disk input/output (I/O) bottlenecks can occur when an application or service is reading or writing an excessive amount of information to disk and the processor has to wait to process the information. High I/O wait can significantly slow down your server. Here's how to tell if your server currently has an I/O bottleneck:

  1. Open a terminal window and log in to your Linode via SSH.
  2. Enter top to access the top monitoring utility. The screen shown below appears.
Check for Disk I/O bottleneck.
  1. Examine the I/O wait percentage, as shown above. If the number is zero, your server does not currently have a bottleneck.
  2. If your I/O wait percentage is above zero, verify that your server has enough free memory available. In many cases, high I/O is an indication that your server has started "swapping," or using disk space as memory.
  3. If your server has free memory available and is not using swap space, use iotop or vmstat to find the application responsible for the excessive I/O. Databases are the usual suspects. You may need to stop and/or reconfigure the application.

Note

You must run iotop as root or with sudo.

  1. If you cannot determine the source of the IO bottleneck, contact Linode support for assistance.

Since top only reports what is currently happening, and most I/O issues are temporary, it helps to have a monitoring utility set up so you can see a graph of I/O trends and spot potential issues before they become major problems. See the guides in Server Monitoring for instructions on setting up a server monitoring utility.

Website is Not Loading

Use the following checklist if your website is not loading when you try to connect to it.

Note

You should follow all steps in the VPS is Slow or Unresponsive section before using this checklist.

Have you added DNS records?

To host a website with a domain name, you must set the domain's name servers to point to Linode. You also need to add DNS records for the domain in the Linode Manager. For instructions, see Adding DNS Records. Please note that it can take up to 24 hours for DNS changes to be reflected.

Continue to the next section if you have pointed your domain name at Linode, added DNS records, and waited at least 24 hours.

Is the web server running?

A web server like Apache should automatically start when you boot your Linode and stay running until you shut it down. However, web servers occasionally crash and need to be manually restarted. If your website is unresponsive, you should verify that the web server is running. Here's how:

  1. Open a terminal window and log in to your Linode via SSH.

  2. If you are running Apache, enter the following command. (If you are using a different web server, replace apache2 with the name of your web server.)

    sudo service apache2 status
    
  3. If Apache is running, you will see the following status message:

    Apache is running (pid 25931)
    
  4. If Apache is not running, try starting it by entering the following command:

    sudo service apache2 start
    
  5. Apache should start normally. If it doesn't, you'll need to troubleshoot the issue to resolution.

If the web server is running, continue to the next section.

Is the database running?

The database running on your Linode is an integral part of many content management systems, like WordPress and Drupal. Like the web server, databases occasionally crash and need to be manually restarted. If your website is unresponsive, you should verify that the database is running. Here's how:

  1. If you are running MySQL, enter the following command. (If you are using a different database, replace mysql with the name of your database.)

    sudo service mysql status
    
  2. If MySQL is running, you will see the following status message:

    mysql start/running, process 20611
    
  3. If MySQL is not running, try starting it by entering the following command:

    sudo service mysql start
    
  4. MySQL should start normally. If it doesn't, you'll need to troubleshoot the issue to resolution.

If the database is running, continue to the next section.

Is port 80 or 443 blocked?

All web traffic is transferred over ports 80 and 443, so it's important to leave these ports open in your server's firewall. (Port 443 is generally only used for secure traffic encrypted with an SSL certificate.) If you previously configured an iptables firewall for your server and your website is unresponsive, you should check the firewall rules and verify that those ports are not blocked. Here's how:

  1. Check your Linode's default firewall rules by entering the following command:

    sudo iptables -L -nv
    
  2. Examine the output. If you previously configured a firewall with iptables, you should see the lines shown below:

    0  0 ACCEPT     tcp  --  *    *    0.0.0.0/0    0.0.0.0/0    tcp dpt:80
    0  0 ACCEPT     tcp  --  *    *    0.0.0.0/0    0.0.0.0/0    tcp dpt:443
    
  3. If those lines are not present, your firewall rules may be blocking traffic on ports 80 or 443. Review the instructions in Creating a Firewall to revise and implement new firewall rules.

  4. Check for default ACCEPT and catch-all rules that send traffic transferred over ports 80 or 443 to DROP or REJECT.

If your firewall is not blocking ports 80 or 443, continue to the next section.

Are the files in correct directory?

If your website is unavailable, verify that you uploaded the files for the website to the correct directory on your server. By default, Apache looks for files in /usr/local/apache2, but if you followed the instructions in the Hosting a Website guide, you'll want to place your files in ~/public/example.com/public, where example.com is the name of your domain name.

If the files are in the correct directory, continue to the next section.

Are virtual hosts correctly configured?

If you're hosting more than website on your Linode, verify that you correctly configured the virtual host configuration files. Review the instructions for Configuring Name Based Virtual Hosts and the web server reference manuals.

Did you add a new IP address?

If you recently added a new IP address for an SSL certificate and it's not working, try rebooting your server. The reboot is required to activate the new IP address. You should have also configured a virtual host for the new IP address. Review the instructions for Configuring Name Based Virtual Hosts and the web server reference manuals.

Can't Connect via SSH or FTP

Use the following checklist if you cannot connect to your Linode VPS with an SSH or FTP client application.

Note

You should follow all steps in the VPS is Slow or Unresponsive section before using this checklist.

Are you using Telnet or FTP?

Telnet and FTP are disabled on your Linode by default, and we strongly recommend that you do not use those protocols. Instead, please use Secure Shell (SSH) and SSH File Transfer Protocol (SFTP) - the secure versions of the Telnet and FTP protocols. All Linodes come with an SSH server enabled, and you can connect to port 22 with SSH and SFTP clients. For more information, see Connecting to Your Linode.

Is port 22 blocked?

The SSH and SFTP protocols operate over port 22, so you will not be able to connect to your Linode if that port is blocked by your firewall rules. If you previously configured an iptables firewall for your server and you cannot connect to your server with a SSH or SFTP client, you should check the firewall rules and verify that those ports are not blocked. Here's how:

  1. Check your Linode's default firewall rules by entering the following command:

    sudo iptables -L -nv
    
  2. Examine the output. If you previously configured a firewall with iptables, you should see the line shown below:

    0  0 ACCEPT     tcp  --  *    *    0.0.0.0/0    0.0.0.0/0    state NEW tcp dpt:22
    
  3. If that line is not present, your firewall rules may be blocking traffic on ports 80 or 443. Review the instructions in Securing Your Server to revise and implement new firewall rules.

  4. Check for default ACCEPT and catch-all rules that send traffic transferred over port 22 to DROP or REJECT.

Forgot My Username or Password

If you've forgotten the root password or your Linode Manager username or password, follow the instructions in the Accounts and Passwords guide to recover your username and reset your passwords.

Linode Manager is Displaying "Incorrect" Information

Use the following checklist if the Linode Manager is displaying "incorrect" information.

Did you recently change your account?

If you recently created a new account, resized an existing Linode, or added extra bandwidth, the bandwidth displayed in the Linode Manager will be prorated for the amount of time left in the current billing cycle. For example, if you create an account on the 15th day of the month, the Manager will indicate that your account has been allocated half of the plan's bandwidth for the current month. This information is an accurate representation of the bandwidth available for the rest of the billing period. When then next billing period starts, the Manager will indicate that all of the plan's bandwidth is available.

Did you add additional storage?

If you recently upgraded your plan or added extra storage space, your Linode won't be able to take advantage of the additional space until you resize the disk image. You can use the Linode Manager to see if there's additional storage space available for disk images:

  1. Log in to the Linode Manager.
  2. Click the Linode tab. A list of your virtual private servers appears.
  3. Select a Linode. The Linode's dashboard appears.
  4. Examine the Storage pane on the sidebar, as shown below. If you have free storage space, you can allocate that space to your existing disk images.
Resize disk images.

For instructions on resizing disk images, see the Manage Linode Disk Images guide.

Creative Commons License

This guide is licensed under a Creative Commons Attribution-NoDerivs 3.0 United States License.

Last edited by Sokhumpheak Thong on Monday, December 23rd, 2013 (r4044).