Adding Color to Bash List Command

One of the things I love is being able to enter into a directory via terminal, list the contents, and quickly see which ones are executable or not and which ones are directories or are not directories IN COLOR (not everyone is perfect right?).  This is specifically handy as I move through working with Slackware based distributions like the one I’m using now, Zenwalk Linux 6 and the /etc/rc.d/ directory.  Most of the Red Hat based distributions out there that I’ve used have this set automatically…so I’m used to it.  When I opened up a terminal in Zenwalk I found no color. A quick investigation of ~/.bashrc showed me that there are aliases set to display color…instead of ls I’d just use the letter L; 2 l’s for another option, 3 for another.  It’s interesting, but not normally how I do business.  See bashrc below:

devnet[~]$ cat ~/.bashrc
alias lll="ls -al --color"
alias ll="ls -l --color"
alias l='ls --color'<br />alias search='find . -name'
alias aterm="aterm -fg white -tr"
alias version='cat /etc/zenwalk-version'
alias dh='df -h'<br />export PS1='\u[\W]\$ '
export PAGER="most"<br />devnet[~]$

I don’t use those aliases much…others of you might do the ‘ll’ or ‘lll’ but it’s just not part of my routine.  So, I added in just after line 4 in the code above:

alias ls='ls --color'

You can do this a few different ways…with any command line editor like emacs, vi, or nano/pico. It’s really up to you. The easiest way for new users is to use a text editor:

devnet[~]$ mousepad ~/.bashrc

This will launch the mousepad text editor in XFCE. If you’re in Gnome, try gedit. If KDE, give kwrite a try. You should see something like the following window pop up for editing:

bashrcYou should see in the picture above, I’ve added in the alias needed to make me comfortable.  After that, File >> Save.  You’re set!  Except, you may notice that when you type the command ‘ls’ there are no colors.  So what gives?  Well, we haven’t loaded our ./bashrc since we changed it.  You don’t have to logout and back in to get things to work though…you can do this right from the terminal:

devnet[~]$ exec bash

Now try giving the ‘ls’ command a try again and you should see that it is in color.  I know a lot of the more advanced Linux guys out there are probably saying, “why’d he waste a post on this!  It’s easy” and you’d be right for a majority of users out there…I hope that this post finds some new user out there that may be stuck for an answer on how to do this.  One final note on this as well: You will have to do this as the root user and change /root/.bashrc in order for your root user to also have color.  Thanks for reading!

Laptop Multimedia Keys and PCLinuxOS 2009

I installed PCLinuxOS 2009 recently on a Dell D630 Latitude and was disappointed to see that I couldn’t get the hardware volume (up/down/mute) buttons didn’t work out of the box.  I thought a bit about kmilo, a program that was previously used for laptop buttons (thinkpad buttons though) and I searched around a bit inside the KDE Control Center for keyboard shortcuts to see if I could assign the keys manually.  However, I couldn’t find any volume setting inside this menu.

Then, it hit me, I had remembered seeing volume settings before…inside kmix; there is an area for assigning global shortcuts for volume and mute!  This should work for anyone running KDE 3.5.8 and above (I think).  Left click on Kmix in your tray and choose the mixer button.  From there, choose Settings >> Configure Global Shortcuts.  Now assign the volume up, down, and mute keys manually by clicking in the blank and pressing the hardware button.  This should work for a majority of people out there.  For me though, this didn’t work.  When pressing the keys, nothing happened.  I thought I was doomed.

I researched a bit more and found that installing a program called keytouch would allow me to, at the very least, program my keyboard in any way I wanted to program it.  I opened Synaptic and installed keytouch and keytouch-editor.  After install, I went to Kmenu >> System >> Configuration >> Hardware >> Keytouch.  It prompted me to choose my keyboard.  Since it didn’t have the Dell D630, I chose the closest thing which was the Dell D800.  I closed the application and now the volume buttons and mute button works!  Keytouch also has the ability to manually edit and also to import keytouch ‘schemas’ to give maximum flexibility.  Hopefully, this helps some of you out there that cannot get your multimedia keys working in PCLinuxOS and KDE to work!

Force Firefox to Remember Initial Window Setting in KDE

I have a laptop with the resolution of 1440×900…so when I installed the latest TR6 from PCLinuxOS, I was dismayed to find out that when launching Firefox, it opened up in a window that was 1024 pixels. Of course, I maximized this and then closed it thinking that Firefox would remember my settings. The problem is…it didn’t remember my settings.

When I opened Firefox up again, it popped up to say hello once again at 1024 pixels.  Sure, you can right click on the Firefox window bar and drill down into application specific settings via KDE (yes, it’s that configurable) but I didn’t want to have to do this…because if I did, ALL Firefox windows would open up maximized…and that includes any pop-ups as well.  I also know that you can drill down even further to fix THAT problem.  However, it should ‘just work’ right?  You shouldn’t have to change anything at all correct?  Well, I’ve found a fix that is pretty easy to accomplish…and I hope it helps the hundreds of people I found when searching through google on this.

Open up Firefox and it will open at the smaller screen size…in my case, it opened up 1024 px in width on my 1440px screen.  Then, hover over the top right hand corner with your mouse until you get the resize arrow.  Resize the window click dragging it to the top, right hand corner of the screen.  It should ‘snap-in’ once you get close to maximized size.  Now close the window, and open Firefox again.  It should open up fully maximized.

I sure hope this saves someone time…because I spent the better part of a morning trying to fix this.

Host Your Own Domain and Webserver

This article is from 2006!  The information here may not be the most current.  You can visit an updated version here!

Doesn’t sound like anything new right?  Well, some people may not know of this method.

Normally, to host your own webpage you would need to spend around 7 bucks to purchase a domain.  Next you would need a hosting plan that usually runs around 3-15 dollars per month to serve up your web pages.

What most don’t realize is that you can skip these steps all together…you don’t need to get dedicated Windows or Linux Hosting (this blog is hosted on dedicated hosting…but started out in my apartment!) to serve pages up to your friends and family.  You absolutely do not need to get domain name services through a provider.  You can even host your own webserver using a dialup connection (that’s right…I said dialup) although. I don’t recommend it (but I’ve done it using 56.6kbps).

Why would you want to do this?  My reply…to stay connected to friends and family…perhaps throw up a gallery so that your grandparents can see pics of your new dog/car/tinfoil hat.  Sure, you could waste my time with MyWaste..er..space and be barraged daily by advertisers and solicitors…or you could roll your own web host, install a gallery or website, and provide media to your friends and family without costing yourself a dime.  That’s right, NO COST (except time spent getting it running).  Just remember, your website might not survive a digging or slashdotting if you run it yourself.  Keep that in mind 🙂  So without more chatter, let’s get to the meat and potatoes of things:

Do you cringe at the thought of buying a domain and putting up with the headache of trying to make sure your IP address is up to date with your domain?  Do you hate the 40 dollars you spend on DNS service each year to resolve your IP address to your hostname?  Read on and learn the the flat-broke-and-busted way of maintaining a fixed hostname for your IP…even if you have dialup.

I’ll divide this up into 2 sections.  The first will deal with Linux.  The second, Windows.  This is only something that I’ve found easy to do and the price is just right (it’s free).  The only thing that I recommend is a dedicated internet connection (cable, DSL) but even this is not necessary as dialup can be used.  I recommend that you use the Linux way of doing things since it is more secure and doesn’t require a restart every time you patch it.

*note: I’m assuming that you aren’t behind a firewall/proxy of any kind and that your ISP doesn’t block port 80 traffic.  If your ISP blocks port 80, see the appendix at the end of this article.

LINUX

No matter what version of Linux you run, chances are that you’ll be able to install the apache webserver.  This is good news as over half the websites of the world are run by the extremely efficient and speedy apache. I’m not going to address the specifics of how to set up your website…only how to get it a fixed address without buying a domain.  So, you have your pages dropped into your webservers public directory…good.  Now, how to resolve your IP…lets say it is…25.24.4.166 (for our example) and you want it to have a host.name.com to bind to.  Easy to resolve.  Go to http://www.no-ip.com/index.php and sign up.  You can get a site from noip that is like yourname.theirdomain.com/.net/.info.  They have cool names like sytes.net and servebeer.org…even workisboring.com

You’ll be able to choose your own top level name…for instance, Ithink.dnsiskinky.com could be your new domain name.  Next download a client from the download tab: https://www.no-ip.com/downloads.php

The linux client is a tar.gz source and is simple to install. Follow the instructions when installing.  You may have to install compilation tools (devel packages like GCC) to install the client.  You now are the proud owner of yoursite.theirsite.com and your IP will ALWAYS update (as long as noip.com is up) each time you log on/sign on/beam up or whatever it is you do.

How does this help you?  Well, if you’re like me, you have a dynamic IP address.  If you connect to the internet via cable, dialup, or dsl…you also have a dynamic IP address.  Dynamic means that it will change from time to time without warning.  So by binding yoursite.theirsite.com to your IP address…you don’t ever have to worry about what IP address you have anymore.  Instead, you’ll always be able to connect using yoursite.theirsite.com.  You can host a webserver using Apache and a virtual host (also known as a Virtual Private server or VPS Hosting) in this style as well (look for another how-to on this subject later) so that everyone can visit a shiny website at yoursite.theirsite.com.

Continue reading “Host Your Own Domain and Webserver”

Find Files & Directories Not Visible to Others for Webserver

I wanted a quick way to be able to find out what files weren’t visible to others (and therefore, not visible to website visitors).  Messing with arguments and the file command, you can do the following:

find -type f ! -perm -444

This locates all files not visible to ‘others’ in the current directory.  You can apply this to directories as well:

find -type d ! -perm -111

Hope this helps people like it helped me. 🙂

Read & Display Single Line of a File

Sometimes when I’m troubleshooting a PHP error and a function is called in the debugger that gives me a line number of a file to look at, I want to know what that line says without opening up the file.  Using the command line, you can accomplish this in the following way:

head -n 96 filename.php | tail -n 1

This allows you to quickly display the 96th line of filename.php. Hope this helps someone like it has me.

Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.