Upgrading to WordPress 2.7 Coltrane

| Posted by watashii | Filed under Unix, WordPress

wp27

I have just gone through the tedious task of upgrading my WP from 2.5 to 2.7.  What i’m looking forward to this is the WP Upgrader feature which I can upgrade WP directly via the Admin panel.  This means I don’t need to manually move files in/out of my linux web server in the future.  Of course i have to manually put 2.7 in the first place to do that!

Upgrade document is available here, below are my steps.

1) Backup all my file contents on web server.

tar -cvf - $WEBHOME/blog_dir | gzip -9 $WEBHOME/backup_dir/my_blog.tar.gz

2) Backup the mysql database.  I used WP-DBManager plugin to help me do this. A single click and that’s it!

3) Deactivated all the plugins via admin panel.

4) Delete wp-admin and wp-includes directories on web server.

rm -rf  $WEBHOME/blog_dir/wp-admin  $WEBHOME/blog_dir/wp-includes

5) Download the new WP and place/replace all the files on web server.

6) Login to the admin panel and accept the database upgrade changes.

7) Activate the required plugins.  If using the WordPress.com Stats plugin, I had to ‘transfer’ my old site stats to a new site, even though its the same site.

Read the rest of this entry »

Tags: , ,

Unix Split, Join & Validate Files

| Posted by watashii | Filed under Programming, Unix

Problem


I have a large file.

How can i split it into multiple parts, then join it back together later?

How do i make sure my files don’t corrupt?

I am using Unix.

$ ls -l *.pkg
-rw-rw-r--  1 watashii watashii 648773362 Nov 28 18:01 largefile.pkg

Splitting the files

The following Unix command splits a large file into 50MB (52,428,800 bytes) pieces.  The output is a list of files named xaa, xab etc

$ split -b 52428800 largefile.pkg
$ ls -l x*
-rw-rw-r--  1 watashii watashii 52428800 Nov 28 18:01 xaa
-rw-rw-r--  1 watashii watashii 52428800 Nov 28 18:01 xab
...
-rw-rw-r--  1 watashii watashii 19627762 Nov 28 18:01 xam

Joining the files

To join the files together, we simply use the cat command over each file in ascending order:

$ cat x* > mergedlargefile.pkg

Validating the files

To validate the files, below are some suggestions. File compare it, diff it, run a checksum to compare it.

$ ls -l *.pkg
-rw-rw-r--  1 watashii watashii 648773362 Nov 28 18:01 largefile.pkg
-rw-rw-r--  1 watashii watashii 648773362 Nov 28 18:13 mergedlargefile.pkg

$ cmp  largefile.pkg  mergedlargefile.pkg
$ cksum  largefile.pkg
3332922138  648773362  largefile.pkg
$ cksum  mergedlargefile.pkg
3332922138  648773362  mergedlargefile.pkg
$ diff  largefile.pkg  mergedlargefile.pkg

Tags: , , ,

SSH Passwordless Authentication

| Posted by watashii | Filed under Software, Unix

This post shows how to use PuTTY (Windows) to login to a remote server (UNIX) over SSH without password.

Read the rest of this entry »

Tags: , , , ,

How to Change Default Homepage in Tomcat

| Posted by watashii | Filed under Java, Software, Unix, Web

When browsing to a Tomcat’s webserver, at the root URL over the default port 8080, it usually shows the default jsp homepage as pictured above.

http://localhost:8080

So how can I update / modify, or remove this page?

You might think changing the jsp page at [$CATALINA_HOME/webapps/ROOT/index.jsp] is all you need to do. This is where i found out its not the case! The page contents are compiled within the ROOT web application servlet. To make Tomcat reference the jsp page instead, we need to remove this servlet from being compiled.

Locate the ROOT web application’s config file at [$CATALINA_HOME/webapps/ROOT/WEB-INF/web.xml], and simply comment out the following code fragment:

<!-- Comment this section so I can change the default index.jsp homepage
<servlet>
  <servlet-name>org.apache.jsp.index_jsp</servlet-name>
  <servlet-class>org.apache.jsp.index_jsp</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>org.apache.jsp.index_jsp</servlet-name>
  <url-pattern>/index.jsp</url-pattern>
</servlet-mapping>
-->

This will disable the index_jsp servlet. Now when you restart the Tomcat web application server, it should compile and load the default [$CATALINA_HOME/webapps/ROOT/index.jsp] page instead.

Tags: , ,

Unix ps command – Long Process Listing

| Posted by watashii | Filed under Programming, Unix

When viewing full process listings with ps -ef command, sometimes the command name is too long and gets chopped off at the end of the screen. This command name has a limit of 80 characters.

netcool@sun61 [/opt/netcool] 688 % ps -ef|grep 6176
netcool 6176 1 0 Sep 12 ?  31:55 /opt/netcool/platform/solaris2/jre_1.5.0/bin/java -Xmx1024m -Xms256m -Djava.awt

So how can we show the entire command? The solution is to use the /usr/ucb/ps -auxxwww command:

netcool@sun61 [/opt/netcool] 689 % /usr/ucb/ps -auxxwww|grep -i 6176
netcool   6176  0.1 10.5610440428552 ?  R   Sep 12 31:55 /opt/netcool/platform/solaris2/jre_1.5.0/bin/java -Xmx1024m -Xms256m -Djava.awt.headless=true -Dnchome=/opt/netcool -Dngfhome=/opt/netcool/guifoundation -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Dbase.directory=/opt/netcool -Dsm.props.directory=/opt/netcool/etc/sm -Djava.security.auth.login.config=/opt/netcool/guifoundation/conf/mach_jaas.config -Djava.endorsed.dirs=/opt/netcool/guifoundation/common/endorsed -classpath /opt/netcool/platform/solaris2/jre_1.5.0/lib/tools.jar:/opt/netcool/guifoundation/bin/bootstrap.jar -Dcatalina.base=/opt/netcool/guifoundation -Dcatalina.home=/opt/netcool/guifoundation -Djava.io.tmpdir=/opt/netcool/guifoundation/temp org.apache.catalina.startup.Bootstrap start

Tags: ,

UNIX file size listing – du command

| Posted by watashii | Filed under Programming, Unix

Question: How can I list the true file and directory sizes on UNIX?

boadmin@nshost1>$ ls -la
total 12130522
drwxr-xr-x   5 boadmin  boadmin      512 Aug  4 14:30 .
drwxr-xr-x  31 boadmin  boadmin     1024 Aug  1 22:00 ..
drwxr-xr-x   5 boadmin  boadmin      512 May  7 05:48 DISK_1
drwxr-xr-x   3 boadmin  boadmin      512 May  7 05:47 DISK_2
drwxr-xr-x   3 boadmin  boadmin      512 May 31 14:02 sp3
-rw-r--r--   1 boadmin  boadmin  6207767040 Aug  4 14:33 sp3.tar

Read the rest of this entry »

Tags: , , , ,

Unix – Creating Cron Jobs with Crontab

| Posted by watashii | Filed under Programming, Unix

Cron is a Unix (*nix) utility for scheduling tasks to run in the background.   These are known as cron jobs.  A crontab is basically a text file (cron table) containing a list of commands to be run, under the current logged-in user.

  1. Commands
    crontab -e   # Edit (or create) the crontab file
    crontab -l   # View the crontab file
    crontab -r   # Remove the crontab file
  2. Restrictions
    Crontab access is controlled with a cron.allow and a cron.deny file, listing the associated usernames.  If cron.deny exists, and cron.allow is missing, all users can use crontab.  If both missing then only root is allowed.
    whereis cron
  3. Crontab file syntax
    The syntax contains 5 fields specifying the scheduling datetime values, and the last portion contains the Unix command to run.
    # +---------------- minute (0 - 59)
    # | +------------- hour (0 - 23)
    # | | +---------- day of month (1 - 31)
    # | | | +------- month (1 - 12)
    # | | | | +---- day of week (0 - 7) (Sunday=0 or 7)
    # | | | | |
      * * * * * command to be executed

    On each of the 5 fields, 3 operators can be used to specify the datetime selection.
    # Comma (',') specifies a list of values, eg: "1,3,4,7"
    # Dash ('-') specifies a range, eg: "1-3" or "1,2,3"
    # Asterisk ('*') specifies all possible values for a field.
  4. Crontab file example
    The following job lists the tmp directory structure and appends the output to a log file every minute.
    0-59 * * * *  ls -la /tmp >> /tmp/log.txt

Tags: , , , ,