Tag Archive for ‘Linux’

使用apache2-mpm-itk为apache的虚拟主机指定单独的用户运行

在用Python和django写一个类似github的程序,当然功能是非常少的,目前只想做到可以创建git仓库,自行管理ssh公钥还有些基本的权限控制。

在ssh公钥管理这里,其实就是管理Linux用户目录下的.ssh/authorized_keys文件,当用户提交公钥时,向这个文件里写入公钥内容。

authorized_keys的权限设置非常严格,只有当除了用户自己可以有写权限外,组权限和其他权限都不能有写入的权限才行,否则这个文件就无效,即使把公钥写入这个文件,通过ssh登录到该用户时还是需要输入密码,这是ssh出于安全的考虑,防止由于用户自己对权限设置不当而造成安全问题。

但是现在我要通过web界面管理这个文件,那么读写这个文件的用户就是运行web服务器的用户,一般来说运行apache的用户是www-data,那么就无法写入了,我本身对apache也只会一些最基本的配置,然后就搜阿搜。。。

搜到一个suexec,然后装啊,设置阿,测试阿,弄了半天不是太明白,也没成功,运行虚拟主机的用户仍旧是www-data。

然后继续搜阿搜,找到个文章: Running apache2 virtualhost with different users

然后按照里面说的装了 apache2-mpm-itk

$ sudo apt-get install apache2-mpm-itk

在apache的VirtualHost里加入

<IfModule mpm_itk_module>
   AssignUserId git git
</IfModule>

AssignUserId 后面2个参数一个是运行该虚拟主机的用户,另一个就是组。
我把所有git仓库都放在一个叫git的linux用户目录下作为git服务器,所以AssignUserId就是 git git。

最后把django项目下的所有文件的用户和组都设置为git,重启apache,测试后果然就可以了。

使用这个mpm_itk非常方便,之前搜到的suexec我虽然没弄成功过,但是了解下来似乎python程序要通过fastcgi方式运行才行。

我现在django的运行方式是,apache+mod_wsgi,用mpm_itk后同样可以达到效果了。

在Linux下使用Flash Builder

Adobe官方就是不肯弄个可以在Linux下使用的FB,不过有个牛人自己移植了一下,果然能用了。
具体的可以看 http://code.google.com/p/fb4linux/

如果是 Eclipse 3.3,安装方法可以看这篇
但是Eclipse 3.4开始就找不到 Add->Extension Location 了,不过方法更简单,就是下载他提供的文件解压后,放到 Eclipse目录里的 dropins 目录中就行,也可以直接做个连接放进去,重启eclipse就可以看到能用FB了。

不过那个压缩包里是没有Flex sdk的,自己去下载后配置下就能用了。

用过腾讯官方的Linux QQ了

实在太简陋了-___-!! ,还是继续用eva,等官方的完善些再用吧…

试用了Adobe AIR for Linux

听说Adobe AIR 发布了Linux版本,虽然还是预览版,但还是等不急下载了一个试用下。

在安装之前已经知道目前的版本还没有象Windows和mac上的完整功能,有些特性在Linux下还没有得到支持,装好Run Time后,装了一个Twhirl试用了一下,感觉基本运行没什么问题,但简单使用一下后,就能发现一些还没有支持的特性。

一个是不规则窗口,看下图,周边没有透明,而是黑色

另外输入文字的时候,似乎还不能切换输入法,还有发现没有支持系统托盘图标,点了twhirl的最小化按钮后,就不见了,没有在托盘里显示出图标,只能关进程了。

暂时就发现这些,其他程序还没尝试,虽然Linux下的AIR看上去还很不完整,但是我对他很满意,毕竟还是Alpha版本,相信正式发布后会有完整的支持。

这次Adobe还加入了Linux基金会,看来Linux是越来越受重视了,哈哈,期待。

搞定portable Ubuntu 了

用Vmware 虚拟机安装的方法分区过程中出了个问题,也不高兴折腾了,直接把台式机的硬盘全拔了,插上移动硬盘后用livecd安装,一切顺利,安装好后拔下移动硬盘,一个移动版的ubuntu就搞定了哈哈,插在笔记本上启动也非常顺利,这样随时随地都可以用了,hoho。