Archive for Server

CentOS – Change your IP address to static

To change the IP address in CentOS you need to edit 2 files, start to correct your address information in 2 files

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
sudo nano /etc/sysconfig/network

When these two files are modified correctly for your network, you must restart the network servicesen.

service network restart

Maybe you are more into the GUI interface in the terminal, it can also be used by using this command.

system-config-network-tui

Install Apache2, MySQL5.5 and PHP5.3 on OSX Lion

If you just installed OS X Lion or upgraded from Snow Leopard to Lion and want to use it as a developer web-server so it is possible.

This guide will help you get Apache2, MySQL5.5 and PHP5.3 to work on your machine so you are ready to develop without internet.

What you are installing when you follow this guide:
- Apache 2.2
- PHP 5.3
- MySQL 5.5

PHP modules are also being installed:
- php5_xdebug
- php5_mysql

Why I have chose PHP 5.3 instead of PHP 5.2 or older version of PHP:
This is due to PHP 5.3 allows me to use the namespace which only come in PHP 5.3, with the namespace I muglihed to bursting with my code even better.

Not only that I have personally afferet that with namespaces involved, I have the opportunity to wrong my files into very small bites are also known from C # when this is a natural thing for many developers.

Before you install:
The first thing you should do is to download and install MacPorts from their website MacPorts remember to have our latest Xcode installed to suit OS X Lion

Once installed, you can now open your terminal and install both Apache, PHP and MySQL

Start you basic setup:
Open your terminal and type the following lines

sudo port install apache2
sudo port install php5-devel
sudo port install mysql5-server-devel

It may take a little time, so take it one cup of coffee, cola or tea.

Now you are ready to install the following PHP modules which now must be on your system in my personal opinion, you can obviously do without the modules you do not want to install.

sudo port install php5-gd
sudo port install php5-imagick
sudo port install php5-memcache
sudo port install php5-memcached
sudo port install php5-mysql
sudo port install php5-openssl
sudo port install php5-soap
sudo port install php5-xdebug
sudo port install php5-curl
sudo port install php5-gettext

Once all your models are installed for PHP, we now config your MySQL database, it is done by us to install mysql’s database and then set the password for the root user.

sudo /opt/local/lib/mysql5/bin/mysql_install_db --user=mysql
/opt/local/lib/mysql5/bin/mysqladmin -u root password 'new-password'

For Apache and MySQL to even start up, you then use these 2 command lines!

sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist
sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

Now go into the Apache config file and paste the following 2 lines, search for AddType and LoadModule when you insert each simple line, it is very nemer, you use “nano” as a terminal editor, press the button (ctrl + w) to search

LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php

Search DirectoryIndex and add filename “index.php” and then you save again by pressing ( CTRL + O ) and then ( Y )

To start Apache and MySQL up without having to reboot your machine, type 2 command lines.

sudo /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper start
sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper start

Are you unlucky as I was that Apache gives this error message “httpd: Could not reliably Determine the server’s Fully Qualified Domain name, med Pariss-MacBook-Air.local for server name” you need to find ServerName in the httpd.conf file as you continue to have open and write your hostname as you can see the error message, what you write may look like this.

ServerName Pariss-MacBook-Air.local:80
 
Now you can save the file and pressing ( CTRL + O ), followed by "Y"

To create shortcuts to both MySQL and Apache which makes it faster for the restart, stop and start if someone were to go wrong can be done by writing these 2 lines.

alias apache2ctl='sudo /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper'
alias mysql5='sudo /opt/local/etc/LaunchDaemons/org.macports.mysql5/mysql5.wrapper'

Good luck and happy development

CentOS 5 som webserver

Til at få CentOS 5 som webserver kræver det lige som alle andre server at du skal installer en webserver med php5 og en  datatabase som skal være MySQL.

Apache
Installer Apache ved at skrive

1
yum install httpd

Når den er færdig med at installere Apache skal vi lige følge op på om Apache faktisk køre, det gøres ved at se status for httpd servicesen.

1
/sbin/service httpd status

Køre Apache ikke skal du starte denne services ved at skrive

1
/sbin/service httpd start

Køre du Apache på en server er det vigtigt at Apache starter op sammen med dit system, derfor skal vi nu angive services level nivue og slå den til ved opstart det gøres på denne måde.

1
/sbin/chkconfig --level 3 httpd on

Husk hvis du har firewall aktiveret skal du åbne port 80 for at andre kan komme i kontakt med din server.

PHP
Hvis PHP ikke er installeret kan du gøre det ved at skrive

1
yum install php

Da jeg selv ønsker at køre med PHP 5.3 eller nyre er det ikke muligt for mig at benytte den  version som CentOS stiller til rådighed, derfor må jeg ud og finde en RPM pakke som kan løse det problem jeg har.

Jeg har valgt denne blog http://www.webtatic.com/blog/2009/06/php-530-on-centos-5/ som har guidet mig igennem til at installere den nyeste PHP version som der ønskes.

Først skal vi tillade webtatic’s RPM pakker i systemet det gøres ved at accepter RPM’s godkendt fra webtatic at blive installeret via yum.

1
rpm -ivh http://repo.webtatic.com/yum/centos/5/x86_64 -i /webtatic-release-5-1.noarch.rpm

Nu er det muligt at installere PHP fra webtatic ved at skrive

1
yum --enablerepo=webtatic install php

Når PHP skal updateres skal du også her være sikker på den bliver updateret fra webtatic og gøres ved at skrive.

1
yum --enablerepo=webtatic update php

MySQL
Jeg ønsker at benytte MySQL 5.5+ på min server, til det findes denne version detsværre heller ikke i selve CentOS og derfor bruger jeg igen webtatic til at bruge dette. start med at installere libmysqlclient

1
yum install libmysqlclient15 --enablerepo=webtatic

Nu ønsker vi at installere MySQL 5.5+ som gøres sådan

1
yum install mysql55 mysql55-server --enablerepo=webtatic

Nu skal du starte MySQL databasen og lad den starte op hver gang systemet genstartere.

1
2
service mysqld start
/sbin/chkconfig --levels 235 mysqld on

Hvis du oplever samme problem som jeg gjore ( chown: `mysql’: invalid user  ) kan det skyldes at gruppen og brugeren ikke er oprettet til MySQL endnu, det kan gøres ved at skrive følgene.

1
2
groupadd mysql
useradd -g mysql mysql

Skift nu dit kodeord til databasen så andre ikke har adgang til din database.

1
/usr/bin/mysqladmin -u root password 'nyt-kodeord'
1
yum --enablerepo=webtatic install php-pdo php-mysql

Export SVN fil fra en bestemt revision

Jeg havde et problem her idag, og måtte lige søge nået hjælp spurte Lasse Hassing omkring dette problem da jeg ved han er super dygtig til alt i en terminal, til det fik jeg følge svar

[code]svn export -r740 https://svn.domain.com/project/file.php r740_file.php[/code]

Her trækker den version 740 ud og gemmer som r740_file.php fra det project du har valgt. jeg siger endnu en gang tak til Lasse Hassing for dette tip.

rsync + sshfs på Ubuntu

For at få rync og sshfs skal det første installers via apt-get.

apt-get install rsync
apt-get install fuse-utils sshfs

når de 2 pakker er installert skal du køre denne komando

modprobe fuse

du kan nu mount en mappe igennem SSH ved at køre denne komando

sshfs [user]@[host]:/[ssh-sti] /[local]/[sti]

efterfulgt ville det være smart at køre en rsync på dine vigtige filer det gøres på følge måde.

rsync -vaxE –delete –ignore-errors /[kopi]/[sti] /[sti]/[til]/[remote_ssh_sit]

Hvis du ønsker at unmounte din anden backup sti kan du gøre det ved at udføre denne linje.

fusermount -u [mount]/[sti]

opret svn bruger i Linux

Når du har installert SVN op er det vigtig du også kan koble flere brugere til SVN det gøres ved følge linje.

sudo htpasswd /etc/apache2/dav_svn.passwd [username]

Pak filer og mapper til tar.gz format i Linux

En hurtig måde at pakke filer på som man tit bruger når man har en masse filer som man vil tage en backup af kan man gøre det på denne måde.

tar -zcvf $(date)_[name].tar.gz /[sti]/[sti]

$(date) udksriver den fulde dato på dags dato i filen.

mysqldump linux

Tag en backup af din database ved at skrive denne commando i Linux fra din su bruger.

sudo mysqldump -u [user] -p=[password] [database] > [filename].sql

slev .svn + filer i linux dir

gå ind mappen hvor dit svn dir er som du bruger til at chackeout der efter køre du følge 2 komandoere.

find -name “\.svn” -exec rm -rf {} \;
rm -rf ./*

virtualhost ln -s Ubuntu

Hvis nogle af jer der ude ikke kan huske hvordan man tilføjer virtual host til jeres sites-enabled mappe så kommer den her

ln -s /etc/apache2/sites-available/[vhost filen] ./