<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Marshal&#039;s Blog &#187; linux</title>
	<atom:link href="http://marshal.easymorse.com/archives/tag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://marshal.easymorse.com</link>
	<description>It&#039;s swap of marshal&#039;s memory.</description>
	<lastBuildDate>Mon, 30 Jan 2012 07:03:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>linux下查看端口是否被占用的命令</title>
		<link>http://marshal.easymorse.com/archives/1637?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=linux%25e4%25b8%258b%25e6%259f%25a5%25e7%259c%258b%25e7%25ab%25af%25e5%258f%25a3%25e6%2598%25af%25e5%2590%25a6%25e8%25a2%25ab%25e5%258d%25a0%25e7%2594%25a8%25e7%259a%2584%25e5%2591%25bd%25e4%25bb%25a4</link>
		<comments>http://marshal.easymorse.com/archives/1637#comments</comments>
		<pubDate>Fri, 16 Oct 2009 05:22:31 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1637</guid>
		<description><![CDATA[可以使用netstat命令： marshal@dev:~$ netstat -ano &#124; grep 443tcp&#160;&#160;&#160;&#160;&#160;&#160;&#160; 0&#160;&#160;&#160;&#160;&#160; 0 0.0.0.0:443&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; 0.0.0.0:*&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; LISTEN&#160;&#160;&#160;&#160;&#160; 关闭 (0.00/0/0)]]></description>
			<content:encoded><![CDATA[<p>可以使用netstat命令：</p>
<blockquote><p>marshal@dev:~$ netstat -ano | grep 443<br />tcp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0 0.0.0.0:443&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.0.0.0:*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LISTEN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 关闭 (0.00/0/0)</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1637/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>修改ubuntu的用户名</title>
		<link>http://marshal.easymorse.com/archives/1629?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25bf%25ae%25e6%2594%25b9ubuntu%25e7%259a%2584%25e7%2594%25a8%25e6%2588%25b7%25e5%2590%258d</link>
		<comments>http://marshal.easymorse.com/archives/1629#comments</comments>
		<pubDate>Wed, 14 Oct 2009 11:56:04 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1629</guid>
		<description><![CDATA[安装了一个ubuntu 9.04桌面版的虚拟机，为了公用，用户名为ubuntu。个人用的时候可以修改用户名，办法是执行下面的命令，比如： sudo usermod -l marshal ubuntu 然后，可以通过下面命令查看是否生效： whoami]]></description>
			<content:encoded><![CDATA[<p>安装了一个ubuntu 9.04桌面版的虚拟机，为了公用，用户名为ubuntu。个人用的时候可以修改用户名，办法是执行下面的命令，比如：</p>
<blockquote><p>sudo usermod -l marshal ubuntu</p>
</blockquote>
<p>然后，可以通过下面命令查看是否生效：</p>
<blockquote><p><font style="background-color: #ffffff">whoami</font></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1629/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用logwatch自动得到汇总日志信息</title>
		<link>http://marshal.easymorse.com/archives/1550?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25bd%25bf%25e7%2594%25a8logwatch%25e8%2587%25aa%25e5%258a%25a8%25e5%25be%2597%25e5%2588%25b0%25e6%25b1%2587%25e6%2580%25bb%25e6%2597%25a5%25e5%25bf%2597%25e4%25bf%25a1%25e6%2581%25af</link>
		<comments>http://marshal.easymorse.com/archives/1550#comments</comments>
		<pubDate>Wed, 09 Sep 2009 03:27:03 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1550</guid>
		<description><![CDATA[根据ubuntu系统日志的配置和使用可以看到ubuntu服务器的各种应用的日志。但是每次自己到上面查看还是比较麻烦的，尤其是当管理多台服务器时。 logwatch是这方面的工具。有关ubuntu下logwatch的安装过程见： https://help.ubuntu.com/community/Logwatch 只需执行如下命令即可安装： sudo apt-get install logwatch 安装后一般可配置为使用邮件方式通知，需要修改配置文件： sudo vim /usr/share/logwatch/default.conf/logwatch.conf 主要需要修改该文件中的如下几个参数： Output = mailFormat = htmlMailTo = somebody@gmail.com logwatch安装时会设置cron定时任务，配置文件在： sudo vim /etc/cron.daily/00logwatch 需要修改#execute部分为以下内容： #execute/usr/sbin/logwatch 这样每天都会收到昨天日志信息的汇总。由于动态域名，缺少ip地址的域名反向解析，gmail.com邮箱拒绝接收邮件。但是可以发送到qq邮箱。 我的做法是gmail设置接收qq的pop3邮件，这样就可以通过gmail间接收到qq邮箱的邮件。 为什么要这样做，因为我是通过android手机接收gmail的push mail。这样，每天早上就可以一边吃早点，一边通过手机查看昨日的日志情况。 &#160; 这是在手机上看到汇总信息目录部分的截屏。 当天登录失败的汇总信息截屏，可以看到来着北京网通的一个ip地址的数千次的暴力密码破解的失败记录。]]></description>
			<content:encoded><![CDATA[<p>根据<a href="http://marshal.easymorse.com/archives/1543" title="ubuntu系统日志的配置和使用">ubuntu系统日志的配置和使用</a>可以看到ubuntu服务器的各种应用的日志。但是每次自己到上面查看还是比较麻烦的，尤其是当管理多台服务器时。</p>
<p>logwatch是这方面的工具。有关ubuntu下logwatch的安装过程见：</p>
<blockquote><p><a href="https://help.ubuntu.com/community/Logwatch">https://help.ubuntu.com/community/Logwatch</a></p>
</blockquote>
<p>只需执行如下命令即可安装：</p>
<blockquote><pre>sudo apt-get install logwatch</pre>
</blockquote>
<p><span id="more-1550"></span></p>
<p>安装后一般可配置为使用邮件方式通知，需要修改配置文件：</p>
<blockquote>
<p>sudo vim /usr/share/<b>logwatch</b>/default.conf/<b>logwatch</b>.conf</p>
</blockquote>
<p>主要需要修改该文件中的如下几个参数：</p>
<blockquote>
<p>Output = mail<br />Format = html<br />MailTo = <a href="mailto:somebody@gmail.com">somebody@gmail.com</a></p>
</blockquote>
<p>logwatch安装时会设置cron定时任务，配置文件在： </p>
<blockquote>
<p>sudo vim /etc/cron.daily/00logwatch</p>
</blockquote>
<p>需要修改#execute部分为以下内容： </p>
<blockquote>
<p>#execute<br />/usr/sbin/logwatch</p>
</blockquote>
<p>这样每天都会收到昨天日志信息的汇总。由于动态域名，缺少ip地址的域名反向解析，gmail.com邮箱拒绝接收邮件。但是可以发送到qq邮箱。 </p>
<p>我的做法是gmail设置接收qq的pop3邮件，这样就可以通过gmail间接收到qq邮箱的邮件。 </p>
<p>为什么要这样做，因为我是通过android手机接收gmail的push mail。这样，每天早上就可以一边吃早点，一边通过手机查看昨日的日志情况。 </p>
<p>&nbsp;
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2009/09/d1.png"><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="d1" src="http://marshal.easymorse.com/wp-content/uploads/2009/09/d1-thumb.png" width="341" height="234"></a> </p>
<p>这是在手机上看到汇总信息目录部分的截屏。</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2009/09/d2.png"><img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="d2" src="http://marshal.easymorse.com/wp-content/uploads/2009/09/d2-thumb.png" width="343" height="234"></a> </p>
<p>当天登录失败的汇总信息截屏，可以看到来着北京网通的一个ip地址的数千次的暴力密码破解的失败记录。</p>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1550/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ubuntu系统日志的配置和使用</title>
		<link>http://marshal.easymorse.com/archives/1543?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ubuntu%25e7%25b3%25bb%25e7%25bb%259f%25e6%2597%25a5%25e5%25bf%2597%25e7%259a%2584%25e9%2585%258d%25e7%25bd%25ae%25e5%2592%258c%25e4%25bd%25bf%25e7%2594%25a8</link>
		<comments>http://marshal.easymorse.com/archives/1543#comments</comments>
		<pubDate>Tue, 08 Sep 2009 04:02:08 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1543</guid>
		<description><![CDATA[在ubuntu服务器上，日志是通过syslogd进程处理的。该进程读取如下配置文件： /etc/syslog.conf 该文件主要配置哪些信息需要记录日志，记录到什么地方。 在该配置文件的第一部分，是对系统设施日志的配置，主要有： auth：有关认证进程的信息； daemo：有关守护进程的信息； kern：有关系统内核的信息； mail：有关邮件系统的信息； 其他。。。 比如，可以看到有关守护进程的日志，以下是查看时间服务器守护进程的日志： sudo cat /var/log/daemon.log &#124; grep ntp 再比如，通过/var/log/kern.log，查看到的信息： Sep&#160; 8 09:28:35 homeserver kernel: [8694475.980021] TCP: Treason uncloaked! Peer 77.227.199.53:53801/20478 shrinks window 2499870467:2499871859. Repaired. 来自西班牙的远程访问，未经服务器允许改变了tcp窗口大小。 第二部分，是日志级别，和log4j的级别概念类似。有： debug(调试) 与none(不需登录等级)； info：一些基本的信息； notice：比info需要被注意到的一些信息内容； warning：警示的讯息，可能有问题， 但是还不至于影响到某个 daemon 运作的信息；基本上， info, notice, warn 这三个讯息都是在告知一些基本信息，应该还不至于造成一些系统运作困扰； err：一些重大的错误讯息， 例如设定文件的某些设定值造成该服务服法启动的信息说明，通常通过err的错误告知，应该可以了解到该服务无法启动的问题； crit：比error还要严重的错误信息，这个crit是临界点(critical)的缩写，这个错误已经很严重； alert：警告，已经很有问题的等级，比crit还要严重； emerg：紧急，系统已经几乎要当机的状态。很严重的错误信息。通常大概只有硬件出问题，导致整个核心无法顺利运作，就会出现这样的等级的信息。 有关硬件的日志，dmesg。 有关登录错误的日志信息，使用如下命令： faillog 比如出现这样的提示： [...]]]></description>
			<content:encoded><![CDATA[<p>在ubuntu服务器上，日志是通过syslogd进程处理的。该进程读取如下配置文件：</p>
<blockquote><p><font color="#333333">/etc/syslog.conf</font></p>
</blockquote>
<p>该文件主要配置哪些信息需要记录日志，记录到什么地方。</p>
<p>在该配置文件的第一部分，是对系统设施日志的配置，主要有：</p>
<ul>
<li>auth：有关认证进程的信息；</li>
<li>daemo：有关守护进程的信息；</li>
<li>kern：有关系统内核的信息；</li>
<li>mail：有关邮件系统的信息；</li>
<li>其他。。。</li>
</ul>
<p>比如，可以看到有关守护进程的日志，以下是查看时间服务器守护进程的日志：</p>
<blockquote><p>sudo cat /var/log/daemon.log | grep ntp</p>
</blockquote>
<p>再比如，通过/var/log/kern.log，查看到的信息：</p>
<blockquote><p>Sep&nbsp; 8 09:28:35 homeserver kernel: [8694475.980021] TCP: Treason uncloaked! Peer 77.227.199.53:53801/20478 shrinks window 2499870467:2499871859. Repaired.</p>
</blockquote>
<p>来自西班牙的远程访问，未经服务器允许改变了tcp窗口大小。</p>
<p><span id="more-1543"></span>
<p>第二部分，是日志级别，和log4j的级别概念类似。有：</p>
<ol>
<li>debug(调试) 与none(不需登录等级)；</li>
<li>info：一些基本的信息；</li>
<li>notice：比info需要被注意到的一些信息内容；</li>
<li>warning：警示的讯息，可能有问题， 但是还不至于影响到某个 daemon 运作的信息；基本上， info, notice, warn 这三个讯息都是在告知一些基本信息，应该还不至于造成一些系统运作困扰；</li>
<li>err：一些重大的错误讯息， 例如设定文件的某些设定值造成该服务服法启动的信息说明，通常通过err的错误告知，应该可以了解到该服务无法启动的问题；</li>
<li>crit：比error还要严重的错误信息，这个crit是临界点(critical)的缩写，这个错误已经很严重；</li>
<li>alert：警告，已经很有问题的等级，比crit还要严重；</li>
<li>emerg：紧急，系统已经几乎要当机的状态。很严重的错误信息。通常大概只有硬件出问题，导致整个核心无法顺利运作，就会出现这样的等级的信息。</li>
</ol>
<p>有关硬件的日志，dmesg。</p>
<p>有关登录错误的日志信息，使用如下命令：</p>
<blockquote><p>faillog</p>
</blockquote>
<p>比如出现这样的提示：</p>
<blockquote><p>arshal@dev:~$ sudo faillog<br />[sudo] password for marshal:<br />Login&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Failures Maximum Latest&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; On
<p>root&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp; 08/03/09 16:35:41 +0800&nbsp; tty1</p>
</blockquote>
<p>查看即插即用设备的日志：</p>
<blockquote><p>marshal@dev:~$ sudo tail /var/log/udev -f<br />ID_FS_USAGE=filesystem<br />ID_FS_TYPE=ext3<br />ID_FS_VERSION=1.0<br />ID_FS_UUID=632c404a-ab69-4aa8-9a13-e6137347dbe9<br />ID_FS_UUID_ENC=632c404a-ab69-4aa8-9a13-e6137347dbe9<br />DEVNAME=/dev/sda1<br />MAJOR=8<br />MINOR=1<br />DEVLINKS=/dev/block/8:1 /dev/disk/by-id/scsi-SSEAGATE_ST373207LC_3KT2CZLG-part1 /dev/disk/by-path/pci-0000:02:05.1-scsi-0:0:0:0-part1 /dev/disk/by-uuid/632c404a-ab69-4aa8-9a13-e6137347dbe9</p>
</blockquote>
<p>另外，可以通过命令直接写日志信息到文件：<br />
<blockquote>
<p>logger &#8216;中文&#8217;</p>
</blockquote>
<p>默认情况下，可以在/var/log/syslog或者/var/log/messages文件中找到该日志信息。也可以写入到指定的文件中。</p>
<p>其他有用的日志：</p>
<ul>
<li>/var/log/apt/term.log，apt操作日志</li>
<li>dd</li>
</ul>
<p>其他有关日志的命令。</p>
<p>比如查看最后登录用户：</p>
<blockquote><p>sudo lastlog</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1543/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在ubuntu server上将iso文件虚拟成光驱</title>
		<link>http://marshal.easymorse.com/archives/1486?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e5%259c%25a8ubuntu-server%25e4%25b8%258a%25e5%25b0%2586iso%25e6%2596%2587%25e4%25bb%25b6%25e8%2599%259a%25e6%258b%259f%25e6%2588%2590%25e5%2585%2589%25e9%25a9%25b1</link>
		<comments>http://marshal.easymorse.com/archives/1486#comments</comments>
		<pubDate>Fri, 14 Aug 2009 02:44:40 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1486</guid>
		<description><![CDATA[在ubuntu上创建了samba共享。将一些iso文件放在上面供下载。用户反映没有虚拟光驱。而且下载十分消耗内网带宽。 可将iso文件通过mount命令虚拟成光驱，再将光驱的路径建立软连接到samba共享目录，这样用户在内网可以享受在线安装的好处。 虚拟光驱的命令： sudo mount -t iso9660 /srv/share/tools/a.iso /mnt/a -o loop 创建软连接的命令： sudo ln -s /mnt/a/ /srv/share/tools/cds]]></description>
			<content:encoded><![CDATA[<p>在ubuntu上创建了samba共享。将一些iso文件放在上面供下载。用户反映没有虚拟光驱。而且下载十分消耗内网带宽。</p>
<p>可将iso文件通过mount命令虚拟成光驱，再将光驱的路径建立软连接到samba共享目录，这样用户在内网可以享受在线安装的好处。</p>
<p>虚拟光驱的命令：</p>
<blockquote><p>sudo mount -t iso9660 /srv/share/tools/a.iso /mnt/a -o loop</p>
</blockquote>
<p>创建软连接的命令：</p>
<blockquote><p>sudo ln -s /mnt/a/ /srv/share/tools/cds</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1486/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>修改ubuntu server时区</title>
		<link>http://marshal.easymorse.com/archives/1434?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e4%25bf%25ae%25e6%2594%25b9ubuntu-server%25e6%2597%25b6%25e5%258c%25ba</link>
		<comments>http://marshal.easymorse.com/archives/1434#comments</comments>
		<pubDate>Tue, 21 Jul 2009 07:09:05 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1434</guid>
		<description><![CDATA[公司一台服务器的时区设置错误。通过date命令查看是美国东部时间。或者用： cat /etc/timezone 可以看到更详细的时区文字。解决办法是执行如下命令： sudo dpkg-reconfigure tzdata 然后根据交互界面重新设置时区。 本文参考了以下文档： https://help.ubuntu.com/community/UbuntuTime]]></description>
			<content:encoded><![CDATA[<p>公司一台服务器的时区设置错误。通过date命令查看是美国东部时间。或者用：</p>
<blockquote><p>cat /etc/timezone</p>
</blockquote>
<p>可以看到更详细的时区文字。解决办法是执行如下命令：</p>
<blockquote><p>sudo dpkg-reconfigure tzdata</p>
</blockquote>
<p>然后根据交互界面重新设置时区。</p>
<p>本文参考了以下文档：</p>
<blockquote><p><a href="https://help.ubuntu.com/community/UbuntuTime">https://help.ubuntu.com/community/UbuntuTime</a></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1434/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ubuntu ntp同步时间的配置</title>
		<link>http://marshal.easymorse.com/archives/1433?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ubuntu-ntp%25e5%2590%258c%25e6%25ad%25a5%25e6%2597%25b6%25e9%2597%25b4%25e7%259a%2584%25e9%2585%258d%25e7%25bd%25ae</link>
		<comments>http://marshal.easymorse.com/archives/1433#comments</comments>
		<pubDate>Tue, 21 Jul 2009 04:02:23 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ntp]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1433</guid>
		<description><![CDATA[原来想用ntpdate实现时间同步，见ubuntu下和时间服务器同步，结果发现做成定时任务后没有效果，没时间查找问题了，换一种方式吧。 直接使用ntpd守护进程服务，反正也是在服务器端使用。ntpupdate比较适合桌面系统，再每次重启时做时间同步。 安装ntpd： sudo apt-get install ntp 仅此而已，ntpd就已经安装好并在后台执行。默认访问的应该是ubuntu的时间服务器： ntp.ubuntu.com 为了检查运行的效果，比如间隔1天后，再次执行： ntpdate -q ntp.ubuntu.com 可以通过其他时间服务器再做验证，比如国家授时中心： ntpdate -q 210.72.145.44 本文参考文档： https://help.ubuntu.com/9.04/serverguide/C/NTP.html]]></description>
			<content:encoded><![CDATA[<p>原来想用ntpdate实现时间同步，见<a href="http://marshal.easymorse.com/archives/1395" title="ubuntu下和时间服务器同步">ubuntu下和时间服务器同步</a>，结果发现做成定时任务后没有效果，没时间查找问题了，换一种方式吧。</p>
<p>直接使用ntpd守护进程服务，反正也是在服务器端使用。ntpupdate比较适合桌面系统，再每次重启时做时间同步。</p>
<p><span id="more-1433"></span>
<p>安装ntpd：</p>
<blockquote><p>sudo apt-get install ntp</p>
</blockquote>
<p>仅此而已，ntpd就已经安装好并在后台执行。默认访问的应该是ubuntu的时间服务器：</p>
<blockquote><p>ntp.ubuntu.com</p>
</blockquote>
<p>为了检查运行的效果，比如间隔1天后，再次执行：</p>
<blockquote><p>ntpdate -q ntp.ubuntu.com</p>
</blockquote>
<p>可以通过其他时间服务器再做验证，比如国家授时中心：</p>
<blockquote><p>ntpdate -q 210.72.145.44</p>
</blockquote>
<p>本文参考文档：</p>
<blockquote><p><a href="https://help.ubuntu.com/9.04/serverguide/C/NTP.html">https://help.ubuntu.com/9.04/serverguide/C/NTP.html</a></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1433/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>在ubuntu下手工安装groovy</title>
		<link>http://marshal.easymorse.com/archives/1355?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e5%259c%25a8ubuntu%25e4%25b8%258b%25e6%2589%258b%25e5%25b7%25a5%25e5%25ae%2589%25e8%25a3%2585groovy</link>
		<comments>http://marshal.easymorse.com/archives/1355#comments</comments>
		<pubDate>Tue, 19 May 2009 06:32:24 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[groovy]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1355</guid>
		<description><![CDATA[通过apt-get安装的版本比较低，而且目录结构和压缩包的不同。因为以后还要在redhat as4上安装。所以再次通过手工安装，这样也可以用于其他linux版本。 下载groovy： wget http://dist.groovy.codehaus.org/distributions/groovy-binary-1.6.3.zip 解压缩： unzip groovy-binary-1.6.3.zip 如果系统没有安装zip，可： sudo apt-get install zip 然后比如将目录移至/usr/lib目录下： sudo mv groovy-1.6.3 /usr/lib/ 设置groovy环境，在/etc/profile增加 export GROOVY_HOME=/usr/lib/groovy-1.6.3export PATH=$GROOVY_HOME/bin:$PATH:. 更新环境变量： source /etc/profile 运行groovy命令： groovy -v 如果能看到打印出来的groovy和java版本，就说明安装和配置成功。]]></description>
			<content:encoded><![CDATA[<p>通过apt-get安装的版本比较低，而且目录结构和压缩包的不同。因为以后还要在redhat as4上安装。所以再次通过手工安装，这样也可以用于其他linux版本。</p>
<p>下载groovy：</p>
<blockquote><p>wget <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-1.6.3.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-1.6.3.zip</a></p>
</blockquote>
<p>解压缩：<br />
<blockquote>
<p>unzip groovy-binary-1.6.3.zip</p>
</blockquote>
<p><span id="more-1355"></span>
<p>如果系统没有安装zip，可：</p>
<blockquote><p><font color="#333333">sudo apt-get install zip</font></p>
</blockquote>
<p>然后比如将目录移至/usr/lib目录下：</p>
<blockquote><p>sudo mv groovy-1.6.3 /usr/lib/</p>
</blockquote>
<p>设置groovy环境，在/etc/profile增加</p>
<blockquote><p>export GROOVY_HOME=/usr/lib/groovy-1.6.3<br />export PATH=$GROOVY_HOME/bin:$PATH:.</p>
</blockquote>
<p>更新环境变量：<br />
<blockquote>
<p><font color="#333333">source /etc/profile</font></p>
</blockquote>
<p>运行groovy命令：<br />
<blockquote>
<p><font color="#333333">groovy -v</font></p>
</blockquote>
<p>如果能看到打印出来的groovy和java版本，就说明安装和配置成功。</p>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1355/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>linux下文件名为乱码的处理方法</title>
		<link>http://marshal.easymorse.com/archives/1120?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=linux%25e4%25b8%258b%25e6%2596%2587%25e4%25bb%25b6%25e5%2590%258d%25e4%25b8%25ba%25e4%25b9%25b1%25e7%25a0%2581%25e7%259a%2584%25e5%25a4%2584%25e7%2590%2586%25e6%2596%25b9%25e6%25b3%2595</link>
		<comments>http://marshal.easymorse.com/archives/1120#comments</comments>
		<pubDate>Thu, 15 Jan 2009 01:09:51 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/1120</guid>
		<description><![CDATA[linux下，有时因为转码不当或者环境配置文件，出现文件名为乱码的情况，这时无法用文件操作命令，会报告： The specified file or directory doesn&#8217;t exist. 可以利用linux的文件系统的i节点（inode）定位并操作该文件。 首先是获取文件的inode： ls -i 然后可根据inode和find命令对乱码文件名做修改： find . -inum 2253640 -exec mv {} unknown.zip \;]]></description>
			<content:encoded><![CDATA[<p>linux下，有时因为转码不当或者环境配置文件，出现文件名为乱码的情况，这时无法用文件操作命令，会报告：</p>
<blockquote><p><font color="#333333">The specified file or directory doesn&#8217;t exist.</font></p>
</blockquote>
<p>可以利用linux的文件系统的i节点（inode）定位并操作该文件。</p>
<p> <span id="more-1120"></span>
<p>首先是获取文件的inode：</p>
<blockquote><p><font color="#333333">ls -i</font></p>
</blockquote>
<p>然后可根据inode和find命令对乱码文件名做修改：</p>
<blockquote><p>find . -inum 2253640 -exec mv {} unknown.zip \;</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/1120/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在ubuntu下为apache增加ssl支持</title>
		<link>http://marshal.easymorse.com/archives/951?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=%25e5%259c%25a8ubuntu%25e4%25b8%258b%25e4%25b8%25baapache%25e5%25a2%259e%25e5%258a%25a0ssl%25e6%2594%25af%25e6%258c%2581</link>
		<comments>http://marshal.easymorse.com/archives/951#comments</comments>
		<pubDate>Wed, 03 Dec 2008 08:14:10 +0000</pubDate>
		<dc:creator>Marshal</dc:creator>
				<category><![CDATA[计算机技术]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://marshal.easymorse.com/archives/951</guid>
		<description><![CDATA[首先需要确保apache安装成功，正常配置和运行。 安装必要的软件 安装openssl： apt-get install openssl 安装ssl-cert： apt-get install ssl-cert 加载apache ssl模块 加载apache ssl模块： a2enmod ssl 创建apache下的ssl目录： mkdir /etc/apache2/ssl 创建证书相关文件 进入/etc/apache2/ssl目录，创建私鈅，需要输入两次相同的关键字： openssl genrsa -des3 -out my-server.key 1024 创建证书： openssl req -new -key my-server.key&#160; -x509 -out my-server.crt -config /etc/ssl/openssl.cnf 如果希望延长有效时间默认1个月，可增加参数： -days 3650 创建和运行站点 创建站点文件/etc/apache2/sites-available/ssl，主要内容： NameVirtualHost *:443 &#60;VirtualHost *:443&#62; ServerAdmin webmaster@localhost DocumentRoot /var/www/ &#60;Directory /&#62; Options FollowSymLinks [...]]]></description>
			<content:encoded><![CDATA[<p>首先需要确保apache安装成功，正常配置和运行。</p>
<h3>安装必要的软件</h3>
<p>安装openssl：</p>
<blockquote><p><font color="#333333">apt-get install openssl</font></p>
</blockquote>
<p>安装ssl-cert：</p>
<blockquote><p><font color="#333333">apt-get install ssl-cert</font></p>
</blockquote>
<p> <span id="more-951"></span><br />
<h3>加载apache ssl模块</h3>
<p>加载apache ssl模块：</p>
<blockquote><p>a2enmod ssl</p>
</blockquote>
<p>创建apache下的ssl目录：</p>
<blockquote><p>mkdir /etc/apache2/ssl</p>
</blockquote>
<h3>创建证书相关文件</h3>
<p>进入/etc/apache2/ssl目录，创建私鈅，需要输入两次相同的关键字：</p>
<blockquote><p>openssl genrsa -des3 -out my-server.key 1024</p>
</blockquote>
<p>创建证书：</p>
<blockquote><p>openssl req -new -key my-server.key&#160; -x509 -out my-server.crt -config /etc/ssl/openssl.cnf</p>
</blockquote>
<p>如果希望延长有效时间默认1个月，可增加参数：</p>
<blockquote><p>-days 3650</p>
</blockquote>
<h3>创建和运行站点</h3>
<p>创建站点文件/etc/apache2/sites-available/ssl，主要内容：</p>
<div class="wlWriterSmartContent" id="scid:F2210F5F-69EB-4d4c-AFF7-B8A050E9CC72:ef14c744-aec5-4af7-a934-f6ff368acfc5" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">
<pre  style="width:100%;;">
<div><!--

Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/

--><span style="color: #000000;">NameVirtualHost *:443
</span><span style="color: #0000FF;">&lt;</span><span style="color: #800000;">VirtualHost </span><span style="color: #FF0000;">*:443</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/
        </span><span style="color: #0000FF;">&lt;</span><span style="color: #800000;">Directory </span><span style="color: #0000FF;">/&gt;</span><span style="color: #000000;">
                Options FollowSymLinks
                AllowOverride None
        </span><span style="color: #0000FF;">&lt;/</span><span style="color: #800000;">Directory</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">
        </span><span style="color: #0000FF;">&lt;</span><span style="color: #800000;">Directory </span><span style="color: #FF0000;">/var/www</span><span style="color: #0000FF;">/&gt;</span><span style="color: #000000;">
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </span><span style="color: #0000FF;">&lt;/</span><span style="color: #800000;">Directory</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        </span><span style="color: #0000FF;">&lt;</span><span style="color: #800000;">Directory </span><span style="color: #FF0000;">&quot;/usr/lib/cgi-bin&quot;</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </span><span style="color: #0000FF;">&lt;/</span><span style="color: #800000;">Directory</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature On

    Alias /doc/ &quot;/usr/share/doc/&quot;
    </span><span style="color: #0000FF;">&lt;</span><span style="color: #800000;">Directory </span><span style="color: #FF0000;">&quot;/usr/share/doc/&quot;</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </span><span style="color: #0000FF;">&lt;/</span><span style="color: #800000;">Directory</span><span style="color: #0000FF;">&gt;</span><span style="color: #000000;">

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/my-server.crt
SSLCertificateKeyFile /etc/apache2/ssl/my-server.key

</span><span style="color: #0000FF;">&lt;/</span><span style="color: #800000;">VirtualHost</span><span style="color: #0000FF;">&gt;</span></div>
</pre>
</div>
<p>ssl站点设为可运行：</p>
<blockquote>
<p>a2ensite ssl</p>
</blockquote>
<p>重启apache后，即可以通过https访问。因为是自己生成证书，在通过ie7访问的时候会出现以下情况，选择<em>继续浏览此网站</em>即可。</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2008/12/111.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="176" alt="111" src="http://marshal.easymorse.com/wp-content/uploads/2008/12/111-thumb.png" width="260" border="0" /></a> </p>
<h3>手工导入证书</h3>
<p>如果如上面的方式通过浏览器访问，会在ie7地址栏中有警告：</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2008/12/112.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="65" alt="112" src="http://marshal.easymorse.com/wp-content/uploads/2008/12/112-thumb.png" width="260" border="0" /></a> </p>
<p>在google chrome中也会有警告信息：</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2008/12/113.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="102" alt="113" src="http://marshal.easymorse.com/wp-content/uploads/2008/12/113-thumb.png" width="253" border="0" /></a> </p>
<p>如果嫌这个比较扎眼（其实不影响使用），可以手工导入证书，将/etc/apache2/ssl/my-server.crt文件发布，供用户下载。下载后双击该文件：</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2008/12/114.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="290" alt="114" src="http://marshal.easymorse.com/wp-content/uploads/2008/12/114-thumb.png" width="255" border="0" /></a> </p>
<p>点击：安装证书</p>
<p><a href="http://marshal.easymorse.com/wp-content/uploads/2008/12/115.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="241" alt="115" src="http://marshal.easymorse.com/wp-content/uploads/2008/12/115-thumb.png" width="288" border="0" /></a> </p>
<p>需要选择根证书条目。安装好后，访问即可不再有警告提示。</p>
]]></content:encoded>
			<wfw:commentRss>http://marshal.easymorse.com/archives/951/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

