Instead of linux we can use windows,machintosh,solaris in the form of WAMP,MAMP,SAMP.
Operating system that was initially created by Linus Torvalds at early 90s
family of Unix-like computer operating systems that use the Linux kernel.
Linux is free and Opensource
It is programmed in C and has UNIX like OS family.
Based on GPL (GNU Public Licensed)
The first step for setting up Linux on a PC is to run from CD and to pick the version to install.
Go to the distribution's Web sites and download the live CD/move ISO image for it.
Burn the ISO image to CDROM. With the CDROM in the drive, reboot the computer and we are now running the Linux version.
Once distribution is selected it will install,go back to that distribution's Web site and download the install version of the distribution.
After downloading, burn the ISO images to CDROM.
Delete the images from your hard drive after burning them to CDs.
Completely clean hard drive, removing all temp files and defragmenting it before backing up the data.
Back up the system before installing a new operating system.
The partition table structure for a multi boot system :
T he first primary partition is your Windows partition.
The second extended partition is the first Linux partition, and should be set up in the Linux installation process.
create a partition with the label /
Create a partition with the label /homeamount of space for distribution]
Create a partition with the label /usr
Create a partition with the label /var
Create a partition with the label /swap
Follow the prompts for the distribution you are installing. Each distribution has a different installation process, The enter key will finish the selection process and start the installation. A graphic interface installation program will have mouse support.
Selecting a package
A message will be received in screen after selecting a package. During the installation you will be presented with a series of configuration options. They are:
The firewall--you should turn it on, and at this time you can choose what traffic will be allowed incoming from the Internet, if any.
The Display settings--this will configure the graphic server for the GUI, and you should use the test configuration option when doing this.
The mouse--it is a good idea to specify which connection and type, as the any USB or PS2 default of many distributions is not always a reliable mouse driver.
The Internet connection--if you connect through a network card, then configure it as a network connection, not a DSL connection, even if you use DSL.
When the bootloader is installing, set bootloader to use, GRUB or LILO, etc. You can also set which OS will be the default OS at boot.
TIP 1. When you need to find a particular file/directory then use the 'locate' command (on Fedora slocate works well too) to find things on your server. Like, typing: locate xinetd
TIP 2 . If you did not know this already, all of the web server html files for Fedora are placed under: /var/www/html
Which Processes are Running On Your Server?
Need to find out asap! Use the command:
httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
Get Processes Started
Starting webserver (httpd)
initialization (aka init) directory:
Starting httpd: [ OK ]
ALL future STARTUPS!
Edit the config files as applied to the "rc" directory of your choice. Change directory to:
the rc5.d is a resource directory (under /etc) for run level 5... etc.
You can manually force this by simply using a command like:
smv K15httpd S15httpd
What About telnet and ftp?
1.changing directories to xinetd:
type ls to list all of the processes that can be configured.
2. Edit the telnet file and change two lines:
# default: on
disabled = no
3. automatic restart of the xinetd to load without rebooting:
Stopping xinetd: [ OK ] Starting xinetd: [ OK ]
For complete list see “Linux in a Nutshell”
pwd (identifies current directory)
cd (change directory) and cd .. (up one directory),
cd ../.. (up two directories)
ls (looks in current directory) ls –l (looks in current directory and lists all permissions)
mkdir (make a new directory)
rm remove/delete file
rm –R remove/delete folder
mv and mv –R moves files and folders
cp and cp –R copies files and folders
ps and ps –a (looks for all processes running)
kill (will kill a process running)
man command (gives information about a command)
ADVANCED COMMANDS IN LINUX Command Description # arch show architecture of machine(1)  # cal 2007 show the timetable of 2007  # cat /proc/cpuinfo show information CPU info  # cat /proc/interrupts show interrupts  # cat /proc/meminfo verify memory use  # cat /proc/swaps show file(s) swap  # cat /proc/version show version of the kernel  # cat /proc/net/dev show network adpters and statistics  # cat /proc/mounts show mounted file system(s)  # clock -w save date changes on BIOS  # date show system date  # date 041217002007.00 set date and time - MonthDayhoursMinutesYear.Seconds  # dmidecode -q show hardware system components - (SMBIOS / DMI) 
# hdparm -i /dev/hda displays the characteristics of a hard-disk  # hdparm -tT /dev/sda perform test reading on a hard-disk  # lspci -tv display PCI devices  # lsusb -tv show USB devices  # uname -m show architecture of machine(2)  # uname -r show used kernel version  # init 0 shutdown system(2)  # logout leaving session  # reboot reboot(2)  # shutdown -h now shutdown system(1)  # shutdown -h 16:30 & planned shutdown of the system at 16:30  # shutdown -c cancel a planned shutdown of the system  # shutdown -r now reboot(1)  # telinit 0 shutdown system(3) 
select Hardware -->Partitioning
Delete all Linux partitions including the Linux swap partition.
Partitions of another operating system that were resized during the installation can be restored to the original size.
Select the partition whose size you want to increase, click Resize, and select the new size with the slider. Confirm with OK.
Complete all changes in the partitioning dialog with Next and confirm the subsequent security query with Yes. The changes will be applied.
To remove LILO or GRUB the original boot code that was in the MBR prior to the installation of LINUX can be restored.
Boot Loader Setup -> Reset ->Restore MBR of Hard Disk
After a security query, the boot code in the MBR is rewritten.
The partition table remains unmodified.
If another operating system is installed on your machine, it should boot automatically the next time the machine is powered on.
APACHE is a open source web server software
It is a popular http server software
It is available for variety of os .eg UNIX,LINUX,solaris,GNU.
It is written in C and cross platform operating system
Login as root
Go there now
Download the latest stable Apache from apache.org into this directory.
need to create the directory: mkdir
ftp commands to get the file: cd
Untar the file with: tar xzf apache_1.3.14.tar.gz
created a directory apache_1.3.14.
provide a link:
ln -s apache_1.3.14 httpd
First create the directory structure above:
cd /mkdir www
Now create directories for the configuration files, log files and servers:
We can know what Apache is doing on a machine the pointing the browser at it:
The server configuration file for our installation is at: /www/conf/httpd.conf
Go there now with:
To upgrade and to keep your old configuration file then just copy it over the new one: cp /etc/httpd/conf/httpd.conf.
There is a need to use existing access and srm config files: cp /etc/httpd/conf/access.conf .
cp /etc/httpd/conf/srm.conf .
To run Apache on a different port to the default (80) then change the number on line 238.
To change the server admin email address on line 260:
Then specify your machine name on line 278, you may just have to remove the # comment marker.
To configure virtual hosts Apache will use the virtual server as a default documents for the site.
Set the document root on line 285:
And on line 310: Y
To change the Apache configuration on directory basis then the use of .htaccess files.
To enable set AllowOverride to All:
The default file to serve in directories is index.html.
change this or add new file names:
DirectoryIndex index.html index.htm
To know where visitors are from then turn host name look ups.
Turning this on place extra load on your server as it has to look up the host name corresponding to the IP address of all visitors.
HostnameLookups On I
In the Policy Agent base directory , enter the following command:
1.Click Next on Welcome panel.
2.Click Uninstall Now.
3.Click Close after uninstallation is complete.
4.Restart the Apache HTTP Server instance from which you uninstalled the agent.
Command-Line Uninstallation of Agent for Apache HTTP Server on Linux Systems
To uninstall a web agent, you must run the uninstallation program.
# ./uninstall_linux_agent_apache -nodisplay
The uninstallation program displays the following text:
Ready to Uninstall
1. Uninstall Now
2. Start Over
3. Exit Uninstallation
Enter 1, to remove the product.
When prompted,enter 1 to begin uninstallation.
The uninstallation program displays the following text:
Product Result More Information
1. Sun Java(tm) System Access Manager Policy Agent Full Available
To see log information on the agent, enter 1. To exit the uninstallation program, enter 2.
MySQL is a popular, scalable, free, open-source database management system (DBMS).
It runs on Windows, Linux, and many other operating systems.
MySQL AB, the Swedish company that owns the codebase offers services, extra tools, and licensed versions.
MySQL AB states that MySQL is used in 11 million installations in the world.
We will use phpMyAdmin to access MySQL through Apache.
3. Install the downloaded MySQL package
Install the MySQL Server and Client packages .
start the MySQL daemon automatically.
Install the “Header and Libraries” that are part of the MySQL-devel packages.
4. Perform post-install security activities on MySQL
set a password for the root user.
To run the mysql_secure_installation script that will take care of all the typical security related items on the MySQL.
On a high level this does the following items:
Change the root password
Remove the anonymous user
Disallow root login from remote machines
Remove the default sample test database
5. Verify the MySQL installation:
You can check the MySQL installed version by performing mysql -V as shown below:
[local-host]# mysql -V
mysql Ver 14.14 Distrib 5.1.25-rc, for redhat-linux-gnu (i686) using readline 5.1
Connect to the MySQL database using the root user and make sure the connection is successfull.
[local-host]# mysql -u root -p
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 13
Server version: 5.1.25-rc-community MySQL Community Server (GPL)
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
CONFIGURING MYSQL Initialise the standard MySQL databases. This also sets up the initial user privileges for your MySQL server. cd mysql scripts/mysql_install_db
MYSQL SETUP steps: 1. Login to WHM on the Linux dedicated server. 2. Select SQL Services and then click on Setup Remote SQL Server. 3.Enter the name of the remote server and it is to be entered in the 'host' section. Password is also required which is to be entered in the column provided for Remote MySQL Host Root Password. 4. Click on "Setup" and you are done.
CREATE A DATABASE:
create database database_name;
CREATE A TABLE:
create table create table person
(id int, person varchar (32) )
DELETING A TABLE:
Drop table table_name
INSERT VALUE IN A TABLE:
Insert into table_name.db_name
(field1 , field 2...) Values (v1, v2, ...), (v1',v2');
VIEW ALL DATA IN A TABLE
select * from table name where cond = value
SELECT DATA FROM TWO DIFFERENT TABLE:
Select field1, field2 from tbl1, tbl2 where field3= field4;
SHOW DATABASE VARIABLE:
ADVANCED COMMANDS IN MYSQL
Alter Table - MySQL Command
How to use the MySQL alter table command, and what to combine it with to do different things to your database.
Ceil - MySQL Command
Use Ceiling to always round a number up
Change - MySQL Command
The change SQL command can be used to change a column's name
Count - MySQL Command
The MySQL Count command is used to count the number of records held on a specific table
Create Database - MySQL Command
Use the create database command in MySQL to create a new database on the MySQL server
Describe - MySQL Command
The describe command shows a tables fields and their formats
Drop Column - MySQL Command
How to remove (drop) a column from a table using MySQL with your SQL database.
Drop Database - MySQL Command
The drop database command in MySQL will remove a database from the server
Drop Table - MySQL Command
Remove an entire table from a MySQL database using the drop table command
Floor - MySQL Command
Use Floor to always round a number down
From - MySQL Command
From is used with Select in MySQL to choose what table to query from
Limit - MySQL Command
Limit the results of your MySQL query to results within a certain number range.
Modify - MySQL Command
Change the size of a MySQL column by using the Modify SQL command
MySQL Login from Unix Shell
Login to your mysql server from unix shell
Select - MySQL Command
The SQL select statement is used to choose what data to pull from the mysql database
Show Columns - MySQL Command
The show columns command is used to display all the columns for a given table and their details.
Show Databases- MySQL Command
Use the show databases command in MySQL to show all the databases on the MySQL server
Show Tables - MySQL Command
The show tables command is used to display all the tables in a MySQL database
UNINSTALLING MYSQL Here are the steps to perform a clean un-install of MySQL Execute the following commands at the Terminal Uninstalling MySQL Open /etc/hostconfig file in a text editor and remove the following line MYSQLCOM=-YES- That’s all.
PHP is popular, simple and lightweight server-side scripting language used to create dynamic web pages.
On the server, PHP code produces HTML.
Client only receives HTML.
Client can't view the original PHP code.
Some sites that use PHP:
Wikipedia, Yahoo, Digg, Facebook
logged in as root to perform installation.
save all downloads in: /usr/local/download
need to create directory now: mkdir /usr/local/download
install PHP in /usr/local/etc, but use a tricky tar command to do it in on hit from the download directory:
tar xzf php-3.0.12.tar.gz -C ../etc
create a nice directory name (php) for the installed directory:
ln -s php-3.0.12 php
Debugging Tools Webgrind Webgrind is an Xdebug profiling Web front end in PHP 5. It implements a subset of the features of kcachegrind , installs in seconds and works on all platforms. Xdebug Xdebug provides a ton of useful data to help you quickly find bugs in your source code. Gubed PHP Debugger Gubed PHP Debugger is a PHP debugging tool for hunting down logic errors. DBG DBG is a robust and popular PHP debugger for use in local and remote PHP debugging. PHP_Debug PHP_Debug is an open-source project that gives you useful information about your PHP code that can be used for debugging.
PHP_Dyn PHP_Dyn is another excellent PHP debugging tool that’s open-source. You can trace execution and get an output of the argument and return values of your functions. MacGDBp MacGDBp is a live PHP debugger application for the Mac OS. It has all the features you’d expect from a fully featured debugger, such as the ability to step through your code and set breakpoints. Testing and Optimization Tools PHPUnit PHPUnit is a tool that helps you test your Web application’s stability and scalability. SimpleTest SimpleTest is a straightforward unit-testing platform for PHP applications.
PHP_CodeSniffer PHP_CodeSniffer is a PHP 5 script for detecting conformance to a predefined PHP coding standard and for maintaining uniform coding styles for large projects and teams. dBug dBug tool is used for outputting data tables that contain information about arrays, classes and objects, database resources and XML resources, making it very useful for debugging purposes. PHP Profile Class PHP Profile Class is an excellent PHP profiling tool for your Web applications. Using this class will help you quickly and easily gain insight into which parts of your app could use some refactoring and optimization. Documentation Tools phpDocumentor phpDocumentor is a documentation tool for your PHP source code. PHP DOX An AJAX-powered PHP documentation search engine that enables you to search titles from all PHP documentation pages.
Security Tools Securimage Securimage is open-source PHP CAPTCHA script for generating complex images. Scavenger Scavenger helps system administrators respond to vulnerability findings, track vulnerability findings and review accepted and false-positive answered vulnerabilities, without “nagging” them with old vulnerabilities. PHP-IDS PHP-IDS is a simple-to-use, well-structured, fast and state-of-the-art security layer for your PHP-based Web application. Pixy: PHP Security Scanner Pixy is a Java program that performs automatic scans of PHP 4 source code, aimed to detect XSS and SQL injection vulnerabilities.
PHP has created an ini file.To install this into it's correct location. cd ../php
cp php3.ini-dist /www/conf/php3.ini
Tell Apache to pass certain file extensions to PHP. n Apache's httpd.conf file. cd /www/conf
Edit the httpd.conf file.
To use the extension .phtml,use whatever extension you like (even .html) by adding lines to httpd.conf like this: