2009年4月14日星期二

安全的删除数据

  手工安全的删除数据非常的有用,如果你打算卖掉你的电脑(甚至是丢弃它),你最好完全的销毁硬盘上面的数据。简单的删除一个文件并不是非常安全,因为有很多软件可以恢复删除的文件,所以你必须用没有意义的数据填充整个磁盘,才能保证数据被永久删除了。如果你不想永久删除一个硬盘里面的所有数据,也可以永久删除一个文件,保证这个文件的内容无法被复原。
  Ubutu的"shred"就是一个解决方案。"shred"就是用随机数据覆盖文件或者磁盘的内容,保证这个文件的内容无法被复原。

永久删除磁盘

下面,我们将永久删除一个USB盘里面的内容,让它无法还原。有三个步骤:
1、找出这个USB盘在Ubuntu里面的位置。首先插入磁盘,看到桌面出现USB图标以后。然后开启一个终端,输入"mount",查看所有已经挂载的磁盘。下面是我的电脑上面的显示,我的U盘的名称是KINGSTON,所有看到如下:
/dev/sdb1 on /media/KINGSTON type vfta (rw,nosuid,nodev, ..)
2、现在,右键点击图标,卸载USB盘。
3、现在,进入命令行:
sudo shred -v /dev/sdb
现在,shred开始删除时间。过程可能花费比较长的时间,但是也可以看到一个进度条。
默认情况下,shred覆盖数据25次,但是你可以通过参数"-n"来指定覆盖次数。但是除非是防止CIA来查看书籍,一个"-n1"参数就应该满足我们的需要了。
覆盖完成以后,你需要重新格式化此U盘。
如果你想覆盖一个硬盘的数据,你可以在Ubuntu安装盘的Live模式来进行这个工作。用Ubuntu安装盘启动电脑,桌面出现以后,打开终端,输入:
sudo swapoff
sudo shred -v /dev/sda
现在这个磁盘上面的所有操作系统(包括Windows分区)将被永久删除。如果需要删除软盘里面的内容,把"/dev/sda"改为"/dev/fd0"。

永久删除文件

相比删除磁盘,永久删除一个文件就比较简单了,不过需要添加一个"-u"参数。譬如想删除文件picture.jpg,可以使用:
shred -v -n1 -u picutre.jpg
现在不需要使用sudo命令。

克隆Ubuntu系统到新硬盘

刚刚因为硬盘空间太小而更换了新的硬件系统,并且希望使用新的硬盘作为系统?没有问题,把Ubuntu克隆到其它硬盘非常容易,实际上Ubuntu提供了可以克隆整个硬盘(包含Windows分区,如果有的话)的工具。Ubuntu做这种事情非常拿手。
在开始克隆一起,有三件事情需要需要去做:
1. 查看Ubuntu是如何安排磁盘空间
2. 安装ddrescure软件以进行磁盘克隆
3. Ddrescure安装完成以后,用Gparted进行磁盘分区调整
如果在车辆行驶中无法更换轮胎一样,最好不要在磁盘正在使用的情况下进行克隆,所以你必须使用你的Ubuntu安装CD。从Ubuntu安装CD启动,选择"尝试Ubuntu"。
注意下面的操作都是在Ubuntu CD的Live模式下面进行,除了最后测试以外不能进入硬盘里面的Ubuntu。

准备克隆
在开始一起,最好做三件事情:第一,把所有有价值的私人数据备份到CD/DVD-R/RW、U盘或者其他硬盘从上面。这是为了避免由于误操作而造成的数据丢失。第二,检查磁盘错误,如果存在错误进行修复。第三,移除所有的移动存储设备,譬如U盘、读卡器、MP3播放器等,以避免调整分区时的混淆。
现在打开"终端",输入下面的命令列出硬盘的分区情况:
$ sudo fdisk –l
下面是我的测试系统的显示:
Disk /dev/sda: 81.9 GB, 81964302336 bytes
255 heads, 63 sectors/track, 9964 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x1c381c37
Device Boot Start End Blocks Id System
/dev/sda1 * 1 4742 38090083+ 7 HPFS/NTFS
/dev/sda2 4743 9964 41945715 5 Extended
/dev/sda5 4743 9744 40178533+ 83 Linux
/dev/sda6 9745 9964 1767118+ 82 Linux swap/Solaris
Disk /dev/sdb: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xb94838a4
Disk /dev/sdb doesn't contain a valid partition table
可以看到有两个硬盘显示在结果里面:我已经用红色高亮显示了。上面的结果还显示硬盘的具体技术信息。
非常明显,"/dev/sdb"是新的分区,因为他没有分区(注意"Disk /dev/sdb doesn't contain a valid partition table")。而"/dev/sda"则是我的老Ubuntu磁盘。显示可能稍有区别,根据你硬盘的情况而定。
现在找到了你的新磁盘,我的是"/dev/sdb",输入下面的命令开始cfdisk程序,在新硬盘上面建立一个磁盘分区表。
$ sudo cfdisk –z /dev/sdb
在cfdisk输入"shift+w"(即大写的"W"),出现提示,选择"yes",然后输入"q"退出。不要理会那些警告。

克隆硬盘
现在有了这些信息,我们可以安装"ddrescue"软件来克隆硬盘。ddrescure不是默认的系统工具,因此需要安装。尽管我们的Ubuntu的LiveCD模式下面,我们还是可以从网络上面的"软件源"里面安装软件。在开始一起,首先确保"Universe"软件源可以使用。点击"系统"-"管理"-"软件源",勾选"社区维护的开源软件",点击"Close"按钮,并且同意刷新源。
现在,输入下面的命令安装ddrescue:
$ sudo apt-get install gddrescue
安装完成以后,输入下面的命令:
$ sudo ddrescure –v /dev/sda /dev/sdb
其中,"-v"参数代表显示进度,"/dev/sda"是原来的硬盘,"/dev/sdb"是新硬盘。注意,如果磁盘顺序不对,可能导致原来的硬盘数据被完全清除。
克隆过程根据硬盘的大小,可能花费1个小时甚至更多的时间。完成以后,关闭计算机,把旧硬盘拆除,然后使用新硬盘启动测试一下。注意,硬盘上面的Windows XP/Vista可能因为新硬盘而出现"Windows Genuine Advantage"提示,请重新激活。Ubuntu则不用担心,一切工作良好。
这一步完成以后,我们进入下一步:扩展磁盘分区,以充分利用新硬盘的空间

扩展分区
在进行分区扩展以前,最好检查一下Ubuntu的文件系统。用Ubuntu的安装CD,进入LiveCD模式,打开终端,输入:
$sudo fsdk.ext3 –f /dev/sda5
完成以后,关闭终端。点击"系统"-"管理"-"分区管理器"。
下面的工作根据自己的情况而定。如果你希望扩大Ubuntu的分区大小,有三个步骤:
1. 在"分区列表"里面,右键点击"linux-swap"分区,选择"Swapoff"。这样就可以防止Ubuntu的LiveCD模式下面访问交换分区,让交换分区可以进行移动。
2. 首先必须扩展Ubuntu所在的分区,右键点击"Extended"项,选择"Resize/Move",在出现的对话框里面,把"Free Space Following(MIB)"输入框改为0,键入"TAB",这样这个分区就会扩展到整个分区空间,点击"Resize/Move"按钮。注意,现在不用点击"Apply"按钮,我们在最后会一次完成。
3. 同上,把swap分区的空间也扩展到整个分区。
4. 回到Gparted出口,右键点击"Ext3"项,选择"Resize/Move",同第一步调整。
5. 点击Gparted工具栏上面的"Apply"按钮,等待分区移动和改变大小完成。
6. Gparted完成以后,关闭这个程序。打开终端,输入下面的命令重新检查硬盘是否存在错误:
$sudo fsck.ext3 –f /dev/sda5。如果出现错误,提示是否修复,通常情况下选择"yes"。
检查完成以后,就可以重新启动计算机。现在就可以看到Ubuntu分区变大了。
如果你希望丢弃旧硬盘或者把它送给别人,必须保证数据被完全销毁了,请查看"安全的删除数据".但是在确保你的新系统能100%工作以前,请不要这样做。

轻松共享文件之samba

      如果在Ubuntu下面共享一个文件夹,你会发现有密码保护,需要输入你的用户名和密码,这个时候你可能并不想别人知道你的用户名和密码。在"共享夹文件"对话框里面,尽管有"允许匿名用户"和"允许别人写入"的选项,但是并不是非常的好用。
      下面介绍一种更安全、适应性更好、安全性更强的方法,让你可以共享你的Ubuntu计算机里面的内容,无论"共享访问人"的操作系统是Windows还是Mac OS X。
下面的步骤,将产生一个空的"匿名用户",在Ubuntu 8.04.1里面运行成功。
1、打开"新立得",安装"samba"和"libpam-smbpass"软件包。这两个软件允许在后台,功能是共享文件和用户验证。
2、建立一个"guest"账户,利用这个账户作为共享文件和其他人访问共享的代理。打开"系统"-》"管理"-》用户和组,选择"解锁",点击"添加用户"。在用户名里面输入"guest",在密码里面输入一个简单的密码,在"用户权限"里面,勾选"允许通过本地网络共享文件"。

3、注销,用guest账户登录。建立需要共享的文件,然后在文件夹上面右键选择"共享选项",勾选"共享此目录",输入一个共享名,并且勾选"允许他人在此目录里写入数据",但不要勾选"允许匿名登录"。点击"创建共享"就可以了。


       现在可以按照上面的步骤增加更多的共享文件夹。注销"guest"账户,用你自己的账户登录,现在不需要再用"guest"账户登录,因为即使guest不登录,其他人也可以访问他的共享文件夹。
4、在你的桌面上面建立一个"快捷方式",在命令里面输入"nautilus
smb://localhost",点击"确定"。现在双击这个快捷方式,会出现一个登录对话框,在用户名里面输入guest,在密码里面输入"刚才建立的guest账户的密码",勾选"记住登录",现在就可以访问你的共享文件夹了。
一个小窍门,在Natilus里面,可以用Ctrl+d建立一个书签,下一次访问直接从书签里面找到了。
5、现在其他人,就可以从网络里面看到你的共享文件夹了。告诉他们访问的用户名是guest,密码是-刚才设置的guest账户密码,他们就可以成功访问了。
现在除非需要增加共享文件夹,一般就不需要用guest直接登录了。

轻松共享文件--安装个人FTP服务器以共享文件

      一个在你的Ubuntu计算机上面共享文件的方法是安装一个个人FTP服务器。下面的步骤将解释如何安装和配置一个个人FTP服务器-可以匿名访问,无需用户名和密码:
1、在"新立得"里面安装"vsftpd"。
2、在"vsftpd"安装过程中,它会在系统建立一个空帐号-"ftp"。但是在文件共享一起,首先在这个空帐号的HOME目录里面建立一个文件夹,命令如下:
$sudo mkdir /home/ftp/shared\ files
$sudo chmod a+rwx /home/ftp/shared\ files
3、用gedit打开vsftpd的配置文件-"/etc/vsftpd.conf",找到下列行,并且移除行首的"#"。
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
4、保存文件,退出Gedit。输入下面命令让设置生效:
$ sudo /etc/init.d/vsftpd restart

然后,你就可以让任何一台电脑访问你的FTP了。

读完这篇文章,保证你退休无忧

      很多年以前,当我刚开始拍摄 「Win Ben Stein's Money」这个节目的时候,我有个叫 Suize 的化妆师。当 Suize给我弄头发、打粉底的时候,我总是在读华尔街日报或者 Barron's杂志,或者打电话和我的哥们 Phil DeMuth 讨论投资问题。Suize至少每周都会咬牙切齿的说一次:"我一定要学会所有投资赚钱的方法。"
      我实在不知道怎么搭这个茬儿,因为了解所有的投资方法是不可能的。没有人可以每次都做正确的决定--- 就是保持每年都盈利也不可能。Bill Miller,莱格·梅森价值信托基金(Legg Mason Value Trust)的充满传奇色彩的投资经理,他业绩曾经连续15年超过 S&P(标准普尔指数),但是去年他远远落后于这个指标。沃伦.巴菲特(Warren Buffett),也许是我们这个时代最精明的投资家,如果不是在40多美元的低位而是在80多美元的高位卖出可口可乐的股票,他就会有几十亿美金入袋平安。巨牛的对冲基金(hedge-fund)经理们,那些通常每年都有数亿美金进账的家伙,突然失掉水准、丢掉几十亿美金捎带着自己工作的事儿,虽然不经常发生,却也时有耳闻。
      我相信你一定了解看着你卖掉的股票在接下来的几年翻了三番儿,或者你15块钱买的股票现在要几分钱卖掉的那种感觉。我也有这样的经历,而且还不少。这就是为什么我总结了一些简单的规则,并根据这些规则进行投资。我把它们当作投资的「禅」,因为在你深入了解之后,它们最终会变成本能。你将不必费事思考,你只会遵守它们。

规则 1: 不要试图左右市场,而是要跟随市场(Instead of trying to time the market, try to tie it.)

      几个月之前,我有幸和沃伦.巴菲特 (Warren Buffett)在奥马哈市(Omaha)的一个叫 Piccolo Pete's的古怪饭店共进晚餐。当我们在迪斯科舞池边的桌子旁坐好之后,我问他对一个普通的投资者的最好的建议是什么。他轻轻一笑,说:"了解你自己的局限"。他解释说,普通的投资者没有能力找到那些会超出市场预期的股票,他们的投资经理也没这个本事。所以除非你自己特牛叉,否则别想着领先市场。相反,要用指数基金(index fund)撒大网。买一个能跟上标准普尔 500 (S&P500)、甚至整个美国股票市场的基金。如果你的市场收益大概每年能锁定在
10%,你的收益将相当可观。
      如果你想照抄巴菲特大师的创造力,就去买他的公司 Berkshire Hathaway的股份。那不是低价股票 --- 它的一股 B 股股票价值 3500 美金 ---但是在过去的 25 年中它的平均回报率达到了
25%。而且它的广泛持股使它像某些共同基金(mutual funds)一样富于变化。强烈提醒你要留意 Berkshire Hathaway公司在经济低迷的年代的收益。我的沃伦老哥不会永远呆在那儿等你。
所以如果你想要租房子或者在考虑买房子,或者你曾经研究要投资一个可以出租的物业,那么赚钱的买卖就摆在你面前。

      对于不想买巴菲特公司股票的人来说:你也许更加致力于在那些成长性更高的城市,比如印第安那州的加利市(Gary,Ind.)、华盛顿州的史波肯市(Spokane,Wash.)、德克萨斯州的科珀斯克里斯蒂市(Corpus Christi,Texas),寻找更便宜的买卖。所有的不动产市场都是地域性的,所以一定要针对你的地区做调查。

规则 2: 当你打算卖出的时候,买进(When you're tempted to sell, buy.)
      当你的股票大幅跳水,你会本能地想要割肉,把你的钱转移到更安全的投资领域,比如债券或者货币市场基金(money-market funds)。这是人的本性,也是一个巨大的错误。当市场跳水了几天几个月几年,那是赚大钱的机会。
      几年前的一个年度报告上,巴菲特这样解释:不管一个股票被高估或者低估,它的所有权是同一家公司。所以当股票市场廉价出售一个公司,这是买入的最好时机。反之亦然:当市场达到新高,你想奋不顾身的进入。千万别。这不一定是抛售的时候,不过假如你是用自己的纳税帐户投资,你应该少买进。

      重要提示:如果你所有的投资都是用免税帐户或者个人退休帐户(IRA,Individual Retirement Account),保持或者增加你的投资,别管市场走向如何。

规则 3: 管理投资领域(Collect sectors.)
      投资者最好的朋友是时间。你的荷包需要慢慢地、聪明地增长。这当然就意味着你应该尽早存钱。对你们这些股票玩家来说,记住历史趋势表明,整个市场在选举年表现得好,尤其是下半年。
      不过你还有一个好朋友,一个你不需要总是想着他的朋友:多样化。你一定不想把整个篮子的鸡蛋都打碎了。要保证你的投资包括整个投资领域。所以如果「能源股」崩溃了,你也许可以在「财经服务股」或者「卫生健康股」上平衡一下。这是另一个投资的标准普尔500 指数基金的理由:它实际上包含了各个方面的股票。
      同样,你要在全球范围内分散投资。主要是因为美国的巨大贸易赤字,美元可能要继续贬值很长时间。这意味着你可以用本国货币计数在外国的股票或者债券市场赚钱,例如,你的欧元或日元在你卖出的时候可以买更多的美元。特别注意快速发展中个国家,比如中国,印度,俄罗斯
---从长远看他们会干得不错,虽然正如去年二月份我们看到的那样,发展的路是有起伏的。在这些正在形成的市场分散投资你的大量美元是个好主意。
      幸运的是,差不多什么东西都有指数基金,对于普通投资者来说,在电脑上就能舒舒服服地投资新加坡,巴西,以及其他国家,就像是上天的恩赐。表达你的谢意,然后,买,买,买。

规则 4: 投资你自己 (Invest in yourself)

      也许你想要自动地为退休存钱;你的雇员从你的帐户拿钱,税前的。如果你想聚集你的流动资产--- 就是你可以随时动用的钱 --- 同样你需要让储蓄自动化。
你可以在网上和你的银行以及你的经纪人签署自动储蓄协议。每个月从你的支票帐户中拿出一定数额的钱买指数基金、低费的变额年金(variable annuity)或者多样化的共同基金,再拿出一部分钱买外国的指数基金。就像传说中军队的牛叉武器那样,"一劳永逸"(fire and forget)。

      如果你认为自己能始终领先市场,祝你好运。我的木头脑袋花了几十年 ---是的,几十年 --- 才明白这些道理。如果你只花几年就弄明白了,那么你的前途不可限量。

      Suize,我希望你正在听。