<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.1" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>{Li C Zhao}</title>
	<link>http://blog.lizhao.com</link>
	<description>My Personal Blog and Gallery</description>
	<pubDate>Mon, 14 Jul 2008 13:48:57 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
	<language>en</language>
			<item>
		<title>Welcome Rocky</title>
		<link>http://blog.lizhao.com/2008/07/12/welcome-rocky</link>
		<comments>http://blog.lizhao.com/2008/07/12/welcome-rocky#comments</comments>
		<pubDate>Sat, 12 Jul 2008 16:12:24 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/07/12/welcome-rocky</guid>
		<description><![CDATA[
After a week of nagging, my wife finally let me adopt Rocky, the cute little Shiba Inu. The condition was that I have to bear sole responsibility for Rocky: walk him, feed him, bring him to the vet, clean up, etc&#8230;. He&#8217;s a bit sick at the moment. It seems that he has Kennel Cough. [...]]]></description>
			<content:encoded><![CDATA[<div class="g2image_float_left"><a href="http://blog.lizhao.com/v/pet/first_night/"><img src="http://www.lizhao.com/gallery2/d/4174-2/IMG_0049.JPG?g2_GALLERYSID=47a68acc023fc778b3d2f1c2e77c504c" alt="IMG_0049.JPG" title="IMG_0049.JPG" class="g2image_float_left" width="150" height="150" /></a></div>
<p>After a week of nagging, my wife finally let me adopt Rocky, the cute little Shiba Inu. The condition was that I have to bear sole responsibility for Rocky: walk him, feed him, bring him to the vet, clean up, etc&#8230;. He&#8217;s a bit sick at the moment. It seems that he has Kennel Cough. He&#8217;s has been coughing and and throwing up food. It&#8217;s a bit messy and I have been cleaning after him. We are still trying to adjust the change and trying to train him.</p>
<div class="g2image_float_left"><a href="http://blog.lizhao.com/v/pet/at_the_shelter/"><img src="http://www.lizhao.com/gallery2/d/4181-2/IMG_0093.JPG?g2_GALLERYSID=47a68acc023fc778b3d2f1c2e77c504c" alt="IMG_0093.JPG" title="IMG_0093.JPG" class="g2image_float_left" width="150" height="150" /></a></div>
<p>This is a picture we have taken from the shelter.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/07/12/welcome-rocky/feed</wfw:commentRss>
		</item>
		<item>
		<title>July 4th fireworks</title>
		<link>http://blog.lizhao.com/2008/07/07/july-4th-fireworks</link>
		<comments>http://blog.lizhao.com/2008/07/07/july-4th-fireworks#comments</comments>
		<pubDate>Mon, 07 Jul 2008 06:16:48 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/07/07/july-4th-fireworks</guid>
		<description><![CDATA[I was able to take some firework pictures this July 4th from my bed room window. There aren&#8217;t a lot, because I can only see those that go high into the sky.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.lizhao.com/v/photo_blog/2008-07-04/?g2_GALLERYSID=TMP_SESSION_ID_DI_NOISSES_PMT"><img src="http://www.lizhao.com/gallery2/d/4138-2/fireworks_1.jpg?g2_GALLERYSID=TMP_SESSION_ID_DI_NOISSES_PMT" alt="fireworks_1.jpg" title="fireworks_1.jpg" width="150" height="150" /></a>I was able to take some firework pictures this July 4th from my bed room window. There aren&#8217;t a lot, because I can only see those that go high into the sky.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/07/07/july-4th-fireworks/feed</wfw:commentRss>
		</item>
		<item>
		<title>Four Screens on my desk</title>
		<link>http://blog.lizhao.com/2008/03/17/four-screens-on-my-desk</link>
		<comments>http://blog.lizhao.com/2008/03/17/four-screens-on-my-desk#comments</comments>
		<pubDate>Mon, 17 Mar 2008 05:34:46 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Techs/Computers]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/03/17/four-screens-on-my-desk</guid>
		<description><![CDATA[




This weekend I spend some time cleaning up my ever cluttered desk and finally can put up my docking station for my T60. I purchased the docking station for few months already and didn&#8217;t have the chance to set it up yet. I put the docking station next to my dual monitors and added an [...]]]></description>
			<content:encoded><![CDATA[<div class="g2image_float_left">
<div class="g2image_normal">
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/4130-2/IMG_0008.jpg" rev="http://www.lizhao.com/gallery2/d/4130-2/IMG_0008.jpg" title="Four Screens" rel="lightbox[16]"><img src="http://www.lizhao.com/gallery2/d/4129-2/IMG_0008.jpg" width="150" height="150" id="IFid3" class="ImageFrame_None" alt="Four Screens"/></a></div>
</div>
</div>
<p>This weekend I spend some time cleaning up my ever cluttered desk and finally can put up my docking station for my T60. I purchased the docking station for few months already and didn&#8217;t have the chance to set it up yet. I put the docking station next to my dual monitors and added an old monitor next to it, so I can get dual screens on the laptop as well. Finally, I use <a href="http://synergy2.sf.net">synergy</a> to control the 4 screens with 1 keyboards and mouse.</p>
<p><strong>Update: </strong></p>
<div class="g2image_float_left">
<div class="g2image_normal">
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/4131-1/IMG_0018.jpg" rev="http://www.lizhao.com/gallery2/d/4131-1/IMG_0018.jpg" title="IMG_0018" rel="lightbox[16]"><img src="http://www.lizhao.com/gallery2/d/4132-2/IMG_0018.jpg" width="150" height="150" id="IFid4" class="ImageFrame_None" alt="IMG_0018"/></a></div>
</div>
</div>
<p>Thanks to my company&#8217;s computers liquidation sale, I was able to purchases 2 17&#8243; LCD monitor and now I have a real 4 screens setup. Of course, Scott felt that he needs to make me feel shameful and posted on his <a href="http://www.mintred.com/direction/3/count/1/article/133/lis_shame/">blog</a> about his 8 screens setup. Even if I want to, my desk physically can&#8217;t fit any more monitors.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/03/17/four-screens-on-my-desk/feed</wfw:commentRss>
		</item>
		<item>
		<title>Generate Replication Procedures</title>
		<link>http://blog.lizhao.com/2008/02/29/generate-replication-procedures</link>
		<comments>http://blog.lizhao.com/2008/02/29/generate-replication-procedures#comments</comments>
		<pubDate>Fri, 29 Feb 2008 16:51:03 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Databases]]></category>

		<category><![CDATA[Techs/Computers]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/02/29/generate-replication-procedures</guid>
		<description><![CDATA[In the past few months, I&#8217;ve been working more closely with Database because the departure of our DBA. I have been doing deployments that are involved in adding and altering schema changes. Whenever a new table is added to SQL replication you need to generate replication store procedures at the publisher and the take the [...]]]></description>
			<content:encoded><![CDATA[<p>In the past few months, I&#8217;ve been working more closely with Database because the departure of our DBA. I have been doing deployments that are involved in adding and altering schema changes. Whenever a new table is added to SQL replication you need to generate replication store procedures at the publisher and the take the result and put it at the subscribers. In the past, I would need to run &#8217;sp_scriptpublicationcustomprocs
<publication_name>&#8216;, which generate store procedures for every published tables, and I would search for store procedures for the new table. Next, I would need to find the article id for the new table and run &#8217;sp_scriptdynamicupdproc &#8216;, which will generate smarter update store procedure. </p>
<p>I&#8217;ve create a store procedure that will only generate store procedures that for specified table name. If no table name is supplied, it will generate store procedures for every published articles. </p>
</publication_name>
<pre><code class="sql">
-- Author: Li C Zhao
-- Version: 1.0
-- Date: 2008-02-29
-- Usage: exec sp_GenerateReplProcedures [@table = 'tablename']
-- Description: Generate store procedures for replication for the
--    subscribers. If no parameter is pass, it will generate all
--    published store procedures. If table name is passed as the
--    parameter, it will generate store procedures (INSERT, UPDATE,
--    and DELETE) for the specified article (if found).
--
CREATE PROCEDURE [sp_GenerateReplProcedures]
    @table VARCHAR(255) = NULL
AS

SET NOCOUNT ON
CREATE TABLE #TmpSpText ( spText NVARCHAR(2048) )

IF @table IS NOT NULL
    DECLARE test CURSOR FOR SELECT artid FROM [sysarticles]
        WHERE dest_table = @table
ELSE
    DECLARE test CURSOR FOR SELECT artid FROM [sysarticles]
OPEN test

DECLARE @id INT
FETCH NEXT FROM test INTO @id

WHILE @@fetch_status&lt;&gt;-1
BEGIN
    -- Generating Insert Store Procedure
    INSERT INTO #TmpSpText (spText)
        EXEC sp_scriptinsproc @id

    SELECT spText AS '---- INSERT STORE PROCEDURE' FROM [#TmpSpText]
    PRINT 'GO'
    DELETE FROM #TmpSpText

    -- Generating Delete Store Procedure
    INSERT INTO #TmpSpText (spText)
        EXEC sp_scriptdelproc @id
    SELECT spText AS '---- DELETE STORE PROCEDURE' FROM [#TmpSpText]
    PRINT 'GO'
    DELETE FROM #TmpSpText

    -- Generating Dynamic Update Procedure
    INSERT INTO #TmpSpText (spText)
        EXEC sp_scriptdynamicupdproc  @id

    SELECT spText AS '---- UPDATE STORE PROCEDURE' FROM #TmpSpText
    PRINT 'GO'
    DELETE FROM #TmpSpText

FETCH NEXT FROM test INTO @id
END
CLOSE test
DEALLOCATE test
DROP TABLE #TmpSpText

GO
</code></pre>
<p>Links:<br />
<a href="http://msdn2.microsoft.com/en-us/library/aa239359%28SQL.80%29.aspx">sp_scriptdynamicupdproc</a><br /><a href="http://msdn2.microsoft.com/en-us/library/aa239347%28SQL.80%29.aspx">sp_scriptpublicationcustomprocs</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/02/29/generate-replication-procedures/feed</wfw:commentRss>
		</item>
		<item>
		<title>Multiple VPN connections at the same time</title>
		<link>http://blog.lizhao.com/2008/02/22/multiple-vpn-connections-at-the-same-time</link>
		<comments>http://blog.lizhao.com/2008/02/22/multiple-vpn-connections-at-the-same-time#comments</comments>
		<pubDate>Fri, 22 Feb 2008 05:56:09 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Techs/Computers]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/02/22/multiple-vpn-connections-at-the-same-time</guid>
		<description><![CDATA[Introduction: 
If your company is like mine, you will have multiple VPN profiles on your Cisco VPN client. The issue is that you are only allow to connect one VPN at a time. If you need to get to resources on multiple locations you will need to keep disconnecting and reconnecting between different VPN tunnels. [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-bottom: 0in"><strong>Introduction: </strong></p>
<p>If your company is like mine, you will have multiple VPN profiles on your Cisco VPN client. The issue is that you are only allow to connect one VPN at a time. If you need to get to resources on multiple locations you will need to keep disconnecting and reconnecting between different VPN tunnels. Thanks to my co-worker Alex, who show me that it&#8217;s possible to connect to multiple with vpnc on Linux, I got it to work on windows. This has been tested on Windows XP SP2 only.</p>
<p style="margin-bottom: 0in"><strong>Requirements:</strong></p>
<p><a href="http://www.cygwin.com" title="Cygwin - Linux environment on Windows">Cygwin<br />
</a><a href="http://www.openvpn.net" title="Open VPN - open source VPN">OpenVPN</a><a href="http://www.unix-ag.uni-kl.de/%7Emassar/vpnc/" title="vpnc - client for cisco vpn concentrator"><br />
vpnc<br />
</a><strong>Steps</strong>:</p>
<ol>
<li>Download <a href="http://www.cygwin.com/setup.exe" title="Setup.exe">Cygwin </a><a href="http://www.cygwin.com/setup.exe" title="Setup.exe">setup</a> and run the setup file. Set up cygwin and select the following packages during installation
<ul>
<li>Devel -&gt; gcc</li>
<li>Devel -&gt; make</li>
<li>Libs -&gt; libgcrypt (and the source code as well)</li>
<li>Libs -&gt; libgpg (and the source code as well)</li>
<li>Perl -&gt; perl</li>
</ul>
</li>
<li>Download <a href="http://www.openvpn.net/release/openvpn-2.0.9-install.exe" title="OpenVPN 2.09">OpenVPN</a> and install it. You can uncheck most of the options if you like, make sure “TAP-Win32 Virtual Ethernet Adapter” and “Add Shortcuts to Start Menu” (so you can add more virtual interface from start menu) are selected.</li>
<li>Download <a href="http://www.unix-ag.uni-kl.de/%7Emassar/vpnc/vpnc-0.5.1.tar.gz" title="vpnc 0.5.1">vpnc</a> and copy it to c:\cygwin\tmp
<p style="margin-bottom: 0in"> Launch cygwin bash shell and run the following commands in the shell</p>
</li>
<p style="margin-left: 0.25in; margin-bottom: 0in">cd /tmp</p>
<p style="margin-left: 0.25in; margin-bottom: 0in">tar xvfz vpnc-&lt;version&gt;.tar.gz</p>
<p style="margin-left: 0.5in; margin-bottom: 0in"><em>Note: &lt;version&gt; is the version that you have downloaded. As of writing the version is 0.5.1. Hence, the command would be “tar xvfz vpnc-0.5.1.tar.gz”</em></p>
<p style="margin-left: 0.25in; margin-bottom: 0in">cd vpnc-&lt;version&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in"><em>Example: cd vpnc-0.5.1</em></p>
<p style="margin-left: 0.25in; margin-bottom: 0in">make</p>
<p style="margin-left: 0.25in; margin-bottom: 0in">make PREFIX=/usr install</p>
<p style="margin-left: 0.5in; margin-bottom: 0in"><em>Note: PREFIX is optional. By default it will install the executables to /usr/local. By putting PREFIX=/usr it will install the executables to /usr/bin an /usr/sbin.</em></p>
<p style="margin-left: 0.25in; margin-bottom: 0in">mkdir /var/run/vpnc</p>
</ol>
<p style="margin-bottom: 0in"><strong>Multiple Tunnels: </strong></p>
<p>For each VPN tunnel you will need 1 TAP virtual adapter. If you are planning to use multiple tunnels at the same time, you will need to OpenVPN and run &#8220;Add a new TAP-Win32 virtual ethernet adapter&#8221;.</p>
<p style="margin-bottom: 0in"><strong>Note: </strong></p>
<p style="margin-bottom: 0in">There’s a bug in “vpnc-script-win.js” that came with the 0.5.1. You will need to rename the TAP virtual Adapter from “Local Area Connection X” to TAPX. The included js file doesn’t support space in the virtual adapter. The file doesn’t add route correctly as well. To fix this issue, you will need to use the &#8220;<a href="http://blog.lizhao.com/wp-content/uploads/2008/02/vpnc-script-win.js" title="Modified vpnc script">vpnc-script-win.js</a>&#8221; that was modified to get it to work. Copy the “vpnc-script-win.js” file and replace the existing one located in c:\cygwin\etc\vpnc (or /etc/vpnc if you are in cygwin shell).</p>
<p style="margin-bottom: 0in"><strong>Setting up Profiles:</strong></p>
<p style="margin-bottom: 0in">You can use pcf2vpnc command to convert the existing cisco PCF to out what needs to create profiles for VPNC. The profiles need to be stored at c:\cygwin\etc\vpnc (in &lt;profile&gt;.conf format). The installation comes with a default.conf that you can refrence to. Alternatively, you can run /usr/sbin/vpnc –long-help to get more help and what you can put in the file. You can also connect by passing all the switches via the command line.  Below is an example that will work</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">IPSec gateway &lt;IPSEC GATEWAY&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">IPSec ID &lt;Group ID&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">IPSec secret &lt;Group Password&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">IKE Authmode psk</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">Xauth username &lt;Your Username&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">Interface mode tap</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">Pidfile /var/run/vpnc/&lt;profile&gt;.pid</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">Local Port &lt;510&gt;</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">NAT Traversal Mode force-natt</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">No Detach</p>
<p style="margin-left: 0.5in; margin-bottom: 0in">## Enable Single DES</p>
<p style="margin-bottom: 0in">When you run pcf2vpnc it will give you IPSec gateway, IPSec ID, IPSec secret (decrypted), Xauth username, IKE Authmode.</p>
<p style="margin-bottom: 0in"><strong>Important: </strong></p>
<p style="margin-bottom: 0in">The “No Detach” option is required, as if you don’t specify it the VPN will connect, but you will not be able to access the VPN even thought it’s connected. “Local Port” needs to be different for each profile – so that there’s collision. Each profile needs to have its own pid file.</p>
<p style="margin-bottom: 0in">Depends on your network administrator’s setting you might need to enable single des. If your network administrator enables weak encryption, you will need to use “Enable Single</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/02/22/multiple-vpn-connections-at-the-same-time/feed</wfw:commentRss>
		</item>
		<item>
		<title>Execute SQL Script on all subscribers</title>
		<link>http://blog.lizhao.com/2008/01/15/execute-sql-script-on-all-subscribers</link>
		<comments>http://blog.lizhao.com/2008/01/15/execute-sql-script-on-all-subscribers#comments</comments>
		<pubDate>Tue, 15 Jan 2008 07:08:35 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Databases]]></category>

		<category><![CDATA[Techs/Computers]]></category>

		<category><![CDATA[Database]]></category>

		<category><![CDATA[Replication]]></category>

		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2008/01/15/execute-sql-script-on-all-subscribers</guid>
		<description><![CDATA[At my work, we have MSSQL with replication. The problem is we have 5 SQL subscribers. Our R&#38;D department keep coming out with Store Procedures. In order to deploy these new store procedures to production, we need to run the script on every servers. This is not only time consuming, but bounded to human error.
In [...]]]></description>
			<content:encoded><![CDATA[<p>At my work, we have MSSQL with replication. The problem is we have 5 SQL subscribers. Our R&amp;D department keep coming out with Store Procedures. In order to deploy these new store procedures to production, we need to run the script on every servers. This is not only time consuming, but bounded to human error.</p>
<p>In SQL, you can replicate store procedures with &#8217;sp_addarticle&#8217; and &#8217;sp_addsubscription&#8217;. However, they don&#8217;t seem to work in our environment.</p>
<pre><code class="sql">
exec sp_addarticle  @publication =   '&lt;publicationName&gt;'
   ,  @article =  '&lt;nameofthesp&gt;'
   ,  @source_object =  '&lt;nameofthesp&gt;'
   ,  @type = 'proc exec'

exec sp_addsubscription  @publication =  '&lt;publicationName&gt;'
   ,  @article =  '&lt;nameOfTheSP&gt;'
   ,  @subscriber =  '&lt;nameOfTheSubscriber&gt;'
   ,  @sync_type = '(automatic|none)'

</code></pre>
<p>I came across this built in store procedure and it&#8217;s doing what we needed to do. Save the SQL script to some where accessible over the network and use &#8217;sp_addscriptexec&#8217; to run the script on all the subscribers. You will still need to run the script on the publisher.</p>
<p>WARNING: Be careful on the script you are running. Any data manipulation in the script will cause your replication to be out of sync. This should be only used for adding and altering store procedures.</p>
<pre><code class="sql">
exec sp_addscriptexec @publication = '&lt;publicationName&gt;'
   , @scriptfile = '\\&lt;publicationServerNameOrIP&gt;\d$\&lt;SQLScript&gt;.sql'

</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2008/01/15/execute-sql-script-on-all-subscribers/feed</wfw:commentRss>
		</item>
		<item>
		<title>Vacation at Cancun</title>
		<link>http://blog.lizhao.com/2007/12/08/vacation-at-cancun</link>
		<comments>http://blog.lizhao.com/2007/12/08/vacation-at-cancun#comments</comments>
		<pubDate>Sat, 08 Dec 2007 05:49:46 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Trips]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2007/12/08/vacation-at-cancun</guid>
		<description><![CDATA[




This is our first trip outside of the US. We were recommended by Wendy&#8217;s friend to visit Cancun. They told us they came to  Moon Palace Resort - an all inclusive resort. It&#8217;s a little pricey, but it&#8217;s worth the money once I saw the place with my own eyes.  The resort is [...]]]></description>
			<content:encoded><![CDATA[<div class="g2image_float_left">
<div class="g2image_float_left">
<div class="wpg2tag-image"><a href="http://blog.lizhao.com/v/personal/2007/Cancun/resort_room/" rev="http://blog.lizhao.com/v/personal/2007/Cancun/resort_room/" title="Resort Room"><img src="http://www.lizhao.com/gallery2/d/1689-4/resort_room.jpg" width="150" height="150" id="IFid6" class="ImageFrame_None" alt="Resort Room"/></a></div>
</div>
</div>
<p>This is our first trip outside of the US. We were recommended by Wendy&#8217;s friend to visit Cancun. They told us they came to  Moon Palace Resort - an all inclusive resort. It&#8217;s a little pricey, but it&#8217;s worth the money once I saw the place with my own eyes.  The resort is huge and the room is the best I have visited so far. Since it&#8217;s an all inclusive resort, we don&#8217;t need to spend any money if we stay inside the resort. There&#8217;s even free wireless Internet. Food and drinks (alcohol beverages too) are all included. When I saw wine and soda in the room I thought they are extra, but when I checked the booklet, they are free. They will be refilled when the maid clean the room.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2007/12/08/vacation-at-cancun/feed</wfw:commentRss>
		</item>
		<item>
		<title>Setting up Cisco VPN Client on Ubuntu</title>
		<link>http://blog.lizhao.com/2007/12/06/setting-up-cisco-vpn-client-on-ubuntu</link>
		<comments>http://blog.lizhao.com/2007/12/06/setting-up-cisco-vpn-client-on-ubuntu#comments</comments>
		<pubDate>Thu, 06 Dec 2007 16:22:14 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Techs/Computers]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2007/12/06/setting-up-cisco-vpn-client-on-ubuntu</guid>
		<description><![CDATA[
Download vpnclient-linux-4.8.00.0490-k9.tar.gz  and extract it to your home directory

$ tar xvfz vpnclient-linux-4.8.00.0490-k9.tar.gz ~




Download the patch to your home directory and patch the installer.

$ cd ~/vpnclient
$ patch &#60; ../vpnclient-linux-2.6.22.diff




Installing the VPN Client

$ sudo ./vpn_install




Starting VPN Client service

$ sudo /etc/init.d/vpnclient_init start




Copy VPN Profiles to /etc/opt/cisco-vpnclient/Profiles/ and changes permission of the *.pcf files

$ chmod 777 /etc/opt/cisco-vpnclient/Profiles/*.pcf




Last change [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li>Download <a href="ftp://ftp.cs.cornell.edu/pub/rvr/upload/vpnclient-linux-4.8.00.0490-k9.tar.gz">vpnclient-linux-4.8.00.0490-k9.tar.gz  </a>and extract it to your home directory
<ul>
<li>$ tar xvfz vpnclient-linux-4.8.00.0490-k9.tar.gz ~</li>
</ul>
</li>
</ul>
<ul>
<li>Download the <a href="http://tuxx-home.at/projects/cisco-vpnclient/vpnclient-linux-2.6.22.diff">patch</a> to your home directory and patch the installer.
<ul>
<li>$ <em>cd ~/vpnclient</em></li>
<li>$ <em>patch &lt; ../vpnclient-linux-2.6.22.diff</em></li>
</ul>
</li>
</ul>
<ul>
<li>Installing the VPN Client
<ul>
<li>$ <em>sudo ./vpn_install</em></li>
</ul>
</li>
</ul>
<ul>
<li>Starting VPN Client service
<ul>
<li>$ <em>sudo /etc/init.d/vpnclient_init start</em></li>
</ul>
</li>
</ul>
<ul>
<li>Copy VPN Profiles to /etc/opt/cisco-vpnclient/Profiles/ and changes permission of the *.pcf files
<ul>
<li>$ <em>chmod 777 /etc/opt/cisco-vpnclient/Profiles/*.pcf</em></li>
</ul>
</li>
</ul>
<ul>
<li>Last change permission of vpn daemon (this allow regular user to use vpn client without sudo)
<ul>
<li>$ <em>sudo chmod 4111 /opt/cisco-vpnclient/bin/cvpnd</em></li>
</ul>
</li>
</ul>
<ul>
<li>To connect to your &lt;VPNProfile&gt;.pcf do the following command
<ul>
<li>$ <em>vpnclient connect &lt;VPNProfile&gt;</em></li>
</ul>
</li>
</ul>
<p><font color="#808080"><strong>Reference: </strong></font><a href="http://www.longren.org/2007/05/17/how-to-cisco-vpn-client-on-ubuntu-704-feisty-fawn/"><font color="#808080">http://www.longren.org</font></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2007/12/06/setting-up-cisco-vpn-client-on-ubuntu/feed</wfw:commentRss>
		</item>
		<item>
		<title>My hacked GPS</title>
		<link>http://blog.lizhao.com/2007/11/30/9</link>
		<comments>http://blog.lizhao.com/2007/11/30/9#comments</comments>
		<pubDate>Fri, 30 Nov 2007 07:17:16 +0000</pubDate>
		<dc:creator>Li Zhao</dc:creator>
		
		<category><![CDATA[GPS]]></category>

		<category><![CDATA[Techs/Computers]]></category>

		<category><![CDATA[mio c710]]></category>

		<guid isPermaLink="false">http://blog.lizhao.com/2007/11/30/9</guid>
		<description><![CDATA[I purchased a MIO C710 about a year ago. The device is decent, but support is horrible. Luckily, this device is one of the mostly hacked gps out there. Specially when during black Friday they lower end model C310x was about $200. The C710 has 2G of ROM and built in bluetooth. Here&#8217;s a screen [...]]]></description>
			<content:encoded><![CDATA[<p>I purchased a MIO C710 about a year ago. The device is decent, but support is horrible. Luckily, this device is one of the mostly hacked gps out there. Specially when during black Friday they lower end model C310x was about $200. The C710 has 2G of ROM and built in bluetooth. Here&#8217;s a screen shot of of my custom shell after the device is hacked and the original shell is replaced.
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2584-1/Screen001.png" rev="http://www.lizhao.com/gallery2/d/2584-1/Screen001.png" title="Screen001.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2585-2/Screen001.png" width="150" height="150" id="IFid14" class="ImageFrame_None" alt="Screen001.png"/></a></div>
<p>I have 3 Maps on it (iGO, Destinator 7 and TomTom). It has tcpmp video player.</p>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2586-1/Screen002.png" rev="http://www.lizhao.com/gallery2/d/2586-1/Screen002.png" title="Screen002.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2587-2/Screen002.png" width="150" height="150" id="IFid15" class="ImageFrame_None" alt="Screen002.png"/></a></div>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2588-1/Screen003.png" rev="http://www.lizhao.com/gallery2/d/2588-1/Screen003.png" title="Screen003.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2589-2/Screen003.png" width="150" height="150" id="IFid16" class="ImageFrame_None" alt="Screen003.png"/></a></div>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2590-1/Screen005.png" rev="http://www.lizhao.com/gallery2/d/2590-1/Screen005.png" title="Screen005.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2591-2/Screen005.png" width="150" height="150" id="IFid17" class="ImageFrame_None" alt="Screen005.png"/></a></div>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2594-1/Screen007.png" rev="http://www.lizhao.com/gallery2/d/2594-1/Screen007.png" title="Screen007.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2595-2/Screen007.png" width="150" height="150" id="IFid18" class="ImageFrame_None" alt="Screen007.png"/></a></div>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2596-1/Screen008.png" rev="http://www.lizhao.com/gallery2/d/2596-1/Screen008.png" title="Screen008.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2597-2/Screen008.png" width="150" height="150" id="IFid19" class="ImageFrame_None" alt="Screen008.png"/></a></div>
<div class="wpg2tag-image"><a href="http://www.lizhao.com/gallery2/d/2579-1/Screen009.png" rev="http://www.lizhao.com/gallery2/d/2579-1/Screen009.png" title="Screen009.png" rel="lightbox[9]"><img src="http://www.lizhao.com/gallery2/d/2580-2/Screen009.png" width="150" height="150" id="IFid20" class="ImageFrame_None" alt="Screen009.png"/></a></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.lizhao.com/2007/11/30/9/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
