Categories
Linux Tutorial Series

Linux Tutorial Series – 172 – Compiling a program – what does that even mean?

Here is the video version, if you prefer it:

In this article, I will mention a couple of key terms related to the Linux desktop. (Ward, 2014)⁠

The first one is the X Window System. It is just a framework – think of it as “bare bones” of a GUI (Graphical User Interface) environment. It is up to other programs to build upon this “bare bones” and construct the graphical user interface. (“X Window System,” n.d.)⁠

Desktop environment is a package that allows for cooperation of different applications in a graphical sense. For example, application A tells application B that it is 50% done with a certain task and the application B displays that on its status bar. GNOME and Unity are examples of a desktop environment.

Some other terms and their explanations: Window managers arrange windows on the screen and provide interactive decorations like title bars that allow the user to move and minimize windows. Common elements on desktop applications (such as buttons and toolbars) are called widgets. Toolkits are used to provide widgets because that speeds up development.

That’s it for this post. I never dug really deep into Linux desktop, but if you ever encounter any one of these terms, I hope you have some more clarity as to what they mean.

Hope you learned something useful!

References

Ward, B. (2014). How Linux Works: What Every Superuser Should Know (2nd ed.). No Starch Press. Pages 297-299

X Window System. (n.d.). Retrieved February 15, 2020, from https://en.wikipedia.org/wiki/X_Window_System

Categories
Linux Tutorial Series

Linux Tutorial Series – 171 – Linux desktop – a couple of key terms

Here is the video version, if you prefer it:

In this article, I will mention a couple of key terms related to the Linux desktop. (Ward, 2014)⁠

The first one is the X Window System. It is just a framework – think of it as “bare bones” of a GUI (Graphical User Interface) environment. It is up to other programs to build upon this “bare bones” and construct the graphical user interface. (“X Window System,” n.d.)⁠

Desktop environment is a package that allows for cooperation of different applications in a graphical sense. For example, application A tells application B that it is 50% done with a certain task and the application B displays that on its status bar. GNOME and Unity are examples of a desktop environment.

Some other terms and their explanations: Window managers arrange windows on the screen and provide interactive decorations like title bars that allow the user to move and minimize windows. Common elements on desktop applications (such as buttons and toolbars) are called widgets. Toolkits are used to provide widgets because that speeds up development.

That’s it for this post. I never dug really deep into Linux desktop, but if you ever encounter any one of these terms, I hope you have some more clarity as to what they mean.

Hope you learned something useful!

References

Ward, B. (2014). How Linux Works: What Every Superuser Should Know (2nd ed.). No Starch Press. Pages 297-299

X Window System. (n.d.). Retrieved February 15, 2020, from https://en.wikipedia.org/wiki/X_Window_System

Categories
Linux Tutorial Series

Linux Tutorial Series – 170 – The scp command

Here is the video version, if you prefer it:

In order to copy files from one computer to another, use scp. (Shotts, 2019)⁠

To copy a file from your machine to the server, use the following syntax:

scp localFile username@remotehost:/directory

More scp examples can be found here: (“Example syntax for Secure Copy (scp),” n.d.)

Thank you for reading!

References

Example syntax for Secure Copy (scp). (n.d.). Retrieved February 15, 2020, from http://www.hypexr.org/linux_scp_help.php

Shotts, W. (2019). The Linux Command Line, Fifth Internet Edition. Retrieved from http://linuxcommand.org/tlcl.php. Page 238-239

Categories
Linux Tutorial Series

Linux Tutorial Series – 169 – The ssh command

Here is the video version, if you prefer it:

To connect to a remote host (remote computer), use ssh. (Shotts, 2019)⁠ ssh will allow you to use the command line as if you were physically present on the other computer’s Terminal. The computer you are connecting to needs to run ssh server and you need to be running ssh client.

Command usage:

ssh host

or:

ssh username@host

if you want to connect with a different username other than the username on your local machine.

Note: You most likely won’t be using this if you are a desktop user, but if you are a programmer, you will most likely at least sometimes be required to connect to a machine remotely.

Thank you for reading!

References

Shotts, W. (2019). The Linux Command Line, Fifth Internet Edition. Retrieved from http://linuxcommand.org/tlcl.php. Pages 234-238

Categories
Linux Tutorial Series

Linux Tutorial Series – 168 – nmtui – If you ever need to configure network interfaces

Here is the video version, if you prefer it:

If you ever need to edit connections, you can use nmtui. It came preinstalled with my Debian 10. It allows you to set your IP, among other things. I used it only once, but if you want more information, (and you can assume what I will say next) Google will give it to you.

Thank you for reading!

Categories
Linux Tutorial Series

Linux Tutorial Series – 167 – The traceroute command

Here is the video version, if you prefer it:

The traceroute command is used to see the route of a packet sent from your computer to the destination computer. (Shotts, 2019)⁠ Remember, packets are just small chunks of data sent over the computer network.

An example of its usage:

mislav@mislavovo-racunalo:~$ traceroute www.google.com

traceroute to www.google.com (172.217.16.100), 30 hops max, 60 byte packets

1 speedport.ip (192.168.1.1) 4.490 ms 5.863 ms 7.275 ms

2 172.27.99.1 (172.27.99.1) 12.774 ms 15.713 ms 18.709 ms

3 172.28.238.67 (172.28.238.67) 21.826 ms 25.468 ms 26.822 ms

4 hdr11-gut21.ip.t-com.hr (195.29.224.145) 30.081 ms 33.572 ms hdr11-gut21-2.ip.t-com.hr (195.29.225.121) 35.273 ms

5 gtr11-hdr11.ip.t-com.hr (195.29.3.46) 37.511 ms 40.042 ms 42.717 ms

6 72.14.204.128 (72.14.204.128) 51.135 ms 13.224 ms 13.562 ms

7 74.125.242.241 (74.125.242.241) 17.242 ms 74.125.242.225 (74.125.242.225) 19.994 ms 22.164 ms

8 72.14.239.195 (72.14.239.195) 23.811 ms 27.805 ms 72.14.239.201 (72.14.239.201) 32.334 ms

9 bud02s25-in-f4.1e100.net (172.217.16.100) 32.541 ms 33.624 ms 35.218 ms

We can see all of the points that my packets visited until it finally reached www.google.com. If you were to see asterisks (*) instead of concrete information in any of the steps, that means that the router (the part of the networking hardware that routes the packets) is configured not to give away identifying information. Here this is not the case.

Thank you for reading!

References

Shotts, W. (2019). The Linux Command Line, Fifth Internet Edition. Retrieved from http://linuxcommand.org/tlcl.php. Pages 227-228

Categories
Linux Tutorial Series

Linux Tutorial Series – 166 – The ping command

Here is the video version, if you prefer it:

The ping command is used to check if your Internet connection is working properly.

Here is its syntax: (Shotts, 2019)⁠

ping internetAddress

An example:

mislav@mislavovo-racunalo:~$ ping www.google.com

PING www.google.com (172.217.16.100) 56(84) bytes of data.

64 bytes from bud02s25-in-f4.1e100.net (172.217.16.100): icmp_seq=1 ttl=55 time=14.2 ms

64 bytes from bud02s25-in-f4.1e100.net (172.217.16.100): icmp_seq=2 ttl=55 time=16.9 ms

^C

--- www.google.com ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 3ms

rtt min/avg/max/mdev = 14.244/15.552/16.861/1.314 ms

Focus on the 0% packet loss here. If it was 100% packet loss, then I would know something is wrong with my network.

Thank you for reading!

References

Shotts, W. (2019). The Linux Command Line, Fifth Internet Edition. Retrieved from http://linuxcommand.org/tlcl.php. Pages 226-227

Categories
Linux Tutorial Series

Linux Tutorial Series – 161 – Printing – how I do it

Here is the video version, if you prefer it:

There is an entire chapter in (Shotts, 2019)⁠ dedicated to printing, but let me tell you how I print the things I want to print. I just use the GUI of the app that I am viewing the file in. I advise you to do the same. Now, could there potentially be a situation where you are accessing a Linux machine remotely and you need to print something out and you can’t use a GUI? Sure. But, I’ve never encountered it so far and I think that using Google in that particular situation would help you.

Hope you learned something useful!

References

Shotts, W. (2019). The Linux Command Line, Fifth Internet Edition. Retrieved from http://linuxcommand.org/tlcl.php. Pages 361-373

Categories
Linux Tutorial Series

Linux Tutorial Series – 160 – Checkpoint

Here is the video version, if you prefer it:

In the upcoming posts, we will talk about a whole bunch of things – printing, scheduling tasks, computer networking and building a program from source.

We won’t cover any of those (except building a program from source) in much detail. The reason is because I either haven’t used it as much and thus feel that the topic is not as relevant to everyday use or the topic is very broad and I narrowed it down to the very basics.

An interesting mix coming up. Focus on the computer networking chapter most, followed by building a program from source. Feel free to quickly read the other things.

Talk soon!

Categories
Linux Tutorial Series

Linux Tutorial Series – 158 – Shutting down your system via the command line

Here is the video version, if you prefer it:

If you ever want to shut your system down via the command line, here is how it is done: (Ward, 2014)⁠

shutdown -h now

If you want to restart your machine, execute this:

shutdown -r now

In order to delay the shutdown or the restart, write this (this is the shutdown case):

shutdown -h +numberofMinutes

I usually shut down my computer via the GUI, but there may be some situations where you might have to shut down the computer via the command line (such as when accessing a computer remotely, for example).

Hope you learned something new!

References

Ward, B. (2014). How Linux Works: What Every Superuser Should Know (2nd ed.). No Starch Press. Pages 144-145