Drupal

Installing Drupal In Ubuntu 10.04


Drupal is a an Open Source Content Management System. Installation of Drupal on Ubuntu 10.04 is relatively easy. Just follow the simple steps below:

1. Open a terminal and type:
ramz@ramz-desktop:~$  sudo apt-get install drupal6

2. You'll be prompted to select the database. With your arrow keys select mysql and press enter.

3. Enter your MySQL password when you are asked to. This creates a database schema called drupal6 in your MySQL RDBMS.

This is also supposed to auto-create the necessary files in the /var/www/ directory. But it didn't in my case, so I had to go for manual creation of files. Continue with the following steps only if you do not have a drupal directory in /var/www/.

4. Download the drupal6 source from http://ftp.drupal.org/files/projects/drupal-6.15.tar.gz. Extract and do the following.

5. Create the necessary directory in /var/www/.
  ramz@ramz-desktop:~$ sudo mkdir /var/www/drupal

6. Copy the contents of the extracted directory into /var/www/drupal
ramz@ramz-desktop:~$ sudo mv drupal-6.15/* drupal-6.15/.htaccess /var/www/drupal

7. Create a directory files in drupal/sites/.

ramz@ramz-desktop:~$ sudo mkdir /var/www/drupal/sites/default/files

8. Change the owner of the directory.

ramz@ramz-desktop:~$  sudo chown www-data:www-data /var/www/drupal/sites/default/files

9. Create the initial configuration files.

 ramz@ramz-desktop:~$ sudo cp /var/www/drupal/sites/default/default.settings.php /var/www/drupal/sites/default/settings.php

10. Change the owner of the file settings.php.

 ramz@ramz-desktop:~$ sudo chown www-data:www-data /var/www/drupal/sites/default/settings.php

11. Create a database drupal6 using phpMyAdmin. 

ramz@ramz-desktop:~$ mysqladmin -u root -p create drupal6

12. Log in to MySQL if you already have lamp-server installed on your system.

ramz@ramz-desktop:~$  mysql -u root -p

13. Grant permissions to the root user (or the username you log into MySQL with) on all tables in drupal6 schema.

mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON drupal6.* TO 'username'@'localhost' IDENTIFIED BY 'password';

Here, 'username' is either root or any other username you use to log into MySQL and 'password' is the password of the username.

14. Open your browser and type http://localhost/drupal/. You'll get the following page if you haven't created a database for Drupal.




Enter the details and click on Save and continue.

15. Next you'll get a screen as follows.



Enter your email address under Site information. Under Administrator account, enter a username, email address and password. I used my phpMyAdmin username and password and my email address. Click Save and continue.

16. Then you get a page saying "Drupal installation complete". Go to your new site.




Installation complete!

INSTALLATION OF DRUPAL IN FEDORA/REDHAT :

This is a general description of how to install Drupal on a Linux CentOS/RedHat/Fedora server with root access. Your mileage might vary somewhat depending on your particular environment.
Comments on various CentOS/RedHat/Fedora combinations and set ups are most welcome in this section. This is based on a CentOS 5/RedHat installation. Comments that only concern Fedora should be added to and not displace CentOS/RedHat information.
  1. Upgrade the operating system
    yum update
  2. Install common programs
    yum install php mysql-server php-mysql php-mbstring php-gd
  3. Download and install Webmin (optional)
    wget http://prdownloads.sourceforge.net/webadmin/webmin-1.440-1.noarch.rpm
    wget http://webmin.com/jcameron-key.asc
    rpm --import jcameron-key.asc
    yum install webmin-1.440-1.noarch.rpm
  4. Reboot
  5. Login to webmin through your browser. On a virtual host, how to do so may be non-obvious, but your host should provide details somewhere in the documentation of how to access your host through a url.
  6. In webmin, go to "Bootup and Shutdown" and enable the httpd and mysqld daemons.
  7. Create a new user. I made the home directory "/var/www/html" and the shell "/bin/bash".
  8. Edit the httpd.conf file. I did this through webmin in the "Apache Webserver" section by clicking on the "Global configuration" tab and then going to "Edit config files". Change the line "Options Indexes FollowSymLinks" to "Options Includes FollowSymLinks" or even something more liberal.
    While you are there, go to the following section:
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None"
    Change "AllowOverride None" to "AllowOverride All" if you want clean urls.
  9. In webmin, go to "Apache Webserver" and create a virtual host if you want to host multiple hosts on the same server instance.
  10. Create a new empty database in mysql. I did this through webmin. You should also add passwords for the root mysql user as well as a regular user for security reasons.
  11. In my case, I changed the permissions of /var/www/html to my user and the apache group.
    chown -R myuser /var/www/html
    chgrp -R apache /var/www/html
  12. Get Drupal and unpack it in the /var/www/html/ directory or if you are using virtual hosts in /var/www/html/example.com
    wget http://ftp.drupal.org/files/projects/drupal-6.6.tar.gz
    tar -xzvpf drupal-* --strip-components=1
    cp ./sites/default/default.settings.php ./sites/default/settings.php
  13. If you want a "files" directory for file uploads, do the following in your Drupal root directory
    mkdir ./sites/default/files
  14. The following permissions should allow you complete access to Drupal though your regular user account except for the ./sites/default folder which should be set to a Drupal's default upon install.
    chgrp -R apache .
    chown -R apache ./sites/default
    chgrp -R myuser ./sites/default
    chmod -R g+w sites/default
  15. Reboot
  16. Install Drupal as normal by going to the url of your home page.


Installing a new theme:
Step 1:
Download a new theme package. Note that themes for different Drupal versions are not compatible, version 5.x themes do not work with Drupal 6.x and reverse.

Step 2:
Read any README or INSTALL files in the package to find out if there are any special steps needed for this theme.

Step 3:
Upload the contents of the theme package to a new directory in the themes directory in your Drupal site. In Drupal 5.x & 6.x, you place your themes in /sites/all/themes/yourThemeName

Step 4:
Click administer » themes and enable the new theme (Drupal will auto-detect its presence).

Step 5:
Edit your user preferences and select the new theme. If you want it to be the default theme for all users, check the default box in the themes administration page.


Joomla and Drupal :
  • This is not an Drupal vs Joomla discussion, but an open acknowledgement that each choice is appropriate for different sites. Sometimes we have to tell clients that neither will work for what they want.
  • This is not a comprehensive list. Please feel free to tell us what we've missed or where we are wrong. Add your own thoughts by post a comment.

Joomla and Drupal

Drupal [-]Joomla [-]
Content Management
Very sophisticated. It allows unlimited category levels, tagging and categorization. You can also create multiple types of content, each with different features.

Weak. There are only three levels of content - Section >> Category >> Content is available. That's it. No cross-categorization. To get flexibility, use a Content Construction Kit extension.
WYSIWYG Editors
Probably the most common complaint about Drupal - it has no default editor.

TinyMCE comes by default.
Template / Themes
Very few commercial developers and off-the-shelf choices are very poor. Most designs are custom-made.

Perhaps Joomla's biggest strength. Joomla has a wide selection of free and commercial designs.
Community Features
By default it offers the ability to expand user profiles easily and Organic Groups allows for powerful community-building.

Non-existent by default but there are two powerful community extensions. Community Builder is free. Jomsocial is commercial but a powerful social application.
User Permissions
A huge strength of Drupal wins hands-down. You can create unlimited user levels and customize them in minute detail.

Perhaps Joomla's achilles heel. Most Joomla aites will only be able to use three user levels (Public, Registered and Special) without installing a cumbersome Access Control Level extension.
User Subscriptions
The only real option is Ubercart, a shopping cart which allows recurring billing.

Multiple options via extensions. CB Subs and are two of many.
Shopping Cart
See above. The only real option is Ubercart. Its a powerful, fully-featured ecommerce platform but may be overkill for small stores.

Joomla has only one major shopping cart: Virtuemart, but it considered buggy and difficult to work with.
SEO
The out-of-the-box URLs work well and can be improved with one easy addon: Pathauto. The code is generally lightweight and well-optimised.

Reasonable out of the box, but lacks the ability to really control URLs or metadata. Various SEO extensions are needed for those who really care about SEO.
Forums
A native and very smooth forum, but lacking in the high end features of the best modern forums.

The choice is between Agora and Kunena (native to Joomla but short on features) versus RokBrige (a bridge to phpBB3) and JFusion (a bridge to almost any forum software).
Multimedia
Not by default but several multimedia modules for video and podcasting are available.

Yes, the default WYSIWYG editor allows video and there are plenty of podcast and video extensions.
Photo Galleries
Definitely less options than Joomla. Decent galleries require several modules to be combined.

Yes. there's over a dozen excellent galleries.
Event Calendars
Not great. There are options but they are far behind those available for Joomla.

Yes, multiple native and high-quality calendar extensions.
Document Management
Would need to be constructed from other modules.

DocMan and Rokdownloads are both reliable document managers.
Blogs
Good default capabilities, although not a natural blog in the manner of Wordpress.

Some out-of-the-box capability (we use Joomla for our blog here on Alledia). Good native blogging extensions plus a port of Wordpress are available.
Internationalization
Yes, Excellent.

Not by default. Joom!Fish allows for sites in multiple languages but isn't as powerful as the commercial Nooku.
Standards Compliance
Yes. Excellent out-of-the-box.

Not great. The Beez template does provide clean output but most Joomla installations still use a good number of tables. One company has produced a full set of table-less overrides.
Multisites Management
Yes, out-of-the-box.

Weak. There are some multisite options but they're either unstable or very expensive.
Commercial Community
Drupal's commercial talent pool is very high-quality but also very shallow. Most commercial developers work with large-to-medium size business and charge accordingly.

Very strong. Perhaps the best in the Open Source CMS world with a wealth of developers, designers and consultants.
General Community
Good community. Often more non-profit than business driven. Excellent forum support at Drupal.org.

The community as a whole has a tendency to argue and fragment but its also highly dynamic with 1000s of companies offering support and services.
Ease-of-use
Definitely a weakness. Terms are confusing and overly-geeky. The admin interface is text-driven and often overwhelming to beginners.

Joomla has a very good graphical interface but still retains quite a few quirks and oddities.
Documentation
Not too bad. (Click here for documentation and here for an API reference guide

Pretty good. The main Joomla wiki has a lot of highly-detailed pages but also some with very little information.
Learning CurveSteeper than Joomla. Drupal's strength is in its flexibility and power, not its ease-of-use.Shallow. One of the easiest CMS systems to learn and customize.
Current SituationClear development path. Currently working on Drupal 7. Joomla 1.5 is the current version with the possibility of two new versions (1.6 and 1.7) due next year. Roadmap is not always clear.
OverallDrupal is flexible and developer-friendly. It also benefits from a coherent and stable community led by several large and reputable companies.Joomla 1.6 will focus on improving two crucial areas: Joomla's inflexible systems for managing users and content. It may become a little more complicated as a result, but it will remain relatively easy to produce a good-looking site with plenty of functionality using Joomla.

Share My Blog!!

Tell a Friend