Getting system information can be a tricky task, having to gather bits a bobs of information from various places. A Friend recently sent me a link to a little script called inxi. It comes pre-installed with SolusOS, Crunchbang, Epidemic, Mint, AntiX and Arch Linux but as it is a bash script it works on a lot of other distributions. Although it is intended for use with chat applications like IRC it also works from a shell and provides an abundance of information. Installation is as easy as downloading and chmoding a file so next time you find you need some information about your hardware, rather than poking around in /proc, just fire up ./inxi -F
Linutop is a company based out of Paris that specializes in small form factor energy efficient embedded type PC’s. They have a variety of devices with no moving parts and utilize open source software based on Ubuntu for the platform. They were kind enough to send me a Linutop 2 to review.
(Read on …)
Tonight we have a guest post from Jason Phillips about games on Linux.
Linux is a popular OS especially for servers. It is great of open interfacing, and can be extremely efficient on processing and time. It does not have a lot of the add-ons that Windows has that can bog down the system and cause a longer boot-up. The issue that a lot of people run into when they are running the Linux OS is the misconception that it is not a good platform for a lot of the popular games. Fortunately, some clever people have created a few different ways that you will allow you to download and play Windows games on your Linux OS.
Most gamers have tried to avoid the Linux OS for that feel that playing their beloved Windows games could be near impossible on the Linux system. The early reviews of Windows 8 have not been kind, and many people are reluctant to upgrade to the Windows 8 system so that has left some of the timid gamers to research how you can play Windows games on the Linux system. It is actually a rather easy process.
This post is a guest post written by Brianne. She is blogger by profession. These days she is working on online promotion for Go Pilot
It is true that the bloggers will need some applications which will help them to connect with their blogging on the move. So the Android applications come handy in this connection. Moreover, you will keep touch always through these applications with your blog. Since, the Android applications provide the ample advantages to the bloggers. Even, these Android applications will give you an extra fillip for running smoothly your blogging habit.
While not really a shell script as such, this is shell related and it just so happens to be Sunday.
Find Empty Directories:
find . -type d -empty > empty_folders.txt
Find Empty Files
find . -type f -empty > empty_files.txt
The issue with these two commands is that within my jumble of unorganized mess I have an abundance of version control repositories (mostly SVN) and tons of source code with empty, but needed directories. Fear not if you have the same problem, you can filter them out by using:
grep -v empty_files.txt svn
Duplicate File Removal
There are multiple ways to remove duplicate files. I used to think a recursive md5sum script was the way to go but that was before I found the utility fdupes.
Install via your package manager if it’s available and use recursively like:
fdupes -r [directory] > duplicates.txt
With fdupes you also have the ability to symlink or delete files, although because of the amount of source code, I’d rather review it manually.
With these utilities I was able to merge copies of photos remove a bunch of old files and empty directories and am one step closer to being digitally organized. If you have the same problem, hopefully they will help you too. If you have any cleanup or organization tools, please comment and let me know.
Ok, I’ll admit it; I’m a digital hoarder. I’ve had this problem for a while where I can’t seem to delete stuff. Perhaps its files I’ve created, stuff I’ve downloaded, backups, or backups of backups but files seem to accumulate faster than I can keep up with organizing them. Throw this on top of system re-installs and, being the family geek backups of family members and freelance work to be honest, I’m a bit overwhelmed!
Well, it stops today! At least the start of organization that is. I’ve written in the past about spring cleaning tools, recursive md5sum scripts and tools like md5deep but nothing really came of it. It’s time to take action and get stuff organized. Now I’ve admitted it publicly, I’m sort of obligated to get in control of my digital life and so the voyage begins.
Stay tuned for more posts on digital organization techniques and tools!
This weekend was South East Linux Fest, although I’m bummed I couldn’t make it I did learn something new from taking an LPIC level 1 self assessment. What I learned about was the application tee.
The question was something like:
“What command outputs to stdout and also writes to a file”
My answer was “echo” but that was the wrong answer. The correct answer was tee.
I’d seen it before in either Slackware or Debian’s packages list but forgot totally about it. It’s a pretty handy utility to have in your arsenal if you ask me. Usage would be something like this:
date | tee date.txt
this will echo the current date out, and also write it to date.txt. Of course, there are plenty of useful options which can be viewed in the man page which is linked below.
Enjoy! Happy Shell Scripting!
A Bug Hunter’s Diary, by Tobias Klein, from No Starch Press is a book that caught my eye. Reverse engineering is a topic I have an interest in, if not much experience, but I am not quite ready for a comprehensive book on the topic. A Bug Hunter’s Diary seemed like a good match for my interests but, initially, I wasn’t sure what to expect from it.
To my pleasant surprise, I walked away with a lot of fantastic technical information; much more than I expected from a technical book that read like a story. A Bug Hunter’s Diary gives great insight into the bug hunting process. It outlines various techniques used to find bugs, and then moves on to exploitation and outlines some of the remediation techniques and processes. For each bug, a chapter is presented with necessary background information, plenty of technical information and code, a detailed explanation, and a timeline outlining the process.
Tobias Klein did a great job explaining what was being done and why, even for those (like me) who know very little about assembly language. Unfortunately, due to the laws of the country in which the author lives, A Bug Hunter’s Diary doesn’t show working exploits but he does provide links to demonstration videos online throughout.
I initially read this book on the Kindle before a hard copy arrived. It reads very well on the Kindle, with the exception of a few tables. A short and delightful read, I devoured A Bug Hunter’s Diary cover to cover in record time. Once I started reading, I would find it hard to put down. For me it was a great book that has re-ignited my interests, motivating me to learn more, and I look forward to reading it again.
Guest Post by Brianne
Linux directory structure is not very complex but is different from the directory structure one comes across in other operating systems. The structure is so built that the different kinds of files with varied functions are effectively segregated into specific directories. The root partition and the root directory form the base of the Linux directory structure. Under the root directory, there are several directories that contain files meant for use for a particular purpose. System files are separated from the user files, so are the command and device files. Here is a detailed look at the various directories and the premise of their existence.
This is a guest post from Brianne.
There is wide variety of Linux Distros in the market. Each one differs in size, design, support and layout, although the basic function is the same. Each distros offers several unique features apart from main features. There is a heavy competition among distributors to create and develop unique features. Each of these distros offers different types of support systems such as forums, live chat, and other means. That is why it is necessary to select the distributor based on your requirement.
Here is a list of Important Linux distributors for beginners in 2012.
Recently I ran into an issue where a new installation of Debian didn’t have NetworkManager set up correctly. Everytime I tried to use NetworkManager it had an issue with the devices not being managed. Luckily there was a man page for networkmanager.conf and its a quick fix.
All you have to do is
sudo vi /etc/NetworkManager/NetworkManager.conf
[ifupdown] managed=false # to [ifupdown] managed=true # Then sudo service network-manager restart
And it’s fixed. Your wireless and ethernet connections will then be managed by NetworkManager. If you don’t want network manager to manage anymore you can just stop the service, or disable it at boot time by removing it from your /etc/rc[x].d/ directory where [x] corresponds to your runlevel. Enjoy!