标签归档:ubuntu

ubuntu下nfs简单配置

服务器端安装nfs服务程序:

sudo apt-get install nfs-kernel-server
sudo apt-get install portmap nfs-common

配置nfs服务程序:

sudo vi /etc/exports

添加如下的一行:
/home/istrone/nfsroot *(rw,sync,no_root_squash) 该文件详细配置请参考相关文档
重启nfs程序:

sudo /etc/init.d/nfs-kernel-server restart
sudo /etc/init.d/portmap restart

本机测试:
showmount -e

客户机上挂载:
需要nfs-common

sudo apt-get install portmap nfs-common

然后挂载到/mnt下的istrone目录吧

 cd /mnt/
 sudo mkdir istrone
 sudo mount serverIP:/home/istrone/nfsroot /mnt/istrone

成功挂载,将在客户机的/mnt/istrone上看到服务器上nfsroot中的文件。
相应的权限信息可以在服务器上的/etc/exports中配置。
为使用方便,在客户机的home目录中建立一个软链接:

 cd ~
 ln -s istrone /mnt/istrone

这样在HOME目录的istrone中就可以直接看到服务器上的某个文件目录了。

ubuntu下安装mongodb和PHPmongodb

使用下列命令安装mongodb,
sudo apt-get install mongodb*
测试mongo是否安装成功
运行mongo
出现:
MongoDB shell version: 1.8.3
connecting to: test
输入db.foo.save({1:”hello world”})
然后查找:
db.foo.find();
将看到
{ “_id” : ObjectId(“4e4b395986738efa2d0718b9”), “1” : “hello world” }类似的结果
表示安装成功!

PHP操作mongodb
sudo pecl install mongo
再在某一个ini文件中加入该扩展,
extension=mongo.so
也许需要将生成的mongo.so复制到:/usr/lib/php5/20090626+lfs下。
PHP官方文档上的脚本

<?php

// connect
$m = new Mongo();

// select a database
$db = $m->comedy;

// select a collection (analogous to a relational database's table)
$collection = $db->cartoons;

// add a record
$obj = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
$collection->insert($obj);

// add another record, with a different "shape"
$obj = array( "title" => "XKCD", "online" => true );
$collection->insert($obj);

// find everything in the collection
$cursor = $collection->find();

// iterate through the results
foreach ($cursor as $obj) {
    echo $obj["title"] . "<p>";
}

?>

将会产生如下的输出:
Calvin and Hobbes
XKCD

另外还有一些学习mongodb的地方,
PHP官方文档上的介绍
the little mongodb book.pdf

ubuntu gtk 配置与hello world

配置相当简单,只需要在前边配置c和c++的基础上,安装一个gnome-core-devel就可以了,里面集成了很多其他的包。除此之外还要转一些其他的东西,如libglib2.0-doc、libgtk2.0-doc帮助文档,devhelp帮助文档查看,glade-gnome、glade-common、glade-doc图形界面设计等。

直接运行:

sudo apt-get install gnome-core-devel
sudo apt-get install libglib2.0-doc libgtk2.0-doc
sudo apt-get install devhelp
sudo apt-get install glade-gnome glade-common glade-doc

然后写下gtkhello.c

#include<gtk/gtk.h>
void hello(GtkWidget *widget,gpointer data)
{
g_print("Hello Ubuntu!\n");
}
gint delete_event(GtkWidget *widget,GdkEvent *event,gpointer data)
{
g_print ("delete event occurred\n");
return(TRUE);
}
void destroy(GtkWidget *widget,gpointer data)
{
gtk_main_quit();
}
int main( int argc, char *argv[] )
{
GtkWidget *window;
GtkWidget *button;
gtk_init (&argc, &argv);
window=gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_signal_connect (GTK_OBJECT(window),"delete_event",GTK_SIGNAL_FUNC(delete_event),NULL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",GTK_SIGNAL_FUNC (destroy), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
button = gtk_button_new_with_label ("Hello Ubuntu!");
gtk_signal_connect (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (hello), NULL);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",GTK_SIGNAL_FUNC (gtk_widget_destroy),GTK_OBJECT (window));
gtk_container_add (GTK_CONTAINER (window), button);
gtk_widget_show (button);
gtk_widget_show (window);   /*显示一个窗口*/
gtk_main();   /*进入主循环*/
return(0);
}

用gcc编译,
gcc gtkhello.c -o gtktest `pkg-config –cflags –libs gtk+-2.0`
然后运行./gtktest,看到窗口了吧?