为了方便使用可以将Solaris的sh改为bash,10.04后无

2019-07-16 作者:小鱼儿玄机30码   |   浏览(132)
  1. 更新svn

Google Wiki

Linux的bash可以通过Tab键自动补全命令和文件名,而且可以通过上下键翻出输入的历史命令内容,很是方便。

在Windows XP系统下从硬盘安装Ubuntu 10.04后无法引导进入XP了,启动的时候没有出现选择界面.

svn up, 运行该命令后的状态有:

  •  Get Source Code
  •  Build Source Code & Generate Documentation Tree

但是Solaris默认使用的sh没有上述功能,造成使用的不便。

上网查了一下原因,估计是在安装的时候没有创建grub引导程序,于是在Ubuntu终端执行 下面命令:
sudo update-grub

A Added
D Deleted
U Updated
C Conflict
G Merged

【安装】

  • 安装过程运行于Ubuntu操作系统,以下所列说明指令适用于Ubuntu的安装方式,若使用者要安装到其他作业平台环境,可以参考下列安装项目并以通用该平台的安装指令来取代之,接下来会说明编译过程中的相关档案存放位置,以及如何组态并编译原始程式码,最后再说明安装方式及如何执行迴归测试。
  • Hypertable原始程式码的存放路径放置于:

    ~/src/hypertable
    
  • 编译过程中所产生的连结物件档存放于:

    ~/build/hypertable
    
  • 编译完成的输出执行档存放路径:

    ~/hypertable
    

为了方便使用可以将Solaris的sh改为bash。

回车后,出现下面提示:

如果出现C的话,一定要自己解决冲突,否则的话提交不了;

【下载原始程式码】

  • 要取得Hypertable原始码需要先安装 git这套由google所提出的版本控制软体,安装指令如下:

    $ sudo apt-get install git-core
    
  • 然后执行以下指令设定git所通行的使用者资讯,这一份使用者资讯原则上是由git这套版本控制软体储存,以及留作记录程式码被哪些使用者下载的一份参考来源,其设定使用者资讯方式如下:

    $ git config --global user.name "<your name>"
    $ git config --global user.email "<your email>"
    
  • 使用git下载Hypertable原始码之指令:

    $ git clone git://scm.hypertable.org/pub/repos/hypertable.git
    
  • 更新已下载之Hypertable原始码方式:

    $ cd ~/hypertable
    $ git pull
    

方法如下:

===============================================
www.linuxidc.com@www.linuxidc.com-desktop:~$ sudo update-grub
[sudo] password for ricky:
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-24-generic
Found initrd image: /boot/initrd.img-2.6.32-24-generic
Found memtest86 image: /boot/memtest86 .bin
Found Microsoft Windows XP Professional on /dev/sda1

手动解决掉冲突后,需要运行svn resolved命令,将冲突的

【如何设定编译组态】

  • 在编译Hypertable之前,需要先把编译环境准备好,有一些编译软体要先安装就序,以下条列出在Ubuntu环境下,各项编译软体的安装指令:

    • 此套件在安装C语言标准程式库所需要的编译环境,如果没有安装build-essential套件时可能会出现编译阶段找不到stdio.h这个引入档案的位置,因此建议要先确认这项套件是否有安装。

      $ sudo apt-get install build-essential
      
    • 在Hypertable会使用到一些资料压缩与解压缩功能,因此需要安装 z library。

      $ sudo apt-get install zlib1g-dev
      
    • 安装可跨平台的makefiles产生工具CMake,因此可以选择编译器及编译环境来产生Hypertable的执行档;根据官网公佈资讯,目前测试过可执行的平台仍以Linux/Unix为主,Windows平台仍在测试当中。

      $ sudo apt-get install cmake
      
    • 安装Boost 程式库1.34.1以上版本,这套程式库为强化C Standard Library而设计,内含功能像是记忆体的Buffer处理,数学,Hash,MPI,图形等等函式库。

      $ sudo apt-get install libboost.*-dev libboost-doc libboost.*1.34.1
      
    • 安装log4cpp套件,此套件参考log4j而设计,故名思议是针对c 而设计的记录日志档机制,在Hypertable里的记录档案便是由此套记录机制在处理Log功能。

      $ sudo apt-get install liblog4cpp*
      
    • 安装expat套件,这个套件是一个XML处理程式库,在Hypertable举凡对于XML的存取都是引用这个套件来处理。

      $ sudo apt-get install expat libexpat1 libexpat1-dev
      
    • 安装libattr套件,它是处理档案的延伸属性的程式库。

      $ sudo apt-get install libattr1 libattr1-dev
      
    • 安装readline套件,这份套件内含读取terminal上的command line程式库,在Hypertable里面像是登入hql shell模式,或其他会需要读取command line的情况会使用到这一类的功能。

      $ sudo apt-get install libreadline5-dev
      
    • 安装ncurses,透过它可以撰写terminal底下的文字模式介面程式,在Hypertable里面像是登入hql shell模式,或需要模拟文字模式下的使用者介面,会使用到这一类的功能。

      $ sudo apt-get install libncurses5 libncurses5-dev
      
    • 安装tcmalloc(Thread-Caching Malloc)套件,它是一个记忆体配置套件,可处理多执行绪情况下的记忆体回收之程式库。

      $ sudo apt-get install libgoogle-perftools0 libgoogle-perftools-dev
      
    • 开始编译程式前还需要建立安装目录,以及编译后的物件档案存放目录

      $ mkdir ~/src/hypertable
      $ mkdir -p ~/build/hypertable
      
    • 执行CMake来产生编译组态文件(makefiles),并指定编译后的执行档模式为侦错模式(Debug)或发行模式(Release),以及安装路径,如果组态过程中出现找不到预设路径下的Boost程式库时,可以再指定其路径,指令范例如下列所示,其中 -D代表定义某个变数的前置符号。

      $ cmake -DCMAKE_INSTALL_PREFIX="~/hypertable" -DCMAKE_BUILD_TYPE="Debug" -DBoost_INCLUDE_DIR="/usr/include/boost" ~/src/hypertable
      
    • 在产生编译程式读取的组态档过程中,显示结果加註说明如下:

      组态过程...
      -- Looking for required boost libraries...
      寻找boost程式库当中...
      
      -- Boost include dir: /usr/include/boost
      找到boost的header档案路径
      
      -- Boost thread lib: /usr/lib/libboost_thread-mt.so
      找到boost的多执行绪处理之动态程式库
      
      -- Boost program options lib: /usr/lib/libboost_program_options-mt.so
      找到boost的程式参数处理之动态程式库
      
      -- Boost lib dir: /usr/lib
      找到boost的动态程式库存放路径
      
      -- Boost version: 1_34_1
      显示boost的版本资讯
      
      -- Looking for doxygen...
      寻找doxygen程式库当中...
      
      -- Looking for doxygen... - found /usr/bin/doxygen
      找到doxygen的执行程式路径
      
      -- Looking for dot tool...
      寻找graphviz绘图使用的dot套件
      
      -- Looking for dot tool... - found /usr/bin/dot
      找到dot的执行程式路径
      
      -- Found Tcmalloc: /usr/lib/libtcmalloc_minimal.so
      找到tcmalloc的动态连结程式库路径
      
      -- Got boost 1.34.x, prepend fix directory
      -- Configuring done
      -- Generating done
      -- Build files have been written to: ~/build/hypertable
      组态完成后把编译需要的设定档放到指定路径~/build/hypertable
      

以root用户修改/etc/passwd文件,

done

exit 退出终端

重启后如期出现系统选择界面, 问题解决 !

图片 1

版本文件删除掉。

【如何编译与安装】

  • 开始编译之前,要先切换到编译组态档的存放路径,根据上述组态预设路径为~/build/hypertable,然后再执行编译指令:

    $ cd ~/build/hypertable
    $ make
    
  • 编译之后的结果显示如下:

    [  6%] Built target HyperComm
    [ 10%] Built target HyperCommon
    [ 11%] Built target commTest
    [ 12%] Built target commTestDatagram
    [ 12%] Built target commTestReverseRequest
    [ 13%] Built target commTestTimeout
    [ 13%] Built target commTestTimer
    [ 13%] Built target sampleClient
    [ 14%] Built target testServer
    [ 14%] Built target htConvert
    [ 17%] Built target Hyperspace
    [ 33%] Built target Hypertable
    [ 42%] Built target HyperDfsBroker
    [ 50%] Built target Hyperspace.Master
    [ 56%] Built target Hypertable.Master
    [ 57%] Built target htgc
    [ 73%] Built target Hypertable.RangeServer
    [ 76%] Built target count_stored
    [ 79%] Built target csdump
    [ 79%] Built target bmz-test
    [ 79%] Built target bmzip
    [ 80%] Built target compressor_test
    [ 80%] Built target generate_test_data
    [ 80%] Built target loadDataSourceTest
    [ 81%] Built target locationCacheTest
    [ 81%] Built target schemaTest
    [ 85%] Built target dfsTest
    [ 88%] Built target dfsclient
    [ 94%] Built target hyperspace
    [ 94%] Built target hyperspaceTest
    [ 95%] Built target hypertable
    [ 95%] Built target hypertable_test
    [ 96%] Built target dumplog
    [ 96%] Built target merge_diff
    [ 97%] Built target rsTest
    [ 98%] Built target rsclient
    [ 99%] Built target rsdump
    [ 99%] Built target serverup
    [100%] Built target localBroker
    
  • 安装指令如下:

    $ make install DESTDIR="~/hypertable"
    
  • 由于安装过程较为繁杂,所以省略了其中一些步骤之后说明如下:

    编译过程省略..
    [  6%] Built target HyperComm
    ...
    ...
    [100%] Built target localBroker
    
    连结程式过程..
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hyperspace.Master
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hypertable.Master
    Linking CXX executable CMakeFiles/CMakeRelink.dir/htgc
    Linking CXX executable CMakeFiles/CMakeRelink.dir/Hypertable.RangeServer
    Linking CXX executable CMakeFiles/CMakeRelink.dir/count_stored
    Linking CXX executable CMakeFiles/CMakeRelink.dir/csdump
    Linking CXX executable CMakeFiles/CMakeRelink.dir/generate_test_data
    Linking CXX executable CMakeFiles/CMakeRelink.dir/dfsclient
    Linking CXX executable CMakeFiles/CMakeRelink.dir/hyperspace
    Linking CXX executable CMakeFiles/CMakeRelink.dir/hypertable
    Linking CXX executable CMakeFiles/CMakeRelink.dir/dumplog
    Linking CXX executable CMakeFiles/CMakeRelink.dir/merge_diff
    Linking CXX executable CMakeFiles/CMakeRelink.dir/rsclient
    Linking CXX executable CMakeFiles/CMakeRelink.dir/rsdump
    Linking CXX executable CMakeFiles/CMakeRelink.dir/serverup
    Linking CXX executable CmakeFiles/CMakeRelink.dir/localBroker
    
    安装程式过程,部份内容省略未列出,仅列出整理排列后之内容..
    Install the project...
    -- Install configuration: "Debug"
    
    安装设定档..
    -- Installing ~/hypertable/0.9.0.5/conf/hypertable.cfg
    -- Installing ~/hypertable/0.9.0.5/conf/METADATA.xml
    
    安装引用档案及应用范例程式及测试资料库内容(省略)..
    
    安装Java及C/C  程式库..
    -- Installing ~/hypertable/0.9.0.5/java/lib/commons-logging-1.0.4.jar
    -- Installing ~/hypertable/0.9.0.5/java/lib/Hadoop-0.14.4-core.jar
    -- Installing ~/hypertable/0.9.0.5/java/lib/junit-4.3.1.jar
    -- Installing ~/hypertable/0.9.0.5/java/lib/log4j-1.2.13.jar
    -- Installing ~/hypertable/0.9.0.5/java/lib/hypertable-0.9.0.jar
    -- Installing ~/hypertable/0.9.0.5/lib/libHyperComm.a
    -- Installing ~/hypertable/0.9.0.5/lib/libHyperCommon.a
    -- Installing ~/hypertable/0.9.0.5/lib/libHyperspace.a
    -- Installing ~/hypertable/0.9.0.5/lib/libHypertable.a
    -- Installing ~/hypertable/0.9.0.5/lib/libHyperDfsBroker.a
    
    安装可执行程式..
    -- Installing ~/hypertable/0.9.0.5/bin/jrun
    -- Installing ~/hypertable/0.9.0.5/bin/start-all-servers.sh
    -- Installing ~/hypertable/0.9.0.5/bin/start-master.sh
    -- Installing ~/hypertable/0.9.0.5/bin/start-range-server.sh
    -- Installing ~/hypertable/0.9.0.5/bin/kill-servers.sh
    -- Installing ~/hypertable/0.9.0.5/bin/slaves.sh
    -- Installing ~/hypertable/0.9.0.5/bin/Hyperspace.Master
    -- Installing ~/hypertable/0.9.0.5/bin/Hypertable.Master
    -- Installing ~/hypertable/0.9.0.5/bin/htgc
    -- Installing ~/hypertable/0.9.0.5/bin/Hypertable.RangeServer
    -- Installing ~/hypertable/0.9.0.5/bin/csdump
    -- Installing ~/hypertable/0.9.0.5/bin/count_stored
    -- Installing ~/hypertable/0.9.0.5/bin/generate_test_data
    -- Installing ~/hypertable/0.9.0.5/bin/dfsclient
    -- Installing ~/hypertable/0.9.0.5/bin/hyperspace
    -- Installing ~/hypertable/0.9.0.5/bin/hypertable
    -- Installing ~/hypertable/0.9.0.5/bin/dumplog
    -- Installing ~/hypertable/0.9.0.5/bin/merge_diff
    -- Installing ~/hypertable/0.9.0.5/bin/rsclient
    -- Installing ~/hypertable/0.9.0.5/bin/rsdump
    -- Installing ~/hypertable/0.9.0.5/bin/serverup
    -- Installing ~/hypertable/0.9.0.5/bin/localBroker
    

将root:x:0:0:Super-User:/:/sbin/sh改为

本文由小鱼儿玄机30码发布于小鱼儿玄机30码,转载请注明出处:为了方便使用可以将Solaris的sh改为bash,10.04后无

关键词: 小鱼儿玄机30码