Here are some sweet Firefoxextensions that I use (if this list isn't enough for you, there's more of them on the Extensions Download Page ):
Colorful Tabs An easy way to distinguish between tabs when you have a million open
Customize Google a MUST HAVE for frequent users of all Google services... ad blocking, encryption, etc.
del.icio.us Social bookmarking site button in your browser! For those of us sick of managing bookmark files. (The classic (worse) version is here)
FireBug If you develop web pages without this, you are either uninformed or massochistic
YSlow Yahoo tells you why your site is slow (runs on top of FireBug)
FireFTP: Why didn't someone think of this sooner? Great idea and execution of an FTP client within a browser.
FireGPG Use GPG to encrypt, sign and decrypt email (or any web page text)
Google Toolbar 3 Absolute bliss... allows you to add any arbitrary search box as a button in the toolbar and lots of other sweet features that I will not know how to part with
Greasemonkey Inject arbitrary Javascript into a page; a great vault of these scripts is found at userscripts.org
Nuke anything enhancedAhh, the pure bliss of deleting something annoying off of a page. Unfortunately, it doesn't seem to want to work with Flash...
ViamaticfoXpose An OSX-style feature; puts all of your tabs into view at the same time when you hit a button in the chrome of your browser
Forecastfox Have to put this one in; my buddy Jon wrote it: displays the local weather in your toolbar
Fasterfox Increases your browser speed a minuscule amount and has more popup-blocking capabilities; a good review of it here
ChickenfootGreasemonkey++; saw this demoed... it's great, and only getting better; lots of applications throughout the interweb world
Bugmenot Great for getting past login pages that you don't have a login or password for. This activity is illegal, also, perhaps?
Adblock Does what it says. Allows contextual filtering of unwanted material from web pages
Showcase The same idea as Viamatic foXpose, different implementation.
SessionSaver Saves your tabs, text input, etc. from when firefox last closed and reinstates them in your next Firefox session
Flashblock: 99% of the time, when a web site uses flash, you don't want to see it. This replaces the flash output with a little button that, if clicked, allows you to see the desired content
WebDeveloper: Useful for those who need to debug web pages
DownThemAll Great for pulling large quantities off of one page (for me, I use this mostly before I know I'm going to be stranded without internet access for a while)
To search for something real fast, use the forwardslash key as in vi (or the single quote if you only want to search for links on a page). Ctrl+G moves you forward and Ctrl+Shift+G moves you backwards in searches.
Here are instructions for installing firefox 2 on older Ububntu distros (pre-Edgy) that have 1.5 installed by default.
For Google-Toolbar-like quickness built into Firefox, right click on your favorite search box and select "Add a keyword for this search"... you'll then be able to search, if you alias search to "g" for example, Google by typing "g <query>" in the URL box
Set a master password for logging into sites: instructions here
Everybody who knows me knows that I love vim. Vim is a powerful version of the vi editor. It usually comes with any *NIX instillation. It rules. Here are some links, and some of my favorite (non-obvious) tricks. If you are new to all of this, a good place to start is the VI lovers home page or, if you are in a hurry, the quick reference card.
I saw my friend using XGL/Compiz on his laptop the other day and was instantly hooked. This technology enables really, really (Vista-like?) pretty graphics and some cool cube-virtual-desktop-switching functionality. Trust me, it's awesome, and once you see it in action, you'll never go back (compiz in action on YouTube). Unfortunately, it's really problematic to install and in heavy development. Needless to say, it's not the most friendly program(s) ever. I'm still trying to get it working on mine, but here's some info in case you want to check it out for yourself:
CTRL + ALT + Left/right arrow key. Switches to the new side of the cube for me.
CTRL + ALT + SHIFT + Left/Right arrow key- Takes the in focused app around cube.
CTRL + ALT + Left Click on Desktop - allows you to use the mouse to rotate cube.
F12 - uses the Expose like trick
Alt- Tab - switcher Vista-style
I'm using a Compaq Presario x1000 laptop with a Mobility Radeon 9200 Graphics Card. I start up and then it flickers between the line that says it's running the script /etc/rc.local in the terminal and the ubuntulogin screen and a white screen. I also hear the ubuntu drums at the very beginning of this process. Eventually it tells me that there's a problem with the x server (not the garbled, usual problem with the X server output), I hit OK, and it takes me to the Ubuntulogin screen. This is all very strange, since /etc/rc.local only has an "exit 0" in it and everything else is commented out. I guess it's not all that big of a problem since I can still log in and use my computer, but it's pretty annoying.
Update: Following these instructions gives me a bit better results, but still doesn't work. At least my computer doesn't go through the whole flickering screen dance but it still starts up with the checkered background while loading and the "X" for the cursor and only allows me to logout and not shutdown. I'm not sure exactly what that means, but I know it means something is funky with the X server. It's also really, really slow with graphics. Perhaps the next walkthrough I run across will be better? John also tried it on his IBM ThinkPad and he failed in his quest as well.
Second update: IT WORKS!!!! Check this unofficial guide out for the instructions I followed. I gather that theses ones are somewhat "safer" than others (no customization that I can find...) which is why it is on this authoritative page.
Third update: check out the sweet video below for a taste of compiz (no, the instructions that worked for me don't have some of the functionality shown, but it's still absolutely sick):
Fourth update: Compiz is installed, but not enabled, by default in Ubuntu 7.04. Enable it by going to the System->Preferences->Desktop Effects menu. There is a great guide to configuring compiz here.
A constant problem I have is converting file formats from one to another to satisfy the powers that be. This is especially a problem with audio files. I don't want .m4p files from the iTunes store because those are DRMed, which restricts my fair use rights. I don't want .ogg because iTunes can't play them. (As you can see, iTunes causes a lot of problems, but I still have an iPod so... well, my next mp3 player will not be an iPod, for sure.) I've settled on converting all my music to .mp3 as a good compromise. The first step in converting files, my personal choices aside, is to find out what you want to convert to. Here are some sites with some good information:
http://filext.com/ Probably more data than you'll ever need on the subject; has a helpful search box for getting info about a specific file extention, including what programs use it
Now for audio conversions. There's tons of stuff to do this for you on sourceforge and that you can pay for. But, if you don't want to take that route, there are a few key programs that you should know about. The big ones are mplayer, faad, and lame.
There's a lot of hype around "Mash-up"s, which is code for doing something with Google Maps. I took a look around and saw what I could find about this emerging phenomena:
Here are some sites that chronicle cool uses of Maps Mash-ups... there is a mash-up for everything, it seems: cheap gas, crime, etc... chances are, if you want it, it's there
Installation of OpenSSH was a breeze. Just one command from Breezy Badger (Ubuntu 5.10) server installed it on my server: apt-get install openssh-server. Now I can administer my box from anywhere! Yay! (provided, of course, no power outages, etc...)
To SSH into a server: ssh <username>@<ip address>
To upload a directory recursively (with encryption... blowfish is an encryption algorithm and scp stands for secure copy protocol, a utility available on almost all UNIX-derived machines): scp [-c blowfish] -r <source path> <username>@<target ip address>:<target path> To download over scp, switch the source and target.
For example, to upload from your music collection: scp -r /home/<username>/Desktop/Musical/Music/Depeche\ Mode/ <username>@<server address>:/home/<username>/Musical/Music/ And to do the opposite (download a directory from the server, in this example to the current directory): scp -r <username>@<server address>:/home/<username>/Musical/ .
Another option is sftp which can perform ftp-like operations (including interactive sessions) over an ssh connection.
To create accounts for users (the nice way), the command is adduser <user> which will create an entry in the etc/passwd file and add a home directory for that user (and probably some other stuff, too...)
userdel -r <user> delete accounts for users (the nice way)(-r means delete the home directory as well)
passwd <user> change a user's password
uptime tell how long a system has been running
du -h <file/directory>display a human-readable estimation of how much disk space something is taking
df -h display a human-readable report of file system disk space usage
ps report a snapshot of the current processes
ps aux (username, process ID, %CPU, %MEM, virtual memory used (pages), physical memory used, TTY, STAT (process state), date of start, time of start, command)
pstree display a tree of processes
arp display IP->MAC translation tables
acpi display battery status
shutdown -h now shut down, power down
uname print system information (kernel version, processor, etc)
whereis locate the binary, source, and manual page files for a command
locate find file names on the whole system FAST (if it's not finding a new file, run updatedb to update locate's index and then run locate again)
last -a show a listing of users that have logged into the system and from where
screen screen manager (very useful for doing heavy duty stuff on remote systems... see tip #7 of this post for details)
free -m display free and total memory in MB (RAM and swap)
fuser -v <file> show the user, PID, access type and command accessing of an open file (v for verbose)
lsof <file> for even more information than fuser
Important files/places:
/proc directory that contains a lot of hardware and system information
Here is some information on configuring vsftpd 2.0.3 on Ubuntu 5.10 (Breezy Badger):
The settings for this program are in /etc/vsftpd.conf There is a short manpage for vsftpd ("man vsftpd" is the command) but the manpage for the file ("man vsftpd.conf") gives a more exhaustive description of options that vsftpd offers. Options are set in option=value form in the config file (example: "anonymous_enable=YES"). Most settings are not enabled if they are not found in the config file but there is some default behavior if some settings are not found. Check the manpage and FAQ for details. I'm mostly concerned with setting up access so that only I can get access to this machine. There are a few types of users in the FTP server paradigm: local users (that have an account on the machine), anonymous users (just anyone on the net) and root. Here are some simple options to set to achieve what I want to do:
Anonymous users:
anonymous_enable -- allows anonymous login, on by default
anon_upload_enable -- allows anonymous users to upload files... keep this off unless you want a lot of porn on your server (so they say)
anon_mkdir_write_enable -- allows anonymous users to use any form of the ftp write command
no_anon_password -- allow anonymous users to login without a password... probably a good idea to enable this, since the password is just "anonymous" otherwise
Local users:
local_enable -- allows local users to log in... I enable this so I can log in as myself
chroot_local_user -- restrict local users to their home directories (apparently a security risk... read the vsftpd FAQ for details)
chroot_list_enable -- enables a list of users that can use the chroot() command
chroot_list_file -- the location of the file that specifies the users that can use the chroot() command... with my settings, the users listed in this file have full access to the system whereas the users not listed are restricted to their home directories
Other:
ftpd_banner -- the message users see when they login
write_enable -- enable any form of FTP write (allow users to put stuff on server)
To restart vsftpd with an edited config file (that is, to see the changes you just made to the file put into effect) use this command: /etc/init.d/vsftpd restart
This blog is primarily for me to write down how to use a particular technology after I learn it so I can pick up where I left off when I return to it. Of course, you are more than welcome to use the information here for your own resources!
I also use this blog to host long-winded essays that I can point people to, instead of explaining my position on issues to each and every person that asks. It's much easier to refer the interested here.