Windows 10 has been around for a while now and many of you will have bought computers with the latest offering from Microsoft pre-installed. We have to admit that Windows 10 is a great improvement on Windows 8 and Windows 8.1 and as an operating system, it is very good.
Jun 04, 2017 And Apple has discontinued the Windows version. If you want to run Safari in Linux, the only way to try that is to install Wine from the repositories (depending on the Linux distribution you are using) and then, download Safari for Windows from the Apple Support site.
The ability to run Linux BASH commands into Windows is a good feature as are the long-awaited virtual workspaces which allow you to run applications on different desktops.
This guide, however, provides an extensive list of reasons why you might choose to use Linux instead of Windows 10 because what is good for one person isn't necessarily good for another.
Windows 10 Is Slow On Older Hardware
If you are using Windows XP, Vista, or an older Windows 7 PC then the chances are your computer isn't going to be powerful enough to run Windows 8 or Windows 10.
You have two choices really. You can either stump up the money required to buy a computer running Windows 10 or you can opt to run Linux.
Certain Linux distributions probably don't provide much of a performance boost as their desktop environments use a decent amount of memory themselves but there are versions of Linux available which work brilliantly on older hardware.
For newer hardware try Linux Mint with the Cinnamon Desktop Environment or Ubuntu. For hardware that is 2 to 4 years old also try Linux Mint but use the MATE or XFCE desktop environment which provide a lighter footprint.
For really old hardware go for AntiX, Q4OS, or Ubuntu.
You Don't Like The Windows 10 User Interface
Most people become a bit disoriented when they first start using a new operating system especially if the user interface has changed in any way.
The truth is that soon enough you get used to the new way of doing things and all is forgiven and in fact, you soon end up liking the new interface more than the old one.
However if, after a while, you just can't get to grips with the Windows 10 way of doing things you might decide that you prefer things to look a bit more like they did when you were running Windows 7 or indeed you might decide that you want to try something completely different.
Linux Mint provides a modern look and feel but with menus and toolbars working the way they always have and you will find that the learning curve to Linux Mint is no more difficult than upgrading from Windows 7 to Windows 10.
The Size Of The Windows 10 Download Is Huge
If you are on Windows 7 or even Windows 8 and you are thinking about upgrading to Windows 10, then you should realize that the download for Windows 10 is very large.
Do you have a download limit with your Broadband provider? Most Linux distributions can be downloaded in under 2 gigabytes and if you are really tight on bandwidth some can be installed for around 600 megabytes. There are some that are even smaller than that.
You can, of course, buy the Windows 10 USB drive but it will cost a decent sum of money.
Linux Is Free
The free upgrade that Microsoft offered a couple of years ago has run out which means you now have to pay for it.
Many manufacturers ship computers with Windows 10 installed but if you are happy with your current computer then the only way to get a new operating system is to pay for the latest version of Windows or download and install Linux for free.
Linux has all of the features you can need in an operating system and it is fully hardware compatible. Some people say that you get what you pay for but this is one example where that doesn't ring true.
If Linux is good enough for the top companies in the tech industry then it is definitely good enough to run on a home computer.
Linux Has Many More Free Applications
Windows has a few flagship products such as Microsoft Office and Visual Studio which make some people feel locked in.
You can, however, run Microsoft Office within Linux using virtualization software or you can run the online versions.
Most software development nowadays is web based and there are many good IDEs available for Linux. With the advance of .NET Core you can also create APIs for using with your JavaScript web applications. Python is also a major programming language that can be used cross-platform on Windows, Linux, and on Macs. The PyCharm IDE is every bit as good as Visual Studio. The point here is that no longer is Visual Studio the only option.
Linux has a great set of applications which for most people provide all the features you could need. For example, the LibreOffice suite is great for 99.9% of the average person's needs. The Rhythmbox audio player is better than anything Windows offers, VLC is a great video player, the Chrome browser is available, Evolution is a great email client and GIMP is a brilliant image editor.
Of course, there are free applications on popular Windows download sites such as CNET but bad things can happen when you use those sites.
Security
While no operating system can claim to be completely risk-free the fact remains that Windows is a big target for developers of viruses and malware.
There is very little that Microsoft can do about this issue and as such you are required to install an antivirus application and firewall software which eats into your memory and CPU usage as well as the constant stream of downloads required to keep this software up to date.
Within Linux, you just need to be clever and stick to the repositories and avoid using Adobe's Flash.
Linux by its very nature is just more secure than Windows.
Performance
Linux even with all the effects and shiny features of the modern desktop environments runs faster than Windows 8.1 and Windows 10.
Users are becoming less reliant on the desktop and more reliant on the web. Do you need all of your processing power taken up with the operating system or do you want something with a lighter footprint letting you get on with your work and play time?
Privacy
Windows 10's privacy policy has been well documented in the press. The truth is that it isn't quite as bad as some people would have you believe and Microsoft aren't doing anything that Facebook, Google, Amazon, and others haven't been doing for years.
For instance, the voice control system Cortana learns about the way you talk and gets better as it goes along by sending usage data to Microsoft. They can then use this data to improve the way Cortana works. Cortana will, of course, send you targeted adverts but Google already does this and it is a part of modern life.
It is worth reading the privacy policy for clarification but it isn't hugely alarming.
Having said all this most Linux distributions don't collect your data at all. You can remain hidden away from Big Brother. (As long as you never use the internet ever).
Reliability
Windows is just not as reliable as Linux.
How many times have you, as a Windows user, had a program hang on you and even when you try and close it via task manager (assuming you can get it to open), it remains open and it takes a number of attempts to close the offending program.
Within Linux, each application is self-contained and you can easily kill any application with the XKill command.
Updates
Don't you just hate it when you need to print out those theater tickets or cinema tickets or indeed just need to print out directions to a venue and so you turn on your computer and see the following message:
'Installing Update 1 of 356'
Even more annoying is the fact that Windows chooses when it wants to install updates and it will suddenly throw up a message saying that your computer is going to be rebooted.
As a user, it should be up to you when you install updates and they should not be forced on you or you should at least get a decent notice period.
Another downside is that Windows often needs to be rebooted to install the updates.
Linux operating systems need to be updated. There is no getting around that because security holes are patched all the time. You get to choose when those updates are applied and in most cases, the updates can be applied without rebooting the operating system.
Variety
Linux distributions are highly customizable. You can completely change the look and feel and adjust nearly every part of it so that it works exactly as you want it to.
Windows has a limited set of tweaks available but Linux lets you alter absolutely everything.
Support
Microsoft has a lot of documentation but when you get stuck you often find yourself on their forums and other people will have asked a question which simply has no good answers.
It isn't that the Microsoft support is bad because, on the contrary, it is in fact very in depth and good.
The truth is however that they employ people to offer support and there is only so much money that is budgeted for this support and the wealth of knowledge is spread very thinly.
Linux support is much easier to find and there are dozens of forums, hundreds of chat rooms and even more websites dedicated to helping people learn and understand Linux.
Many system management tasks can be performed using either of the graphical user interfaces provided with Fedora (i.e., GNOME or KDE). However, most power users prefer the command line for system management work because they find it faster, more consistent between different versions of Linux, and easier to access remotely. The command line is also called a shell prompt, because the commands are processed by a program called a shell; the standard shell on a Fedora system is the Bourne-again shell (bash).
If you are logged in to the system through the graphical user interface, access the command line through the terminal program. Select the menu option Applications→Accessories→Terminal (System→Terminal in KDE), or right-click on the desktop background and select Konsole under KDE.
Tip
If you find yourself using the terminal frequently, you can make it easier to launch: right-click on the Terminal option in the application menu and select “Add this launcher to panel.” A new panel icon will appear that will launch a new terminal when clicked.
If you have logged in to the system through a character-mode login screen or an SSH login, you will automatically be presented with a command line.
The standard shell prompt looks like this:
This message is an invitation to enter a command. It shows the name of the user (chris
), the computer being used (concord2
), and the current working directory within the filesystem (~
, meaning the user’s home directory). The last character of the prompt, $
, indicates that this is a normal user’s prompt, as opposed to the system administrator’s prompt, which ends with #
.
To enter a command, simply type it, and then press Enter to execute it. The output from the command will appear after the command (scrolling the screen if necessary), and when the command is done a new prompt will be printed.
![Linux Linux](http://img.bhs4.com/25/a/25a9e6029f24bb9dd1da530c1d8da56ca6faec36_large.jpg)
To edit a command line, use the left and right arrow keys to position within the line, and the Backspace and Delete keys to delete characters to the left or right of the cursor, respectively. To insert text, simply type it. You can press Enter with the cursor located anywhere on the line to execute the command. Other editing keys are available; Table 4-1 shows the most useful ones.
Table 4-1. Useful editing keys
Key or key sequence | Description |
---|---|
Left arrow | Move left one character. |
Right arrow | Move right one character. |
Backspace | Delete the character to the left of the cursor. |
Delete | Delete the character under/to the right of the cursor. |
Ctrl-U | Delete to the start of the line. |
Ctrl-left arrow | Move one word to the left. |
Ctrl-right arrow | Move one word to the right. |
Esc, DAlt-D | Delete to the end of the current word. |
Esc, BackspaceAlt-Backspace | Delete to the start of the current word. |
HomeCtrl-A | Go to the start of the line. |
EndCtrl-E | Go to the end of the line. |
You can scroll through the history of previously entered commands using the up and down arrow keys. This enables you to easily re-enter a command, either exactly as you previously entered it or after editing.
You can also search for a previous command by pressing Ctrl-R (for reverse search) and then typing a few characters that appear in the command. For example, if you had at some previous point typed cat
/etc/hosts
and you pressed Ctrl-R and typed hos
, the cat
/etc/hosts
command would appear (providing that no intervening commands contained the letter sequence hos
).
Obtaining a root prompt to enter commands as the superuser
The superuser account, root, is also called the privileged account, because it is not subject to the security restrictions that are applied to regular user accounts. root access is required for many system administration commands. Although it’s tempting to use the root account all the time on a single-user computer, it is unwise because Fedora assumes that you know what you’re doing and won’t ask for confirmation if you enter a dangerous command; it will just go ahead and execute it. If you’re using the root account, an incorrect command can cause a lot more damage than the same command executed in a normal account.
Although you can directly log in as a root user, it’s usually much safer to take on root privilege only when necessary, using the su
(switch user) command:
The shell prompt will change to end in a pound sign (#
) instead of a dollar sign ($
) when you are in root mode. Press Ctrl-D or type exit
to drop superuser access and return to your regular shell prompt.
Tip
In this book, I’ll use $
to indicate any normal user’s prompt, user
$
to specifically indicate user
’s prompt, and #
to indicate the root prompt. Avoid entering commands as root unnecessarily!
Many Linux commands will output a message only if something goes wrong. For example, if you try to remove a file using the rm command, no message will be displayed if the file is successfully deleted, but an error message will be generated if the file does not exist:
Most error messages start with the name of the command that produced the message.
You can leave a shell by pressing Ctrl-D or typing exit
. If you are using a terminal window and don’t have any programs running, you can simply close the window using the X button on the title bar.
The shell prompt is managed by bash, the Bourne-again shell. bash got its name from the fact that it is a successor to the original Unix shell, sh, which is also known as the Bourne shell (after its author, Steve Bourne). bash is a command editor, command interpreter, job controller, and programming language.
When bash receives a command, it splits it into words and uses globbing to expand any ambiguous filenames. bash next checks to see if the first word is a built-in command. If not, it treats it as an external command or program and searches a list of directories to find that program. It executes that program, passing the other words to the program as arguments. Almost all Linux commands are external programs.
Linux commands generally accept three types of arguments:
- Options
-
These start with a hyphen or double-hyphen (
-
or--
) and modify the way the command operates. For example, thels
(list-files) command will include hidden files in its output if the-a
argument is given, and will list detailed information about files when the-l
option is specified. These options may be used individually, used together in any order, or combined after one hyphen if they all use a single hyphen: - Positional arguments
-
These have significance according to the order in which they are specified. For example, the
cp
(copy) command accepts two or more filenames:one
is the name of the file being copied, andtwo
is the name that will be given to the new copy. If you swap the position of the two arguments, the meaning of the command is changed. Options may be placed before, between, or after positional arguments; usually, the positions of the options don’t matter. - Options with a value
-
These combine options with positional arguments. An option with a value may be placed before or after other arguments, but the value must be placed directly after the option.
For example, the ls command accepts the
-w
option (width of output), which is specified along with a number indicating the desired width of output in characters. This can be combined with the-a
and-l
options in any order, as long as the number immediately follows the-w
option:...accessing a character-mode display when the graphical user interface is running?
Fedora is configured to allow you to log in using a character-mode display even if the graphical user interface is running. In fact, you can log in up to six times, using the same or different user IDs.
The key is Virtual Terminals (VTs). There are 12 virtual terminals that can be accessed easily: VT1 through VT6 are configured for character-mode login, VT7 is used for graphical login, and VT8 through VT12 are not normally used.
To switch to a specific VT, press Ctrl-Alt and the function key that corresponds to the virtual terminal you wish to access (Ctrl-Alt-F1 for VT1, Ctrl-Alt-F7 for VT7, etc.).
Tip
There are actually 64 virtual terminals, but virtual terminals above number 12 are not directly accessible from the keyboard and are therefore rarely used.
You can log in on multiple VTs simultaneously and switch back and forth between them. This is particularly useful when you bring up documentation on one VT and enter commands on another.
The type, which, and whereis commands all provide information about the location of programs.
type will tell you where a command is located in a verbose way, along with an indication of whether the command location is hashed (stored in the shell for quick reference because the command has already been used recently). If there is more than one command with the same name, the location shown is the first one found using your
$PATH
:which is similar, but shows only the command location:
whereis will show you all of the locations for the command (and sometimes there are several, if different versions of the same program are installed), along with the location of its manpage documentation:
Programs with a graphical user interface are started in exactly the same way as programs with a character-based user interface. GUI-based programs use the
DISPLAY
environment variable to determine if a graphical display is available and to connect to that display. Some programs, such as system-config-printer, will automatically start up with a graphical or a character-based user interface according to the type of display that is available.Typing Alt-F2 will open a Run Application dialog (in KDE, it’s called Run Command), which enables you to enter a single command and run it. This is most useful for starting graphical programs that aren’t on the menu.
You can also add an applet to your panel bar that does the same thing.
...the difference between commands, utilities, applications, and programs?
There isn’t any! Linux does not make any distinction between categories of programs.
Fedora offers four different command shells: csh (a.k.a. tcsh), bash (a.k.a. sh), ksh, and zsh. You can temporarily start a different shell just by typing the shell name:
Press Ctrl-D or type
exit
to return to the original shell. You can permanently change your default shell using thechsh
(change shell) command:The password requested is your normal login password; the change will take effect the next time you log in.
chsh requires that you enter the full pathname of the new shell. To see a list of available shells, use chsh with the
-l
(list) option:zsh, ksh, and bash each use a syntax related to the original Bourne shell (sh). csh uses a very different syntax, which C programmers often find comfortable.
-
The bash, chsh, csh, zsh, and ash manpages
-