January 25, 2011

tuning apache for large subversion repos

Filed under: Programming,Server Admin — dh @ 11:09 am

I kept getting very aggravating timeout issues when trying to reintegrate a branch back into the trunk of one of our large subversion repositories. Tuned apache’s httpd.conf with the following and the problems disappeared.

# Timeout: The number of seconds before receives and sends time out.
Timeout 60000

# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection).
KeepAlive On

# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
MaxKeepAliveRequests 0

# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
KeepAliveTimeout 60000

November 13, 2009

Useful links…

Filed under: Server Admin — dh @ 2:16 pm

Examples Using the VMware Virtual Disk Manager

June 11, 2008

Setup rsync server on CentOS

Filed under: Server Admin — dh @ 11:22 am

Step-by-step installation and configuration rsync server on CentOS
From &

Make sure xinetd and rsync is available, if not type
# yum -y install rsync xinetd

Add xinetd service to system
# chkconfig --add xinetd

Make sure xinetd running on init 3 and 5
# chkconfig --list xinetd

Enable rsync
# vi /etc/xinetd.d/rsync
Change disable = yes into disable = no

Create username and password for rsync client to use
# vi /etc/rsyncd.secrets

Create configuration and shares for rsync daemon
# vi /etc/rsyncd.conf

max connections = 2
log file = /var/log/rsync.log
timeout = 300

comment = shared data stored here
path = /home/adminname/shares
read only = false
list = yes
uid = adminname
gid = adminname
auth users = adminname
secrets file = /etc/rsyncd.secrets
hosts allow =

Secure /etc/rsyncd.*
# chown root.root /etc/rsyncd.*
# chmod 600 /etc/rsyncd.*

Restart xinetd
# service xinetd restart

Make sure rsync now running
# chkconfig --list

Perhaps you also want to enable port 873 tcp and udp on your firewall so other can connect to your server.

May 22, 2008

Dump one MySQL database to another MySQL database

Filed under: Programming,Server Admin — dh @ 1:28 am

mysqldump -u[uname] -p[password] [table] | mysql -u[uname] -p[password] –host=[ip address] -C [table]

I.E.: mysqldump -umy_user_name -pmy_secret_password foo_table | mysql -umy_2nd_user_name -pmy_2nd_secret_password –host= -C foo_table

(whole command should be on one line of course.) 🙂

May 19, 2008

PHP, OpenSSL and ftp_ssl_connect() on Win32, my journey…

Filed under: Programming,Server Admin — dh @ 1:46 pm

I need to compile php for Windows so that the ftp_ssl_connect function would be available. This is how I did it. All of this is as of today, May 19, 2008. Windows XP Pro SP2.

  • Download & Install (this is a large install > 1GB):
    » Microsoft Visual C++ 2008 Express Edition
    » Windows SDK for Windows Server 2008 and .NET Framework 3.5
  • Copy C:\Program Files\Microsoft SDKs\Windows\v6.1\Include\WinResrc.h to C:\Program Files\Microsoft SDKs\Windows\v6.1\Include\winres.h
  • Create the directory C:\work
  • Download:
    » php 5.2.6 Source Code and extract it to the C:\work\ folder.
  • Download:
    » Needed Libraries ( Edin Kadribašic has a nice zip file with everything in it. You need to go into subfolder /php/win32 and click on (If this link is down try this one: ). Create folder C:\work\php_build\ and extract the zip file into it.
  • Download:
    » Newer libxml2. The libxml package that is included in the zip file was a little out of date. Download this one and extract the contents of the zip file on top of C:\work\php_build\ . Overwrite files as needed.
  • Download & Install:
    » Win32 OpenSSL (Win32 OpenSSL v0.9.8g)
  • Patch php source:
    As of php 5.2.6, you will need to patch C:\work\php-5.2.6\ext\ftp\ftp.c in your php source directory. deciacco did some awesome work in producing a working patch. You can see his site here. You can download my patched version for php 5.2.6 here. Just replace the copy of ftp.c in your C:\work\php-5.2.6\ext\ftp\ folder.
  • Open:
    Start > Program Files > Visual C++ 9.0 Express Edition > Visual Studio Tools > Visual Studio 2008 Command Prompt
  • Type these commands into the Visual Studio 2008 Command Prompt:
    Link To Commands
    You will see many, many compile warnings. This is quite normal. 🙂
  • If everything went well, you should now have php.exe in the folder C:\work\Release_TS\ which has ftp_ssl_connect functionality.

    February 20, 2008

    Recursively chmod directories or files only

    Filed under: Server Admin — dh @ 12:53 pm

    Great post here:

    # recursively chmod directories only
    find . -type d -exec chmod 775 {} \;

    # recursively chmod files only
    find . -type f -exec chmod 664 {} \;

    February 6, 2008

    Getting php mail() working on fresh CentOS 5 install

    Filed under: Server Admin — dh @ 10:49 am

    All I had to do was comment out the loopback only restriction and php’s mail() fuction started working great!

    vi /etc/mail/

    look for:
    DAEMON_OPTIONS(`Port=smtp,Addr=, Name=MTA')dnl

    change it to this:
    dnl DAEMON_OPTIONS(`Port=smtp,Addr=, Name=MTA')dnl

    remake the file
    m4 /etc/mail/ > /etc/mail/

    restart sendmail:
    service sendmail restart


    Great tutorial about the BIND dns server

    Filed under: Server Admin — dh @ 10:45 am

    Here is a great tutorial about the Bind dns server:

    February 1, 2008

    Add an IP to CentOS 5

    Filed under: Server Admin — dh @ 10:46 am

    I need more than one ssl website on a new CentOS 5 machine. Here is how to add another ip address to eth0.

    January 15, 2008

    CentOS 5 + vsftpd + lock some users in their home directory ?

    Filed under: Server Admin — dh @ 11:27 am

    vi /etc/vsftpd/vsftpd.conf



    vi /etc/vsftpd/chroot_list

    [restricted username]

    service vsftpd restart

    done! 😉

    Next Page »