Richard Blum

Richard Blum has more than 30 years of experience as a systems administrator and programmer. He teaches online courses in PHP, JavaScript, HTML5, and CSS3 programming, and authored the latest edition of Linux For Dummies.

Articles From Richard Blum

page 1
page 2
page 3
page 4
37 results
37 results
SQL All-in-One For Dummies Cheat Sheet

Cheat Sheet / Updated 04-12-2024

SQL is a popular and useful programming language. You can make SQL even more useful if you know the phases of SQL development, the criteria for normal forms, the data types used by SQL, a little bit about set and value functions, as well as some tips on how to filter tables with WHERE clauses.

View Cheat Sheet
Using XMLHttpRequest Class Properties

Article / Updated 08-02-2023

The XMLHttpRequest object contains several class properties that you’ll need to know about to handle the HTTP response from the web server. The XMLHttpRequest Class Properties Property Description onreadystatechange Defines a callback function that the browser triggers when the HTTP connection changes state readyState Contains the connection status of the HTTP connection responseText Contains the response sent by the web server in text format responseXML Contains the response sent by the web server in XML format status Contains the numeric HTTP response code from the web server statusText Contains the text HTTP response string from the web server After you use the send() method to send a connection request to a web server, the HTTP connection process works through five connection states, as tracked by the readyState property: State 0: The connection has not been initialized. State 1: The connection to the server has been established. State 2: The server received the HTTP request message. State 3: The server is processing the HTTP request. State 4: The server sent the response. As the HTTP connection works through these five connection states, the value contained in the readyState property changes. This causes the function you define in the onreadystatechange property to trigger for each state change. When the readyState property contains a value of 4, the final result from the request is available for processing. When the readyState property value is 4, you know the communication is complete, but you don’t know how it turned out. To determine that, you check the HTTP response returned by the web server using the status property. If the status property contains the 200 numeric HTTP result code, that indicates the connection was successful, and any data returned by the web server is available in the responseText and responseXML properties. If the status property contains some other HTTP result code (such as 403 or 404), that indicates there was an error communicating with the web server. Because these values are standard, it has become somewhat common practice to start out the onreadystatechange callback function code checking for them: con.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var result = this.responseText; } }; The function only retrieves the data when the connection is complete and has returned valid data. This method of defining the callback function inline is referred to as creating an anonymous callback function, because you don’t define a name for the function. It only exists inside the onreadystatechange property, so you can’t reference it anywhere else in your JavaScript code. Although using an anonymous function is a popular way of defining the callback function, you can define the function as a standard named JavaScript function and then reference that function name in the onreadystatechange property.

View Article
Using Integrated Development Environments for Program Development

Article / Updated 07-24-2023

The laser-guided miter tool for program development is the integrated development environment (IDE). IDE packages provide everything you could possibly need to develop any size of web application. Here are some of the advanced features IDE packages provide: Code completion: Start typing a code statement, and the package will provide a pop-up list of statements that match what you’re typing. It also shows what parameters are required and optional for the statement. Code formatting: The IDE automatically indents code blocks to help make your code more readable. Program execution: You can run your code directly from the editor window without having to jump out to a web browser. Debugging: You can step through the program code line by line, watch how variables are set, and see whether any error messages are generated. Project and file management: Most IDE packages allow you to group your application files into projects. This allows you to open a project and see just the files associated with that application. Some will even upload the project files to your web-hosting site for you, similar to what the graphical desktop tools do. Using an IDE tool is not for the faint of heart. Because of all the fancy features, learning how to use the IDE interface can be almost as complicated as learning the programming language! There are both commercial and open-source IDE packages available for the PHP environment. To give you a general idea of how IDE packages operate, check out two of the more popular ones: Netbeans and Eclipse. Netbeans The Netbeans IDE package was originally developed by Sun Microsystems and released as an open-source IDE for its Java programming language environment (thus the “beans” part of the name). When Oracle acquired Sun, it maintained support for Netbeans, and continued development of it with updated releases. The Netbeans IDE now contains support for several different programming languages besides Java by using additional plug-in modules. As you can guess, the reason I’m mentioning it here is because there’s a plug-in module for PHP. You can download the Netbeans editor with the PHP module already installed, making it easy to install. Just go to netbeans.apache.org/download/ and click the Download button under the PHP category. When you start Netbeans, it will prompt you to start a new project. Netbeans contains project templates for HTML and JavaScript applications, as well as PHP applications. When you start a new PHP project, Netbeans automatically creates an index.php file as the main program file for the project. It even builds a rough template for your code. As you would expect from an IDE, when you start typing a PHP function name, Netbeans opens a pop-up box that shows all the PHP functions that match what you're typing. Not only does it show the code completion list, but it also shows you the PHP manual definition of the function! This is certainly a handy tool to have available if you plan on doing any large-scale PHP development. Eclipse The other big name in PHP IDE packages is the Eclipse PHP Development Tool (usually just called Eclipse PDT). Eclipse was also originally designed as a Java application IDE. Many open-source proponents didn’t trust Sun Microsystems maintaining the only IDE for Java, so they set out to develop their own. (The story goes that there was no intentional wordplay on the name Eclipse versus Sun Microsystems. If you can believe that, I may have a bridge to sell you.) Just like the Netbeans IDE, Eclipse evolved from a Java-only IDE to support many different programming languages via the use of plug-in modules. You can download the Eclipse PDT as an all-in-one package at eclipse.org/pdt. Just like the jEdit editor, Eclipse PDT is written as a Java application and requires that you have a JRE or JDK installed on your workstation. When you start Eclipse, a menu system appears. This allows you to easily change the IDE configuration, start a new project, or open an existing project. Eclipse has all the same features that Netbeans offers. Plus, it has one additional feature: Eclipse PDT contains the advanced PHP Debugger tool developed by Zend, the company that sponsors PHP. The Debugger tool can help point out errors in your PHP code immediately as you type, or it can debug your code as you run it in the Eclipse editor window. Having an advanced PHP debugger at your fingertips can be a great time-saver when you’re developing large applications!

View Article
Linux All-in-One For Dummies Cheat Sheet

Cheat Sheet / Updated 11-01-2022

Linux can fulfill almost any need you have for the operating system on a desktop computer, but you must be able to tell it what you want to do in a way that it understands. You need to know common commands and how to access the help pages.

View Cheat Sheet
PHP, MySQL & JavaScript All-in-One For Dummies Cheat Sheet

Cheat Sheet / Updated 04-20-2022

Working with PHP, MySQL, and JavaScript to create dynamic web applications can be difficult, but if you know a few programming tricks, you can make that job a lot easier. This Cheat Sheet shows you how to extract data from different databases in your PHP programs, filter out unwanted or potentially dangerous data from web forms, quickly find data stored in your MySQL database, and trigger timed events in your JavaScript programs.

View Cheat Sheet
Linux For Dummies Cheat Sheet

Cheat Sheet / Updated 02-14-2022

Linux can seem like a very daunting environment. But it doesn’t have to be! With the two topics in this cheat sheet—the commands you’ll use on a daily basis and the useful help pages—you can easily navigate your Linux environment.

View Cheat Sheet
The Linux GNOME Desktop

Article / Updated 11-01-2020

Simplicity has become the hallmark of the GNOME 3 desktop environment for Linux. There aren't any long menus from which you need to select things from, nor do you need to go digging through folders looking for files, but getting comfortable with the new interface may take some time. This discussion walks through the basic features of the GNOME 3 desktop so you can maneuver your way around. Menus, please! At the top of the GNOME 3 desktop is a panel (called the top bar) that when the desktop first opens, contains just three menu selections, as shown. The three menu items are Activities Calendar and notifications System menu The following sections walk through what each of these menus contains. The GNOME Activities menu The Activities menu is how you get to your applications, and check the status of any running applications. You can open the Activities menu using three different methods: Click the Activities menu item in the top bar. Move your mouse pointer to the top-left corner of the desktop (some Linux distributions, such as Ubuntu, have this feature disabled). Press the Super key on your keyboard (the Windows logo on PCs). When you open the Activities menu, you see the activities overview layout, as shown. The activities overview provides one-stop shopping for getting to all your applications, and viewing the status of any applications already running on the desktop. It consists of three main items: The dash The windows overview The workspace selector The Calendar menu The Calendar menu item produces what you'd expect — a calendar, as shown. But wait, there's more! To the left of the calendar is the notification area. The notification area displays any upcoming calendar events that you have scheduled. GNOME 3 allows you to sync your calendar with an online calendar from many popular applications, such as Google, Facebook, and Microsoft, providing a great way to see all your calendar events in one place! Besides keeping up with your appointments, the notification area also displays any messages produced by the system, such as when there are upgrades and patches available to install, or whether your system is running low on disk space. The Do Not Disturb slider allows you to disable system messages from popping up on your desktop. The system menu At the far right-hand end of the top bar is the system menu. The system menu displays icons showing the status of several features on your system, depending on what hardware is available on your system. This menu is highly customizable, and often differs slightly between different Linux distributions. The system menu options could include: A network connection status A sound card status A display brightness setting A battery status The status of the logged-in user The reboot options To get to these menu options, click the down arrow icon in the system menu. A drop-down menu of system options appears, as shown. If your PC has a sound card, you can adjust the volume or mute the speakers, and if your PC has a display that's dimmable there's also a setting to adjust the display brightness. Next you see a menu that allows you to manage your network connection, if available. If your PC uses a wireless network connection, a drop-down menu allows you to select the wireless network to connect with, along with other network settings. If your PC uses a wired network connection, you see options to disable the network connection, and change the network settings. As part of the system menu, most Linux distributions include an option to get to the system settings — usually as either a menu option, or as an icon at the bottom of the system menu. When you select either option the System Settings dialog box appears. It allows you to customize your desktop experience to your liking. Also in the system menu is an option to manage the currently logged in user account. Some Linux distributions customize this option, so your result may vary from what's shown in Figure 4-4. In Ubuntu, you can only lock the desktop for the current user. Fedora Linux allows you to also log out from this menu, or go to the Settings dialog box for the user account. At the bottom of the system menu is the option to power off or log out of the system. The power off menu option provides another menu, allowing you to choose to either restart, shut down, or suspend the system. Application menu While I mentioned that only three menus are visible in the top bar by default, a fourth menu appears at times. When you launch an application in the GNOME 3 desktop, a separate menu appears in the top bar. This is the application menu, which contains options related to the application. Instead of placing the application menu in the application's window title bar, GNOME 3 placed it in the top bar, separate from the application window. This can take some getting used to. The options available in the application menu differ depending on the application that you have open on the desktop. Most applications provide options to allow you to open a new window of the application, or quit the existing window. Some applications also provide other application-specific features as well. The desktop In many graphical desktop environments, the desktop is king. Often just about everything you do happens from an icon on the desktop. Have a favorite application? Create an icon on the desktop to launch it. Have a file that you need to open on a daily basis? Create an icon on the desktop to open it. Plug in a new USB stick? The system creates an icon automatically on the desktop to access it. The GNOME 3 paradigm has changed that a bit. Desktop icons are no longer the preferred way to launch applications, store files, or access removable media. In fact, many Linux distributions don't even bother creating any icons on the desktop at all by default! However, if you have trouble breaking old habits, GNOME 3 does still allow you to create and use icons on the desktop. The Ubuntu Linux distribution does create two desktop icons by default: The Home folder: Opens the Files file manager program and defaults to the user account Home folder. The Trash folder: Opens the Files file manager program and defaults to the Trash folder for the user account. You can do a few things from the desktop. Right-click an empty area on the desktop and a pop-up menu opens, as shown. The desktop pop-up menu provides you with a few different choices: New Folder: Create a new folder under your user account's Desktop folder. Paste: Paste any copied files or folders to the desktop. Show Desktop in Files: Open the Desktop folder using the Files file manager program. Open in Terminal: Open the Desktop folder using the Terminal command line interface. Change Background: Modify the picture used for the desktop background. Display Settings: Change the orientation and resolution settings for the display. Settings: Access the Systems setting tool. This gives you quick access to a few of the system settings related to the desktop. Many graphical desktops allow you to create new files by right-clicking the desktop, unfortunately GNOME 3 isn't one of them. If you want to create an icon for a file on your desktop, you need to store the file in the Desktop folder, located in your Home folder, using the Files file manager program.

View Article
How to Install Linux from Ubuntu Live

Article / Updated 11-01-2020

The Ubuntu installation process is one of the simplest in the Linux world. Ubuntu guides you through all the steps required to set up the system, then installs the entire Ubuntu system without prompting you for too much information. You can start the installation process from two locations after you boot from the Live DVD or USB stick: Directly from the boot menu without starting Ubuntu From the Install desktop icon after you start the Ubuntu Live system Both locations start the same installation process, which guides you through several steps of options. To begin the installation from the DVD or USB stick you may first need to change your system to start, or boot, from a DVD or USB stick — many systems today are configured to do this already, so you may not need to make any changes. You need to look at your BIOS settings to determine whether your system can boot from the DVD drive or USB stick. After you have a Live DVD or USB stick in your hand, you can start the installation process. Just follow these steps. 1. Place the Ubuntu Live DVD in the DVD tray of your PC (or plug the USB stick into a USB port), and restart your PC. Your PC then boots from the Ubuntu Live DVD or USB stick, and you see the main Ubuntu Live menu, shown. 2. From the menu, select your language, and then choose either to install Ubuntu directly, or to try out Ubuntu first by running it from the DVD or USB stick. The great feature about the Live versions is that you can test drive Ubuntu without having to mess with your hard drive. This gives you an idea of what'll work and what won't. After you've completed your test drive, if you decide to install Ubuntu, just click the Install icon on the desktop, shown. If you decide to run the install from the main menu, skip to Step 4. 3. Select the language to use for the installation, then click Continue. If you install Ubuntu from the desktop installation icon it asks you again for the default language, shown. Ubuntu uses this language to display text messages during the installation process, plus sets the default language used when the operating system runs. However, this doesn't necessarily mean that all the applications running on the system will use that language. Each individual application may or may not detect the default language configured in Ubuntu. 4. Select a Keyboard, and then click Continue. Next up in the installation process is to identify the keyboard you'll use with the Ubuntu system. While this may sound like a simple option, it can get complicated if you have a keyboard that includes special keys. Ubuntu recognizes hundreds of different keyboard types, and lists them all in the Keyboard Layout window, shown. The Keyboard Layout window lists the different types of keyboards commonly used based on your country. The left-side listing lists countries, and the right-side listing lists the different known keyboard types used in the country selected. Select your country from the left-side listing first, then select your keyboard type from the right-side listing. For most standard keyboards, the Ubuntu installation script automatically detects the correct keyboard and you won't have to do anything. There's also a button to force the installer to attempt to detect your keyboard again if something went wrong the first time. If you have a special keyboard, under the two listings is an area where you can test the keyboard selection. Just type any special or unique characters available on your keyboard to see whether the setting you selected produces the proper characters. 5. Select what software you'd like installed by default in your Ubuntu desktop, and then click Continue. The Ubuntu installer gives you some choices on just what software to install, as shown. The Ubuntu installer gives you two options for the software packages to install: Normal Installation: Includes software for web browsing, office automation (such as word processing and working with spreadsheets), games, and playing audio and video Minimal Installation: Provides a minimal desktop software bundle, which includes only software for web browsing and standard desktop utilities to control your desktop environment For most Ubuntu desktop installations, select the Normal Installation. If you're using an older workstation with a small hard drive you may have to go with the minimal desktop installation and then manually install any other software packages you need. If your PC is connected to a network the installer gives you the option to install any available updates from the Ubuntu software repository now if you prefer. Selecting this option increases the installation time, but it also ensures your Ubuntu desktop software is up to date when you first log in. The last option is to install third-party software. This topic is a bit controversial in the Linux world. Some hardware companies use proprietary drivers so Linux can interact with their hardware. These drivers aren't open source, so many Linux purists prefer not to use them. There are also certain audio and video formats that are proprietary as well, and as you can suspect, these also cause consternation among Linux purists. I'll leave the decision as to whether to select this option to you, but just beware if you choose to not install this bundle your desktop may not work with some of your hardware devices, or be able to play some of the more popular audio and video formats. 6. Select how to install Ubuntu on your hard drive, then click Install Now. This step in the installation is quite possibly the most important, and also the most complicated. Here's where you need to tell the Ubuntu installer exactly where to place the Ubuntu operating system on your system. One bad move here can really ruin your day. The options you get in this window during the installation depend on your hard drive configuration, and if you have any existing software on your hard drive. The figure shows an example of what the Installation type window looks like. The Ubuntu installer tries to detect your exact system setup and provides some simple options: If your entire hard drive is currently used for Windows, the Ubuntu installer offers to shrink the partition to make room for an Ubuntu partition, and create a dual-boot environment. If you've already shrunk your existing Windows partition manually, the Ubuntu installer offers to install Ubuntu on the available empty partition and create a dual-boot environment. If you have a previous version of Ubuntu already installed, the Ubuntu installer offers to upgrade only the OS and leave your data intact if possible. If you have a second hard drive in your workstation the Ubuntu installer offers to use it for Ubuntu, leaving your existing hard drive alone, and create a dual-boot environment. If you have a single hard drive that already contains an existing Windows or Linux partition, the Ubuntu installer offers to erase the entire partition and just install Ubuntu. Allows you to manually partition your hard drive to create your own partitions. Which option you select depends on just what type of setup you want to try. If you want to run an Ubuntu-only workstation, the option to erase the existing operating system is the quickest and easiest way to go. Even if you select one of the options to keep the existing operating system, it's a very good idea to back up any important files contained in that operating system. Mistakes can (and often do) happen when working with hard drives. If you select an option to keep an existing operating system on your hard drive, the Ubuntu installer allows you to select how much disk space to allocate for the new Ubuntu partition. You can drag the partition separator to redistribute disk space between the original operating system and the new Ubuntu partition. If you select the manual partition process, Ubuntu turns control of the partition process over to you. It does provide a great partition utility, shown, for you to use to create, edit, or delete hard drive partitions. The manual partition utility displays the current hard drives, along with any existing partitions configured in them. Once you become an experienced Linux user you can manually remove, modify, or create individual partitions on any hard drives installed on the system to customize your Linux setup. 7. If you're performing a manual partition, select a filesystem for your Ubuntu partition. Part of the manual partition process is to assign a file system to each partition. A filesystem is a method used for storing and accessing files on the partition. Unlike some other operating systems, Ubuntu supports several different filesystems. You can select any of the available file systems for any of the partitions Ubuntu will use. The table shows the filesystem types available for you when creating disk partitions in Ubuntu. Ubuntu Partition Filesystem Types Partition Type Description ext4 A popular Linux journaling filesystem that is the current extension over the original Linux ext2 file system ext3 A legacy Linux journaling filesystem that is an extension over the original Linux ext2 file system ext2 The original non-journaling Linux filesystem btrfs A newer, high-performance filesystem that supports large file sizes JFS The Journaled Filesystem, created by IBM and used in AIX Unix systems XFS A high-performance journaling filesystem created by Silicon Graphics for the IRIX operating system FAT16 Older Microsoft DOS filesystem FAT32 Newer Microsoft DOS filesystem compatible with Microsoft Windows swap area Virtual memory area encrypted volume Linux allows you to encrypt an entire partition — just don't forget the key Do not use Ignore the partition The most common partition type (and the default used by the Ubuntu guided methods) is the ext4 format. This filesystem format provides a journaling filesystem for Ubuntu. A journaling filesystem logs any file changes into a log file before attempting to commit them to the disk. If the system should crash before it can properly commit the data, the journal log file is used to complete the pending file commits, and return the disk to a normal state. Journaling filesystems greatly reduce file corruption in Linux. 8. If you're performing a manual partition, select the mount points for the partitions. After selecting a filesystem for the partition, the next item that Ubuntu wants for the partition is where to mount the partition in the virtual filesystem. The Ubuntu virtual filesystem handles hard drives by plugging them into specific locations in the virtual filesystem. The table lists the possible locations where you can mount a partition. Mount Point Locations Location Description / The root of the Linux virtual filesystem /boot The location of the Linux kernel used for booting the system /home User directories for storing personal files and individual application setting files /tmp Temporary files used by applications and the Linux system /usr A common location for multi-user application files /var The variable directory, commonly used for log files and spool files /srv A common location for files used by services running on the system /opt Optional package installation directory for third-party applications /usr/local A common alternative location for optional multi-user package installations If you create just one partition for Ubuntu, you must mount it at the root mount point (/). If you have additional partitions available, you can mount them in other locations within the virtual filesystem. If you're using the manual partition method, don't forget to allocate a partition for the swap area, even if you already have lots of physical memory installed on your system. The Linux kernel uses the swap area as a temporary holding ground to move sleeping applications out of physical memory to make more room for running applications. The standard rule for this is to create as large of a swap area as you have physical memory. Thus, if you have 8GB of physical memory, create an 8GB partition and assign it as the swap area. 9. If you’re erasing an existing partition, or creating a new one, select any advanced disk features to use, and then click OK. Ubuntu provides the option for you to use the Logical Volume Manager (LVM) feature in Linux with your hard drive partitions. LVM provides a way for you to easily add more space to an existing directory at any time if needed, even if there's data already in the directory. You may also choose to encrypt the logical volume if you need to. The other option is to use the ZFS filesystem, which is a commercial filesystem recently released to the open source world. 10. Click Install Now to accept the proposed hard drive partition changes and continue with the installation. Up until this point you can change your mind about the hard drive changes. However, after you click Install Now here you're committed to those changes and there's no going back! 11. Select your location, and then click Continue. Because Ubuntu is in use worldwide, you'll need to manually select just where in the world you are located so Ubuntu can assign the correct time zone and locale settings. 12. Create a Login ID, and then click Continue. Up next in the installation process is the Login ID window, shown. The login ID you create in this process is somewhat important. Unlike other Linux distributions, the Ubuntu distribution doesn't use an administrator login account (usually called root in the Unix/Linux world). Instead, Ubuntu provides the ability for normal user accounts to belong to an administrators group. Members in the administrators group have the ability to become temporary administrators on the system. Having an account with administrative privileges is important, as the administrator is the only account that's allowed to perform most system functions, such as changing system features, adding new devices, and installing new software. Without an administrative account, you won't be able to do much of anything new on the system. Besides identifying yourself, you'll also need to assign a name to the computer itself. Ubuntu uses this name when advertising its presence on the network, as well as when referencing the system in log files. You should select a computer name that's unique on your network, is less than 63 characters long, and not contain any special characters (although hyphens are allowed). One final setting — you must determine whether you want the system to automatically log you into your desktop, or to prompt for your login password. I wouldn't recommend using this feature on laptops that you may accidentally leave behind somewhere. If you'll be the only one using the desktop PC (and there aren't any nosy people around) you can utilize the automatic login feature to save some time. Otherwise, set it to prompt you for a password each time you log into your system. 13. Sit back and enjoy the show! As the installation process proceeds the installer presents a series of informational slides. Scan over these slides to learn about the features available in your new Ubuntu system. After the Ubuntu system is installed on the hard drive, the installation program prompts you to reboot. The next time your system boots, you'll be in Ubuntu-land!

View Article
How to Partition a Drive for Linux and Microsoft Windows

Article / Updated 11-01-2020

If you only have a single hard drive available in your PC, you need to create separate areas (called partitions) on the hard drive for Windows and Linux. This article walks through the process of how to do that, but first, you need to understand how partitions work. Three types of partitions are available: primary, extended, and logical. A hard drive can have three primary partitions and one extended partition. Each primary partition acts as a separate hard drive as far as the operating system is concerned. Inside the extended partition you can have up to 12 logical partitions — think of an extended partition as just a cardboard box that contains the logical partitions. Logical partitions behave similar to primary partitions and hold data; extended partitions just hold logical partitions. Because I can't predict what software you want to install, I recommend having at least 10GB of space available in a partition for your Linux installation. More is always better because it gives you more room for downloads and even more programs. Make a note of the partition you dedicate to Windows and the one you dedicate to Linux. You need this information when installing Linux. Those who aren't starting from scratch for a dual boot likely need to make changes to their current installation. Proceed to the next section to find out how. How to partition a hard drive with Windows tools If you already have Windows installed on the entire hard drive, you'll need to shrink that partition down so there's room for Linux. The first step is to check your existing hard drive for how much free space is available to dedicate for Linux. You can do that using the File Explorer tool in Windows by following these steps: Open File Explorer by clicking the folder icon in the taskbar, or typing file explorer in the search area in the taskbar and selecting File Explorer from the search results. When File Explorer opens, click This PC on the left-hand side of the window. This displays the status of the various storage devices you have connected to your PC. This figure shows an example of what you might see in File Explorer. The example shows a single hard drive connected to the PC (assigned as drive letter C). File Explorer shows the drive is 899GB in size, and has 483GB available for use as a second partition. It's usually not a good idea to allocate all the free space on your hard drive to Linux; you'll want to leave some extra room in the Windows partition so you can continue doing things while you're running Windows, such as downloading and installing patches or saving new files. After you determine how much space you want to dedicate to Linux, you're ready to partition the hard drive. The Windows utility you want to use is the Disk Manager program. Follow these steps to use it: Right-click the Start icon in the taskbar. From the menu that appears, choose Disk Management. The Disk Management dialog box appears as shown. The dialog box shows all the hard drives installed on the PC, along with the partitions for each one. Right-click the partition that indicates it is assigned as a Windows partition and assigned a drive letter (usually the C drive). You can click either the partition entry in the text list, or the graphical picture of the partition. As shown, many modern PCs create one or more hidden partitions that aren't assigned drive letters in Windows. These partitions don't appear in File Explorer, but are used by the PC to contain recovery data to reinstall Windows in an emergency. Don't mess with those partitions! Select Shrink Volume from the pop-up menu. The Shrink Volume dialog box appears, as shown. Enter the amount of space you want to assign to the Linux partition in the text box. Note that the entry is in MB (megabytes) instead of GB (gigabytes). One gigabyte is equal to 1024 megabytes, so just multiply the available GB space value by 1024 to get the MB value to enter here. Click Shrink. During the shrink process Windows tries to move any data stored near the end of the partition towards the front to make room for the new partition. However, some system files can't be moved, which may cause a problem and produce an error message. If this happens there are ways to move those files, but it gets much more complicated that what I can cover here. Fortunately, you aren't the first person to need to do this, so there's plenty of help available. One place to consult is the Microsoft Windows forum at answers.microsoft.com and you'll see lots of postings on how to handle this situation. When the shrink process completes, a new partition appears in the Disk Manager listing. This new partition appears as Unassigned, and not have a drive letter assigned to it by Windows. If you have lots of space available on your existing Windows partition you'll probably want a lot more than 10GB of space. The 10GB is the minimum recommended for most Linux distributions to fit the operating system. However, if you download lots of multimedia, you’ll quickly eat up whatever was left after you installed your software! Give Linux as much space as you think you can spare from your Windows environment. How to partition a hard drive with Linux tools If you're in a situation where you don't currently have Windows installed on the hard drive but would like to partition the hard drive first, you can use Linux tools to do the work for you. The easy solution is to boot your PC using a Live distribution and use the disk management tools available. Plenty of Live distributions include disk management tools by default, but by far the most popular is the KNOPPIX Linux distribution. The KNOPPIX Linux distribution was the first to create a live Linux version, even back before there were DVDs (it was called a LiveCD!). What keeps KNOPPIX at the top of the list of popular Linux distributions is the myriad of utilities it includes by default. It touts itself as a rescue disk — a way to boot your PC if things go horribly wrong with the existing operating system, and be able to troubleshoot and possibly fix issues. Follow these steps to partition your hard drive using KNOPPIX: Download the latest KNOPPIX CD or DVD ISO image from the KNOPPIX website. Burn the ISO image onto a bootable CD, DVD, or USB stick using a standard ISO image burning tool. Boot your PC using the KNOPPIX LiveDVD. At the boot: prompt, press the Enter key to start KNOPPIX. Select Graphical Programs→startlxde from the main menu. The KNOPPIX graphical desktop environment comes up. It's a fairly bare-bones graphical desktop so it can run on just about any PC, but it gets the job done. From the KNOPPIX graphical desktop, click the Terminal icon in the taskbar at the bottom of the desktop. A Terminal session starts that provides access to the command prompt. At the command prompt in Terminal, enter the command: sudo gparted. The GParted application is a popular disk management tool for Linux. It provides an interface similar to the Windows disk management tool, as shown. Right-click inside the partition you need to shrink. Select Resize/Move from the pop-up menu. The Resize/Move dialog box opens, as shown. In the Resize/Move dialog box, either drag the right end of the partition graphical box to resize the partition, or enter a new value in the New Size textbox. The colored portion of the box indicates where the existing data in the partition is stored. You should be able to move the end of the partition down close to that area. Click the Resize/Move button to initiate the resizing process. After the hard drive is partitioned you can exit the tool and shutdown KNOPPIX. And that's all there is to it!

View Article
10 Linux Troubleshooting Tips

Article / Updated 11-01-2020

Troubleshooting is like reading a mystery novel. You have some facts, symptoms, and details, but you don’t know whodunit. You have to take whatever information you have, work with that data, weigh the various possibilities, and then narrow them to a single suspect. Finally, you need to test your theory and prove that your suspect is the guilty party. Troubleshooting problems in Linux (or any operating system) can encompass many hardware and software issues. Whether the problem is the operating system, the hardware, or a service giving you fits, you can use some basic troubleshooting techniques to start your investigations: Document the problem. Write down any and all symptoms that the system is showing, including actions you can and can’t do. Jot down any information you see in error messages. Examine the Linux log files. You can find most of these in the /var/log Look for the word “error.” Compare your problem system with a working system running the same distribution and version. Sometimes, comparing configuration files and settings may uncover the problem or narrow the possibilities. Check connections. Check to make sure that all the hardware is connected properly and powered on. Verify that all cables and connections are attached properly. There’s always someone, somewhere, accidentally kicking a cable out from a wall connection. Remove new hardware. Remove any hardware that you have changed or added recently (before the problem started) and see whether the problem disappears. If so, you can probably conclude that the new or changed hardware (or its driver) is the culprit and start researching solutions. Reduce the number of active programs. Stop running unnecessary services and applications that aren’t related to the problem at hand. You may more easily figure out what’s happening if other services and applications aren’t getting in the way. Check to see whether the problem is reproducible. Does the same sequence of events produce the same problem? Suppose that when you try to print to a color printer, nothing happens. If nothing happens every time you attempt to print, the problem is reproducible. If, instead, sometimes your information is printed and at other times it isn’t, the problem pattern isn’t the same and isn’t reproducible — or it's caused by something more complicated than just clicking one button. Unfortunately, problems that are nonreproducible are more difficult to resolve because it seems that no set pattern of events re-creates those problems. After you’ve come up with a solution, take a few moments to document the situation. Note the symptoms of the problem, its cause, and the solution you implement. The next time you encounter the same problem, you can call on your notes for a solution rather than reinvent the wheel. If you don’t have any problems to troubleshoot (yet), document your environment before you do. Making a backup of your /etc directory and your /boot directory is a great place to start. Tip #1: “The Linux Installer Froze” When you’re installing Linux, the installation may just freeze. If it does, wait a bit and make sure that the installation program really froze. (Sometimes, the software just takes a while to process information.) If the software looks like it has frozen, there’s no harm in rebooting your computer and starting over — just as you would do with any operating system installation. Sometimes, you can reboot and never have that problem again. At other times, the problem may happen twice in a row and then be fine the third time. Be sure to try several times before giving up. If the installation still freezes in the same spot or close to the same spot, go to the distribution’s support pages. These pages may talk about some known problems and solutions that can help you and should show you how to join discussion lists to get more assistance. Otherwise, diagnosing the problem can be tricky and may seem more like voodoo than science. Here are some tips: If this problem happens repeatedly at exactly the same spot, you may have a bad installation ISO image or DVD burn. See the next tip, “Checking Your Distribution Burns,” and then return here if that technique doesn’t solve your problem. Otherwise, try the DVD or USB stick in another machine if possible and see whether the installation fails in the same place there. If you purchased an installation DVD from someone, contact their technical support team. If you burned the ISO image onto a DVD yourself, try burning a new copy at a slower speed, or if your PC can boot from a USB device, burn it onto a USB stick. If this problem happens repeatedly at exactly the same spot and you don’t have a bad installation disk, the trouble may be with one of your machine’s hardware components. If you can, try trading hardware between machines. If not, you may need to choose a different machine on which to install Linux or try another distribution. If the problem seems to happen randomly, your particular Linux distribution may not be compatible with that particular machine. Again, you can try using another distribution and see whether it detects your hardware. If not, try trading some hardware around, installing Linux on another machine. If you’re not sure whether your installer has frozen, try pressing various combinations of Alt+F#, where # corresponds to one of the function keys. Depending on the distribution, the installer has not completely frozen if you can see different screens when you try this technique. Tip #2: Checking Your Distribution Burns Some Linux distributions (such as Ubuntu and openSUSE) provide the option to check the installation medium for errors. If your installation keeps dying while the installer program is placing packages on your hard drive, follow these steps to try to fix it: Place the DVD into your drive. Reboot the machine. Wait until you reach the boot menu. If you’ve changed your mind and just want to start the installation, use the Tab or arrow keys to select Skip and then press Enter. Use the Tab or arrow keys to select the option to inspect the installation media. Press Enter to begin the media check. The Media Check status box opens and shows you the name assigned to the DVD and how much progress has been made. At the end of the inspection, the Media Check Result dialog box opens. Look at the text after and the result is. If the result is PASS, nothing is wrong with the DVD itself. Your installation woes are caused by something else. If the result is FAIL, the DVD you just tested is flawed. If you purchased this DVD, you need to talk to the company you purchased it from to see whether you can get a replacement. On the other hand, if you burned your own DVD from an ISO file, I recommend doing one of the following: Burn the DVD again, at a slower speed. Burn the DVD again on a newer drive with BurnProof technology or something similar. Tip #3: “I Told the Installer to Test My Graphics, and They Failed” The installer may have guessed wrong about what hardware you have. Double-check the settings as best you can. If they look right, try choosing a lower resolution for now and testing again, and if that fails try a lower number of colors and test again. You can then try setting things back the way you want them after the machine is fully installed and updated, when it hopefully has a fix for whatever the problem might be. Tip #4: “The Installer Tested My Graphics Fine, but My GUI Won’t Start” If your Linux installation program showed you a GUI desktop saying that you were ready to proceed with the rest of the installation, you probably expected that the GUI would start with no problem. Unfortunately, that doesn’t always happen. If you boot your machine for the first time and see error messages when you’re trying to enter the GUI automatically or when you type startx to start the GUI manually, type system-config-display at a command prompt to start a program that can help you fix the problem. Tip #5: “I Think I’m in Linux, but I Don’t Know What to Do!” Two different screens tend to cause panic to folks new to Linux. The first of these screens, shown in the figure, is in fact a sign that you installed the software and booted the machine successfully. Jump for joy! It’s just that you’re booting into the command-line environment rather than the GUI environment. If you reach a screen similar to the one shown, the computer is asking you to log in with the username for an account and a password that you created during the installation process. If you created only the root account, you can log in there as root. After you enter the username and password, you find yourself at the screen shown , which just happens to be the second spot where people get worried. If you see this screen, you have not only booted properly into Linux, but you’re also logged in and using the machine! Give yourself a good pat on the back. What do you do from here? Anything you want. Type startx to start up the GUI. If you didn’t install any GUI (which means you selected a minimal install option with no graphical interface, or you actually unselected graphics), you may want to reinstall, or you have to add all the tools by hand (which is not a quick job!). Tip #6: “I Don’t Want to Boot into This!” Are you booting into the command-line environment when you want to use only the GUI? Or are you finding that you’re already booting into the GUI and you would rather boot to that nice, clean, black-and-white command line screen? You’re not stuck with either of these options. You can change them at any time. You can press Ctrl+Alt+F# (F# refers to function keys F2 through F6) to change out of the GUI to a command line terminal at any time and then Ctrl+Alt+F2 or Ctrl+Alt+F8 to switch back. Tip #7: Changing Your Boot Environment “Permanently” The word permanently is in quotes in the heading because you can, of course, go back and change this setting later, if you want. Permanently just refers to the fact that after you have made this change, every time you boot the system, it automatically goes into the preferred environment until you change it. To make this change you need to determine what startup method your Linux distribution uses. Currently there are two popular Linux startup methods: SysVinit: The original method used in Linux, copied from the Unix world. This uses a set of scripts that the OS runs at boot time. The configuration files determine which services to start, and what mode (command line or GUI) to start. Systemd: The systemd startup method is a relatively new startup method developed specifically for Linux. Instead of startup scripts it uses configuration files. The easiest way to determine which method your Linux distribution uses is with the following command: ps -p 1 If the result shows the systemd program is running as PID 1, your system uses the systemd startup method. If the result shows the init program is running as PID 1, your system uses the SysVinit startup method. For systems that use the systemd startup method, follow these steps to change the default boot environment: In the GUI, open a command line terminal. Type the following: sudo systemctl set-default multi-user.target Reboot the system. This sets the system to a text-based system. If you want to change back to the graphical login, just use the command: sudo systemctl set-default graphical.target For distributions that use the SysVinit startup method, you need to manually edit what’s called a run level. Fortunately, these distributions use the same run level settings, so the instructions are the same for all of them: In the GUI, open a command line terminal. Type the following: sudo cp /etc/inittab /etc/inittab.old This creates a backup of the current inittab file. Now, if something happens while you’re editing the inittab file, you can always restart fresh with the old version. Open the inittab file in your preferred text editor. Scroll down until you find a line similar to the following: id:5:initdefault: This line appears near the top of the file. What you’re interested in here is the number. In most mainstream Linux distributions, the number 5 tells Linux to boot into the GUI, and the number 3 tells Linux to boot into the command line. In the preceding example, therefore, I boot into the GUI. Change the number in this line. If it’s a 5, change it to 3, and vice versa. Make sure that all colons and other items are left properly in place, or else your machine will have problems booting later. Save and exit the file. The changes go into effect the next time you reboot the system. If you do end up having problems booting the system, just about any Linux LiveDVD distribution can be used as an emergency boot disk. Changing your boot environment just for now At any time, you can also have your Linux box switch between full command-line mode and full GUI mode. To switch between modes in a systemd startup method, do the following: To change from the GUI login to the command line login, open a terminal window and type: sudo systemctl isolate multi-user.target To change from the command line login to the GUI login, type: sudo systemctl isolate graphical.target To switch between modes in a SysVinit startup method, do the following: To change from the GUI login to the command-line login, open a terminal window and type: sudo init 3 To change from the command line login to the GUI login, type: sudo init 5 Tip #8: “I Want to Change Screen Resolutions” Do you want or need to swap between resolutions in the GUI on the fly? Suppose that you want to use 1,024 x 768, but you work on web pages and want to be able to see how they look in a browser at 800 x 600 or even 640 x 480. Your machine is very likely already set up to do this, but you just need to know how! If your machine is set up for it, you can change resolutions by pressing Ctrl+Alt+Plus, where Plus is the big key with the plus (+) sign on your number pad — you can’t use the plus (+) sign on the main keyboard for this one. If that doesn't work in your desktop, often you can right-click an empty place in the desktop and choose Display. This is shown in the following figure for Ubuntu. You can change the display resolution settings at any time, and then change them back as you need! Tip #9: “My GUI Is Hung, and I’m Stuck!” One quick solution to this problem is pressing Ctrl+Alt+Backspace. If this doesn’t do the trick, your system is in really bad shape! Try to switch to a virtual terminal by using Ctrl+Alt+F5. If this key combination also does nothing, you need to reboot the machine. Tip #10: “Help, My Machine Hangs During Boot!” When configuring a Linux machine, you may encounter problems with the GRUB2 bootloader program, which is what loads the Linux kernel. This program uses a configuration file to indicate the operating system or systems to which your system can boot, and the file also contains Linux startup settings. You can alter the GRUB2 boot settings "on the fly" as the system boots, but you have to get into the GRUB2 menu to do that. Some Linux systems (such as openSUSE) bring up the GRUB2 boot menu all the time, making it easy to make changes. Just press the E key while booting to edit the menu. Unfortunately, many Linux distributions (such as Ubuntu) hide the GRUB2 boot menu and automatically jump into booting the system. To get to the GRUB2 menu to make changes you need to stop the boot process midstream. Just how you do that depends on your system: For older systems that use BIOS firmware, hold down a Shift key as the system first boots. If you see the distribution splash screen you're too late; try again. For systems that use the newer UEFI firmware, hold down the ESC key as the system first boots. Again, if you see the distribution splash screen you're too late; try again. Once you get to the GRUB2 boot menu, some Linux distributions have a special recovery mode boot option. Give that a try and see what happens. If not, press the E key to edit the GRUB2 menu settings. Look for the Linux line in the configuration, add the word single to the list of options on that line, and then press F10 to reboot using the new options. Linux starts in single-user command line mode. From here you can look at the log files in the /var/log folder to see what previous boot attempts failed. “Aaargh! I Forgot My Root Password! What Do I Do?” Fear not. You have a way around this problem! You need to boot into single-user mode, which you can accomplish by rebooting your machine. When you see the blue screen with the words “Press any key to enter the menu,” press a key. At the GRUB boot screen, press E, which takes you to a configuration file. Use the arrow keys to go to the line starting with Linux, and press E again to edit that line. At the end of the line, add the word single, press Enter to put the change into place, and then press B to boot the machine. Type passwd and then enter the new password twice as directed. When you finish, type exit and then boot the machine normally.

View Article
page 1
page 2
page 3
page 4