LINUX

LINUX

Introduction — History of Linux.

We can distinguish two important issues in the aspect of the origin/history of Linux.

Firstly, in the early 1980s, when Richard Stallman launched the GNU Project as an effort to provide a free UNIX-like operating system.

Secondly, Linus Torvalds’ efforts to create a MINIX clone in 1991 as the start of Linux. Driven by the lack of a free OS kernel, his initial work rapidly gained support, and in 1992 was licensed under the GNU GPL with the release of version 0.99.

More info about the history of Linux can be found here:

Linux Distributions.

Linux operating system is made up of the Linux kernel plus a large collection of open-source tools primarily developed as part of the GNU Project. Distribution is the combination of the Linux kernel plus a selection of open source utilities, applications, and software packages.

There are three main branches of Linux distros — Debian (deb), Red Hat (rpm), and Slackware (slp). There are also some smaller branches and some individual distros that have their own structure and setup. Some of these branches of Linux have large subgroups.

Full list of Linux distributions:

About the Distros:

Debian

Debian GNU/Linux is a distribution produced and maintained by the Debian Project. The Debian Project was officially founded by Ian Murdock on August 16, 1993, and the creation of Debian GNU/Linux was funded by the Free Software Foundation’s GNU Project from November 1994 through November 1995.

Debian wiki: https://en.wikipedia.org/wiki/Debian

Red Hat Enterprise Linux

Red Hat was an early Linux distributor who became a significant influencer and commercial success in the Linux market, so it’s perfectly natural that one major branch of Linux distributions is based on Red Hat.

Red Hat Linux wiki: https://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux

Interacting with Linux.

As a very popular server OS, Linux can be used in a variety of ways. I will try to show some basic commands regarding:

  • Navigating the filesystem
  • Manipulating files and directories
  • Running programs
  • Working with background services, known as daemons

Navigating the Filesystem.

In situations where you need to determine the full path to your current location, bash offers the pwd (print working directory) command

mikma@DESKTOP-UPA4L3K:~$ pwd
/home/mikma        

Now you can begin to move around the filesystem using the cd (change directory) command.

mikma@DESKTOP-UPA4L3K:~$ cd        

To move up one level in the filesystem you can use the .. shortcut.

mikma@DESKTOP-UPA4L3K:~$ cd ..
mikma@DESKTOP-UPA4L3K:/home$        

Of course, there are a lot of commands for navigating through the filesystem. More examples you can find here:

Manipulating Files and Directories.

To create files or directories, you’ll work with one of two basic commands: touch, which is used to create files, and mkdir (make directory). The touch command just creates a new file with no contents.

mikma@DESKTOP-UPA4L3K:~$ touch config.txt        

The mkdir the command is very simple: it creates the directory specified by the user.

mikma@DESKTOP-UPA4L3K:~$ mkdir test        

Deleting files and directories.

There are two commands for creating files and directories, there are two commands for deleting files and directories. You’ll use the rm command to delete (remove) files, and you’ll use the rmdir command to delete directories.

mikma@DESKTOP-UPA4L3K:~$ rm config.txt        

To remove a directory, you use rmdir directory.

Moving, copying, and renaming files and directories.

When we want to move, copy and rename files and directories, the two commands that we can use: cp (for copying files or directories) and mv (for moving and renaming files and directories).

To copy a file, it’s just cp source destination.

Moving a directory is much the same; just use mv source-dir destination-dir.

Copying directories is only a bit more complicated. Just add the -r option, like cp -r source-dir destination-dir.

Changing permissions.

Linux permissions are built around a couple of key ideas:

  • Permissions are assigned based on the user, group, and others.
  • Permissions are based on the action (read, write, and execute).

Each of the actions (read, write, and execute) is assigned a value; specifically, read is set to 4, write is set to 2, and execute is set to 1.

For example:

  • 444 (user = read, group = read, others = read)

Permissions are listed as a string of characters, like rxwr-xr-x. This breaks down to the read (r), write (w), and execute (x) permissions for each of the three entities (user, group, and others).

To change or modify permissions, you’ll need to use the chmod.

Running Programs.

In order to run a program, here’s what’s needed:

  • A file that is actually an executable file — you can use the file utility to help determine if a file is executable.
  • Execute permissions.

Running a program is as simple as entering the program name on the command line.

Conclusions.

Linux is a very popular operating system among IT specialists, especially among people from the DevOps and Network Engineers. The demand for containerization naturally forces the use of Linux and makes this operating system and its capabilities even more powerful. In my opinion, every Data Scientist will need to know the Linux basics in the near future.

要查看或添加评论,请登录

Darshika Srivastava的更多文章

  • METADATA

    METADATA

    WHAT IS METADATA? Often referred to as data that describes other data, metadata is structured reference data that helps…

  • SSL

    SSL

    What is SSL? SSL, or Secure Sockets Layer, is an encryption-based Internet security protocol. It was first developed by…

  • BLOATWARE

    BLOATWARE

    What is bloatware? How to identify and remove it Unwanted pre-installed software -- also known as bloatware -- has long…

  • Data Democratization

    Data Democratization

    What is Data Democratization? Unlocking the Power of Data Cultures For Businesses Data is a vital asset in today's…

  • Rooting

    Rooting

    What is Rooting? Rooting is the process by which users of Android devices can attain privileged control (known as root…

  • Data Strategy

    Data Strategy

    What is a Data Strategy? A data strategy is a long-term plan that defines the technology, processes, people, and rules…

  • Product

    Product

    What is the Definition of Product? Ask a few people that question, and their specific answers will vary, but they’ll…

  • API

    API

    What is an API? APIs are mechanisms that enable two software components to communicate with each other using a set of…

  • Apple Intelligence

    Apple Intelligence

    What Is Apple Intelligence? Apple Intelligence is an artificial intelligence developed by Apple Inc. Relying on a…

  • Snowflake

    Snowflake

    What is the Snowflake Data Platform? While data is a core asset for modern enterprises, technology’s ability to scale…

社区洞察

其他会员也浏览了