[Book Review] Linux Basics for Hackers by OccupyTheWeb
Tags: linux, network, cybersecurity, beginners
Published: 2024-04-06 10:25:46

*image source: [African Penguin, Cape Town from Wikipedia Commons](https://commons.wikimedia.org/wiki/File:African_penguin,_Cape_Town_(_1050598).jpg)

# TL; DR

- The book is for introducing basic features and commands of Linux(Kali) in general.
- It is a good overview/review for those who are already familiar with programming and CLI, but not having had a chance to directly deal with Linux.
- It would be a good book for those who are actually interested in cybersecurity field.
- Personally, I think the number of topics covered is a bit too high that the depth of each topic is inevitably shallow due to the limit on the number of pages.
- It would be difficult to follow the book material without access to a linux machine.

# Intro - why did I choose this book?

Always feeling ashamed of not having enough knowledge and experience in Linux, I have been searching for a comprehensive and yet hands-on introduction to Linux. Although there are a myriad of such materials out there, I found this book [Linux Basics for Hackers](https://www.amazon.com/Linux-Basics-Hackers-Networking-Scripting/dp/1593278551) by OccupyTheWeb particularly interesting. I have looked up a few Linux books that are popular but many of them are like a reference, which means you won’t learn Linux by doing something. But with its specific catch-phrase *Hacking*, I thought this book would be both enjoyable and informative to read.

# Good Parts

## 1. Comprehensive introduction to many core concepts of Linux

In the first few chapters, you might feel that this book tries to explain very basic commands like `ls` and `ps aux`. This might be something to be taken for granted for an experienced programmer. 

But still, I find this approach helpful for those who have begun learning or reviewing the Linux system. One of the strengths of this book is that it explains only necessary concepts that are relevant to the theme of the book - *Hacking*. 

However, since hacking a system is equivalent to knowing how the system works in general, the book in effect deals with most of the basic and core parts of the Linux. From running the `apt-get` command to running a Python script, the book covers as many topics as possible for hackers.


## 2. Focusing on a practical purpose - cybersecurity and hacking

Compared to other books introducing Linux, I find this book fun to read, because it constantly explains how the concepts are related to hacking and cybersecurity. As a result, the book is less like prose and more consistent in conveying its message to the readers. 

Moreover, it introduces a couple of low-level parts of Linux such as networks, Wifi, device driver, etc. As a person who has only developing high-level web applications throughout my career, I found this "new world" fairly refreshing. The book provides absolutely a good introduction to entry points that a young hacker can explore and enjoy. 

# Soso Parts

## 1. Limited number of pages for a number of topics

This book manages to introduce core concepts and examples of Linux. However, since this book is not large enough in its physical size, there are only a few sections that explain concepts deep enough. Many of the topics I read are covered shallowly, usually by explaining how a certain command is run and what result of it is like. In order to learn deeper about a command or a concept, I had to look up the Internet often. 

Thus, even though there are a lot of concepts that I have learned from the book, many of them remain as very basic. For instance, I still don’t really know how exactly a Linux kernel is started and how to force quit "zombie" processes if an application has not been closed properly. I think it would have been better if the author simplified very basic commands like `ls` and explained more of concepts like access list or socket programming.

## 2. Not easy for non-Linux users to follow

Of course, this book is about Linux so it seems not fair to blame the book for the accessibility. However, a lot of programmers like me use MacOS, and many of the commands introduced in the book don’t exist on MacOS. I personally used Docker for running the example code, but still it was time consuming to search for packages to install. 

Because running the [Virtualbox](https://www.virtualbox.org/) application is daunting for low-performing computers, it would have been better if the author also provided alternative methods for following the materials of the book on MacOS.

# Conclusion

Nevertheless, I think this book is good for brushing up on the knowledge on Linux in general. At least I now know what part of Linux I need to look into if there is a problem. The book itself is very concisely and clearly written, so you wouldn’t find it difficult to follow the author while practicing the commands for hacking.