Ubuntu: check if a package is installed

To check if a package, for example, gnome-shell, is installed,
  • Run the following command:
    dpkg -l | grep "ii" | awk '{print $2}' | grep "^gnome-shell$"
  • or run the following command:
    dpkg -s gnome-shell

How to change your default desktop session

  • Method 1:
    • edit /etc/lightdm/lightdm.conf, change user-session to the session you want.
      To list the available session names:
      • cat /usr/share/xsessions/* | grep 'session=' | awk '{print $2}' | sed "s/--session=//g"
  • Method 2:
    • Set gnome-shell as default:
      sudo apt-get install gnome-shell
      sudo /usr/lib/lightdm/lightdm-set-defaults -s gnome-shell
    • Set gnome classic as default:
      sudo apt-get install gnome-session-fallback
      sudo /usr/lib/lightdm/lightdm-set-defaults -s gnome-classic
    • Set unity as default:
      sudo /usr/lib/lightdm/lightdm-set-defaults -s ubuntu

See also

Check your ubuntu desktop session

  • To check the current desktop session name:
    It will return the name of the current desktop session. e.g. ubuntu-2d (aka. unity 3D), gnome-shell, gnome-classic.
  • To check the default desktop session:
    cat /etc/lightdm/lightdm.conf
    It shows the default session: e.g.
  • To list the available session definitions in /usr/share/xsessions/:
    ls /usr/share/xsessions/

GWT Developer's Plugin for Firefox 12

See also

Thanks Alan Leung for compiling the plugins for us

Install FreeNX server on Ubuntu 11.10 oneiric and 12.04 LTS precise

  • The following script compile and install freenx server on Ubuntu 11.10 oneiric and Ubuntu 12.04 LTS precise:
    ARC=`uname -m`
    if [[ `echo $ARC | egrep 'i[3456]86'` ]]; then
    # NOMACHINE NX binary packages
    # FREENX-SERVER source package
    # Install required packages
    echo "Installing required packages: ssh patch expect smbfs xutils-dev..."
    sudo apt-get update
    sudo apt-get install -y ssh patch expect smbfs xutils-dev
    # Create a temp working directory
    TMP_DIR=`mktemp -d`
    # Install nomachine nxclient package
    echo -n "Downloading nomachine ${URL_NXCLIENT}..."
    cd $TMP_DIR
    wget $URL_NXCLIENT || exit 1
    echo "done"
    echo "Extracting ${PKG_NXCLIENT} to /usr/NX..."
    cd /usr
    sudo tar -zxvf ${TMP_DIR}/${PKG_NXCLIENT}
    cd $TMP_DIR
    # Install nomachine nxnode package
    echo -n "Downloading nomachine ${URL_NXNODE}..."
    cd $TMP_DIR
    wget $URL_NXNODE || exit 1
    echo "done"
    echo "Extracting ${PKG_NXNODE} to /usr/NX..."
    cd /usr
    sudo tar -zxvf ${TMP_DIR}/${PKG_NXNODE}
    cd $TMP_DIR
    # Install nomachine nxserver package
    echo -n "Downloading nomachine ${URL_NXSERVER}..."
    cd $TMP_DIR
    wget $URL_NXSERVER || exit 1
    echo "done"
    echo "Extracting ${PKG_NXSERVER} to /usr/NX..."
    cd /usr
    sudo tar -zxvf ${TMP_DIR}/${PKG_NXSERVER}
    cd $TMP_DIR
    # Install freenx-server
    echo -n "Downloading ${URL_FREENX}..."
    cd $TMP_DIR
    wget ${URL_FREENX}
    echo "done"
    echo "Extracting ${PKG_FREENX}..."
    cd ${TMP_DIR}
    tar zxvf ${TMP_DIR}/${PKG_FREENX}
    # Patch the source files: nxloadconfig Makefile node.conf.sample
    cd ${TMP_DIR}/${DIR_FREENX}
    patch -p0 < gentoo-nomachine.diff
    sed -e "s/3\.\[012\]/3\.\[012345\]/g" -i.bak nxloadconfig
    sed -e "s/foomatic-ppdfile/foomatic/g" -i.bak nxloadconfig
    sed -e "s/etc\/cups\//usr\/share\/cups\/mime/g" -i.bak nxloadconfig
    sed -e "s/PATH_BIN PATH_LIB CUPS_BACKEND NX_VERSION/& NX_ETC_DIR/g" -i.bak Makefile
    sed -e "s/sample \$(DESTDIR)\/\$\$NX_ETC_DIR\//&node.conf/g" -i.bak Makefile
    sed -e "s/#COMMAND_MD5SUM=\"openssl md5\"/COMMAND_MD5SUM=\"md5sum\"/g" -i.bak node.conf.sample
    sed -e "s/foomatic-ppdfile/foomatic/g" -i.bak node.conf.sample
    sed -e "s/etc\/cups/usr\/share\/cups\/mime/g" -i.bak node.conf.sample
    sed -e "s/#COMMAND_SMBUMOUNT=smbumount/COMMAND_SMBUMOUNT=umount/g" -i.bak node.conf.sample
    sed -e "s/#COMMAND_SMBUMOUNT_CIFS=\/sbin\/umount.cifs/COMMAND_SMBUMOUNT=\/bin\/umount/g" -i.bak node.conf.sample
    [[ -f /usr/share/xsessions/ubuntu-2d.desktop ]] && sed -e "s/#COMMAND_START_GNOME=gnome-session/COMMAND_START_GNOME=\"gnome-session --session=ubuntu-2d\"/g" -i.bak node.conf.sample
    ln -s /usr/NX/lib/libXrender.so.1.2.2 /usr/NX/lib/libXrender.so.1.2
    rm *.bak
    # Compile and install
    sudo make install
    # Run nxsetup
    sudo /usr/NX/bin/nxsetup --install --setup-nomachine-key
    # Install starup script
    cd /etc/init.d
    sudo wget -O freenx http://computingplugs.com/files/nxserver
    sudo chmod +x freenx
    sudo update-rc.d freenx defaults
    # Clean up
    cd $CUR_DIR
    rm -fr $TMP_DIR
  • You can download the script and execute it with the following command:
    sudo chmod +x /path/to/freenx-install.sh
    sudo /path/to/freenx-install.sh

How to configure the NX server to make it work with Unity 2D?

If your computer comes without 3D graphics support, the ubuntu will fall into unity 2D automatically, in this case, the nx session should work fine with unity 2D
If your computer comes with 3D graphics support, by default, the ubuntu will try to use Unity (3D) as its desktop session. However, the nx server does not support Unity (3D) so far. In this case the nx session will fail to work. To solve it, you have to change the nx server configuration to use Unity 2D or Gnome classic specificly.
The following commands will configure the NX server to unity 2D(Tested on Ubuntu 12.04):
  • To configure NX server to use unity 2D:
    • Edit /usr/NX/etc/node.conf file as root, and enable the following line:
      COMMAND_START_GNOME="gnome-session --session=ubuntu-2d"
    • Restart freenx server:
      sudo /etc/init.d/freenx restart
  • To configure NX server to use gnome-shell:
    • Install gnome-shell:
      sudo apt-get install gnome-shell
    • Edit /usr/NX/etc/node.conf file as root, and enable the following line:
      COMMAND_START_GNOME="gnome-session --session=gnome"
    • Restart freenx server:
      sudo /etc/init.d/freenx restart
  • To configure NX server to use gnome-session-fallback:
    • Install gnome-session-fallback:
      sudo apt-get install gnome-session-fallback
    • Edit /usr/NX/etc/node.conf file as root, and enable the following line:
      COMMAND_START_GNOME="gnome-session --session=gnome-fallback"
    • Restart freenx server:
      sudo /etc/init.d/freenx restart


  • The scripts has been tested and works the following version of Ubuntu Linux:
    • Ubuntu Desktop 11.10 32bit
    • Ubuntu Desktop 11.10 32bit
    • Ubuntu Desktop 12.04 LTS 32bit
    • Ubuntu Desktop 12.04 LTS 64bit

Update(5 May 2012): Easy installation using the all in one binary

For convenience, I have compiled the free nx server and developed an installer script to install the compiled binaries (so that you do not have to run the script above to download and compile from source). It includes both 32 bit and 64 bit binaries.
  1. Download the freenx.bin
  2. Run the following commands to install:
    chmod +x /path/to/freenx.bin
FYI: I use this method to build the self-extractable installer.

Update(15 Oct 2012): Solve the authentication failure by generating custom key pair.

For some reason, the default nomachine key pair comes with the installation no longer work. Therefore, the nx client could not login because of the key authentication failure.

The solution is: Generate and use custom pair
  1. On the nx server host, remove the old ssh key pairs for the nx user:
    sudo rm /usr/NX/home/nx/.ssh
  2. On the nx server host, generate new custom key pair:
    sudo /usr/NX/bin/nxsetup --install
    When asking:
    Do you want to use your own custom KeyPair? [y/N]
    Answer is y. It will generate files (key pair) in /usr/NX/home/nx/.ssh/. And /usr/NX/home/nx/.ssh/client.id_dsa.key is the file you need to distribute to your nx clients.
  3. In the configuration of NX client (Nomachine nx client or OpenNX client), import the newly generate key file: /usr/NX/home/nx/.ssh/client.id_dsa.key
  4. Now you should be able to login via nx client...

8 ways to share your git repository

See http://www.jedi.be/blog/2009/05/06/8-ways-to-share-your-git-repository/ for more detail.
RepositoryProsConsControlling AccessCreate Repositories
File shareNo network access requiredNot internet friendlyUsing filepermissionsNeeds preparation per project on the share
Git daemonFast git protocolNot internet friendly portno good permission control. Read by default, Write can be enabled , but only anonymousper project needs to be blessed
Plain SSH serverAllows good securityNot internet friendly port, requires account creation per user on server Uses filepermissionsper project inited
SSH server git-shellEnhancement of Plain SSH Server scenarioNot internet friendly port, requires account creation per user on serverUses filepermissionsper project inited
GitosisAdds good remote management of users and repositories, only requires one system accountNot internet friendly portUses gitosis-config fileNo server initalisation, only config is needed
Apache httpFalls back to standard apache config, only requires one system account, internet friendlySlightly overheadUses htpasswdper project inited
Apache http + gitwebFalls back to standard apache config, only requires one system account, internet friendly, adds nice view of repository Slightly overhead, read-only accessUses htpasswdper project inited
githubInternet accessible, easy to use webinterfaceHosted externallyManaging sshkeysWeb interface

Screen capture on Mac OS X

To do screen capture on Mac OS X, you can try the following options:

  • OS key combos (shortcuts)
    • Command+Shift+3: Take a screenshot of the screen, and save it as a file on the desktop
    • Command+Shift+4, then select an area: Take a screenshot of an area and save it as a file on the desktop
    • Command+Shift+4, then space, then click a window: Take a screenshot of a window and save it as a file on the desktop
    • Command+Control+Shift+3: Take a screenshot of the screen, and save it to the clipboard
    • Command+Control-Shift+4, then select an area: Take a screenshot of an area and save it to the clipboard
    • Command+Control+Shift+4, then space, then click a window: Take a screenshot of a window and save it to the clipboard
    • To set the image format of the output file, e.g., to .pdf, (supports tiff, pdf and png):
      defaults write com.apple.screencapture type pdf
  • Grab utility
    • It is in /Applications/Utilities/Grab
  • command in Terminal
    • screencapture -iW ~/Desktop/screen.jpg
  • 3rd party applications

See also

Git over ssh: restrict user to git pull/push access only

git-shell is a restricted login shell for GIT-only SSH access

By changing the login shell to git-shell the ssh user can only access git push/pull:
sudo chsh -s /usr/bin/git-shell gituser
When the user login to server via ssh:
ssh gituser@server

the follow error may occur:
fatal: Interactive git shell is not enabled.
hint: ~/git-shell-commands should exist and have read and execute access.ssh gituser@server
To fix it, run the following commands on the server(Ubuntu 11.10) as root:
sudo mkdir /home/gituser/git-shell-commands
sudo cp /usr/share/doc/git/contrib/git-shell-commands/list /home/gituser/git-shell-commands/
sudo cp /usr/share/doc/git/contrib/git-shell-commands/help /home/gituser/git-shell-commands/
sudo chown -R gituser /home/gituser/git-shell-commands

See Also:

Mac OS: Clear Quicktime player histroy

  • Open QuickTime Player
  • Click File -> Open Recent. -> Clear Menu

Ubuntu 11.10: Change to gnome-shell from unity

  • Install gnome-shell which is the default Gnome3 desktop:
    sudo apt-get install gnome-shell
  • Or install gnome-session-fallback, which looks like the classic Gnome 2 desktop:
    sudo apt-get install gnome-session-fallback






  1. vpn123.com下载非凡VPN软件,并在其网站上找到国内VPN免费测试帐户名和密码,运行并登录,连接到国内的VPN上。
  2. 启动CNTV CBOX软件,连接CCTV5或者其他体育频道,等连接建立,画面开始之后,就可以退出非凡VPN软件,这样画面会更流畅。

  3. 注意,非凡VPN的免费测试帐户密码是随时变更的,如果要再次连接登录该软件,需要刷新网页,获取最新的免费帐户密码。



  • 如果非凡VPN不稳定或者连不上,可以尝试使用以下免费VPN:
    • Astrill
    • FlyVPN
  • 或者尝试下其他海外看CCTV奥运直播的方法

See also

Mac OS X Remote Management: Connect to another Mac in different network/subnet via vnc

Two Macs, Mac1 and Mac2, are on different subnet/network, to manage Mac1 remotely from Mac2:
  1. on Mac1, System Preferences -> Sharing, then enable Remote Management
  2. on Mac2, open Finder, Go -> Connect to server... (or cmd+k), type
    or use the ip address of Mac1
    click Connect button.


  • The approach above works on Leopard(10.5)+

See also:

mount.nfs: mount to NFS server failed: System Error: No route to host.

When enabling NFS service on a Cent OS Linux server, the client could not mount the NFS shares on the server. Got the error below:
mount.nfs: mount to NFS server failed: System Error: No route to host.

The reason is: the iptables firewall blocks the NFS service ports. (NOTE: by default, iptables firewall is enabled on Redhat like Linux, e.g. CentOS, Fedora).

To allow the NFS service ports:

  1. Edit /etc/sysconfig/nfs and uncomment/add the following lines:
  2. Restart the nfs services:
    sudo /etc/init.d/nfs restart
    sudo /etc/init.d/nfslock restart
  3. check if the ports are open as expected:
    rpcinfo -p localhost
       program vers proto   port  service
        100000    4   tcp    111  portmapper
        100000    3   tcp    111  portmapper
        100000    2   tcp    111  portmapper
        100000    4   udp    111  portmapper
        100000    3   udp    111  portmapper
        100000    2   udp    111  portmapper
        100021    1   udp  32769  nlockmgr
        100021    3   udp  32769  nlockmgr
        100021    4   udp  32769  nlockmgr
        100021    1   tcp  32803  nlockmgr
        100021    3   tcp  32803  nlockmgr
        100021    4   tcp  32803  nlockmgr
        100011    1   udp    875  rquotad
        100011    2   udp    875  rquotad
        100011    1   tcp    875  rquotad
        100011    2   tcp    875  rquotad
        100003    2   tcp   2049  nfs
        100003    3   tcp   2049  nfs
        100003    4   tcp   2049  nfs
        100227    2   tcp   2049  nfs_acl
        100227    3   tcp   2049  nfs_acl
        100003    2   udp   2049  nfs
        100003    3   udp   2049  nfs
        100003    4   udp   2049  nfs
        100227    2   udp   2049  nfs_acl
        100227    3   udp   2049  nfs_acl
        100005    1   udp    892  mountd
        100005    1   tcp    892  mountd
        100005    2   udp    892  mountd
        100005    2   tcp    892  mountd
        100005    3   udp    892  mountd
        100005    3   tcp    892  mountd
        100024    1   udp    662  status
        100024    1   tcp    662  status
  4. edit /etc/sysconfig/iptables and add the following rules:
    -A INPUT -m state --state NEW -m udp -p udp --dport 2049 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 111 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 32769 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 32803 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 892 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 892 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 875 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 875 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 662 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 662 -j ACCEPT
  5. Restart iptables:
    sudo service iptables restart

Now you can mount the NFS server on the client side.


The above solution is for the Redhat Like Linux (RHEL, CentOS, Fedora).

See Also:

How to setup a remote git repository and push (or share) the local eclipse project to the repository

  1. Run the following commands on the server to host the central git repository:
    sudo apt-get install git
    mkdir /path/to/git-root/MyProject.git
    cd /path/to/git-root/MyProject.git
    git init --bare --shared=group
  2. Run the following commands on the local computer to push the local eclipse project to the repository:
    cd /path/to/workspace/MyProject
    git init
    echo "bin" > .gitignore
    git add '*'
    git add '.*'
    git commit -m "Initial commit"
    git remote add origin user@server.example.com:/path/to/git-root/MyProject.git
    git push -u origin master
  3. Now other team members can check out the project from the central repository:
    git clone user2@server.example.com:/path/to/git-root/MyProject.git
    cd MyProject

See Also:

How to indicate a static method in UML class diagram?

Answer: In UML class diagram, underlining the field or method indicates it static.

Below is an example class with a static method get(id: int): Employee , which returns a Employee object.

See also:

Git: convert a repository from non-bare to bare

The following commands converts a non-bare repository to a bare repository:
mv /path/to/repo/.git /path/to/repo.git
rm -fr /path/to/repo
cd /path/to/repo.git; git config --bool core.bare true

See also

  1. Migrate a cvs repository to a git bare repository
  2. CVS to git Transition Guide
  3. Git Book - Set up a public repository
  4. Git Book - Set up a private repository

Schedule a cron job to cleanup unnecessary files and optimize the git repository using git-gc

git gc command can be used to optimize the git repository by cleaning up the unnecessary files. The optimization takes some time. We can schedule a cron job to run it:
crontab -e
and schedule the jobs like below:
0 1 * * * cd /path/to/git/Proj1.git; git gc --aggressive
0 2 * * * cd /path/to/git/Proj2.git; git gc --aggressive
the two lines above optimize the two git repositories Proj1.git and Proj2.git at 0am and 1am everyday.

See also

  1. Migrate a cvs repository to a git bare repository
  2. CVS to git Transition Guide
  3. Git Book - Set up a public repository
  4. Git Book - Set up a private repository

Migrate a cvs repository to git bare repository on Ubuntu Linux

  1. Install git-cvs package which includes the migration tools:
    sudo apt-get install git-cvs
  2. Set the cvs repository to read-only:
    sudo chmod -R ugo-w /path/to/CVSROOT
  3. Make the root directory for git and give permissions to the dev-users group:
    sudo mkdir /path/to/git
    sudo chgrp dev-users /path/to/git
    sudo chmod 6775 /path/to/git
    sudo chmod +t /path/to/git
  4. Migrate the cvs modules into git (in the example below, proj1 is the name of the cvs module and it is also used as the name of the git directory):
    cd /path/to/git
    git cvsimport -k -i -d /path/to/CVSROOT -C proj1 proj1
  5. Rename the git project directory:
    sudo mv /path/to/git/proj1/.git /path/to/git/proj1.git
    sudo rmdir /path/to/git/proj1
  6. Fix permissions of the git project directory:
    sudo chgrp -R dev-users /path/to/git/proj1.git
    sudo chmod -R ug+w /path/to/git/proj1.git
    sudo chmod +s /path/to/git/proj1.git
    cd /path/to/git/proj1.git
    # the hooks/ and info/ dirs are special since the control repository access
    sudo chgrp -R git-admin hooks info config description
    sudo find -type d -exec chmod +s {} \;
  7. Configure the git project to be bare git repository:
    cd /path/to/git/proj1.git
    git config --bool core.bare true
    git config --bool receive.denyNonFastforwards true
    git config core.sharedRepository group
    The config file should be look like below:
        repositoryformatversion = 0
        filemode = true
        bare = true
        sharedRepository = group
        logallrefupdates = true
        denyNonFastforwards = true

See also

  1. Optimize git repository in crontab using git-gc
  2. Git Book - Set up a public repository
  3. Git Book - Set up a private repository
  4. Git bare vs. non-bare repostiroies


Online Zodiac Sign Checker

Date of birth:

Zodiac Sign

Symbol Sign names English name Element Quality Polarity Celestial body Period of birth
Capricorn The Goat Earth Cardinal Negative Saturn December 22 - January 20



Use post name as html page title to improve blogger blog SEO

  • Edit the blog template in HTML
  • Replace
    <b:if cond='data:blog.pageType == &quot;index&quot;'>


Bookmark: 21 Tactics to Increase Blog Traffic

21 Tactics to Increase Blog Traffic (Updated 2012)




一(土) 乙(土)


卜(水) 刀(金) 刁(火) 丁(火) 二(火) 力(火) 了(火) 人(金) 入(金) 又(土)


才(金) 叉(金) 川(金) 寸(金) 大(火) 凡(水) 干(木) 工(木) 弓(木) 及(木) 己(土) 巾(木) 久(木) 口(木) 廿(木) 女(火) 千(金) 三(金) 山(土) 上(金) 勺(火) 士(金) 巳(火) 土(土) 丸(土) 兀(土) 夕(金) 下(水 小(金) 丫(土) 幺(火) 也(土) 已(木) 弋(火) 于(土) 丈(火) 子(水)


巴(水) 比(水) 卞(木) 不(水) 尺(火) 仇(金) 丹(火) 仃(火) 斗(火) 反(水) 方(水) 分(水) 夫(水) 父(水) 戈(金) 公(木) 勾(木) 互(水) 户(水) 化(水) 幻(水) 火(火) 介(木) 今(木) 斤(木) 井(火) 亢(木) 孔(木) 毛(水) 木(木) 内(火) 牛(木) 匹(水) 片(水) 亓(木) 欠(木) 切(土) 犬(木) 仁(金) 壬(水) 仍(金) 日(火) 冗(金) 卅(水) 少(金) 升(金) 什(金) 氏(金) 手(金) 殳(金) 水(水) 四(金) 太(火) 天(火) 屯(火) 王(土) 文(水) 毋(水) 午(火) 心(金) 牙(木) 爻(火) 尹(土) 引(土) 尤(土) 友(土) 予(土) 元(木) 曰(土) 月(木) 匀(木) 允(土) 仄(金) 仉(火) 之(火) 支(火) 止(火) 中(火)


白(水) 半(水) 包(水) 北(水) 本(木) 必(水) 丙(火) 布(水) 册(金) 出(金) 代(火) 旦(火) 氐(火) 冬(火) 弗(水) 付(水) 甘(木) 功(木) 古(木) 瓜(木) 禾(水) 弘(水) 乎(水) 卉(木) 加(木) 甲(木) 巨(木) 句(木) 卡(木) 刊(金) 可(木) 立(火) 尥(火) 令(火) 另(火) 矛(水) 卯(木) 民(水) 末(水) 母(水) 目(水) 尼(火) 奴(火) 丕(水) 皮(水) 平(水) 仟(金) 巧(木) 且(金) 丘(木) 囚(木) 去(木) 冉(火) 仨(水) 申(金) 生(金) 史(金) 矢(金) 世(金) 仕(金) 市(金) 示(金) 石(金) 失(金) 司(金) 他(火) 它(火) 田(火) 仝(火) 瓦(土) 外(木) 未(木) 五(木) 戊(土) 仙(金) 兄(水) 玄(水) 央(土) 以(土) 永(土) 用(土) 由(土) 右(土) 幼(土) 玉(木) 札(木) 占(金) 仗(火) 召(火) 正(金) 只(火) 主(金) 仔(土) 左(火)


安(土) 百(水) 冰(水) 并(水) 臣(金) 丞(金) 吃(火) 弛(火) 充(土) 此(金) 次(金) 存(金) 打(火) 地(土) 多(火) 朵(木) 而(金) 耳(火) 帆(水) 仿(水) 妃(水) 份(水) 伏(水) 旮(火) 各(木) 艮(土) 亘(火) 共(木) 光(火) 圭(土) 亥(水) 好(水) 合(水) 回(水) 吉(木) 岌(土) 匠(火) 交(木) 决(火) 伉(木) 考(木) 匡(木) 老(火) 耒(火) 吏(金) 列(金) 六(火) 米(水) 名(水) 牟(水) 囡(火) 年(火)


贝(水) 兵(水) 伯(水) 孛(水) 步(水) 材(木) 岑(木) 车(金) 辰(土) 成(金) 呈(火) 池(水) 赤(金) 伺(金) 村(木) 但(火) 低(火) 弟(火) 佃(火) 豆(火) 杜(木) 兑(金) 囤(火) 坊(土) 孚(水) 甫(水) 告(木) 更(木) 攻(木) 囯(木) 含(水) 罕(水) 何(木) 亨(水) 宏(水) 弧(水) 汲(水) 即(水) 忌(木) 见(木) 江(水) 角(木) 戒(水) 妗(木) 究(木) 君(木) 均(土) 局(木) 克(木) 况(水) 冷(水) 李(火) 利(火) 良(火) 吕(火) 芈(水) 妙(水) 男(火) 妞(水) 判(金) 七(金) 岐(土) 杞(木) 羌(木) 求(火) 劬(木) 汝(水) 杉(木) 劭(金) 佘(金) 汜(水) 宋(金) 町(火) 廷(火) 彤(火) 佗(火) 妥(火) 完(土) 位(土) 吾(木) 汐(水) 希(水) 岘(土) 孝(水) 辛(金) 形(水) 杏(木) 秀(金) 序(金) 巡(金) 汛(水) 延(土) 言(木) 冶(土) 甬(土) 攸(土) 酉(金) 佑(土) 余(土) 妤(水) 皂(金) 志(火) 助(金) 壮(金) 灼(火) 孜(金) 佐(金) 作(金) 坐(金) 屺(土) 曲(木) 全(火) 任(金) 戎(木) 如(金) 式(金) 收(水) 守(金) 寺(金) 似(土) 汀(水) 同(火) 伍(土) 西(金) 先(金) 向(水) 行(水) 休(水) 旭(木) 旬(金) 伢(土) 羊(土) 伊(土) 衣(土) 夷(土) 亦(土) 屹(土) 因(土) 印(水) 有(土) 宇(土) 羽(土) 聿(木) 再(金) 在(金) 兆(火) 至(火) 仲(火) 州(金) 舟(金) 朱(木) 竹(木) 自(火)


艾(土) 哎(火) 岸(水) 昂(木) 枊(木) 坳(土) 垇(土) 八(水) 爸(水) 佰(火) 攽(水) 板(木) 版(水) 杯(木) 表(水) 秉(水) 幷(水) 帛(水) 昌(金) 长(火) 抄(金) 弨(金) 沉(水) 承(金) 冲(金) 初(金) 炊(火) 垂(金) 耷(火) 岱(火) 宕(火) 狄(火) 底(火) 玓(火) 典(火) 店(火) 耵(火) 定(火) 东(木) 咚(火) 侗(火) 抖(火) 妒(火) 沌(水) 儿(金) 泛(水) 房(水) 昉(火) 放(水) 非(水) 氛(水) 汾(水) 奉(水) 扶(水) 府(水) 阜(水) 冈(水) 杲(木) 庚(金) 供(木) 姑(木) 孤(木) 汩(水) 固(木) 刮(金) 卦(水) 官(木) 炅(火) 果(木) 杭(木) 沆(水) 昊(火) 和(水) 虎(水) 佶(木) 技(木) 季(木) 佳(木) 肩(木) 佼(木) 姐(火) 届(木) 金(金) 卺(木) 京(木) 净(金) 纠(木) 赳(木) 玖(木) 咎(火) 卷(木) 居(木) 具(木) 抗(木) 岢(土) 刻(金) 肯(木) 空(木) 快(木) 狂(木) 坤(土) 昆(火) 来(火) 两(火) 林(木) 仑(火) 侣(火) 盲(水) 枚(木) 妹(水) 没(水) 门(水) 孟(水) 氓(水) 汨(水) 宓(水) 岷(土) 旻(火) 明(水) 命(水) 沫(水) 沐(水) 牧(水) 奈(火) 妮(火) 念(火) 帕(土) 杷(木) 抛(水) 沛(水) 佩(水) 帔(水) 朋(水) 批(水) 坡(土) 沏(水) 妻(金) 其(木) 歧(木) 奇(木) 戕(金) 沁(水) 青(金) 穹(木) 屈(木) 取(金) 券(木) 乳(火) 枘(木) 叁(金) 沙(水) 姗(金) 尚(金) 舍(金) 社(金) 沈(水) 使(金) 始(金) 事(金) 侍(火) 受(金) 抒(金) 叔(金) 刷(金) 祀(金) 松(木) 所(金) 弢(火) 宛(土) 汪(水) 旺(土) 委(土) 味(水) 汶(水) 武(水) 昔(金) 析(木) 弦(水) 冼(水) 协(水) 忻(水) 昕(火) 欣(木) 姓(金) 幸(水) 岫(土) 亚(土) 炎(火) 兖(木) 奄(土) 佯(火) 肴(土) 杳(木) 夜(土) 依(土) 沂(水) 宜(木) 抑(土) 佾(土) 易(火) 咏(土) 於(土) 盂(土) 雨(水) 沅(水) 昀(土) 争(火) 枝(木) 知(火) 直(火) 忠(火) 周(金) 宙(金) 侏(金) 竺(木) 杼(木) 状(水) 隹(火) 卓(火) 宗(金)


保(水) 抱(水) 祊(水) 砭(土) 扁(水) 便(水) 柄(木) 炳(火) 波(水) 泊(水) 勃(水) 查(金) 昶(土) 怊(金) 重(火) 抽(火) 穿(金) 舡(金) 春(金) 匆(水) 待(火) 帝(火) 峒(土) 垌(土) 度(金) 段(火) 盾(火) 法(水) 飞(水) 风(水) 封(水) 负(水) 赴(火) 泔(水) 革(木) 宫(金) 故(木) 冠(木) 癸(木) 河(水) 红(水) 泓(水) 虹(木) 侯(水) 后(水) 厚(水) 狐(水) 砉(土) 皇(水) 纪(木) 既(木) 枷(木) 架(木) 柬(火) 建(木) 牮(木) 姜(木) 姣(木) 皆(木) 界(木) 劲(木) 矜(木) 俓(金) 炯(火) 九(木) 玦(火) 军(木) 俊(火) 炬(水) 看(木) 柯(木) 科(木) 奎(土) 厘(火) 俚(火) 亮(火) 泠(水) 柃(木) 柳(木) 律(火) 抹(水) 芒(木) 昴(水) 冒(水) 玫(水) 眉(水) 美(水) 沔(水) 勉(水) 泯(水) 某(水) 姥(水) 娜(火) 耐(火) 南(火) 泮(水) 盼(水) 盆(土) 毗(水) 品(水) 屏(水) 祈(木) 芑(木) 芊(木) 前(金) 俏(木) 秋(金) 俅(木) 酋(木) 泉(水) 染(水) 柔(金) 是(金) 首(金) 姝(金) 帅(金) 思(金) 泗(水) 亭(火) 凃(火) 沱(水) 娃(土) 纨(火) 芄(木) 威(土) 韦(土) 畏(土) 侠(木) 咸(水) 相(木) 香(水) 巷(水) 信(金) 星(金) 庥(金) 胥(金) 叙(金) 宣(金) 泫(水) 炫(火) 泶(水) 沿(水) 匽(土) 彦(木) 泱(水) 垚(土) 姚(土) 要(土) 页(金) 怡(土) 舣(土) 奕(木) 弈(木) 羿(木) 音(土) 垠(土) 胤(木) 盈(水) 映(火) 泳(水) 勇(土) 幽(土) 羑(土) 禹(土) 芋(木) 昱(火) 俞(金) 垣(土) 爰(土) 约(土) 玥(土) 哉(金) 昝(金) 则(金) 昭(火) 沼(水) 者(火) 柘(木) 贞(火) 政(火) 治(水) 峙(金) 致(火) 胄(火) 注(水) 柱(木) 炷(火) 咨(金) 姿(金)


盎(土) 敖(土) 笆(木) 柏(木) 班(水) 般(水) 豹(水) 趵(水) 倍(水) 眧(金) 城(土) 乘(金) 翀(火) 刍(金) 俶(金) 纯(金) 祠(金) 耽(火) 岛(火) 玷(火) 洞(水) 娥(水) 恩(土) 洱(水) 珐(金) 芳(木) 纺(水) 舫(水) 芬(木) 峰(水) 芙(木) 服(水) 刚(金) 罡(金) 高(木) 哥(木) 格(木) 根(木) 耕(木) 耿(火) 肱(木) 恭(木) 贡(木) 倌(木) 桂(木) 衮(木) 函(水) 航(水) 恒(水) 洪(水) 候(水) 祜(水) 花(木) 洹(水) 桓(木) 恢(木) 洄(水) 活(水) 姬(木) 笈(木) 疾(火) 记(木) 家(木) 兼(木) 津(水) 晋(火) 径(木) 娟(木) 隽(木) 珏(火) 峻(金) 桔(木) 珂(木) 恪(木) 括(木) 朗(火) 凉(火) 烈(火) 玲(火) 瓴(火) 凌(火) 留(火) 伦(火) 洛(水) 马(水) 勐(水) 珉(水) 纳(火) 能(火) 倪(金) 娘(火) 畔(水) 配(水) 娉(水) 珀(水) 圃(水) 芪(木) 起(木) 祗(木) 洽(水) 虔(木) 倩(金) 芩(木) 芹(木) 秦(火) 邛(金) 容(土) 洳(水) 桑(木) 珊(金) 射(金) 珅(金) 神(金) 师(金) 十(金) 时(金) 拾(金) 书(金) 纾(金) 殊(金) 恕(火) 栓(木) 朔(火) 凇(木) 素(金) 孙(金) 笋(木) 娑(水) 索(金) 泰(火) 唐(火) 洮(水) 桃(木) 特(火) 甜(火) 庭(火) 桐(木) 娓(土) 纹(水) 翁(土) 乌(火) 务(水) 奚(木) 息(金) 席(金) 洗(水) 峡(土) 夏(火) 宵(金) 效(水) 校(木) 笑(金) 芯(木) 修(金) 脩(金) 徐(金) 栩(木) 轩(土) 烜(火) 眩(金) 洵(水) 训(水) 讯(火) 迅(火) 衍(水) 晏(土) 芫(木) 洋(水) 益(土) 殷(土) 邕(木) 佑(土) 育(土) 彧(土) 峪(木) 原(木) 袁(土) 员(土) 纭(木) 芸(木) 耘(水) 奘(金) 旃(火) 展(火) 站(火) 钊(金) 针(金) 珍(火) 真(金) 洲(水) 祝(火) 酌(金) 笫(火) 祖(金) 祚(金)


邦(水) 浜(水) 苞(木) 毕(水) 彪(水) 邠(水) 彬(木) 斌(水) 彩(金) 曹(金) 涔(水) 参(金) 产(金) 常(金) 晨(金) 趁(木) 偁(金) 琤(金) 晟(火) 敕(火) 崇(金) 处(金) 船(金) 钏(金) 从(火) 崔(木) 带(火) 埭(土) 聃(火) 得(金) 笛(木) 钓(金) 动(火) 梵(木) 访(水) 烽(火) 苻(木) 浮(水) 匐(水) 符(木) 副(金) 岗(土) 舸(木) 苟(木) 规(木) 硅(土) 崞(土) 国(木) 海(水) 酣(水) 焊(火) 毫(水) 浩(水) 珩(水) 胡(土) 扈(水) 凰(水) 悔(水) 彗(水) 基(土) 偈(木) 寄(木) 坚(木) 健(木) 将(火) 皎(木) 教(木) 婕(木) 堇(木) 婧(木) 竟(木) 涓(水) 浚(水) 康(木) 悝(木) 馗(金) 浪(水) 勒(火) 梨(火) 笠(木) 梁(火) 聊(火) 苓(木) 羚(火) 翎(火) 流(水) 娄(火) 鹿(火) 略(火) 珞(火) 麻(水) 麦(水) 曼(水) 茅(木) 茂(木) 梅(木) 密(水) 苗(水) 敏(水) 茉(木) 旎(木) 涅(水) 您(火) 培(土) 旆(水) 佩(金) 浦(水) 戚(火) 崎(土) 启(木) 弃(木) 乾(木) 卿(木) 朐(木) 渠(水) 区(木) 若(木) 啬(木) 商(金) 绍(金) 苕(木) 涉(水) 笙(木) 孰(金) 术(木) 庶(金) 爽(金) 堂(土) 悌(火) 屠(火) 望(水) 唯(土) 伟(土) 尉(土) 问(金) 悟(木) 晞(火) 浠(水) 悉(金) 习(水) 祥(金) 邢(金) 袖(金) 虚(水) 许(木) 勖(土) 旋(金) 雪(水) 珣(火) 焉(土) 闫(木) 研(木) 野(土) 移(土) 异(土) 翊(木) 翌(土) 寅(土) 英(木) 迎(土) 庸(土) 涌(水) 庾(木) 苑(木) 悦(金) 张(火) 章(火) 浙(水) 振(火) 峥(土) 执(火) 珠(金) 专(金) 茁(木) 着(金) 梓(木) 紫(金) 族(金)


报(水) 堡(土) 备(水) 弼(水) 皕(水) 赑(水) 博(水) 采(火) 策(木) 曾(金) 单(火) 场(火) 焯(火) 超(金) 朝(金) 程(火) 盛(金) 淳(水) 词(金) 兹(金) 淙(水) 淡(水) 登(木) 迪(火) 第(木) 棣(木) 奠(土) 栋(木) 敦(火) 发(水) 番(水) 邡(水) 斐(水) 费(土) 冯(水) 涪(水) 袱(水) 复(水) 傅(水) 富(水) 淦(水) 皋(木) 贯(木) 贵(木) 涵(水) 寒(水) 皓(木) 贺(水) 闳(木) 画(土) 淮(水) 荒(木) 黄(土) 惠(水) 嵇(木) 极(木) 集(木) 几(木) 间(木) 绛(木) 焦(火) 蛟(木) 杰(木) 荆(水) 晶(火) 景(木) 钧(金) 珺(木) 竣(金) 开(木) 凯(木) 轲(木) 焜(火) 岚(土) 琅(火) 劳(火) 犁(火) 理(火) 荔(木) 量(火) 淩(水) 荦(木) 络(木) 买(水) 嵋(土) 媚(水) 猛(水) 淼(水) 闵(水) 甯(金) 排(水) 彭(水) 评(水) 普(水) 期(木) 欺(木) 祁(木) 淇(水) 棋(木) 茜(木) 强(木) 乔(木) 钦(金) 琴(木) 清(水) 晴(火) 邱(木) 荃(木) 筌(木) 然(金) 韧(金) 茹(木) 阮(木) 闰(火) 森(木) 善(金) 邵(金) 深(水) 淑(水) 疏(金) 舒(金) 述(金) 顺(金) 舜(金) 丝(金) 斯(金) 耜(木) 淞(水) 邰(火) 棠(木) 淘(水) 添(水) 婷(火) 茼(木) 童(金) 统(木) 为(土) 惟(土) 雯(水) 淅(水) 晰(金) 稀(木) 喜(水) 厦(木) 闲(水) 现(水) 羡(金) 翔(土) 项(水) 象(金) 雄(水) 须(金) 婿(金) 絮(金) 绚(金) 寻(火) 荀(木) 循(火) 雅(木) 娅(土) 砚(土) 雁(木) 焱(火) 尧(木) 壹(土) 诒(土) 迤(土) 贻(土) 胰(土) 轶(火) 茵(木) 淯(水) 寓(木) 渊(水) 媛(火) 粤(土) 越(土) 云(水) 哲(火) 蛰(火) 轸(火) 植(木) 轵(金) 智(火) 众(金) 尊(金)


爱(土) 奥(土) 辟(水) 禀(水) 渤(水) 粲(金) 琛(金) 絺(金) 驰(火) 楚(金) 传(火) 琮(金) 当(火) 荻(木) 钿(金) 殿(火) 鼎(火) 督(火) 渡(水) 顿(火) 沨(水) 枫(木) 港(水) 琯(木) 荷(木) 湖(水) 郇(水) 涣(水) 焕(火) 煌(火) 晖(水) 汇(水) 会(水) 浑(水) 楫(木) 贾(水) 笕(木) 郊(木) 捷(金) 解(木) 禁(木) 靳(木) 经(木) 敬(木) 靖(金) 筠(木) 琚(木) 楷(木) 蒯(木) 琨(木) 廓(木) 雷(水) 莉(木) 里(火) 廉(木) 炼(火) 粱(水) 琳(木) 零(火) 旒(火) 辂(火) 琭(火) 禄(火) 路(火) 湄(水) 渼(水) 盟(水) 湣(水) 莫(水) 睦(火) 乃(火) 楠(木) 农(火) 暖(火) 湃(水) 逄(火) 聘(水) 莆(木) 颀(木) 琦(木) 琪(木) 祺(木) 佥(木) 铅(金) 勤(木) 诠(木) 辁(木) 群(木) 裟(金) 莎(木) 诜(金) 莘(木) 圣(土) 嵊(土) 诗(金) 轼(金) 蜀(金) 竖(木) 嗣(金) 肆(金) 嵩(土) 颂(木) 肃(金) 睢(金) 绥(水) 汤(水) 塘(土) 陀(火) 琬(土) 微(水) 湋(水) 炜(火) 渭(水) 温(土) 渥(水) 熙(水) 苋(木) 湘(水) 详(金) 想(金) 新(金) 歆(金) 惺(金) 绣(金) 诩(土) 煦(金) 暄(金) 煊(火) 铉(金) 渲(水) 勋(土) 询(金) 琰(火) 扬(火) 旸(火) 杨(木) 业(木) 义(木) 诣(土) 意(土) 雍(土) 犹(土) 游(水) 渝(水) 愉(金) 愚(木) 榆(木) 虞(火) 郁(水) 钰(金) 预(木) 御(木) 裕(金) 愈(金) 煜(火) 园(土) 圆(土) 恽(土) 载(金) 詹(火) 湛(水) 照(火) 罩(火) 蜇(火) 浈(水) 桢(木) 渚(水) 庄(金) 琢(火) 赀(火) 资(金)


榜(木) 碧(水) 宾(水) 逋(水) 菜(木) 沧(水) 臧(金) 察(金) 菖(木) 嫦(金) 畅(火) 裳(火) 尘(火) 诚(金) 铖(金) 称(金) 绰(火) 慈(金) 翠(金) 滇(水) 端(火) 尔(火) 菲(木) 逢(水) 凤(水) 福(水) 辅(水) 盖(木) 纲(木) 郜(木) 阁(水) 构(木) 嘏(水) 管(木) 菡(木) 豪(水) 郝(金) 赫(木) 瑚(水) 华(水) 诲(水) 珲(水) 嘉(木) 菁(木) 菊(木) 聚(金) 逵(土) 魁(木) 郎(火) 连(火) 寥(火) 廖(火) 绫(火) 菱(木) 领(火) 雒(火) 瑁(水) 萌(木) 蜜(水) 绵(水) 铭(金) 溟(水) 宁(火) 滂(水) 裴(木) 萍(水) 溥(水) 齐(金) 萁(木) 旗(木) 綦(木) 绮(木) 侨(木) 溱(水) 轻(木) 蜻(金) 箐(木) 铨(金) 荣(木) 溶(水) 榕(木) 熔(火) 瑞(金) 睿(金) 箬(木) 飒(水) 搡(金) 瑟(木) 僧(金) 韶(金) 慎(金) 寿(金) 绶(金) 菽(木) 塾(土) 署(金) 墅(土) 硕(土) 菘(木) 诵(金) 速(金) 愫(金) 溯(水) 台(火) 叹(火) 溏(水) 滔(水) 滕(火) 逖(火) 通(火) 铜(金) 图(火) 途(金) 团(火) 绾(火) 网(水) 维(土) 玮(土) 萎(木) 闻(水) 舞(水) 误(土) 郗(水) 溪(水) 僖(金) 铣(金) 郤(金) 瑕(土) 衔(金) 线(金) 限(金) 像(金) 逍(金) 箫(木) 榭(木) 荥(水) 需(金) 熏(水) 鞅(火) 祎(土) 铱(金) 旖(土) 银(金) 夤(土) 瑛(土) 荧(火) 萤(木) 郢(木) 墉(土) 踊(土) 瑜(金) 与(土) 语(木) 鸢(土) 源(水) 瑗(木) 愿(木) 造(金) 帻(金) 翟(土) 崭(土) 彰(火) 嶂(土) 幛(火) 赵(火) 肇(木) 祯(火) 甄(金) 榛(木) 筝(木) 种(火) 僮(金) 准(土) 菑(木) 缁(火) 滋(水) 综(金)


葆(木) 暴(水) 标(木) 婵(金) 彻(火) 郴(木) 冲(金) 褚(火) 赐(金) 儋(火) 德(火) 缔(火) 蒂(木) 蝶(火) 董(火) 樊(木) 范(水) 赋(水) 葛(木) 赓(木) 巩(木) 瑰(木) 郭(木) 汉(水) 沪(水) 浒(水) 缓(火) 辉(水) 麾(水) 慧(水) 稷(木) 稽(木) 稼(木) 葭(木) 俭(木) 翦(木) 剑(金) 践(火) 箭(木) 娇(木) 胶(木) 峤(土) 节(金) 颉(木) 槿(木) 进(火) 驹(木) 靠(木) 课(木) 宽(木) 葵(木) 锒(金) 阆(火) 乐(火) 磊(土) 黎(火) 锂(金) 厉(火) 涟(水) 练(火) 谅(火) 靓(金) 刘(火) 鲁(火) 逯(火) 漉(水) 轮(火) 论(火) 骆(火) 落(水) 履(水) 满(水) 漫(水) 模(木) 摩(水) 漠(水) 墨(水) 慕(水) 暮(水) 鼐(火) 欧(土) 盘(水) 篇(木) 葡(木) 穷(木) 茕(木) 萩(木) 确(土) 髯(金) 锐(金) 胜(金) 实(金) 蚀(金) 驶(金) 奭(金) 熟(金) 数(金) 驷(金) 谈(火) 郯(火) 瑭(火) 缇(火) 霆(水) 铤(金) 抟(火) 万(水) 葳(木) 纬(土) 苇(木) 卫(土) 慰(土) 缊(金) 鋈(金) 贤(木) 娴(土) 缃(木) 霄(水) 勰(水) 锈(金) 绪(金) 萱(木) 演(水) 样(木) 漾(水) 瑶(火) 叶(土) 漪(水) 仪(木) 亿(土) 谊(木) 逸(土) 毅(木) 熠(火) 莹(木) 颍(水) 影(土) 增(土) 漳(水) 樟(木) 赭(火) 折(火) 箴(木) 稹(金) 震(水) 征(火) 诤(火) 质(火) 陟(金) 挚(金) 著(木) 箸(木) 翥(金) 谆(金)


鲍(水) 蓓(木) 蔀(木) 篰(木) 苍(木) 舱(金) 阊(金) 潮(水) 澈(水) 陈(火) 谌(金) 赪(金) 澄(水) 俦(火) 莼(木) 璁(金) 璀(金) 达(火) 导(火) 道(火) 灯(火) 谛(火) 都(火) 笃(木) 憝(火) 鄂(木) 萼(木) 阏(木) 霏(水) 奋(水) 抚(水) 钢(金) 过(木) 翰(水) 横(木) 衡(土) 桦(木) 寰(水) 机(木) 积(火) 畿(木) 辑(金) 剂(木) 冀(木) 蒹(木) 涧(水) 彊(木) 耩(木) 洁(水) 锦(金) 瑾(火) 缙(木) 静(金) 鄄(木) 举(木) 垦(土) 锟(金) 赖(火) 历(火) 琏(火) 霖(水) 陵(火) 龙(火) 瘘(火) 卢(火) 陆(火) 录(火) 蚂(水) 骂(水) 蒙(水) 梦(木) 默(水) 谋(水) 穆(金) 凝(水) 诺(火) 瓯(土) 潘(水) 霈(水) 频(水) 凭(金) 蒲(木) 朴(木) 器(木) 钱(金) 潜(水) 嫱(金) 橇(木) 桥(木) 憔(木) 樵(木) 亲(木) 磬(木) 逎(火) 遒(木) 蓉(木) 融(土) 儒(金) 润(水) 穑(木) 燊(火) 鄃(金) 树(木) 澍(水) 蒴(木) 遂(火) 荪(木) 昙(火) 潭(水) 陶(火) 潼(水) 谓(土) 锡(金) 熹(火) 羲(金) 宪(水) 橡(木) 晓(火) 筱(木) 兴(水) 醒(金) 璇(火) 学(水) 浔(水) 阎(木) 燕(土) 鸯(火) 晔(火) 烨(火) 錡(金) 颐(土) 峄(土) 燚(火) 萦(木) 嬴(木) 颖(木) 阈(木) 遇(木) 豫(土) 圜(木) 樾(木) 沄(水) 运(土) 郓(土) 战(金) 璋(火) 蓁(木) 臻(火) 缜(金) 铮(金) 绉(金) 诸(金) 麈(金) 筑(木) 撰(火) 篆(木) 谘(火) 樽(木)


蔡(木) 灿(火) 操(金) 禅(金) 澶(水) 骋(火) 聪(金) 戴(火) 黛(火) 澹(水) 点(水) 淀(水) 独(金) 锷(金) 璠(水) 繁(水) 鸽(木) 韩(水) 憾(水) 鸿(水) 浣(水) 徽(金) 玑(木) 矶(土) 绩(火) 激(木) 艰(木) 检(木) 謇(木) 键(金) 蒋(木) 鲛(木) 矫(木) 阶(木) 琎(火) 骏(金) 鞠(木) 恳(木) 阔(水) 栏(木) 阑(火) 澧(水) 励(火) 隶(火) 莲(木) 联(木) 濂(水) 链(金) 蓼(木) 临(火) 岭(土) 隆(火) 潞(水) 蔓(木) 懋(木) 镅(金) 弥(水) 糜(水) 縻(金) 摹(水) 膜(水) 鍪(金) 蓬(木) 皤(水) 璞(水) 谦(木) 遣(金) 针(金) 罄(木) 蕖(木) 阒(木) 嵘(土) 孺(金) 赛(金) 声(金) 霜(水) 谡(金) 隋(金) 燧(火) 誊(火) 闱(土) 蔚(木) 邬(土) 禧(水) 戏(金) 霞(水) 鲜(金) 乡(水) 芗(木) 襄(火) 谢(金) 燮(火) 逊(金) 阳(土) 遥(火) 繇(火) 忆(土) 怿(土) 翼(金) 嶷(土) 荫(木) 应(土) 膺(土) 营(木) 拥(土) 优(土) 舆(金) 屿(土) 辕(土) 远(土) 岳(木) 泽(水) 斋(金) 褶(火) 钟(金) 烛(火) 邹(金)


飚(水) 滨(水) 槟(木) 璨(金) 蝉(金) 础(土) 储(金) 丛(火) 蕫(木) 迩(火) 翻(水) 蕃(木) 丰(火) 鄜(金) 覆(水) 馥(水) 镐(金) 归(木) 濠(水) 环(金) 簧(木) 蕙(木) 获(木) 济(水) 简(木) 谨(木) 烬(火) 瞿(木) 礼(火) 鲤(火) 粮(火) 璐(火) 谟(水) 聂(金) 泞(水) 濮(水) 荞(木) 璩(木) 阙(金) 镕(金) 濡(水) 蕤(木) 蕊(木) 缮(金) 适(火) 曙(火) 双(金) 穗(水) 锁(金) 涛(水) 焘(火) 题(火) 阗(火) 潍(水) 隗(木) 韪(土) 魏(木) 芜(木) 雟(金) 曛(火) 蕈(木) 鄢(土) 颜(木) 曜(火) 医(土) 彝(土) 鄞(土) 鄘(土) 韫(土) 赜(金) 缯(金) 谪(火) 镇(金) 织(金) 贽(火) 颛(金) 转(火) 濯(水)


薄(水) 簿(水) 礤(土) 蟾(金) 迟(金) 宠(金) 畴(金) 辞(金) 祷(金) 邓(火) 镝(金) 关(木) 绘(水) 际(火) 蓟(木) 疆(土) 缴(木) 鲸(木) 镜(金) 铿(金) 鲲(木) 蕾(木) 类(火) 离(火) 丽(火) 栎(木) 帘(火) 辽(火) 猎(水) 遴(火) 浏(水) 鎏(金) 庐(火) 垆(土) 橹(木) 麓(木) 难(木) 鲵(木) 撵(火) 攀(木) 庞(火) 鹏(水) 谱(水) 瀑(水) 麒(木) 迁(金) 签(木) 锵(金) 蔷(木) 萨(木) 识(金) 烁(火) 谭(火) 镗(金) 韬(火) 薇(木) 稳(土) 蕹(木) 玺(火) 系(金) 暹(金) 萧(木) 肖(木) 选(金) 薛(木) 遗(木) 蚁(木) 绎(火) 滢(水) 韵(土) 赞(金) 錾(金) 赠(火) 鄣(火) 辙(火) 郑(火) 骘(火) 遵(金)


宝(火) 缤(水) 濒(水) 藏(木) 阐(火) 镡(金) 筹(木) 触(金) 郸(火) 党(火) 窦(火) 藁(木) 瀚(水) 铧(金) 怀(水) 还(水) 继(木) 籍(木) 舰(木) 藉(木) 警(木) 竞(木) 矍(火) 觉(木) 遽(木) 阚(木) 喾(木) 郐(木) 岿(土) 馈(木) 濑(水) 蓝(木) 篮(木) 黧(火) 醴(火) 沥(水) 龄(火) 骝(火) 泷(水) 栊(木) 胧(火) 拢(火) 露(水) 泸(水) 炉(火) 栌(木) 掳(火) 罗(火) 迈(水) 颟(水) 馒(水) 鹛(水) 檬(木) 藐(木) 蠛(水) 魔(水) 聍(金) 糯(火) 篷(木) 譬(水) 飘(火) 镤(金) 镨(金) 荠(木) 骞(木) 琼(木) 壤(土) 薷(木) 襦(金) 赡(火) 释(金) 薹(木) 铴(金) 腾(火) 曦(火) 献(木) 霰(金) 潇(水) 续(金) 严(木) 邀(木) 耀(火) 邺(土) 议(木) 译(金) 


霸(水) 鐾(金) 飙(水) 骖(金) 铎(金) 藩(水) 瀵(水) 顾(木) 鹘(木) 颢(木) 鹤(水) 鹣(木) 茧(木) 镌(金) 澜(水) 斓(火) 览(火) 藜(木) 蠡(土) 俪(火) 珑(火) 砻(土) 碌(土) 邈(水) 蛩(金) 瀼(水) 随(金) 藤(木) 铁(金) 巍(土) 燨(金) 艺(木) 莺(木) 撄(土) 誉(土) 跃(土)


边(水) 巅(土) 叠(火) 读(火) 沣(水) 龚(木) 蘅(木) 骅(水) 欢(水) 霁(水) 鉴(金) 邝(木) 漓(水) 苈(木) 蔺(木) 笼(木) 聋(火) 芦(木) 舻(火) 峦(土) 孽(木) 鸥(土) 苹(木) 蕲(木) 权(木) 穰(水) 苏(木) 弯(火) 袭(金) 隰(金) 响(水) 骁(金) 俨(木) 懿(土) 隐(土) 璎(土) 蕴(木) 藻(水) 铸(金)



"一 乙"




"二 乃 了 人 入 刀 力 卜 又 几 丁"




"三 上 下 久 个 丸 乞 也 于 千 大 子 寸 小 山 川 工 己 匀女子"




四 中 丹 之 予 云 井 亢 介 仁 元 公 切 分 化 午 升 友 及 太 天 夫 少 引 心
户 支 文 斗 斤 方 日 月 木 火 水 比"




五 丘 且 世 丙 主 井 仕 仙 代 令 充 冬 出 加 功 包 北 半 占 卯 右 可 句 叶
古 司 只 召 外 本 巧 巨 市 布 平 弘 弗 必 戊 旦 正 民 永 玉 瓦 甘 生 用 田
由 甲 申 白 目 石 穴 立




"六 亘 交 仰 任 仲 伏 仔 光 先 兆 全 共 再 列 印 合 吉 向 后 同 名 宇 存
安 字 守 州 帆 年 旭 早 有 求 百 弛 竹 米 羊 羽 臣 自 至 舟 行 衣 西 回 如




七 亨 吾 均 坐 壮 声 妙 孝 宏 局 希 序 志 戒 改 更 杏 材 村 位 佑
作 伯 伴 体 余 克 兑 兔 兵 初 判 利 助 告 君 步 江 汗 汝 池 秀 究 良 见 言
谷 豆 赤 车 辰 "




八 并 事 亨 京 依 佳 侃 供 侍 使 佩 来 例 免 雨 其 具 典 冒 冽 函 刻 刷 刹
制 到 效 协 卓 卷 取 受 和 周 命 固 坤 垂 坦 坡 夜 奇 奈 奉 姑 始 妹 枚 板
林 欣 武 汲 决 沙 汰 冲 沛 沐 沃 汪 炎 炊 版 物 牧 玖 的 直 盲 知 社 空 究
舌 虎 采 金 长 昔 明 旺 服 朋 杭 果 枝 松 扭 东 门 青 季 孟 宜 官 宗 宙 定
尚 居 岳 岸 岩 岱 幸 庚 店 府 弦 征 彼 往 快 忽 忠 念 或 所 房 技 承 折 扶
政 放 齐 于 易 昂 昆 昌 升 昊




九 亭 亮 系 侠 信 俊 保 便 侣 俞 冒 冠 克 前 则 劲 勉 勃 勇 南 厚 叙 咸 哄
品 垠 奎 奏 威 姻 姬 姜 妍 姿 客 宣 室 屋 巷 帝 幽 度 回 建 彦 待 律 思 性
招 拓 折 拜 抱 施 映 昨 是 春 星 昭 架 柯 查 柴 柔 柘 韦 柱 柏 柄 柳 段 油
泳 沿 河 况 注 泉 泰 治 波 泊 法 冷 炳 帅 甚 界 皆 皇 盈 看 相 眉 祈 科 秋
秒 穿 突 竿 红 罕 美 耐 肖 衍 表 要 计 订 贞 军 重 门 面 革 音 风 飞 食
首 香 姣




十 乘 倚 幸 仓 修 借 值 倍 仿 表 伦 党 兼 倡 刚 原 员 哥 唐 哲 城 夏 娥 宴
家 宫 宰 容 射 展 峡 岛 峰 师 席 库 航 般 芽 芹 花 芝 芳 娘 袁 衿 活 洪 洲
洗 洞 派 洋 流 烘 烈 特 珂 珊 珍 玲 益 真 词 神 祝 组 祚 秦 秤 租 秘 并
竟 级 纱 纯 素 纳 纽 纺 纹 翁 者 耘 耿 育 股 皋 座 庭 径 徐 恩 恭 恢 恒 恤
息 恬 扇 拾 持 效 料 旁 旅 晏 晃 时 晋 书 朔 校 格 桂 根 栖 桃 桐 钊 殊 气
记 训 讨 豹 贡 财 起 马 支 高 娟 倩 娜




乾 伟 偕 健 偶 侧 停 侦 富 凰 剩 副 勘 动 务 区 卿 参 唯 启 商 唱 珠 般 产 皎
尽 眼 婉 研 祥 移 竟 章 笛 伏 笙 弦 紫 绅 绍 绊 累 罩 习 翌 者 聊 胡 教 敏 斌
斜 旌 旋 族 晤 晨 晚 曹 望 朗 梗 梧 梓 梅 梨 梁 毫 球 海 浩 涉 涌 浴 烽 爽 崇


国 基 坚 执 堂 培 寅 寄 宿 寂 密 尉 寻 将 专 崔 巢 常 带 康 强 张 彩 彤 雕


彬 从 悦 悟 戚 挺 英 婕 若 苔 苗 茂 术 袖 许 责 赦 近 闭 雪 顷 顶 鹿 麦


麻 佩 闰 闵 雅 雁 集 云 项 须 顺 黄 黑 备 传 割 胜 劳 喜 乔 善


单 喻 围 堪 尧 场 堤 报 堡 媒 媚 寒 寓 寻 尊 岚 巽 帽 几 复 惟 情 荀 茜 茶


扇 掘 卷 扫 舍 掌 迫 贰 量 钧 钞 开 闲 间 添 焰 无 为 犁 猛 球 现 理 番


媛 登 授 捷 敢 散 敦 斑 敲 斯 晶 晴 晰 最 替 期 朝 棋 棍 栈 森 植 荒 草


接 棠 栋 棒 棉 钦 款 证 注 评 象 贵 贴 贸 越 超 迪 茹 旋 茫 众 街 词


渊 涯 涵 混 深 淑 清 净 浅 淘 淡 焕 发 盛 砚 稀 稍 税 程 窗 竣 童 策 答 筑 筒


等 笔 筏 栗 绞 给 吉 绚 絮 绝 统 络 翔 能 舜




仅 债 杰 催 惠 伤 舒 倦 传 勤 势 募 嗣 园 圆 块 干 廊 渡 湃 渺 照 煎 媒 炼 爷


琴 琢 琵 琶 棱 督 睦 碇 禁 禄 禽 稚 坚 绢 义 圣 廉 巢 微 爱 意 惮 荣


感 愚 想 愉 愈 斟 新 慧 暄 暑 会 极 楚 楠 枫 椰 榆 殿 景


温 港 渠 湖 湘 测 汤 铁 佃 铃 附 雌 雉 聘 肆 琛 唇 脱 台 获 莓 莫 蜀


衙 裟 装 裕 里 解 咏 夸 詹 资 迹 跳 路 载 农 退 乃 郊 铅 电


雷 颂 顿 预 饮 驯 驰 鼎 鼓 雍 经 莆 莎 莉 普 创 诏 雄 博 弼 智 贺 皓 凯




团 图 境 寿 梦 奖 察 实 对 伪 侨 像 佟 煌 仆 僚 崭 廓 彰 愿 慈 慎 态 搬 业


旗 畅 槐 枪 沟 歌 溢 温 溪 源 滋 支 溶 熊 荧 雨 犒 猿 狮 瑚 瑟 瑞 鼓 监 尽


廖 硕 祯 福 种 称 竭 端 个 算 精 紧 绰 绶 综 绯 绵 维 纶 绫 置 翠 翡 靖 晖


台 与 舞 菊 董 华 果 菜 蜻 蜜 裙 裳 诫 诰 诲 诚 誓 说 诞 认 貌 赈 宾


轻 赵 群 郎 酸 银 铜 铭 阁 韶 领 饰 饱 仿 魁 魏 诗 试 询 诠 援 挥 扬


凰 鸣 鼻 齐 瑛 瑗 榕 碌 诱 宁 玮 椿 曾 琳 群 杨 虞 当 盟 酩




仪 俭 僻 剧 剑 劈 刘 啸 增 墨 豪 娇 宽 番 寮 履 帜 广 熙 弹 影 微 彻 德 慰 慷


醉 锐 锄 锋 阅 院 阵 震 宵 霆 霈 颐 万 落 蝶 卫 冲 褓 复 谋 课 谈 调 谅 论 贤


赐 质 赏 卖 赋 趣 践 辉 辈 轮 替 游 逸 进 邮 郭 部 醇 确 磁 磐 磊 稼 稿 谷 稻


穷 箱 节 箭 范 篇 落 糊 纬 缘 缄 绪 线 致 缔 编 练 暑 义 铺 馆 苇 叶 葛 葵 管


萱 著 董 庆 慕 虑 掴 摧 摩 数 暂 暴 暮 概 乐 槽 樟 枢 标 模 样 楼 欢 毅 演 汉

渐 涨 滞 漫 满 洋 熟 热 荧 瑶 玛 郎 几 皓 盘 驾 驻 魄 鸦 赓 华 燕 惯 慧 嘉 碧


樊 蒂 颖 块 发 葆 渔 漆 纲 尝 彰 志 赫 辅 造 逍 速 逞 途 透 通 逢 连 静 萤 阴




仅 冀 剑 进 器 喷 坛 壁 奋 道 岭 憬 憧 抚 怜 战 撮 撤 撰 幢 播 扑 整


晕 厉 机 陆 陵 鞘 头 余 默 龙 桦 横 桥 橇 树 樽 橙 竖 洁 润 泄


烨 烧 燃 炖 磷 燎 芦 穆 窥 筛 筑 糖 县 罢 翰 举 苍 蒸 席


卫 衡 亲 谓 谒 诚 谏 谚 诸 豫 蹄 辑 办 游 运 远 遇 遂 道 达 都 醒 钢 锦 铮


锡 钱 总 橡 震 敬




儒 优 赏 励 壕 壑 岳 应 忆 撼 擒 擎 检 操 擅 择 擂 敛 檄 檀 褒 讲 谦 谢 豁 趋


融 远 乡 键 针 钟 锻 阔 阶 队 阳 隆 霜 鞠 韩 馆 骏 鲜 黛 点 齐 鸿 荫 襁 激 浓


营 灿 烛 燧 微 响 独 瞰 瞬 禅 簇 篷 纵 繁 缝 声 聪 聊 临 艰 参 蔗 谅 蔬 篷 莲


赛 璜 燃 兴 学 遥 晓 霖 澄 潮 潜 潭 蓉 蓄 茜 颖 璇 蓓 陶 陈 谘 璋 霓




戴 搁 拟 擦 断 曜 曛 曙 归 濠 阔 湿 济 涛 滨 爵 获 狞 猎 环 瞻 礼 简 馈 箫 绣


织 缮 翻 异 职 旧 荫 蕊 荡 蕃 蝉 声 讴 谨 丰 转 遭 适鄙 医 锁 镇 锤 镰 聂 鸡


离 雏 额 频 题 骑 鹃 灿 蕙 鞭 碧 霞 蒲




劝 乡 宝 庐 扩 攀 旷 莹 泻 溅 瀑 镜 关 雾 韵 愿 类 鲸 鹊 鹏 麓 兽 猎 祷 稳 获


薄 绳 臆 臂 膺 薪 蔷 薇 蕾 襟 识 证 赞 赠 辞 遵 选 辽 郑 鞠 麒 丰




还 释 钟 阐 露 飘 馨 璃 龄 宝 迈 怀 悬 胧 沥 献 琼 砾 籍 筹 篮 继 办 罗


藏 萨 籍 薯 觉 触 译 议 警 赢 面 锈 瀚 瀛 烁




顾 翻 饶 驱 莺 鹤 鸡 傈 属 巍 续 缠 腊 护 誉 贴 轰 辩 铁 随 隐 霸 竞 耀 宝




艺 俨 巅 摄 权 欢 灌 叠 穰 笼 听 澡 苏 芦 览 赞 读 边 鉴 乡 餐 须 蔺 懿 樱




岩 恋 织 藓 兰 变 矿 显 驿 验 髓 体 乐 麟 龚




矗 罐 艳 禳 酿 炉 陇 谒 灵 鹰 鑫




听 篱 蛮 观 才 灵




湾 瞩 赞 逻 爵 厌




锣 銮 缆






艳 欢 鹦









Find a good name for your baby

A shell script to check if your Mac is infected with Flashback Trojan

UPDATE(17/April/2012): Apple finally released the official fix for flashback: http://support.apple.com/kb/HT5242
You should run Software Update to install the update. 

The following content is outdated. Use the update above.
The new Mac trojan, Flashback, has been infected 600,000 users. To check if your Mac has been infected, you can download the following script and run it in Terminal.


echo -n "Checking Safari... "
if [[ -z `defaults read /Applications/Safari.app/Contents/Info LSEnvironment 2>&1 | grep "does not exist"` ]]; then
    echo "INFECTED."
    echo "NOT INFECTED."

echo -n "Checking Firefox... "
if [[ -z `defaults read /Applications/Firefox.app/Contents/Info LSEnvironment 2>&1 | grep "does not exist"` ]]; then
    echo "INFECTED."
    echo "NOT INFECTED."

echo -n "Checking DYLD_INSERT_LIBRARIES... "
if [[ -z `defaults read ~/.MacOSX/environment DYLD_INSERT_LIBRARIES 2>&1 | grep "does not exist"` ]]; then
    echo "INFECTED."
    echo "NOT INFECTED."

echo -n "Checking Java... "
if [[ -n `which java` ]]; then
    JavaVersion=`java -version 2>&1 | grep "java version" | awk '{print $3}'`
    echo -n "(verion=$JavaVersion) "
    JavaVersionNumber=`echo $JavaVersion | sed -e "s/[\"\._]//g"`
    if [[ $JavaVersionNumber -lt 16031 ]]; then
        echo "NOT PATCHED."
        echo "PATCHED."
    echo "PATCHED."

if [[ $SafariInfected -eq 1 || $FirefoxInfected -eq 1 || $DyldInsertLibrariesInfected -eq 1 ]]; then
    echo "Warning: your system is INFECTED with Flashback Trojan." 1>&2

if [[ $JavaPatched -eq 0 ]]; then
    echo "Warning: your Java is not patched with Java 1.6.0_31. You need to run Software Update to install the Java update, which protects from the Flashback Trojan." 1>&2

How to run it?

  1. Download the script.
  2. Extract chk_flashback from the downloaded tar.gz file.
  3. Open Terminal and run it.
    chmod +x chk_flashback; ./chk_flashback

To manually remove the trojan:

F-Secure instructions to manually remove flashback trojan



Debian Samba LDAP Integration

  1. install samba
    • aptitude install samba
  2. install smbldap-tools
    • aptitude install smbldap-tools
  3. read smbldap-tools documentation
    • gunzip /usr/share/doc/smbldap-tools/README.Debian.gz
    • less /usr/share/doc/smbldap-tools/README.Debian
I. LDAP Server Configuration
  1. Copy the 'samba.schema' to be used in your LDAP server (you can find it in '/usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz' after installing the samba-doc package):
    • zcat /usr/share/doc/samba-doc/examples/LDAP/samba.schema.gz > /etc/ldap/schema/samba.schema
  2. Modify the file '/etc/ldap/slapd.conf' to include the samba schema:
    • include /etc/ldap/schema/samba.schema
  3. Optionally add indexes to optimize SAMBA access:
    • index uid,uidNumber,gidNumber,memberUid eq
    • index cn,mail,surname,givenname eq,subinitial
    • index sambaSID eq
    • index sambaPrimaryGroupSID eq
    • index sambaDomainName eq
  4. Allow users to change their NT and LM Passwords changing the line: access to attribute=userPassword by: access to attrs=userPassword,sambaNTPassword,sambaLMPassword
  5. Restart the LDAP server.
    • /etc/init.d/slapd restart
II. Samba Server Configuration
  1. Edit the '/etc/samba/smb.conf' to change the passdb backend from the original to:
    • passdb backend = ldapsam:ldap://localhost
  2. Add configuration directives for the passdb system:
    • obey pam restrictions = no
    • ldap admin dn = cn=admin,dc=neuroimaging,dc=org,dc=au
    • ldap delete dn = no
    • ldap suffix = dc=neuroimaging,dc=org,dc=au
    • ldap machine suffix = ou=Computers
    • ldap user suffix = ou=Users
    • ldap idmap suffix = ou=Users
    • ldap group suffix = ou=Groups
  3. More to use the smbldap-tools to change passwords:
    • ; Do ldap passwd sync
    • ldap passwd sync = Yes
    • passwd program = /usr/sbin/smbldap-passwd %u
    • passwd chat = *New*password* %n\n *Retype*new*password* %n\n *all*authentication*tokens*updated*
  4. And if you want to administer user and groups from windows add:
    • add user script = /usr/sbin/smbldap-useradd -m "%u"
    • ldap delete dn = Yes
    • delete user script = /usr/sbin/smbldap-userdel "%u"
    • add machine script = /usr/sbin/smbldap-useradd -w "%u"
    • add group script = /usr/sbin/smbldap-groupadd -p "%g"
    • delete group script = /usr/sbin/smbldap-groupdel "%g"
    • add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"
    • delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
    • set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u"
  5. Restart samba and add the smbldap admin password to let SAMBA use it:
    • /etc/init.d/samba restart
    • smbpasswd -w LDAP_ADMIN_PASSWORD
smbldap-tools Configuration
  1. Start copying the files 'smbldap.conf' and 'smbldap_bind.conf' from '/usr/share/doc/smbldap-tools/examples/' to '/etc/smbldap-tools/':
    • zcat /usr/share/doc/smbldap-tools/examples/smbldap.conf.gz > /etc/smbldap-tools/smbldap.conf
    • cp /usr/share/doc/smbldap-tools/examples/smbldap_bind.conf /etc/smbldap-tools/smbldap_bind.conf
  2. Edit the 'smbldap.conf' file; the main parameters to watch out are the 'SID', the ldap servers addresses, the TLS settings and the LDAP suffix.
    • NOTE: To obtain the SID execute the following command with your SAMBA server Running:
      • net getlocalsid
  3. Edit the 'smbldap_bind.conf' file and put there the SMBLDAP administrator's DN and Password.
  4. Fix file permisions:
    • chmod 0644 /etc/smbldap-tools/smbldap.conf
    • chmod 0600 /etc/smbldap-tools/smbldap_bind.conf
  5. To initialize the LDAP database invoque the command:
    • smbldap-populate
    • NOTE: This makes the tool start adding uids and gids from 1000 (hardcoded default), if you want to start from different numbers you can use "-g <firstgid>" or "-u <firstuid>" as options to smbldap-populate.

Mac OS X LDAP Client Setup

  1. Enable root account
  2. Add LDAPv3 source to Directory Access
    1. go to Applications -> Utilities, open Directory Utility
    2. Unlock it with root password
    3. Click "Show Advanced Settings"
    4. Click "Services"
    5. Select LDAPv3, click Configure
    6. click the edit pen icon at bottom left
    7. Check off "Use DHCP-supplied LDAP server"
    8. Select Options then click New
      • Enter a configuration name ie: Master LDAP
      • Server Name: your Master LDAP server name ie. ldap.example.org
      • Click on LDAP Mappings and select RFC 2307 (Unix)
      • A window will pop up that will ask you for a search base. Put ie. dc=example,dc=org
        • Check SSL
    9. Click OK then OK again.
    10. Now you'll be back at the Directory Access Window
    11. Click on Authentication at the top of the window
    12. Under Search Pull Down choose "Custom Path" then Click Add. Select ldap/ldap.example.org source
    13. Click OK and OK again until Directory Access closes.
    14. Restart the machine
    15. After the restart you should be able to log in as any valid LDAP user
  1. If after configuring your LDAP you still can't authenticate and your /var/log/system.log contains messages like these /System/Library/LoginPlugins/MCX.loginPlugin/Contents/MacOS/MCXCacher: DSOpenNode(): dsOpenDirNode("/LDAPv3/ldap.example.org") == -14002
    • The problem comes from the Format utility of the Directory Access which apparently keeps misconfiguration even if it is corrected.
    • To correct
      1. Remove all contents of the directory /Library/Preferences/DirectoryService ie. double click on your Mac HDD
      2. Open /Applications/Utilities/Netinfo Manager and within it remove all contents of /config/mcx-mask
      3. Then restart the machine and reconfigure.
  2. After an update to Mac OS X Server 10.5.3 some clients do not find the LDAP server with messages:
    • DirectoryService[48]: DSLDAPv3PlugIn: [machine] LDAP server config not updated with server mappings due to server mappings error.
    • DirectoryService[48]: LDAPv3: SafeOpen Can't retrieve server mappings from search base of <cn=config,dc=lip6,dc=fr>.
    • DirectoryService[48]: LDAPv3: SafeOpen Cannot retrieve server mappings at this time.
    • The problem came from utility Utility directory (Directory Utility) that keeps obviously a bad configuration. Pour corriger cela il faut : To correct this requires:
      1. Delete the contents of the directory / Library / Preferences / DirectoryService.
      2. Then, (restart), and repeat the configuration format Directory without error:)
  3. I just spent a very long time on a client does not find the LDAP server with messages: /System/Library/LoginPlugins/MCX.loginPlugin/Contents/MacOS/MCXCacher: DSOpenNode(): dsOpenDirNode("/LDAPv3/mon.server.fr") == -14002
    • The problem came from utility format Directory (Directory Access) that keeps obviously a bad configuration even if it is correct.
    • To correct this requires:
      1. Delete the contents of the directory / Library / Preferences / DirectoryService.
      2. Delete the entire contents of / config / pcs-cache in the NetInfo Manager (NetInfo Manager).
      3. Then, (restart), and repeat the configuration format Directory without error:)
  4. sudo dscl . -delete /Config/mcx_cache; sudo reboot
  1. Configuring Mac OS X LDAP Authorization for Leopard (Mac OS X 10.5.x)
  2. Configuring Mac OS X LDAP Authorization for Tiger (Mac OS X 10.4.x)
  3. Mac OS X authentication against OpenLDAP
  4. Setting up Mac OS X Server
  5. Mac OS X: How to Connect to an LDAPv3 Server Using a Self-Signed Certificate
  6. Integrating Apple OS X Clients with an OpenLDAP Directory(10.4 Tiger)
  7. Integrating OSX Clients with an OpenLDAP Directory
  8. Mac OS X: dscl
  9. Mac OS X ldap client
  10. Integrating Mac OS X And Novell eDirectory
  11. Integrating OS X into Active Directory
  12. dsconfigldap command
  13. MAC OS/X authentication against OpenLDAP 2.3 (Resolved)

Debian Samba Server Setup

  1. Install samba
    • aptitude install smaba samba-doc smbldap-tools
      • Workgroup/Domain Name: NIG
      • Modify smb.conf to use WINS settings from DHCP?: No
    • dpkg-reconfigure samba
      • How to run Samba: daemons
      • Create password database: Yes
  2. Enable samba.schema in LDAP server
    • aptitude install samba-dodc
    • cd /usr/share/doc/samba-doc/examples/LDAP
    • gunzip samba.schema.gz
    • cp samba.schema /etc/ldap/schema/samba.schema
    • vim /etc/ldap/slapd.conf
      • include /etc/ldap/schema/samba.schema
    • /etc/init.d/slapd restart
  3. Let Samba use LDAP as backend
    • vim /etc/samba/smb.conf
      • passdb backend = ldapsam:ldap://localhost
      • ldap suffix = dc=neuroimaging,dc=org,dc=au
      • ldap machine suffix = ou=SMBMachines
      • ldap user suffix = ou=People
      • ldap group suffix = ou=Group
      • ldap admin dn = cn=admin,dc=neuroimaging,dc=org,dc=au
      • ldap delete dn = no
      • ldap ssl = start_tls
  4. Configure smbldap-tools package
    • aptitude install smbldap-tools
    • cp /usr/share/doc/smbldap-tools/examples/smbldap_bind.conf /etc/smbldap-tools/
    • gzip /usr/share/doc/smbldap-tools/examples/smbldap.conf.gz
    • cp /usr/share/doc/smbldap-tools/examples/smbldap.conf /etc/smbldap-tools/
    • vi /etc/smbldap-tools/smbldap_bind.conf
    • vi /etc/smbldap-tools/smbldap.conf
    • vi /etc/samba/smb.conf
    • Note: read /usr/share/doc/smbldap-tools/
  5. Important:
    • To change rootpw of the binddn cn=admin,dc=example,dc=org, you need
      • smbldap-passwd
      • edit /etc/smbldap-tools/smbldap_bind.conf
      • smbpasswd -w <ldap_rootpw>
See Also
  1. Samba LDAP
  2. Samba 3 LDAP

Maximum integer in Javascript

In Javascript, numbers are 64 bit floating point values. The largest integer (magnitude) is 253, or Math.pow(2,53), or 9007199254740992.

However, the bitwise operators and shift operators supports only up to 32 bit signed integer,  231-1, or Math.pow(2,31)-1, or 2147483647.

Note: the maximum 32 bit unsigned integer,  232-1, or Math.pow(2,32)-1, or 4294967295, can be used in arithmetic calculations but not bitwise operations.

see also

Configure exim4 to send emails via smtp.gmail.com

  1. Install exim4:
    sudo apt-get install exim4-daemon-light openssl
  2. Configure exim4:
    sudo dpkg-reconfigure exim4-config
    • General type of mail configuration: Mail sent by smarthost; no local mail
    • IP address or host name of the outgoing smarthost: smtp.gmail.com:587
  3. Edit /etc/exim4/passwd.client file, add a line contains the gmail user name and password in the following format:
  4. Generate exim4 certificate:
    sudo /usr/share/doc/exim4-base/examples/exim-gencert
  5. echo "MAIN_TLS_ENABLE = 1" >> /etc/exim4/exim4.conf.localmacros
  6. Reload exim4:
    /etc/init.d/exim4 reload


  • The commands above tested on Ubuntu Linux 11.10
  • To send a test email from command line:
    echo "this is a test mail." | mail -s "test" youremail@yourdomain.org
  • if mail is not installed, try
    sudo apt-get install mailutils

see also