分类目录归档:Linux

用多个目录来组成FTP的用户主目录

今天在搭建FTP时遇到了一个问题,那就是怎样用多个目录来组成FTP用户的主目录。

为了安全,在组建FTP时,往往把用户限定在自己的主目录中。但是如果主目录中需要包含多个其它位置的目录,该怎么办呢?比如apache的主目录是/var/www ,怎样在FTP主目录中把它包含进来呢?

一开始尝试了ln -s命令,在主目录中建立软链接www,链到/var/www。但是最终还是无法通过FTP来访问,因为FTP客户端会直接跳转到/var/www,而我们使用了chroot限制了用户只能访问主目录。用硬链接更是不行,因为硬链接是不能链接目录的。其实,只要用mount命令就可以了。但是要加参数-B。-B可以把设备中的部分目录单独挂载到目标目录。

我的FTP主目录是~/ftp_home,所以只需打入以下命令即可:

sudo mount -B /var/www ~/ftp_home/www

因为是挂载,所以和ln链接一样,他们是同步的。而且也不用担心会误删 ~/ftp_home/www,因为没有umount前,是无法删除的。

效果图:

ftp

ubuntu下设置USB硬盘自动休眠

昨天提到了Linux下的USB硬盘自动休眠问题,默认情况下,是不会自动休眠的。今天通过试验,发现要实现USB自动休眠其实很简单。

那就是hdparm,一般Linux发行版都自带的。只要打入以下命令:

sudo hdparm -S 180 /dev/sdb
  • -S的意思是设置进入待机前的等待时间。
  • 180代表具体的等待时间,单位不是秒哦,而是5秒。180就代表15分钟。超过20分钟后的单位是半小时,240代表20分钟,241代表半小时,242代表1小时。
  • /dev/sdb 是我机器上识别到的硬盘名称。

这样就实现了当15分钟没有读写USB硬盘时,自动休眠,停止转动,完全静音。当访问硬盘里的文件时,系统会自动唤醒。

需要注意的是hdparm并不保证支持所有的USB硬盘,我的这块是正好完美支持。如果hdparm无效的话,还可以试试其它的选择,比如 hd-idle , sdparm。

装了一台Atom主机

家里有闲置的两根ddr3内存条和笔记本硬盘,于是决定装一台主机玩。主要用来做家庭数据中心,下载机和低端HTPC,玩玩linux之类的。最后,主板选了华擎AD2550B-ITX,机箱是爱国者I2,满足了我的需求:

  1. 主板用要ITX结构,机箱要小。
  2. 家庭7X24,功耗要小,用笔记本的小电源就能驱动,所以只能是主板上集成的CPU。
  3. 要非常静音,必须是无风扇散热。
  4. 必须是用DDR3笔记本内存的主板。

硬件组装很顺利,一次点亮,非常不错。

Ad2550b-itx     IMGP0001-2

软件方面则比较烦,一共重装了3次ubuntu,一次13.04 64位,一次12.04 32位,一次12.04 64位。这个主板在13.04的桌面上表现的非常卡,显卡被错误识别,连2D加速都没有,这应该是13.04的BUG。而在12.04 下,无论是32位还是64位,表现的都很正常,虽然显卡用的是开源驱动,但是毕竟有了2D加速,界面上的各种效果,还算流畅。需要说明的是,对于这种低端,小众的显示芯片,还是不要去指望3D加速了,期望厂商会公开源代码或者去更新闭源驱动是天真的。。。据我google,这块主板的显卡GMA3600,只出过一次闭源驱动,如果要3D加速,只能安装32位的12.04,并且只能用3.2的非PAE内核。我是不高兴再去折腾了,毕竟在开源驱动下,浏览网页和看视频都很流畅。

剩下的就是装各种服务啦,现在看到这个博客就是建立在Atom主机上的。速度比树莓派、路由器之流快多了,哈哈。

但是还是留下了一个问题:怎样才能让USB移动硬盘自动休眠呢,以前在win下好像是可以的。如果不休眠的话,7X24USB硬盘一直在转,会变得非常热。这个问题貌似不是那么容易解决,以后再慢慢折腾吧。。。