Posts tagged ‘linux’

32位linux系统time_t的2038年问题

今天在调试项目的时候发现一个很郁闷的问题,发现我们项目里面的时间表示到2040年以后就出错了

经过断点调试才发现原来是time_t溢出了。

这时我才注意到time_t是一个long int型的,在我们32位linux系统下只有4个字节,最大只能表示21亿的数据

这不是很郁闷么?21亿最大只能表示到2038年,一通百度后才发现原来普遍的32位linux系统都会有这个问题

有一种解决办法是更新到64位系统,他会扩展long int的字节数。

详情请移步:http://baike.baidu.com/view/1366867.htm

这样一来我们的项目至少目前来说只能用到2038年了。

SVN常用命令大全

1、   将文件checkout到本地目录

svn checkout path(path是服务器上的目录)

例如:svn checkout svn://192.168.1.1/pro/domain

简写:svn co

2、   往版本库中添加新的文件

svn add file (这里恐怕后面要添加目录吧!)

例如:svn add test.php(添加test.php)

svn add *.php(添加当前目录下所有的php文件)

Continue reading ‘SVN常用命令大全’ »

FreeBSD软件安装卸载工具–Ports和Packages详解!

摘抄并简体化此文,与初学同仁共享。

1、如何只抓取 tarball?

如果只希望抓取 tarball 下来的话,仅需下 make fetch 即可。
如果是要抓取单一的 port,以 editors/joe 为例的话,则:
代码:

cd /usr/ports/editors/joe/
make fetch

预设会将 joe 的 tarball 下载至 /usr/ports/distfiles/ 目录下。
如果是希望抓取安装此 ports 所有须要的其他 ports 的 tarball,以

systuils/portupgrade 为例的话,则:
代码:

cd /usr/ports/systuils/portupgrade/
make fetch-recursive

Continue reading ‘FreeBSD软件安装卸载工具–Ports和Packages详解!’ »

Linux下清除.svn目录

SVN给开发带来了方便,但在导出的时候,如果选择了checkout,那么目录里是带有.svn目录的,除非是export。

如果您的项目中是checkout的,如果还要export,那就烦了一点。因为export是从服务器上导回来的。如果服务器速度慢(网上的免费SVN服务器),那就更痛苦了。因此直接删除.svn目录是最快的解决方法。

windows下面可以直接搜索.svn,然后delete就行了
linux下面怎么办?

其实更方便,只要一句话
进入项目目录后,运行 find . -name “.svn” | xargs rm -rf
然后你就会发现。.svn目录全没有了。HOHO

使用 rsync 同步

内容提要

  1. 熟悉 rsync 的功能及其特点
  2. 掌握 rsync 语法及常用选项的功能
  3. 掌握 rsync 命令的三种基本使用方法
  4. 掌握如何筛选 rsync 的传输目标
  5. 掌握使用 rsync 进行镜像和增量备份的方法

rsync 简介

rsync(remote synchronize)是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机之间的文件。也可以使用 rsync 同步本地硬盘中的不同目录。
rsync 是用于替代 rcp 的一个工具,rsync 使用所谓的 rsync算法 进行数据同步,这种算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 您可以参考 How Rsync Works A Practical Overview 进一步了解 rsync 的运作机制。
rsync 的初始作者是 Andrew Tridgell 和 Paul Mackerras,目前由 http://rsync.samba.org 维护。
rsync 支持大多数的类 Unix 系统,无论是 Linux、Solaris 还是 BSD上 都经过了良好的测试。 CentOS系统默认就安装了 rsync 软件包。 此外,在 windows 平台下也有相应的版本,如 cwrsync 和DeltaCopy 等。
rsync 具有如下的基本特性:

Continue reading ‘使用 rsync 同步’ »