Linux下dd命令生成一个指定大小的虚拟块设备文件

虚拟块设备文件更通用的名称是硬盘镜像文件(Hard Disk Image),但不是所有的硬盘镜像文件都是虚拟块设备文件,例如,目前Ghost的GHO格式的镜像文件就不能成为虚拟机中的硬盘。

Linux的dd命令,可以用于生成虚拟块设备文件。既可以用于创建空镜像文件,也可以用于创建物理硬盘的镜像。

# dd if=/dev/hda of=/mnt/nebula/hda_dd.image4757130+0 records in4757130+0 records out
上面这个命令将IDE设备/dev/hda的内容复制到/mnt/nebula/hda_dd.image文件。参数if告诉dd从哪个文件读取数据,参数 of告诉dd读出的数据写入哪个文件中。注意,对于dd来说,输入和输出都是文件,dd做的只是文件拷贝工作,这得益于Unix/Linux下面将设备也抽象为特殊的文件。

一般来说设备文件有两种,一种是块设备,一种是字符设备。块设备的特点是可以随机读写(Random Access),比如内存、硬盘等。字符设备的特点是顺序读写(Sequential Access),比如鼠标,键盘,麦克风等。

前面说了如何生成物理硬盘的镜像,如果想生成空镜像文件(本文的主要目的),还需要一个特殊的设备。/dev/zero是Linux提供的一个特殊的字符设备,它的特点是可以永远读该文件,每次读取的结果都是二进制0。下面的命令可以生成一个100M的空镜像文件:

dd if=/dev/zero of=100M.img bs=1M count=100

除了前面已经解释的of和if参数,这次又出现了bs和count参数。bs=1M表示每一次读写1M数据,count=100表示读写 100次,这样就指定了生成文件的大小为100M。bs参数还可以进一步细分为ibs和obs两种,为读操作与写操作分别指定不同的Buffer大小。

这样就生成100M的空镜像文件,问题是,如果要生成1G的虚拟块设备文件,就得占用1G的硬盘空间,而这个镜像文件完全是空的,是不是有一点浪费?好在Linux支持Sparse(稀疏)文件。请看下面的例子

# dd if=/dev/zero of=1G.img bs=1M seek=1000 count=0

# ls -l 1G.img
-rw-r-r- 1 root  root  1048576000 Mar 25 15:32 1G.img
# du -m 1G.img

这里用了一个新的命令seek,表示略过1000个Block不写(这里Block按照bs的定义是1M),count=0表示写入0个Block。用ls命令看新生成的文件,大小可以看出是1000M。但是再用du一看,实际占用硬盘大小只有1M。

Nginx打开目录浏览功能(autoindex)

Nginx默认是不允许列出整个目录的。如需此功能,打开nginx.conf文件或你要启用目录浏览虚拟主机的配置文件,在server或location 段里添加上autoindex on;来启用目录流量,下面会分情况进行说明。

另外Nginx的目录流量有两个比较有用的参数,可以根据自己的需求添加:

autoindex_exact_size off;
默认为on,显示出文件的确切大小,单位是bytes。
改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

autoindex_localtime on;
默认为off,显示的文件时间为GMT时间。
改为on后,显示的文件时间为文件的服务器时间

1、整个虚拟主机开启目录流量

在server段添加

location / {
autoindex on;
autoindex_localtime on; #之类的参数写这里
}

2、单独目录开启目录流量
2.1:直接二级目录开启目录流量
location /down/ {
autoindex on;
}

2.2:虚拟目录开启目录流量
location /down/ {
alias /home/wwwroot/lnmp/test/;
autoindex on;
}

详细参照:http://nginx.org/en/docs/http/ngx_http_autoindex_module.html

如果想希望做出漂亮的目录列表,支持header,footer则可以安装三方插件:
http://wiki.nginx.org/NginxNgxFancyIndex

重启nginx,使其生效。

ref:https://www.vpser.net/build/nginx-autoindex.html

LNMP Debian/Ubuntu下Nginx+MySQL+PHP+phpMyAdmin+Zend一键安装包

LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。

LNMP一键安装包 0.4版更新记录:

  • 添加LNMP状态管理
  • 添加PureFTPd状态管理
  • PHP增加suhosin
  • 增加VsFTPd、PureFTPd安装及管理
  • 增强Nginx虚拟主机添加功能,添加多域名、伪静态支持、日志是否启用的功能
  • 升级Nginx到0.7.65、MySQL到5.1.44

LNMP一键安装包 0.4版下载地址:

下载版:http://soft.vpser.net/lnmp/lnmp0.4.tar.gz
完整版:http://soft.vpser.net/lnmp/lnmp0.4-full.tar.gz

LNMP一键安装包 0.4版安装步骤:

1、下载LNMP一键安装包:
可以选择使用下载版(推荐国外或者美国VPS使用)或者完整版(推荐国内VPS使用),如果使用下载版执行命令 wget -c http://soft.vpser.net/lnmp/lnmp0.4.tar.gz,如果使用完整版,执行命令 wget -c http://soft.vpser.net/lnmp/lnmp0.4-full.tar.gz,执行上述命令后LNMP一键安装包就会被下载到VPS 上。

2、解压LNMP一键安装包:
执行tar zxvf lnmp0.4.tar.gz 或者tar zxvf lnmp0.4-full.tar.gz 就会将LNMP一键安装包解压缩。

3、CentOS下安装步骤
执行命令 cd lnmp0.4/
然后再执行./centos.sh ,输入要绑定的域名,回车,再输入要设置的MySQL root的密码,再次回车确认。程序会自动安装编译Nginx、PHP、MySQL、phpMyAdmin、Zend这几个软件。

4、Debian/Ubuntu下安装步骤
执行命令 cd lnmp0.4/
然后32位系统执行./debian.sh ,输入要绑定的域名,回车,再次输入VPS/服务器所在位置:asia、america、europe、oceania或africa,回车,再输入要设 置的MySQL root的密码,回车后,再次回车确认。程序会自动安装编译Nginx、PHP、MySQL、phpMyAdmin、Zend这几个软件。安装大约10分 钟左右需要设置MySQL root用户的密码。

安装其他组件
1、安装eAccelerator,执行如下命令:./eaccelerator.sh 就会自动安装并重启web服务。
2、安装PureFTPd和管理面板,执行如下命令:./pureftpd.sh 就会自动安装PureFTPd,安装完PureFTPd,需要在浏览器执行http://你的域名或IP/ftp/install.php 安装PureFTPd用户管理。

虚拟主机管理
1、添加虚拟主机,执行如下命令:./vhost.sh 根据提示输入要绑定的域名,回车,如果需要添加更多的域名,输入y,再输入要另外绑定的域名,多个域名可以用空格隔开。再输入域名绑定的目录(绝对目录, 如/home/wwwroot/lnmp,如果不填默认是/home/wwwroot/绑定的域名),再选择是否添加伪静态规则,默认已经有了 Discuz、Wordpress、Sablog、emlog、dabr,可直接输入以上名称即可,如果需要添加自定义伪静态规则,直接输入一个想要的名 字,程序会自动创建伪静态文件,直接在/usr/local/nginx/conf/你自定义的伪静态名字.conf 里面添加伪静态规则就行。接下来会提示是否需要启用日志功能,一般情况下不需要启动,直接输入n就行,如需启动,输入y,再输入要定义的日志文件名字,回 车就会自动添加虚拟主机。

LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
PureFTPd状态管理 /root/pureftpd {start|stop|restart|kill|status}
phpinfo : http://$domain/phpinfo.php
phpMyAdmin : http://$domain/phpmyadmin/
探针 : http://$domain/p.php"

LNMP相关目录:
mysql :   /usr/local/mysql
php :     /usr/local/php
nginx :   /usr/local/nginx
网站目录 :     /home/wwwroot

注:已经在VPSYOU(感谢提供测试VPS)、DiaHosting(感谢提供测试VPS)、PhotonVPS(感谢提供测试VPS)、vpszzMyHost123瑞豪开源VPSLinodeYardVPSDirectSpaceThrustVPSBuyVM123Systems等多家及几位lnmp网友提供的VPS上的CentOS 32/64bit、Debian 4/5 32/64bit上测试成功。同时感谢提供测试VPS的商家及网友。

技术支持
————————
LNMP官网:https://lnmp.org/
作者技术支持邮箱:www@lnmp.org
技术支持论坛:http://bbs.vpser.net/forum-25-1.html (注册需注明原因,人工审核。)

雨林木风的Linux发行版:Ylmf Linux(附下载地址)

雨林木风以前是制作Windows系统安装光盘的组织,在MS反盗版的作用下,雨林木风已经转战Linux阵营,并在近期推出了基于Fedora 11的、中文友好的Linux发行版:Ylmf Linux!

关于Ylmf Linux的详细介绍可以看这里:http://www.ylmf.net/read.php?tid=1352508

下面引用其中的说明:

Ylmf linux v1.0 版特性说明:
- 基于 Fedora11 版本 去掉系统多余的软件包,增加驱动与常用应用软件
- 集成openoffice3.1办公软件(能打开所有ms office 文件)
- 集成输入法为:ibus 拼音(linux下类似搜狗、谷歌、紫光拼音等的完美替代选择!)
- 集成默认桌面管理器:KDE(最接近Windows上的使用习惯,满足个人使用便利需求!)
- 集成全能电影播放机与解码器 (能播放各类电影文件)
- 集成图形处理软件 GIMP 2.6.16 (包含新的UI)
- 集成浏览器 Firefox 3.5
- 集成功能强大的邮件客户端 :evolution
- 集成轻量级 BT 下载工具: Trasmission Bittorrent
- 集成腾讯官方 QQ for Linux
- 桌面已添加常用工具gnome和kde桌面切换脚本
- 默认完全支持c/c++开发环境
- 使用最新内核 2.6.29

两张相关截图:

下载地址:
电信地址
 
电信主下载地址


电信镜像地址1


电信镜像地址2


电信镜像地址3


电信镜像地址4


电信镜像地址5

网通地址

网通镜像地址1


网通镜像地址2


网通镜像地址3

MD5:
0A49FE3F1A8B2935DA903152754CA71E 

从Godaddy转移域名到name.com

前几天把自己的一个域名从Godaddy转到了最常用的name.com上,步骤参考了冰古大哥的文章。

国内转移域名不仅手续繁琐而且需要额外支出,跟国外域名商之间转移域名的快捷方便一比较,你就会觉得国内域名商的落后、不思进取。

刚将一个域名从Godaddy转出到name.com,花费的时间仅为一个小时。我对国内域名商的落后与不思进取的感受更深了。
godaddy2name1

以下是转移的过程

  1. 首先,登录并进入Godaddy的域名管理器(Domain Manager)。
  2. 点击你要转移的域名所对应的后面的小锁。
    godaddy2name2
    在接下来的页面中去掉“Lock Domain”前的小勾,然后点击“OK”。这时域名将去除锁定。
     godaddy2name3
  3. 接下来,是“讨Auth Code”
    godaddy2name4
    点选“(Send by Email)”,几分钟后,你就能收到Godaddy发给你一封带Auth Code的邮件。(是的,就几分钟的事)
  4. 再来,登录name.com,并进入Transfer Domain Names(在页脚,你可以看到这个链接)。进去后,填入域名和“Auth Code”并确定。如无意外,点击“Checkout”进行付费(com转移是7.99刀,包括一年的续费,也就是说转移是不收费的,都用来续费了。)。付费后,name.com会发给你一封确定转移域名的邮件,点击当中的确定链接,确定转移。
  5. 再接下来,就是等候Godaddy的回信了。我等了大概20分钟吧,Godaddy就发信过来说,“他们知道你要进行域名的转移,如果你确信要转移,请到域名管理器中确定转移域名这样”。
    再次登录Godaddy的域名管理器,并进入“Pending Tranfers”(鼠标移动到下图中的“Domain”上,可以看到这个选项)当中。
    godaddy2name5
    勾选域名,点击上面的“Accept/Decline”,下面选择Accept确定转移即可。
  6. 大概二十分钟左右,Godaddy将再次发邮件告诉你转移完成。登录name.com后,就可以看到转移的域名已经在这里出现了。(你可以看到该域名后面的“Private Whois”为“No”,点击激活免费匿名Whois吧。)

我是第一次进行域名的转移,但转移的流程方便快捷,还是能在一个小时左右完成转移的工作。回想到我在E动网中提出要转移域名,他们告诉我,“要快递申请表、身份证复印件……”,我就感觉恶心。

为什么要从Godaddy转到name.com?
首先,第二年Godaddy续费域名的价格是10.69刀,来个优惠码可能减到8刀吧(这个是我估计的,大概也是这个价左右吧),而name.com的是8.99刀,价格是差不多的;
第二,name.com的域名都有送匿名whois,这个Godaddy买的话要20多刀?
第三,godaddy的界面乱,name.com的界面简洁、操作更方便。

综上,于是我转移到name.com

本文转载自:http://bingu.net/633/transfer-domain-name-from-godaddy-to-name-com/

2009年7月 Name.com/Godaddy.com域名注册优惠码

2009年7月 Name.com域名注册优惠码

注册 com域名,可以节省1.00美元的;注册 .net 域名,节省1.50美元

new .com domain registration - Saves $1.00

Coupon Code: ELAMEXE

New .net Domain Registration - Saves $1.50

Coupon Code: CORACOA

You can use these name.com promotion codes at the checkout to receive discounts.

 2009年7月 Godaddy.com域名注册优惠码

gdr0630r - SAVE 20%* on new .COMs and 30%* on new .NET domains
goaz2001ai - 6.99$ .Com domains (Register,Renew,Transfer)
goaztk03a - 6.99$ .com domains ,(Register,Renew)
cjcdeal72 - 7.49$ .Com domains (register ,Renew)
cjcdeal73 - Save 20% on Shared Hosting Plans
cjc20host - Save 20% on Shared Hosting Plans
cjcdeal78 - Save 15% on your order 75$ or more
cjcdeal77 - Save 20$ off your order 100$ or more
199BUYCOM - $1.99 – Register, Transfer ( One per Account )
cjcUS399 - $3.99 .us Domains (Independence day special)

下面所提到的一些新的Godaddy促销代码,对 .info & .me 域名 无效。

Wallet11 takes 10% off any order. Webmail, hosting, transfers and any non .com domains.

Wallet22 takes 20% or off any order over $50

Wallet30 takes 30% off all .com renewals and all new .com registrations