Blog Navigation
Partners
Latest Activity
Phil explains how to use the old telephone tones to wane off telemarketers!
Posted on: October 27th, 2011 by Famous Phil
I bring you a guest post from Nadia Jones this week! I will return next week with a simplified IMAP reference guide.
Over the past few months, a large subset of the Linux community has been all ablaze in disagreement and controversy. The disagreement has been over a dramatic change in interface to a popular operating system (referred to in the Linux world as a “distro”) called Ubuntu.
Some Linux and Ubuntu Basics
Before we get into the details, I think it is important to understand the basics of Linux and Ubuntu. Linux refers to the kernel of the operating system, the core under-the-hood process that handles things like hardware management, etc. The Linux kernel is completely open source, so there are many distros wrapped around it, each with their own combination of software, graphical front-ends, and what have you. Ubuntu, maintained by a company called Canonical, is believed to be the most popular free Linux distro.
Ubuntu’s New Release: Unity
Up until version 11.04, which released April 2011, Ubuntu has used a graphical front-end called Gnome. It is considered stable by many users and has had a long period of usage in Ubuntu. With the release of 11.04, Canonical experimented with a new front-end called Unity. So far, users have complained Unity being very buggy, counter-intuitive, and oversimplified.
For example, Unity has a new docking bar locked on the right side of the screen that is very similar to Apple’s docking bar at the bottom of Mac OS X. The problem with this dock is that it looks exactly the same regardless of which programs you have open on your system. So if you are juggling four separate windows of Google Chrome, and all of them are minimized, there is no taskbar-like setup to easily pick and chose which one Window you want. You can only see the one Google Chrome logo on the dock. Click it, and all your Chrome windows appear on the screen at once. There are many examples like this, in which everything seems to take one or two clicks too many. Essentially, they tried taking a page from Apple and achieved very little.
Perhaps the bigger upset is the buggy elements of Unity. Linux distros (including Ubuntu) are known and developed for their high efficiency and reliability. Very modest computer systems can run on Linux distros with no problem for hundreds of days, with no problems and requiring no restart. With Unity, many users are reporting that they have to force restart their systems every work or so because the unity dock locks up, windows will freeze, or any number of glitch, buggy reasons.
Beyond User Experience, Where’s the Controversy
Bugs are a part of any operating system, and in due time, they will likely be fixed. And the flaws of the user interface can be tweaked and customized with enough frustration and elbow-grease, so this shouldn’t be a permanent source of contention either. With two of the biggest complaints of Unity being fixable, this begs the question: Why is there all this controversy?
The most sensible explanation lies in the normative ethics of open source software development. There have been countless cases of developers making mistakes and bad decisions in creating and updating software. Typically, however, the developers listen to the feedback of their users and fix their mistakes.
Yet, when Mark Shuttleworth of Canonical got overwhelming feedback from Gnome developers that they didn’t like Unity and didn’t think it was a good fit for their system, Shuttleworth shifts Ubuntu to use Unity as the default front-end anyway. This effectively forced a split in the Ubuntu community. Many intermediate to advanced users will either revert back to using Gnome or find a different distro altogether. Yet Canonical is pushing forward as if there is no disagreement or problem whatsoever.
Bottom Line
While I do feel like this whole situation is a complete blunder on Canonical’s part, I do not think it will lead to any type of dramatic end to the company. Sure, some great developers and innovative users in the community may leave, but Ubuntu’s grasp over the Linux community is too big to lose hold.
I do think that Unity is fundamentally more cumbersome than Gnome. For a interface that is spreading to more and more school districts, public libraries, and government buildings due to its free pricing and ease of use, I worry that Unity is a step in the wrong direction. Still, I’m sure that the fact it is free will prevail over whatever ease of use obstacles Unity has.
Author Bio:
This is a guest post by Nadia Jones who blogs at online college about education, college, student, teacher, money saving, movie related topics. You can reach her at nadia.jones5 @ gmail.com.
Tags: ubuntu, Unity
Posted in Technology
|| No Comments »
Posted on: September 21st, 2011 by Famous Phil
Last week, I finally broke down and got an iPad. I did this partially because I wanted a new toy, and partially because I wanted to find out what the hype is with this gadget. I’ve had several recommendations saying that I should buy one from many friends in the past, so I finally took the advice and jumped head into a product that I probably wouldn’t have looked at without the positive encouragement. The final piece that really motivated me to get this product was that I would like to learn to develop for it, and I’ve found that the only way to effectively develop for anything, denoted X, is to be an active user of X.
After a week with the device, it makes sense to finally make an unbiased review of it. When I first got home with it, I was really impressed with the design of the packaging. Only Apple would put the iPad into a backpack style bag that’s really durable to carry out of the store, in addition, the packaging for the iPad was also well thought out. There were tabs that easily allowed it to be pulled out of the box (no turning the box upside down, etc to remove it). So after the unpackaging of it, I plugged it in to find that I needed to install iTunes to set it up. This has got to be one of the worst things about Apple products, because I cannot stand iTunes, it’s just so bloated, and I manage my music library through other means! Anyways, I installed iTunes and accepted the license agreement. I couldn’t do much else though because iTunes couldn’t connect to my AppleID account because I firewall my internal network very heavily (which is fine). Accepting the license agreement was enough to get the device to work without a computer; I quickly enabled the 3g access through Verizon and signed into the Apple Store using the 3g connection.
My first impression of the 3g access on my iPad was a very positive one, I actually get a little signal on the Manhattan, NY Subway which most phones I’ve used don’t even get, and I think this is because the antenna on the iPad is bigger. This signal is just enough to check email and such, nothing too demanding. I also get roughly 1.7Mbps down, and .42Mbps up on the 3g connection which is quite good for a Verizon mobile connection (EvDO at least, LTE would be pretty crappy). I also love the fact that 3g is built in… so there is no tethering or anything of that sort. Unfortunately, there are a few downfalls to the 3g model. The first is that it will cost more and there is no way to sign up for a long term contract to get a big discount on the device (unlike phones). I was pleased to find that the 2GB mobile data plan was only $30/month, which is well within my price range and usage range. There are several other plans as well that are just as great. If I were to recommend an iPad to anyone, I would strongly suggest the 3g model, just because you can use it anywhere without having to worry about being within range of a wireless signal.
I bought the smart magnetic cover for my IPad because I figured it would adequately protect it. Although it does that, it really helps make the unit more dirty, especially if you goto a restaurant and put it on the table, since the cover that touches the screen also touches the table unless you put it in that triangle stand arrangement. For general movement, the cover does a good job at protecting the screen. Looking back, I wouldn’t change the decision to get the smart cover, but I do need to look into a carrying case / solution for this iPad. It is too big to carry in a pocket, but it’s too small to put into my laptop case, and that presents a problem. I currently carry it around on my side everywhere, which isn’t awful, but does make me more of a target when annoying people ask for money on the streets (it is NYC after all). I haven’t quite found the perfect solution to this yet, but I’m sure it will come with time and more exposure to my options.
Apple is known for their App Store, and I someday hope to make some apps that appear in it. For now, I downloaded several apps that made sense for my particular usage of the iPad… I’m going to just briefly mention them now. The first application I got was Outlook Mail Pro by Code Before Dawn, which was meant to give a very similar interface to Outlook. It works well for mail because the interface is well thought out (perhaps a bit better than the default mail app’s interface), but I still prefer using the built in Mail Application support for Exchange when it comes to the calendar, contacts, and task list access. I also bought the iTap RDP application for remote desktop; it saves passwords and allows several bookmarks to remote desktops. I use this for connecting to my remote windows computer for Trillian instant messaging and handling other issues that only a true computer can do. Over 3g, the speed is phenomenal for response times to clicks and such. I also bought the Remoter VNC application which supports SSH, Telnet, VNC, and other remote access protocols. Remoter uses Putty keys for authentication which is why I sprung for this application over its competitors, and so far I’m very happy with it. Other free apps that I got were Facebook, speed test, Skype, yelp (restaurant ratings), and Sirus XM (online subscription required). Remember that Skype and Sirius will use a lot of data, so I tend to use Wi-Fi when I use those apps. I did try a video chat on the Skype application and I believe that it works better on my iPad than it does on my main computer!
I will now go onto usability of the iPad. When I first got the iPad, I was concerned that I wouldn’t be able to get used to the keyboard. Honestly, at first, it was difficult to get used to since there is no bump on the F and J keys (home keys), so you have to look down to place your hands. It was also weird not being able to rest my hands on the keys. Overall though, I did quickly adjust to it and even with big hands, I can type fairly well on the keyboard. One thing I did notice is at first my hands would always drift away and hit the wrong keys, but somehow that has gotten far better, I’m not sure if Apple is doing error correction or if I’m just getting better at keeping my hands in a consistent position while typing. The second usability issue was the limited nature of most Apple products; fortunately, I haven’t hit any of these limitations that I couldn’t work around (e.g. remote desktop). So far, my iPad is quickly replacing most of my computers since I’m quite used to it now (I’m actually typing this up on my iPad). The battery life on the iPad is great, I haven’t had a single issue with battery life, and the lowest I was able to get the percentage to was 65% remaining, and that was after a full day of using it while visiting several parts of Manhattan. This segue takes us into a side topic about the maps application. So far, the iPad tends to be more reliable than my phone when it comes to placing a dot on the built in map telling me exactly where I’m at.
Overall, I love how fast the iPad is to display anything. Unlike other things I’ve used, I can usually click something on the iPad and it loads instantly with very little delay. I really like this about most Apple products and I wish that other competitors (e.g. Android) could make similar advancements in speeds for embedded devices. Oh well, I’m sure that Google and their partners are working on this, and all good things take time to perfect.
So there you have it! Overall, I would recommend the iPad to anyone, but at the same time, I really do think that you have to take the plunge yourself to discover if it is right for you. I took the chance (with a 14 day return policy), and I found out that I definitely have great uses for my iPad, and I’m quickly learning why others strongly recommend it.
As always, thanks for reading, and I hope to post more frequently now that things are settling down in my life and are starting to become the same old routine, just another day. I have a few interesting blogs on business and high traffic hosting coming soon, I just need the time to thoroughly review what I’ve already written for them so that they’re as clean and concise as possible.
Also, in the near future, FamousPhil will be getting a new, professional design (mobile and full computer oriented!), so that is something that you can look forward to!
Tags: Apple, iPad, review
Posted in Mobile Technology, Personal, Technology
|| 2 Comments »
Posted on: August 22nd, 2011 by Famous Phil
Anymore, it seems like posting here is a seldom activity because I don’t often deal with server administration issues any longer (although I am working on changing that
). Today, I was asked to reset the password on a Mac Server because the user didn’t remember the password. Personally, I don’t know how a server oriented password can be lost, but whatever, I guess I’ve seen it all now
Mac, like Linux and its BSD roots, has a flaw when you have physical access to the machine. Basically, passwords are stored as password hashes in a simple file on the server. To change the password of any user account, you basically have to gain write access to the said password (or shadow) file and change the hash to something that matches the new desired password. Typically, this is very easy to do for any kind of Linux or BSD operating system. For all of you Windows fans, Windows stores the passwords encrypted in SAM files (if I recall correctly), and there are also password reset disks available that you boot from and overwrite the administrator account password with your own password. Once again, resetting a password is very easy to do to gain access to a machine provided you have physical access. One tiny exception to this rule on every platform, if the encryption feature is enabled on a user account (provided it exists), the files that were encrypted will never be readable again if you change the password using this method.
Since this is resetting the password of a Mac, I’m only going to cover the Mac OS. Mac, like Linux and BSD, has something called single user mode which is basically a recovery environment built into the operating system. When something doesn’t work properly, this environment typically boots and gives the local user (on the console) a command prompt that is running as the root user (or superuser). Typically in single user mode, the local hard disk is read only, but because you are root, you can simply change that to write mode. Afterwards, its a matter of changing the password. If you aren’t a single user mode fan, Mac even puts a reset password link in the utilities menu of their installation disk that does the work manually.
So, using the single user mode shell, here is the procedure to resetting the password of your mac:
Tags: Mac, password, reset, root, single user mode
Posted in Hosting / Server Administration, Technology
|| 2 Comments »
Posted on: July 3rd, 2011 by Famous Phil
Over the past couple of months, I’ve found that the script that I posted at http://famousphil.com/blog/2011/01/a-decent-backup-strategy-for-exchange-2010-sp1/ hasn’t been working perfectly for my needs. This relatively short blog is kind of a back track blog to explain the issues and provide some fixes for them.
The original script I posted does not verify that the backups actually completed. The emails I got were simply gibberish. I was willing to accept that for a while until during monthly maintenance when I manually verify backups, I was finding that backups didn’t always complete. I’ve tracked this down in the error logs and found that the memory in the server isn’t enough for the backups at times which has them fail at certain times. Due to the lack of user base on my server (4 light users), I can’t justify adding more ram (I currently have 4GB) because I’d have to upgrade the entire server. So instead, I did some RAM optimization and re-wrote the backup script to email me the actual backup names that completed successfully.
First for the tips. I recently learned that Active Directory can be modified from the backend, so using this, I modified the Information Store service (store.exe) in Exchange to only use at most 512MB of ram. I used the information at http://terrytlslau.blogspot.com/2011/03/limiting-exchange-server-2007-and-2010.html for doing this, I briefly repeat the procedure here in the even that this link is no longer reachable.
1. At Domain Controller, login as a Domain Administrator. 2. Click "Start", enter "adsiedit.msc" into the search box, hit enter. 3. Right-click "ADSI Edit", select "Connect to". 4. Enable the Naming Context view, click ok to connect 4. Under the "Naming Context" menu, select "Configuration". 6. Expand to "Configuration > Services > Microsoft Exchange > > Administrative Groups > Exchnage Administrative Group > Servers > > InformationStore". 7. Right-click "InformationStore", select "Properties". 8. Select "msExchESEParamCacheSizeMax". 9. This value is set in pages, in Exchange 2010 the size is 32KB/page; Exchange 2007 is 8KB/page. Simply figure out the number of pages for the amount of ram you want to limit store.exe to using. For instance, if you want to limit the Database Cache to 4 GB of an Exchange 2010 server, set msExchESEParamCacheSizeMax to 131072 (4 GB = 4.194.304 KB / 32 KB). If you want to limit the Database Cache to 2 GB of an Exchange 2007 server, set msExchESEParamCacheSizeMax to 262144 (2 GB = 2.097.152 KB / 8KB). 10. Ok everything and restart the Information Store service (possibly the server)
After limiting the Exchange Information Store service, I simply restarted the Information Store service and that seems to have fixed the gouging memory issue.
As a second optimization procedure, I started tackling the IIS Worker Processes. Exchange has several application pools that it uses, you can think of an application pool in IIS as a separate instance of Tomcat or Apache for each website. Application Pools isolate websites to that they can’t affect each other. On the downside, application pools also hog a great amount of memory and for the features of Exchange that you may not use often (e.g. powershell, calendar, exchange control panel), it takes some time for these features to load initially (for me, its about 30 seconds). My solution was to limit Exchange to two application pools. For anything service related, I used the Exchange Service Pool (e.g. EWS, Powershell, Autodiscover), and anything client site based (e.g. OWA, Calendar, ECP, ActiveSync) in the OWA pool. I still do not know if any update to Exchange may reverse this or break this, but I do keep it in mind during updates. The result of doing this is that not only is memory consumption reduced significantly, but Outlook Web Access, Exchange’s Calendar display (for the public), and Exchange Control Panel all load much faster now since the overhead in IIS is already loaded. Of course, I wouldn’t recommend doing this unless you can’t easily upgrade the amount of memory in your server.
Finally, I will leave you with an improved export script that replaces the script in my previous blog at http://famousphil.com/blog/2011/01/a-decent-backup-strategy-for-exchange-2010-sp1/. This script verifies that all of the users were actually uploaded and emails the complete report to you (instead of some garble). I’ve found it to be very helpful in determining if a mailbox was failing to export to a PST without having to login to the file server and check. As always, use this script at your own risk, I am willing to provide limited support as time permits.
# Exchange 2010 SP1 Mailbox Export Script
# Originally from Steve Goodman.
# Modified by Philip Matuskiewicz for Matthouse.us / famousphil.com 1/2/11 FIXED *7/2/11*
#define information here
$server = "host.example.com" #server hostname
$users = @("Joe", "Mary", "Phil") #users to archive
$destination = "localhostpstbackups" #network share to backup to
$emailfrom = "server@yourdomain.com"
$emailto = "you@yourdomain.com"
#define some internal variables
$output = ""
$error = 0
$date = Get-Date
#check for errors
if (!(Get-ExchangeServer $server -ErrorAction SilentlyContinue)){
$output += "Exchange Server $server not found`n";
$error = 1
}
if (!(Get-MailboxDatabase -Server $server -ErrorAction SilentlyContinue)){
$output += "Exchange Server $server does not have mailbox databases";
$error = 1
}
#create a batch job if the above tests succeeded
if ($error -ne 1){
$jobname = "Export_$($date.Year)-$($date.Month)-$($date.Day)_$($date.Hour)-$($date.Minute)-$($date.Second)"
$output += "Job title is: '$($jobname)' `n"
Write-Output "Job title is: '$($jobname)' "
foreach ($mailbox in $users){
#remove existing PST file
if (Get-Item "$($destination)$($mailbox).PST" -ErrorAction SilentlyContinue){
Remove-Item "$($destination)$($mailbox).PST" -Confirm:$false
$output += "Existing PST was deleted (Normal): '$($mailbox)' `n"
Write-Output "Existing PST was deleted (Normal): '$($mailbox)' "
} # end if
#request a backup of the mailbox, Exclude the recoverable items / deleted items
$mailboxjobname = "$($mailbox)-$($jobname)"
New-MailboxExportRequest -BatchName $jobname -Mailbox $($mailbox) -FilePath "$($destination)$($mailbox).PST" -ExcludeDumpster -Name $mailboxjobname
$output += "Mailbox Queued: '$($mailbox)' `n"
Write-Output "Mailbox Queued: '$($mailbox)' "
} #end foreach
} #end $error -ne 1
#wait for the jobs to complete
$time = 0;
while ((Get-MailboxExportRequest -BatchName $jobname | Where {$_.Status -eq "Queued" -or $_.Status -eq "InProgress"})){
Write-Output "Waiting on backup, it has been $($time) seconds"
$output += "Waiting on backup, it has been $($time) seconds `n"
sleep 600 #10 minutes
$time = $time + 720;
} #end while
#check for any jobs that didn't complete
$incomplete = Get-MailboxExportRequest -BatchName $jobname | Where {$_.Status -ne "Completed"} | Get-MailboxExportRequestStatistics | Format-List
$complete = Get-MailboxExportRequest -BatchName $jobname | Where {$_.Status -eq "Completed"} | Get-MailboxExportRequestStatistics | Format-List
if($incomplete){
Write-Output "ERROR: Something didn't complete, output is '$($incomplete)'"
$output += "ERROR: Something didn't complete, output is '$($incomplete)' `n"
}
if($complete){
Write-Output "Completed Successfully, output is '$($complete)'"
$output += "Completed Successfully, output is '$($complete)' `n"
}
# Remove Requests and clean up
Write-Output "Cleaning up requests that were part of the job '$($jobname)'"
$output += "Cleaning up requests that were part of the job '$($jobname)' `n"
Get-MailboxExportRequest -BatchName $jobname | Remove-MailboxExportRequest -Confirm:$false
#verify that all the PST files were created...
foreach ($mailbox in $users){
#remove existing PST file
if (Get-Item "$($destination)$($mailbox).PST" -ErrorAction SilentlyContinue){
$output += "PST FOUND!!!: '$($mailbox)' `n"
Write-Output "PST FOUND!!!: '$($mailbox)' "
}else{
$output += "ERROR: PST NOT FOUND: '$($mailbox)' `n"
Write-Output "ERROR: PST NOT FOUND: '$($mailbox)' "
}
}
$SmtpClient = new-object system.net.mail.smtpClient("double.matthouse.org")
$msg = new-object Net.Mail.MailMessage
$msg.From = "$($emailfrom)"
$msg.To.Add("$($emailto)")
$msg.Subject = "EXCHANGE EMAIL BACKUP DETAILS"
$msg.Body = $output
$SmtpClient.Send($msg)
Write-Output "Script complete!"
Tags: backup, exchange 2010, powershell, pst, script
Posted in Hosting / Server Administration, Technology
|| 4 Comments »
Posted on: July 2nd, 2011 by Famous Phil
Last night, I was tasked with moving 25,000 files (3GB worth) between two of my Linux systems. Traditionally, I use tar and gunzip (tar czf file.tar.gz directory/) to archive files for network transfer, but for whatever reason, I used the zip utility that is bundled with most Linux distributions (zip -r file.zip directory/).
The zip process went through fine and created a zip archive of the directory, but this is because the zip was done on a 64 bit build of CentOS Linux (where zip is compiled for large file support). I transferred the archive to the destination server (32 bit build of CentOS Linux). As any decent admin does, I verified that the checksum (openssl md5 file.zip) matched on both ends (to check for corruption). The md5 checksums matched, so I proceeded to unzip the file (unzip file.zip). Below is the error I received:
End-of-central-directory signature not found. Either this file is nota zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive. unzip: cannot find zipfile directory in one of file.zip or file.zip.zip, and cannot find file.zip.ZIP, period.
It turns out that the 32 bit version of CentOS includes the zip utility that isn’t compiled with large file support. To rectify this, we must download the zip source code and recompile with large file support. The instructions that I used are at http://www.stevenbarre.com/blog/2007/03/04/how-to-unzip-large-files-greater-than-2-gb/
1. install zlib and zlib_devel using yum if you don’t already have them.
2. Download the source code of unzip from http://www.info-zip.org/.
wget http://sourceforge.net/projects/infozip/files/UnZip%205.x%20and%20earlier/5.52/unzip552.tar.gz/download
3. Extract the source code and move the appropriate make file to the main directory
tar xzf unzip552.tar.gz cd unzip-5.52/ mv unix/Makefile ./
4. Modify the MakeFile to enable large file support
Find:
CF="-O3 -Wall -I. -DASM_CRC $(LOC)"
Replace With:
CF="-O3 -Wall -I. -DASM_CRC -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(LOC)"
5. Compile unzip
make linux
6. Use the executable unzip to extract file.zip
#assume file.zip is at /root/test/file.zip mv unzip /root/test cd .. #clean up the directory, remove unzip's source code rm -Rf unzip-5.52 rm unzip552.tar.gz #unzip the file cd /root/test ./unzip file.zip
Tags: archive, end-of-central-directory signature, large file, large file support, Unzip, Zip
Posted in Hosting / Server Administration, Programming, Technology
|| No Comments »
Posted on: July 1st, 2011 by Famous Phil
Often times, I find myself working in a remote Linux terminal window. The other day, I had the need to share what I was doing with a friend, but I didn’t want to share my entire local desktop because sharing a full desktop is slow and laggy. So I quickly looked into sharing a screen session with him so he’d only see the command line window that I was in, and I know I will need it again, so its going up here. For those of you who have a Mac or Linux, you might know that you can have multiple desktops and go through them by some key combination (usually ctrl-alt-arrow). In a very simplified nutshell, screen basically allows for the user to exploit multiple desktops.
Here is how you share a screen session:
#User 1, initiator of the screen session screen -R sessionName #User 2, connecting to an existing session screen -x -R sessionName
The -R flag means try to reattach to an existing session, if the existing session does not exist, create a new session and attach to that. The -x flag means to connect to an already attached session, which allows for session sharing.
I ran into a problem as a non-root user (that I normally run as) when I first started using shared screen sessions. The error is as follows:
Cannot open your terminal '/dev/pts/0' - please check.
There are several terminal devices that screen can use under the /dev/pts directory, starting with 0. Only root can traditionally access these terminal devices, therefore, we need to modify each necessary device to allow normal users access. I didn’t research the security implications that the following fix has, so use this at your own risk. The server that I was using has only trusted users on it, so I was not concerned about possible risks.
#run this as root, or as sudo #this gives others read and write access to the device chmod o+rw /dev/pts/0
Finally, up until last week, I could never get myself out of a screen session safely without completely closing my putty terminal window. Here is the proper key sequence to detach from a screen session.
ctrl-A followed by ctrl-D
To terminate a session in screen, simply type exit.
Tags: Linux, screen, shared session, unix
Posted in Hosting / Server Administration, Programming, Technology
|| 1 Comment »
Posted on: June 18th, 2011 by Famous Phil
This is a topic that I should have blogged about a long time ago (when I actually did it), but I was busy at the time and stuff gets pushed onto a back burner (or even the freezer) when I don’t have the time. Oh well, this article is better late than never. I will also provide a script that powers https://www.matthouse.us/status.php.
Nagios is a server monitoring solution that can monitor entire systems and services running on those systems. For Matthouse, Nagios runs on a reliable virtual private server that has a SLA to be up all of the time, the provider I choose has complete redundancy so that this VPS will not go down due to localized hardware, network, or power failures. Nagios also runs on a system that is completely off-site from all of my other servers, so it can see if a datacenter goes down and notify me properly. If you’re going to host Nagios yourself, I’d strongly suggest getting a similar setup since you don’t want your monitoring system to fail with everything else!
So let’s get into the actual installation of Nagios. (THIS WAS UPDATED 6/23/11) Read the rest of this entry »
Tags: CentOS, install, monitor, nagios, server
Posted in Hosting / Server Administration, Technology
|| 2 Comments »
Posted on: June 13th, 2011 by Famous Phil
I bring you a guest post from Jason who is associated with the subtext project which is a blog written in ASP.net! Disclaimer… I do not guarantee (or verify) the accuracy of guest posts.
A webmaster has many things to think about from choosing the right host to making sure everything is running smoothly on the backend servers. Fortunately, different tools, applications and developments exist that can help us simplify the process of running a website. Subtext skins can help designers more effectively and efficiently create the styles used for personal blogs on their website.
While you can always decrease your workload by choosing options like managed hosting, if you are responsible for web design then you should look into the many advantages of Subtext skins for blogging.
What is a Subtext skin?
Subtext is a blogging platform offered as open source software under the BSD license. The whole concept behind Subtext was to create a very simplified blogging engine that allows bloggers to concentrate on creating actual blog content rather than trying to figure out how to use the blogging software.
Almost all websites these days have their own blogs. In addition, many sites offer blogging as a service to their users who can sign up to create their own personal blogs. You can use Subtext both for the site’s own blog and to offer blogs to site members.
A Subtext skin refers to the styling and layout of the blog page. Skins are versatile as they allow you to create page formats and designs without coding from scratch. A Subtext skin is actually made up of five separate style sheets that can be used to format different elements on the page like divs, spans, boxes, headers, footers, sidebars and forms.
The five style sheets used for each Subtext skin are:
• style.css – the default style sheet that determines the basic underlying skin layout.
• secondary style sheet – this file handles the specific Stylesheet attribute of the skin. The secondary style sheet is generally used to create styling contrasts over the style.css file. For example, the web designer may choose to give the header a different border than the sidebars where in the style.css file they use the same border.
• custom.css – this style sheet is used for custom design features set by the blog author. Primarily used to set styles and layout for personal badges or for the actual post content.
• non-attribute css files – generally used for CSS frameworks or for system styles.
• css files with limited attributes – these stylesheets have a title and media attribute, and cannot be merged with other css files. The attributes specify IE version compatibility and that they are applicable only in screen mode or in printing mode.
Packaged and custom Subtext skins
Web designers can choose from a large library of pre-designed skins or they can create their own custom skins. Creating a custom Subtext skin requires some basic knowledge of CSS scripting and also learning the basic Subtext parsing rules.
Fortunately, Subtext is highly simplified to allow users to quickly master the underlying script.
Skin templates are folders that can be used to render different Subtext skins. Each folder actually contains a number of skins that are related in certain attributes and themes. The folders or templates have their own series of controls that are used to render a skin in that template along with associated style sheets.
Once you have a library of packaged and/or custom skins, you will be able to style blogs quickly after learning how to tweak the skins and templates.
Instead of racking your brain each time you need to come up with a new design, you can simply browse through your selection of Subtext skins. Each skin can be modified according to the primary and secondary CSS files associated with the skin. You can easily find the types of skins you are looking for because they will be arranged in skin templates or families according to related attributes. For example, you can have a Rainbow template. a Geometric template and an Origami template – each having multiple skins that express the same theme. The number of templates is only limited by your imagination and willingness to create custom skins.
When using the Subtext blogging software, the skin templates are arranged in folders in an easy to manage directory system. The setup makes it simple to find the skin you are looking for and simply click on the selection to implement it on the Subtext blog.
By using Subtext skins, you can save time and energy creating page designs and layouts for multiple blogs. No need to code style sheets from scratch when you can access an easy-to-use Subtext skin library and quickly find what you need.
Each skin will handle the styling and layout of all page elements including headers, footers, sidebars, text format, boxes and forms.
You can find out more about Subtext and skins at the Subtext Project Site: http://www.subtextproject.com/.
Tags: asp, blog, engine, skin, subtext, theme, wordpress alternative
Posted in Hosting / Server Administration, Programming, Student Life, Technology
|| 3 Comments »
Posted on: June 3rd, 2011 by Famous Phil
There are many reasons why you might be reading this post, but likely, you’re trying to figure out how to install this complex heap of code (that has its root node removed, no doubt, ha ha). If you didn’t get my last joke, I feel sorry for you, but the show must go on.
Gitorious is an open source repository management system similar to Trac on SVN. The software looks really nice (gitorious.org), and it has a lot of built in features for managing git repositories. For those of you who are not familiar with coding, code repositories are often set up to enable many coders to work on the same project simultaneously (different portions of course). Repositories also enable versioning so that you can easily revert to an older copy of your code base if something breaks along the way. Repositories are often centralized so that only a single location has to be backed up, in this case Gitorious centralizes git repositories.
Truthfully, there are three memorable software programs that have been notoriously difficult to install and configure in my experience, these are as follows:
With all of the above said, the installation process of gitorious isn’t for the leisure system administrator to install. This took me approximately 3 days of research to successfully install and understand. I installed it on a separate system only because I didn’t want it hurting any of my existing production systems. In the end, I’m glad I did this because I learned that Ruby isn’t very memory efficient and this application easily eats up most of the 1GB of ram allocated to it in a VPS (Virtual Private Server). And with this said, I invite you to continue reading if you really want to know how to install this software.
Update 6/14: After a few requests, I’ve decided that I will provide a Gitorious installation service on your CentOS server. I will be happy to install Gitorious and make it work (as described below) for a one time paypal payment of $100. For details, contact me directly (see my contact page).
LAST UPDATE: 6/8/2011 – Suggestions from Gitorious Discussion Group
Tags: CentOS, gitorious, install, openvz, vps, Xen
Posted in Hosting / Server Administration, My Site, Programming, Technology
|| 33 Comments »
Posted on: May 31st, 2011 by Famous Phil
I’m still working on other blogs for my site, but my other projects have sort of been put on hold because I don’t have all the information / tools / research I need to write them. So today I thought I’d write a short reference on .htaccess redirects for a problem I started researching yesterday and failed to get a quick answer to.
Using .htaccess, I wanted to force a website URL to always goto https://www.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.<DOMAIN>.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
All .htaccess files start with turning the RewriteEngine on.
RewriteCond is similar to an if statement, if the condition is true, run the next line. With that said, the second line checks to see if the website is being access via SSL / HTTPS (secure method). If it isn’t, the third rule takes whatever the url is and changes it to https://www.
Today was interesting because I didn’t know the 301 and 302 status codes off the top of my head, but now I have a good self-reference for the future
That is all I have for now. Hopefully I can get some Hadoop code posted in the near future that I promised a few blogs ago!
Tags: .htaccess, mod_rewrite, rewritenegine, rules, status code
Posted in Hosting / Server Administration, Programming, Technology
|| No Comments »