前进
November 7th, 2007心所向往的地方,会有千万条路通向那里;一旦心志不坚定,就会找到万千条推脱的理由
常走的路越走越宽,不走的路渐渐荒芜。

用“dd”命令做光盘镜像
November 5th, 2007dd是一个非常强大的命令,用它可以很容易地制作光盘镜像。
首先,把光盘放入光驱后,确认没有mount[1],可以用mount命令检查。
如果已经系统自动mount,用umount命令卸载它。
#umount /mnt/cdrom
然后用dd命令制作光盘镜像
#dd if=/dev/cdrom of=cdimage.iso
- 系统可能会自动mount [↩]
offlineimap+mutt同步gmail
November 2nd, 2007gmail开通了imap功能,不用为了确认垃圾邮件登录WEB页了。
Offlineimap可以把远程IMAP目录同步到本地的maildir格式的目录,可以自由选择远程IMAP目录是否同步。
Offlineimap的安装很简单,从网站下载后,进入到解压后的目录,把offlineimap.py变成可执行就可以了,当然也可以安装到bin目录里,请看它的手册。
解压offlineimap $tar offlineimap_5.99.4.tar.gz $cd offlineimap $chmod +x offlineimap.py
然后把解压出来的offlineimap.conf复制到$HOME目录并改名为.offlineimaprc
$cp offlineimap/offlineimap.conf .offlineimaprc
符合DoD 5220-22.M标准的数据销毁工具
November 1st, 2007DoD 5220-22.M是美国国防部制定的机密文件销毁标准。
通常删除数据的方法是使用操作系统的文件删除功能,而格式化、分区这些操作是我们平时可以做的最彻底的方法了。但事实上,即使我们把硬盘分区格式化后,数据并没有真正的从硬盘上消失,通过技术手段可以把数据还原出来。
那怎么样才能真正的销毁我们不想要的数据呢?
我们的做法是把数据所在区域用无用的数据按照一定的模式完全的多次覆写以达到彻底销毁数据的目的。
在Linux下有几款工具可以实现这样的目的。
1、Diskscrub
2、DBAN
还有几个比安全级别没有这么高的:
3、wipe
4、srm
5、shred,这个工具一般的Linux系统都有。
在mutt中指定附件的类型
October 30th, 2007MIME types用来标识文件的类型,据此选择正确的程序运行这个文件,如application/msword表示这是一个微软的word文档。文件扩展名也是用来标识文件类型的,但是用户可以自由地修改扩展名,而MIME一般是由系统自动识别和指定的。
在这里列出了常见的MIME和扩展名的对应关系。
在mutt中添加附件时,一般会自动识别附件的类型,但也会出现识别不对的情况,如把doc文档识别成octet-stream。
通过编辑$HOME/.mime.types文件可以方便的指定附件的类型。
$vim ~/.mime.types application/vnd.ms-word doc application/vnd.ms-execl xls application/vnd.ms-powerpoint ppt pps
Linux的分区与系统安全
October 30th, 2007一般情况下,安装Linux系统时只需要两个分区就可以了:root和swap。但这样分区对Linux系统的安全、性能以及维护等都有一定的影响。
如下面的代码:
#!/bin/sh man bash> $(mktemp) $0
如果用户在/tmp目录运行这样的代码,结果是文件系统的空间将会完全被占用,就像受到了DoS攻击,而且它还能跳过空间限额的限定。
还有,/var/log也可能被设计不良的程序产生的日志完全占用从而导致整个文件系统的空间被消耗完毕。
从管理方面来讲,只有一个root,无法控制用户下载和编译SUID程序,无法应用性能调整参数,也会给数据备份带来麻烦。
因此,建议建立多个分区,如:
/boot,/,/usr,/home,/var,/tmp
加载文件系统时可用的参数有:nosuid,nodev,noexec,ro,quota等。
我们可以这样来设置:
/home:nosuid,nodev,quota
/usr:nodev
/tmp:nodev,nosuid,noexec,
/boot:noauto
远程访问Mysql服务器
October 30th, 2007基于安全考虑,Mysql服务器默认禁止远程访问,通过修改my.cnf文件可以启用远程访问:
1、文件位置:
Gentoo、Debian:/etc/mysql/my.cnf
Redhat:/etc/my.cnf
FreeBSD:/var/db/mysql/my.cnf
2、修改my.cnf
找到[mysqld]段,把skip-networking一行注释掉,再修改bind-address。
#vim /etc/mysql/my.cnf [mysqld] character-set-server = utf8 default-character-set = utf8 user = mysql port = 3306 socket = /var/run/mysqld/mysqld.sock pid-file = /var/run/mysqld/mysqld.pid log-error = /var/log/mysql/mysqld.err basedir = /usr datadir = /var/lib/mysql language = /usr/share/mysql/english # skip-networking bind-address = 本机的IP地址
3、保存my.cnf后重启Mysql
#/etc/init.d/mysql restart4、为远程IP授权
#mysql -u root -p mysql>create database foo; mysql>grant all on foo.* to bar@'remoteip' identified by 'pass'; mysql>exit
5、测试
在远程机器
$mysql -u bar -h serverip -p
也可以用telnet命令做测试
$telnet serverip 3306
管理Mysql的用户和密码
October 30th, 2007维护用户和密码是一项基本的Mysql管理工作。Mysql的默认管理员账号是:root,密码为空。 [1]
建立root账号的密码
#mysqladmin -u root -p NEWPASSWORD修改root账号密码
#mysqladmin -u root -p OLDPASS NEWPASS新建Mysql用户
#mysql -u root -p mysql>CREATE DATABASE demo; mysql>GRANT ALL ON demo.* TO user1@localhost IDENTIFIED BY "pass";
修改Mysql用户的密码
#mysql -u root -p mysql>update user set password="NEWPASS" where User=user1; mysql>flush privileges; mysql>quit
- Mysql的root账号和linux的root账号一点关系都没有 [↩]
在linux下访问windoze的共享目录
October 29th, 2007确认在内核中编译了smbfs或cifs。[1]
还需要:windoze的用户名和密码、windoze的主机名(或IP)和共享目录名、linux下的root权限。
#mkdir -p /mnt/ntserver #mount -t cifs //ntserver/dirname -o username=youname,\\ password=youpass /mnt/ntserver #cd /mnt/ntserver #ls
- 推荐使用cifs [↩]
开源软件调整windoze分区大小
October 29th, 2007我们常用的改变分区的软件patition magic是商业软件。现在我们有多种开源软件来做这个事情。
1、用knoppix LiveCD
在Knoppix网站下载LiveCD,然后刻成光盘。用它启动进入knoppix后,打开一个终端,输入以下命令:
#qtparted根据提示修改分区。
可选的软件还有:
SystemRescueCd
BootiTNG
NTFSresize用于NTFS分区
Gparted