Coggle requires JavaScript to display documents.
In a GNU, applications present themselves in windows that can be resized and moved around There are menus and tools to help users navigate
The CLI relies primarily on keyboard input
GNU is the free software that provides open-source equivalents of many common UNIX commands The Linux part of this combination is the Linux kernel, which is the core of the OS
Microsoft Windows Apple macOS Linux
MS has annual license fees Apple does not charge annual fees but only works on Apple hardware There are multiple Linux providers wo offer enterprise support and although the software is free, support is not
.deb
Brose to the terminal application from the application menu A virtual terminal can be run at the same time as a GUI but may require the user to log in via the V-terminal before they can execute commands
Server Applications: The purpose of this software is to server info to other computers, called clients Desktop Applications: Web browsers, text editors, music players, or other applications with Tools: a loose category of software that exists to make it easier to manage computer systems
A web server hosts content for web pages, which are viewed by a web browser using the HyperText Transfer Protocol (HTTP) or its encrypted flavor, HTTPS
the ownCloud project provides software to store, sync and share data from private cloud servers. the Nextcloud project also provides private cloud software
The Mozilla Foundation came out with Thunderbird, a full featured desktop email client that connects to a POP or IMAP server Other notable email clients are Evolution and KMail which are the GNOME and KDE project's email clients.
Blender, GIMP (GNU Image Manipulation Program), and Audacity which handle 3D movie creation, 2D image manipulation, and audio editing respectively
LibreOffice is a fork of the OpenOffice application suite
the Mozilla Firefox and Google Chrome browsers are open-source web browsers that are fast, feature rich and have excellent support for web developers
Users interact with a Linux system through a shell, which accepts commands to execute Linux offers a variety of shells to choose from such as; the Bourne shell, C shell, the Bourne Again (Bash) shell, the tcsh, the Korn shell (Ksh), and the zsh
most Linux systems provide a choice of text editors which are commonly used at the console to edit configuration files. The two main editors are Vi (Vim for modern) and Emacs Pico and Nano are available on most systems and provide very basi, yet user friendly text editing
dpkg
apt-get
aptitude
.rpm
rpm
an interpreted language translates the written code into computer code as the program runs A compiled language is translated all at once
Python has excellent statistical processing abilities and is a favorite in academia
As you browse the web, a web server can send back the cookie, which is a small piece of text, along with the web pag Browsers typically offer cookie-related settings, users can opt to have the browser tell the site not to track
Use a good, unique password everywhere you go Use a password manager like KeePassX to generate passwords Limit the info you give to sites to only what is needed Make a point of checking for system updates periodically
a firewall is a device that filters network traffic, and Linux has on built-in If you are using Ubuntu, then the Gufw is a graphical interface to Ubuntu's Uncomplicated Firewall (UFW)
Administrators deploy encryption with authentication keys almost every system that communicates with the outside world The HyperText Transfer Protocol Secure (HTTPS) standard used on web servers to ensure that data transmitted between users and online resources cannot be intercepted as it travels on the open internet Virtual private networks (VPN) work by creating an encrypted channel of communication between two systems, so that transmitted between the is scrambled by an algorithm only the systems know The Tor project and tools like its Tor Browser relay internet requests through a network of servers that prevent websites and others from learning the identity of the person making the request
The HyperText Transfer Protocol Secure (HTTPS) standard used on web servers to ensure that data transmitted between users and online resources cannot be intercepted as it travels on the open internet
When usrs are created, they are given different login permissions depending on what groups they are assigned to Services that run on systems such as databases can also have login permissions with their own passwords and privileges
A Cloud infrastructure deployed by a provider to offer cloud services to the general public and organizations over the internet
A cloud infrastructure that is set up for the sole use of a particular organization
a cloud infrastructure that is set up for the sole use by a group of organizations with common goals or requirements
a cloud composed of two or more individual clouds, each of which can be private, community, or public clouds
Flexibility: Cloud computing provides the capability to provision IT resources quickly and at any time. Accessibility: Applications and data reside centrally and are accessed anywhere over a network from any device Community Cloud: Consumers can scale IT resources to meet workload demand, thereby eliminating overhead from underutilized resources Hybrid Cloud: A significant portion of Linux server operating in the cloud are created and managed by automated management programs rather than human operators This process frees up admins to monitor computing operations rather than manually configuring and updating systems Security: Linux can help offset security issues because it is one of the most secure and reliable operating systems available Linux is open source, meaning its source code can be inspected for vulnerabilities and compatibility issues
This process frees up admins to monitor computing operations rather than manually configuring and updating systems
Linux is open source, meaning its source code can be inspected for vulnerabilities and compatibility issues
this optimizes usage of physical resources and dramatically reduces costs over the previous one machine, one OS model
"Two groups can be considered the most influential forces in the world of open source: The Free Software Foundation and the Open-Source Initiative"
Also GPLv2, GPLv3, LGPLv2, and LGPLv3
free
Ownership - Who owns the intellectual property Money Transfer - Does it cost anything? How do you pay? Licensing - What do you get? What can you do with the software? How many computers? Can you share it?
You can use CC BY content for any use but must credit the copyright holder
Copyleft version of the Attribution license
You may redistribute the content under the same conditions as CC-BY but may not change it
Like CC-BY, but may not use it for commercial purposes
Requires that your changes be shared under the same license
Allows sharing the content to be used for non-commercial purposes, but people may not change the content
Public Domain
Command Line History Inline editing Scripting The ability to place cmds in a file and then interpret (effectively use Bash to execute the contents of) the file, resulting in all of the cmds being executed Aliases The ability to create short nicknames for longer commands Variables Used to Store info for the Bash shell and for the usr
The ability to place cmds in a file and then interpret (effectively use Bash to execute the contents of) the file, resulting in all of the cmds being executed
The ability to create short nicknames for longer commands
Used to Store info for the Bash shell and for the usr
sysadmin@localhost:~$
Username (sysadmin) System name (localhost) Current Directory (~) The ~ symbol refers to the usrs home dir
sysadmin
localhost
~
The ~ symbol refers to the usrs home dir
ls
sysadmin@localhost:~$ ls /etc/ppip-down.d ip-up.d
sysadmin@localhost:~$ ls /etc/ppp /etc/ssh
-l
l
r
sysadmin@localhost:~$ ls -lr
Single-letter options are preceded by a single dash - character, like the -h option Full-word options are preceded by two dash -- characters like the full-word from of the -h option, the --human-readable option
-h
--human-readable option
options
arguments
Options are used to modify the core behavior of a command Arguments are used to provide additional info (such as filename or a usrname)
command [option] [arguments]
history
sysadmin@localhost:~$ history date ls cal 5 2030 history
date ls cal 5 2030 history
!3
sysadmin@localhost:~$ history 3 date ls /home history 3
date ls /home history 3
!command
local
environment
Local
shell
variable=value
variable1
something
sysadmin@localhost:~$ variable1=ssomething
ssomething
$
echo
echo $variable1Something
Environment variables
PATH
HOME
HISTSIZE
sysadmin@localhost:~$ echo $HISTSIZE(output)
$HISTSIZE
env
export
sysadmin@localhost:~$ export variable1 sysadmin@localhost:~$ env | grep variable1variable1=Something
unset
sysadmin@localhost:~$ echo $PATH/home/sysadmin/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/usr/
cmd not found
type
Interal commands External commands Aliases Functions
which
sysadmin@localhost:~$ which ls/bin/lssysadmin@localhost:~$ which cal/usr/bin/cal
sysadmin@localhost:~$ /bin/lsDesktop Docs Downloads Music (etc)
-sysadmin@localhost:~$ type calcal is /usr/bin/cal
-a
sysadmin@localhost:~$ type -a echo
ls -l
alias
sysadmin@localhost:~$ alias
sysadmin@localhost:~$ type llll is aliased to 'ls - alF'
i.e. the cd cmd is a part of the bash shell
cd
sysadmin@localhost:~$ type cdcd is a shell builtin
Create new commands Override commands built-in to the shell or commands stored in files
Semicolon - ; Double ampersand - && Double Pipe - ||
;
&&
||
sysadmin@localhost:~$ cal 1 2015; cal 2 2015; cal 3 2015
sysadmin@localhost:~$ ls /etc/xml && echo successcatalog catalog.old xml-core.xml xml-core.xml.oldsuccess
sysadmin@localhost:~$ ls /etc/junk || echo failedls: cannot access /etc/junk: No such file or directoryfailed
\
$1
$PATH
sysadmin@localhost:~$ echo "The service costs $1 and the path is $PATH"
in this case. Use the backslash \ char in front of the dollar sign $ char to prevent the shell from interpreting it sysadmin@localhost:~$ echo The service costs \$1 and the path is $PATH
sysadmin@localhost:~$ echo The service costs \$1 and the path is $PATH
sysadmin@localhost:~$ echo The car cost $100The car cost 00sysadmin@localhost:~$ echo 'The car cost $100'That car cost $100
echo Today is date
sysadmin@localhost:~$ echo Today is dateToday is date
date
sysadmin@localhost:~$ echo Today is dateToday is Mon Nov 21 08:58:53 CST 2022
Glob char, aka Wild Cards, are symbols that have special meaning to the shell (i.e *, ?)
*
?
sysadmin@localhost:~$ echo "the glob character *, ? and [ ]"the glob characters are *, ? and [ ]
whereis
gzip
.gz
locate
However, any files created that day will not be searchable with the locate cmd because the database is updated nightly It is possible to update the locate database manually by running the updatedb cmd as root.
updatedb
The -c option to the locate command will list how many files match: sysadmin@localhost:~$ locate -c passwd The -b option only includes listings that have the search term in the basename of the filename. to limit the output even further, place a \ character in front of the search term: sysadmin@localhost:~$ locate -b "\passwd"
-c
sysadmin@localhost:~$ locate -c passwd
-b
basename
sysadmin@localhost:~$ locate -b "\passwd"
info
sysadmin@localhost:~$ info ls
Each man page is a separate document, not related to any other man page Man pages may can be difficult to read
Info documentation as a logical organizational structure, making reading documentation easier. Info is broken down into categories that work much like a table of contents in a book
man pages
NAME: provides the name of the command and very brief descriptionls - list directory contents SYNOPSIS: Provides examples of how the command is executedls [option]... [file]... DESCRIPTION: Provides a more detailed description of the command OPTIONS: Lists the options for the command as well as a description of how they are used FILES: Provides are more detailed desc of the cmd AUTHOR: Provides the name of the person who created the man page and (sometimes) how to contact the person REPORTING BUGS: Provides details on how to report problems with the command COPYRIGHT: Lists the options for the command as well as description of how they are used SEE ALSO: Provides you with an idea of where you can find additional info. This often includes other commands that are related to this command
Pattern not found (press Return)
n
N
man
man command
command
sysadmin@localhost:~$ man ls
pager
less
more
General Commands System Calls Library Calls Special Files File Formats and Conventions Games Miscellaneous Sys Admin Commands Kernel Routines
cal
sysadmin@localhost:~$ man -f passwdpasswd (5) - the password filepasswd (1) - change user passwordpasswd (lssl) - compute password hashes
sysadmin@localhost:~$ man 5 passwd
--help
/home/sysadmin
..
Art
School
sysadmin@localhost:~/Documents/School/Art$ cd ..sysadmin@localhost:~/Documents/School$
sysadmin@localhost:~/Documents/School/Art$
sysadmin@localhost:~/Documents/School$
sysadmin@localhost:~/Documents/School$ cd ../../Downloads
sysadmin@localhost:~/Documents/$ cd School/Artsysadmin@localhost:~/Documents/School/Art$
sysadmin@localhost:~/Documents/$
.
Begin at the root / directory > move into the home directory > then into the sysadmin dir
home
sysadmin@localhost:~/Documents$ cd /home/sysadminsysadmin@localhost:~$
sysadmin@localhost:~/Documents$
ls [option]... [file]...
ls -d
each output line describes the metadata about a single file
File Type:-rw-r--r-- 1 root 17869 Mar 14 17:48 alternative.logdrwxr-x--- 2 root adm 4096 Mar 14 17:48 apache2 The first character of each line indicates the type of filed - directory - a file used to store other files- - regular file - Includes readable files, images files, binary files, and compressed filesl - symbolic link - points to another files - socket - allows for communication between processesp - pipe- allows for communication between processesb - block file - used to communicate with hardwarec - character file - used to comminate with hardware
-rw-r--r-- 1 root 17869 Mar 14 17:48 alternative.log
drwxr-x--- 2 root adm 4096 Mar 14 17:48 apache2
The first character of each line indicates the type of filed - directory - a file used to store other files- - regular file - Includes readable files, images files, binary files, and compressed filesl - symbolic link - points to another files - socket - allows for communication between processesp - pipe- allows for communication between processesb - block file - used to communicate with hardwarec - character file - used to comminate with hardware
-
*drwxr-xr-x* 1 root root 0 Apr 11 21:58 upstart
The next nine characters demonstrate the permissions of the file Permissions indicate how certain users can access a file
-rw-r----- *1* syslog adm 23621 Aug 23 15:17 auth.log
This number indicates how many hard links point to this file
Every file is owned by a user account this is important because the owner has the rights to set perms on a file
Indicates which group owns this file, this is important because any member of this group has a set of perms on the file
Size of files in bytes
Indicates when a file's contents were last modified
The name of the file or dir
-R
/etc/ppp
/etc/ppp/peers
i.e., the .bashrc file in the home directory customizes features of the shell
.bashrc
-S
s
-t
-r
sysadmin@localhost:~$ ls /
pwd
pwd [OPTIONS]sysadmin@localhost:~$ pwd/home/sysadmin
sysadmin@localhost:~$ cd Documentssysadmin@localhost:~/Documents$
no such file or directory
Instead of manipulating a single file at a time, you can easily execute commands that will affect many files
/etc/[gu]*
g
u
echo /etc/[a-d]*
!
echo /etc/[!a-t] will display any file that does not begin with an
thru
/etc
echo /etc/*.???
-d
sysadmin@localhost:~$ echo /etc/t* /etc/terminfo /etc/timezone
t*
t
cp
cp [source] [destination]
/etc/hosts
cp /etc/hosts ~
-v
cp -v /etc/hosts ~ /etc/hosts' -> '/home/sysadmin/hosts
-i
y
-n
Be careful with this option, entire dirs will be copied.
mv
mv [source] [destination]
Permission denied
-i -- interactive: Ask if a file is to be overwritten -n -- No Clobber: Do not overwrite a destination files' contents -v --Verbose: Show the resulting move
mv newexample.txt myexample.txt
touch
mkdir
rm
Lossless: No info is removed from the file Lossy: Info might be removed from the file
The og size of the file called longfile.txt is 66540 bytes The file is compressed by invoking the gzip command with the name of the files as the arguments After that command completes, the original file is gone, and a compressed version with a file extension of .gz is left in its place The file size is now 341 bytes
longfile.txt
gunzip
gzip -d
tar
Create: Make a new archive out of a series of files Extract: Pull one or more files out of an archive List: Show the contents of the archive without extracting
tar -c [-f Archive] [options] [files...]
-c -- Create an archive -f Archive -- Use archive file. the argument archive will be the name of the resulting archive file
-f Archive
archive
-z
bzip2
-j
.tar.bz2
.tbz
.tbz2
tar -t [-f archive] [options]
tar -tjf folders.tbz
this examples uses-t -- List the files in the archive-j -- Decompress with the bzip2 cmd-f archive -- operate on the given archive
-f
tar -x [-f archive] [options]
-x
tar -xjf folders.tbz
zip
zip [options] [zipfile [file...]]i.e. zip alpha_files.zip alpha*
zip [options] [zipfile [file...]]
zip alpha_files.zip alpha*
unzip