Wednesday, August 8, 2012

concurrency model with Actor



Actor model everything is a Actor, natively concurrent.

Support in programming language 

Erlang: language level. Erlang is the best platform for concurrency and distributed application so far.
Java: library level. Akka

Friday, July 6, 2012

Set up mongodb and cluster

install mongodb

install rock_mongo

  • sudo apt-get install php-pear
  • install php_mongo extension: sudo pecl install mongo
  • configure php_mongo extension: add extension=mongo.so to /etc/php5/apache2/php.ini
  • download rock_mongo and cp -r to /var/www/vhosts/mongo.admin
  • configure dnamasq alias "*admin"now Apache, map a "mongo.admin" to a vhost. 
  • (For Replication web admin) cat /etc/apache2/mods-enabled/vhost_alias.conf
    • set up url rewrite
      RewriteCond %{HTTP_HOST} ^mongo.dev$
      RewriteRule (.*) http://localhost:28017/_replSet
  • sudo service apache2 restart

Saturday, June 30, 2012

Managing services with update-rc.d

removing a service
update-rc.d -f apache2 remove

adding a service
update-rc.d apache2 defaults

Monday, June 25, 2012

Set up Apache2 for SSL

For site "foo"

/etc/apache2/sites-enabled/default-ssl

        SSLEngine on
        SSLCertificateFile    /etc/ssl/foo/foo.crt
        SSLCertificateKeyFile /etc/ssl/foo/foo.key
       SSLCertificateChainFile /etc/ssl/foo/intermediate.pem



get the intermediate certificate: https://search.thawte.com/support/ssl-digital-certificates/index?page=content&id=SO1498

Wednesday, April 18, 2012

Install and Configure mod_jk for Apache2


  • sudo apt-get install libapache2-mod-jk
  • sudo vim /etc/libapache2-mod-jk/workers.properties
    • worker.list=worker1,jk-status
    • worker.jk-status.type=status
  • sudo vim /etc/apache2/mods-available/jk.conf  
  • #Everything under root goes to tomcat
    • JkMount  /share/* worker1
    • JkMount  /share worker1

Monday, April 16, 2012

setup UCM


  • Runs oracle db 11g XE on 10.10.1.158:1521. 
    • sudo /etc/init.d/oracle-xe start
    • netstat -anpt | grep 1521 to verify listener
    • put the following into .bashrc

      • . /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
      • ORACLE_SID=XE
    • sqlplus 
      • use TNS defined in $ORACLE_HOME/network/admin/tnsnames.ora
      • sqlplus system/oracle or sqlplus dev_ocs/oracle 
        • select * from global_name (for db)
        • show user
  • Install instant client: install instant client
  • creates a doamin ucm_domain
  • starts wls admin server: startWeblogic.sh
  • starts wls managed server for cs: startManagedLogic.sh UCM_server1 http://localhost:7001/


Saturday, April 14, 2012

Set up Python for Android development

Python Android
adb cmd example
  • Install android-sdk: 
    • tools:android
    • platform-tools:adb
  • Create an AVD ("android avd") test1. 
  • "emulator avd test1"
  • sudo apt-get install ia32-libs
  • While the above is running, "platform-tools/adb install sl4a_r4.apk"
  • While the above is running, "platform-tools/adb install PythonForAndroid_r4.apk"
  • Use adb for pushing python code for Android testing. 

Monday, April 9, 2012

Kerberos


Ubuntu Reference

Admin the Kerberos
Kerberos
ktadd keytab

Server

The‘kadmin.local’ is intended to run directly on the KDC without any Kerberos authentication. Normal UNIX users cannot execute this command. Executing the kadmin.local command will display the kadmin.local prompt only if you are the root user. 

Client

kinit alfresco/admin@EXAMPLE.COM
klist


Admin
kadmin -p alfresco/admin
klist -ef

Python Kerberso

sudo apt-get install libkrb5-dev
pip install kerberos

Thursday, March 29, 2012

iptables


sudo iptables -F
#sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
sudo iptables -A INPUT -p tcp --dport 8080 ! -s  24.86.126.251 -j DROP
#sudo iptables -A INPUT -p tcp --dport 8080 -m iprange --src-range 24.86.126.251 -j ACCEPT
sudo iptables -L

Configure and test CIFS with Alfresco


1. alfresco-global.properties

## CIFS
cifs.enabled=true
cifs.serverName=server_name
cifs.domain=WORKGROUP
cifs.hostannounce=true
cifs.sessionTimeout=500
cifs.ipv6.enabled=false
#cifs.tcpipSMB.port=1445
#cifs.netBIOSSMB.namePort=1137
#cifs.netBIOSSMB.datagramPort=1138
#cifs.netBIOSSMB.sessionPort=1139
cifs.WINS.autoDetectEnabled=true


2. Run "sudo alfresco " as root so that it can use the default ports. 

3. Test From Windows Explorer to map network drive with user credential. 
    net use X: \\192.168.1.35\Alfresco /usr:admin admin

4. Test from Ubuntu side
https://help.ubuntu.com/community/Samba/SambaClientGuide
 smbclient -U qa1 //108.171.177.147/Alfresco -p 139

Alfresco running as linux service

under id "alfresco" (group alfresco)
ln -s $ALF_HOME/alfresco.sh /etc/init.d/alfresco
update-rc.d alfresco defaults

Reference
http://wiki.alfresco.com/wiki/Installing_Alfresco_on_Ubuntu_7.10

Customize Alfresco email invite for external user

tomcat/shared/classes/alfresco/extension$ cat invite-context.xml 



<beans>
        <bean class="org.alfresco.repo.security.authentication.NameBasedUserNameGenerator" id="nameBasedUserNameGenerator">
                
                <property name="namePattern">
                        <value>%emailAddress%</value>
                </property>

                <property name="userNameLength">
                        <value>10</value>
                </property>
        </bean>
</beans> tomcat/shared/classes/alfresco/extension$ cat invite-context.xml

Saturday, March 24, 2012

ffmpeg ubuntu 11.10


  • sudo apt-get install ffmpeg libavcodec-extra-53
  • Follow http://blog.stevenreid.co.uk/2011/10/25/transcoding-video-iphone/ and http://ubuntuforums.org/showthread.php?t=786095
  • ffmpeg -i source.avi -acodec libfaac -ab 128k -ar 44100 -vcodec mpeg4  -b 1000K -s 640x480 destination.m4v

Tuesday, March 20, 2012

install ec2 API


  • enable multiverse: sudo vi /etc/apt/sources.list
deb http://us.archive.ubuntu.com/ubuntu/ lucid multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid multiverse
deb http://us.archive.ubuntu.com/ubuntu/ lucid-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid-updates multiverse

Thursday, March 15, 2012

Alfresco LDAP


alfresco-global.properties
(LDAP)authentication.chain=alfinst:alfrescoNtlm,ldap:ldap1
(AD)authentication.chain=alfinst:alfrescoNtlm,ldap-ad1:ldap-ad

Extension Root
(LDAP)tomcat/shared/classes/alfresco/extension/subsystems/Authentication/ldap-ad/ldap1
(AD)tomcat/shared/classes/alfresco/extension/subsystems/Authentication/ldap-ad/ldap-ad1/ldap-ad-authentication.properties

Alfresco LDAP integration
Alfresco LDAP configuration

Tuesday, March 13, 2012

install lookit ubuntu

sudo add-apt-repository ppa:lookit/ppa
sudo apt-get update
sudo apt-get install lookit

Saturday, March 3, 2012

install LAMP on ubuntu

sudo apt-get install tasksel
sudo tasksel install lamp-server
https://help.ubuntu.com/community/Tasksel

Thursday, February 23, 2012

python eco system setup

python ecosystem


install necessary dev tools
$ sudo apt-get install python-pip
$ sudo pip install --upgrade pip 
$ sudo pip install --upgrade virtualenv 
$ sudo pip install --upgrade virtualenvwrapper  
$ sudo apt-get install git-core mercurial subversion
$ sudo apt-get install python-dev build-essential 
 
install python 
$ sudo apt-get intsall python
$ sudo apt-get intsall python3

 



management of virtualenv

$ mkvirtualenv my_project_venv
$ workon my_project_venv
$ deactivate
$ rmvirtualenv my_project_venv
 
create python3 virtualenv
mkvirtualenv -p /usr/bin/python py3
workon py3
pip install ipython3