• 网站改版了:im-ea.com

  • 安装好系统后,选择安装了几乎所有能够安装得上的程序和组件。
    结果运行./gmsv,提示缺少libmysqlclient_r.so.10库文件。
    运行:ldd gmsv
    看了一下,总共缺少三个库文件,分别是:libmysqlclient_r.so.10libcrypto.so.4libssl.so.4
    然后查了一下,发现系统的安装过程可选软件包里面没有mysqlclient
    于是去下载了一个mysql-client-5.0的rpm包
    运行:rpm -ivh mysql-client-5.0.rpm
    安装完毕后,在/usr/lib/mysql目录下多了几个mysqlvclient的库文件,不过还是没有libmysqlclient_r.so.10
    猜测原因就是gmsv运行需要的是旧的库文件,而我安装的是比较新的系统,那些库文件的版本都是新的。
    因为Linux的库有很多版本,基本都是向下兼容的,所以,我们其实直接就可以使用新的库文件也没关系
    用命令ln建立库文件的软链接
    ln -s /usr/lib/mysql/libmysqlclient_r.so.15.0.0 /usr/lib/libmysqlclient_r.so.10ln -s /lib/libcrypto.so.0.9.8b /usr/lib/libcrypto.so.4ln -s /lib/libssl.so.0.9.8b /usr/lib/libssl.so.4
    分别将这三个新版本的库文件链接成所需要的名字。

  • 1.定制内核
     建立并安装一个定制的内核
     例子假定您使用 i386 架构的计算机。 如果您的情况不是这样,只需对目录名作相应的调整即可。
    光盘安装
    # mount /cdrom
    # mkdir -p /usr/src/sys
    # ln -s /usr/src/sys /sys
    # cat /cdrom/src/ssys.[a-d]* | tar -xzvf -
    接下来, 进入 arch/conf 目录下面, 复制 GENERIC 配置文件,并给这个文件起一个容易辨认的名称, 它就是您的内核名称。例如:
    # cd /usr/src/sys/i386/conf
    # cp GENERIC FREEBSD5.3

     

    通常,这个名称是大写的,如果您正维护着多台不同硬件的FreeBSD机器,以您机器的域名来命名是非常好的主意。我们把它命名为FREEBSD5.3
    就是这个原因。提示: 将您的内核配置文件直接保存在 /usr/src 可能不是一个好主意。 如果您遇到问题, 删掉 /usr/src 并重新开始很
    可能是一个诱人的选择。 一旦开始做这件事,您可能几秒钟之后才会意识到您同时会删除定制的内核配置文件。 另外, 也不要直接编辑 GENERIC, 因为
    下次您 更新代码 时它会被覆盖, 而您的修改也就随之丢失了。
    您也可以考虑把内核配置文件放到别的地方, 然后再到 i386 目录中创建一个指向它的符号链接。
    例如:
    # cd /usr/src/sys/i386/conf
    # mkdir /root/kernels
    # cp GENERIC /root/kernels/FREEBSD5.3   
    # ln -s /root/kernels/FREEBSD5.3
    注意: 必须以 root 身份执行这些和接下来命令,否则就会得到 permission denied 的错误提示。

    如果您只安装内核源代码,使用方法1。
    如果您正运行 FreeBSD 4.0 以前的版本, 而且您不是准备使用 make buildworld 来升级到 FreeBSD 4.0 或更高版本的话, 则应使用方法1。
    如果您在没有升级源代码的情况下编译一个新内核(也许您只想为内核添加一个新的选项, 如IPFIREWALL),可以使用任何一种方法。
    如果您打算把重新构建内核作为 make buildworld 过程的一部分来进行, 则应使用方法 2。
    如果从上次成功地完成 buildworld-installworld 以来您还 没有 升级过代码 (也就是没有运行 CVSup、 CTM, 或使用 anoncvs), 则可以
    放心使用 config、 make depend、 make、 make install。

    方法1. 用“传统”方法建立一个内核
    运行config(8)来产生内核源代码。
    # /usr/sbin/config FREEBSD5.3
    进入编译内核的目录。 config(8) 将在像上面一样显示执行它所在的目录的名字。
    # cd ../compile/FREEBSD5.3
    对于 FreeBSD 5.0 以及更早的版本, 使用下面的形式:
    # cd ../../compile/FREEBSD5.3
    编译内核。
    # make depend
    # make
    安装新内核。
    # make install

    方法2. 用“新的”方法建立一个内核
    切换到/usr/src 目录。
    # cd /usr/src
    编译内核。
    # make buildkernel KERNCONF=FREEBSD5.3
    安装新内核。
    # make installkernel KERNCONF=FREEBSD5.3
    注意: 在FreeBSD 4.2老版本里面您必须用KERNEL= 来替换KERNCONF=。
    2001年2月2日以后生成的4.2-STABLE 就可以认出KERNCONF=。
    新内核将会被复制到 /boot/kernel 目录中成为 /boot/kernel/kernel 而旧的则被移到 /boot/kernel.old/kernel。 现在关闭系统, 
    然后用新的内核启动计算机。如果出现问题, 后面的一些 故障排除方法 将帮您摆脱困境。 如果您的内核 无法启动, 请参考那一节。
    注意: 在 FreeBSD 4.X 以及更早的版本中, 内核被安装到 /kernel 而模块则放到 /modules,旧的内核则被备份到 /kernel.old。 其他
    与启动过程相关的文件, 如 loader(8) 以及配置则放在 /boot。 第三方或定制的模块也可以放在 /modules, 不过应该注意保持模块和
    内核的同步时很重要的,否则会导致不稳定和错误。
    注意: 如果添加了新设备 (例如声卡) 并在运行 FreeBSD 4.X 或更早的版本,则可能好需要在 /dev 目录中添加它们的设备节点之后才能使
    用。欲了解详情,请参考本章稍后的 制作设备节点 一节。


    2.Linux二进制兼容模式
      
      1. 让FREEBSD支持linux二进制程序,在我安装的FREEBSD5.3中安装后默认是自动加载该模块的
      如果您安装的系统默认没有加载该模块,请首先可以用以下命令查看是否加载到该模块
      #kldstat
       Id Refs Address    Size     Name
       1    7 0xc0400000 5cdab0   kernel
       2   14 0xc09ce000 537f0    acpi.ko
       3    1 0xc13e1000 17000    linux.ko
       如果您的系统默认没有加载,可以修改
       #vi /etc/rc.conf 
       添加 linux_enable='Yes'  系统启动后自动加载。
      如果您不想或者无法将Linux KLD加载,您就需要在内核中静态链接进Linux二进制兼容模式。您必须在您的内核
      配置文件里面加入options COMPAT_LINUX,然后重新编译内核。
     
     2.安装Linux运行时库
           a.通过使用 linux_base Port 来安装
              这是最容易的安装方法,只需要像安装其他port一样从 Ports Collection来安装:
       # cd /usr/ports/emulators/linux_base
       # make install distclean
           b.手动安装
       如果您没有安装 Ports Collection,您也可以通过手动来安装Linux运行时库。您将需要这些程序依赖的Linux共享库,而且您
              需要创建一个“shadow root” 目录/compat/linux,我安装的是FREEBSD5.3版本的,默认加载了linux.ko库,目录默认存在,
         任何要被Linux程序打开的共享库都首先在这个目录里面查找。所以,如果
              一个Linux程序加载了,例如,/lib/libc.so,FreeBSD 会首先尝试打开 /compat/linux/lib/libc.so,如果不存在,它将尝试
              打开/lib/libc.so。 共享库应该安装在/compat/linux/lib而不是Linux ld.so报告的其他路径。
       通常,您需要寻找Linux程序依赖的共享库。 此后, 你的系统上就会有一组 Linux 共享库,这组共享库足以用来运行新安装的 
       Linux 二进制程序。
             这些条件满足后就可以安装linux下的二进制软件包了。下载linux二进制包squid-2.5.STABLE9-20050225.tar.gz
         #tar -zxvf squid-2.5.STABLE9-20050225.tar.gz
             #cd squid-2.5.STABLE9-20050225  查看INSTALL文件,执行安装
      #./configure --prefix=/usr/local/squid  成功后
      #make all 编译没有产生错误后
             #make install
             OK安装成功,进行必要的配置后启动squid代理。
      #/usr/local/squid/sbin/squid
        如果在安装的过程中提示需要一些模块可以能过一台装有安装linux的机器,执行
      #cd /usr/local/apache/bin/
        #ldd httpd(linux二进制包,编译安装的)
     libcrypt.so.1 => /lib/libcrypt.so.1 (0x4001e000)
            libresolv.so.2 => /lib/libresolv.so.2 (0x4004b000)
            libm.so.6 => /lib/tls/libm.so.6 (0x4005d000)
            libdl.so.2 => /lib/libdl.so.2 (0x4007f000)
            libnsl.so.1 => /lib/libnsl.so.1 (0x40082000)
            libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40097000)
            libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
            /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
           能后把在FREEBSD中缺少的模块直接copy到FREEBSD下的/compat/linux/lib相应目录下既可重新安装了。

       安装Linux ELF程序
     ELF格式的程序需要一步额外的步骤“标记”。如果您尝试运行没有标记的ELF程序,您会得到像下面这样的错误信息:
     % ./my-linux-elf-binary
     ELF binary type not known Abort
     为了帮助FreeBSD内核分辨FreeBSD ELF程序和Linux程序,要使用brandelf(1)工具:
     % brandelf -t Linux my-linux-elf-binary
     GNU工具现在会自动把适当的标记信息放到ELF程序中,您以后遇到这个问题的机会越来越少。

    3.配置主机名解析器
    如果DNS不能正常工作或是您得到下列信息:
    resolv+: "bind" is an invalid keyword resolv+:
    "hosts" is an invalid keyword
    您就需要配置/compat/linux/etc/host.conf文件,此文件包含:
    order hosts, bind
    multi on
    order这一行指出/etc/hosts先被搜索再接着搜索DNS。 如果/compat/linux/etc/host.conf没有被安装,Linux程序会读取
    FreeBSD的 /etc/host.conf然后提示不兼容的FreeBSD语法。 如果您没有使用/etc/resolv.conf 文件设置DNS,应该删除bind。
    待续

  • 2010-02-04

    csh(tcsh)编程 - [Linux]

     TCSH shell不同于其他的shell,因为控制结构更符合程序设计语言的格式.例如
    TCSH 的test条件的控制结构是表达式,而不是linux命令,得到的值是逻辑值true
    或false,TCSH的表达式与C语言中的表达式基本相同.(但是, shell中, true为1, false
    为0, C语言中, false 为0, 非0为真, tcsh中 $? 查看是否被定义, 如 $?prompt)。

    一,TCSH shell变量,脚本,参数
    用户可以在shell中定义变量,为变量赋值以及引用脚本参数.TCSH使用set,@,setenv定
    义一变量,也可以用相同的方法定义数值变量和数组,用户通过@命令定义的数值变量来
    进行算术运算,用户使用圆括号()和方括号[]定义和引用数组.脚本也可以用相同的方
    法操作,但是有个例外,尽管可以用echo命令输出提示符,但没有read命令处理输入,相
    反,必须重定向到一个变量里.

    二,脚本输入和脚本输出: $ <
    用户能够在脚本范围中定义和使用变量.在下例中,使用文本编辑器把赋值操作和echo
    之类的linux命令放在一个文件中.然后, 可以产生可执行文件并像其他命令一样在命
    令行中执行它,要记住添加可执行权限,必须使用带u+x参数的chmod命令或者带绝对参
    数700的chmod命令.在脚本中,可以使用echo命令去输出数据,但是,必须通过重定向标
    准输入把输入读入变量.在TCSH中没有linux read命令的比较版本.记住TCSH全部的脚
    本文件的第一行的第一个字符必须是"#"字符.
    如:
    #
    #display "hello"
    set string="hello"
    echo The value of string is $string

    set命令和重定向符号结合$<将用户输入的任何数据读入标准的输入中.下例中,把用户
    输入读入string变量中.
    set string=$<
    echo $string

    abc
    abc

    能够把提示符放置到相同的行用作echo的输入.TCSH使用一个特殊的选项-n,将消除输
    出字符串中的回车符.光标将保留在输出字符串的结尾处.
    %echo -n please enter a string

    %cat hello
    #
    echo -n "please enter a string:"
    set string=$<
    echo "the value of string is $string"
    %chmod u+x hello
    %hello
    please enter a string:hello
    the value of string is hello
    %

    三,操作符
    TCSH有一系列标准的赋值,算术和关系运算以及重定向和后台操作等函数
    赋值运算符 功能说明
    = 赋值操作
    += 先加再赋值
    -= 先减再赋值
    *= 先乘再赋值
    /= 先除再赋值
    %= 取余再赋值
    ++ 自增量1
    -- 自减量1
    算术运算符 说明
    - 负号
    + 加法
    - 减法
    * 乘法
    / 除法
    % 取余
    关系运算符 说明
    > 大于
    < 小于
    >= 大于等于
    <= 小于等于
    != 不等于
    == 等于
    重定向和管道符
    TCSH支持标准输入和标准输出的重定向和管道操作.如果设置了noclobber特征,要用
    重定向操作重写当前文件,需要用符号>!代替>

    四,控制结构
    同其他shell一样,TCSH也有一系列的控制结构控制脚本的命令的执行.while和if控
    制结构是最常用的控制结构.switch和foreach是更专用的控制结构.switch是if条件
    的限定形式,检查数值是否等于一系列可能的数值中的一个数值.foreach是循环结构
    的限定形式.浏览数值列表,给变量赋新的数值.
    TCSH不同的控制结构列表:

    条件控制结构; 功能
    if (expression) then
       commands
    endif

    if (expression) then
       command1
    else
       command2
    endif

    switch (string)
            case pattern:
                  commands
                  breaksw
            default:
                   commands
    endsw

    循环控制结构: 功能
    while (expression) 
           commands 
    end

    foreach variable (argument-list)
            commands
    end 

    TCSH中的控制结构有别于其他的shell,因为它更接近编程语言(C).TCSH的条件表达
    式的值为true/false.BASH和TCSH主要区别在于TCSH的结构不可重定向或进行管道
    输出.

    五,测试表达式;()
    if和while控制结构把表达式用作测试.表达式测试的结果为非零(1)表示真,而零
    (0)表示假(跟BASH相反).测试表达式可由算术/字符串比较,但是字符串只能作相
    等和不相等的比较.而且表达式必须要在()括号内.
    如:
    if (expression) then
    command
    endif
    TCSH有一系列的运算符来分别对字符串进行测试比较.正则表达式可以包含shell脚本的
    指令的字符串.如:
    if ( $var =~[Hh]* ) then #如果变量$var以字母是大写/小写Hh开头,的字符串
    echo information #执行命令
    endif #结束
    有很多测试文件的操作与BASH完全相同.如:
    if ( -r myfile ) then #测试myfile是否可读
    echo info
    endif

    测试表达式的基本操作:
    字符串比较: 功能
    == 是否相等,若相等返回真
    != 是否不等,若不等返回真
    =~ 字符串和模式进行测试是否相等(模式为任意正则表达式)
    !~ 字符串和模式测试是否不等(模式为任意正则表达式)
    文件测试: 功能
    -e 测试文件是否存在
    -r 测试文件是否可读
    -w 测试文件是否可写
    -x 测试文件是否可执行
    -d 测试文件名是否为目录
    -f 测试文件是否为普通文件
    -o 测试文件是否被用户所拥有
    -z 测试文件是否为空
    逻辑运算符: 功能
    && 与运算,两个条件同时满足
    || 或运算,有一个条件满足
    ! 取反

    六,TCSH内建命令
    1,数字变量:@
    在TCSH中,用@命令代替set命令来声明数字变量,然后进行算术,关系和位操作,数字和
    字符串变量是两个不同的对象,需要用不同的方法管理,不能把set用于数值变量的设置
    @命令由关键词,变量名,赋值运算符和表达式构成.如:
    %@ num=10 #注意空格
    %@ sum=2 * ($num + 3)
    %echo $sum
    %26

    2,alias
    格式:alias [name[command]]
    关键词alias 别名name 引用的命令command
    如:
    alias list ls
    alias list 'ls -l'

    3,argv
    当脚本被执行时,命令行中的单词被分析并放入argv数组中.argv[0],argv[1]...
    argv[n],其中argv[0]保存命令名,argv[1]保存命令的第一个参数,argv[n]命令的
    第n个参数.argv数组元素可缩写元素号码,前面加$.如:$argv[1]写为$1.$argv 


    写为$*.#argv参数标识符包含输入在命令行中的参数号码,可检查$#argv变量.如:
    arglist
    #
    echo "The number of arguments entered is $#argv"
    echo "The list of arguments is : $argv 
    "

    %tcsh arglist a b c
    The number of arguments entered is 3
    The list of arguments is : a b c
    argv变量列表:
    命令行参数 说明
    $argv[0]或$0 命令名
    $argv[n]或$n 从1($1-$)开始的第n个命令行参数
    $argv 
    或$* 从1开始的所有命令行参数
    $#argv或$# 命令行参数的计数

    4,bg
    格式:bg [%job]
    bg命令把指定的任务放入后台.如果此任务已经停止,则继续执行,如果没有参数,将
    当前任务放入后台.(详细用法与BASH相同此处略)

    5,break
    格式:break
    break命令用于退出最接近的foreach/while循环过程.执行同一行中其他的命令.

    6,breaksw
    格式:breaksw
    可以从switch语句处中断,在endsw后继续执行.

    7,builtins
    列出全部shell的内建命令表.

    8,cd
    格式:cd [-p][-l][-nl -v][name]
    如果给出目录名,此命令把name设置为当前目录,如果命令中没有name,当前目录自动
    设置成用户主目录.用于name的"-"引用上一级目录,如果参数name没有给出子目录,
    或不是全路径,或使用./或../引用当前目录及父目录,那么就检查在cdpath shell变量
    中列出的目录来寻找该目录名.如果此操作失败,将检查shell变量中是否保存着的目录
    路径名.
    用-p选项,linux显示目录列表, 用-l,-n,-v选项与用在dirs命令中的选项完全相同.
    默认选项-p.

    9,continue
    此命令继续执行最靠近while/foreach语句.当前行其余的命令被执行.

    10,dirs
    格式:dirs [-l][-n|-v]
    dirs -S|-L [filename]
    dir -c
    如果不带参数,dirs将显示目录列表,列表开头被列在作侧,第一个目录是当前目录.
    带-l选项,用户主目录中的全部子目录被展开,输入项在到达屏幕边缘时,-n选项隐藏

  • 2010-02-04

    freebsd bash设置 - [Linux]

    1. 安裝 bash 

    # cd /usr/ports/shells/bash
    # make install clean 


    2. 將 shell 改成 bash

    # chsh <== 這個指令就是 change shell 的意思
    #Changing user database information for root. 
    Login: root
    Password:
    Uid [#]: 0
    Gid [# or name]: 0
    Change [month day year]:
    Expire [month day year]: Class: Home directory: /root
    Shell: /bin/tcsh <== 把 /bin/tcsh 改成 /usr/local/bin/bash
    Full Name: Charlie &
    Office Location: Office Phone: Home Phone: Other information: 
    3. 存檔離開 
    4. 編輯 bash 設定檔 
    # vi /etc/profile 加入 export LANG=zh_TW.Big5 #設定繁體中文 export LC_ALL=zh_TW.Big5 #設定繁體中文
    alias ls='ls -fGa' # 讓 ls 能顯現出顏色
    alias rm='rm -i' # 刪除確認 alias cp='cp -i' # 拷貝確認
    alias mv='mv -i' # 搬移確認 
    5. 自訂命令提示字元 PS1="[\u@\h \W]\\$ " 說明: \u --> 顯示使用者帳號
    \h --> 顯示系統的 hostname
    \w --> 完整路徑
    \$ --> 以 # 表示 root,以 $ 表示一般使用者

  • 如果你想在linux或者freebsd下面执行计划任务怎么办?答案是可以用/etc/crontab来实现,下面是转载部分linux下面的crontab语句介绍:

    ————————————————————————————————————-

    配置文件 vi /etc/crontab

    第1列分钟1~59
    第2列小时1~23(0表示子夜)
    第3列日1~31
    第4列月1~12
    第5列星期0~6(0表示星期天)
    第6列要运行的命令

    下面是crontab的格式:
    分 时 日 月 星期 要运行的命令

    这里有crontab文件条目的一些例子:

    30 21 * * * /usr/local/apache/bin/apachectl restart
    上面的例子表示每晚的21:30重启apache

    45 4 1,10,22 * * /usr/local/apache/bin/apachectl restart
    上面的例子表示每月1、10、22日的4 : 45重启apache

    10 1 * * 6,0 /usr/local/apache/bin/apachectl restart
    上面的例子表示每周六、周日的1 : 10重启apache

    0,30 18-23 * * * /usr/local/apache/bin/apachectl restart
    上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache

    0 23 * * 6 /usr/local/apache/bin/apachectl restart
    上面的例子表示每星期六的11 : 00 pm重启apache

    * */1 * * * /usr/local/apache/bin/apachectl restart
    每一小时重启apache

    * 23-7/1 * * * /usr/local/apache/bin/apachectl restart
    晚上11点到早上7点之间,每隔一小时重启apache

    0 11 4 * mon-wed /usr/local/apache/bin/apachectl restart
    每月的4号与每周一到周三的11点重启apache

    0 4 1 jan * /usr/local/apache/bin/apachectl restart
    一月一号的4点重启apache

    如果要运行一些复杂命令或多条指令可写成shell来运行
    —————————————————————————————————–

     按照上面的格式进行设置即可,配置完成之后需要重启crontab:/etc/rc.d/crond restart

    上面说的是linux下面的操作方式,freebsd和linux大同小易,语句上稍稍有些变化,就是可以指定哪些用户来执行命令,freebsd下格式如下:

    #minute hour    mday    month   wday    who     command
    保存完成之后重启crontab用的命令是:/etc/rc.d/cron restart

    命令必须使用绝对路径

    呵呵,就这么点区别~
    语无伦次,将就看看吧

  • 前段时间,因为服务器的问题致使我个人博客的数据库丢失,我只得重新恢复之前的备份数据库,损失了一部分资料。痛定思痛下我决定写个脚本,每天自动备份指定数据库!
    #vim /opt/backup/db/backup.sh

     

    引用

    #!/bin/sh 
    # author:coralzd 
    #url:http://www.freebsdsystem.org 
    backupdir=/opt/backup/db/
    mkdir -p $backupdir$(date -d yesterday +%Y)/$(date -d yesterday +%m)/ 
    cd $backupdir$(date -d yesterday +%Y)/$(date -d yesterday +%m) 
    mysqldump -uroot -p123456 blog>$(date -d yesterday +%Y-%m-%d)_blog_db.sql 
    mysqldump -uroot -p123456 www >$(date -d yesterday +%Y-%m-%d)_www_db.sql

    将其置于crontab 中,每天0点备份昨天的数据库,然后存入指定目录中。
    #crontab -e
    引用

    00 00 * * * /opt/backup/db/backupmysql.sh

    注意:crond 必须启动。

  • 问题终于解决了,几乎一整天都耗在这个vsftpd上了!在此对diyself的热情帮助深表谢意!非常庆幸能遇到一位非常热心的大牛!diyself人品很高,技术很好,从这个帖子上的回复时间可以看出,这位大牛几乎一整天都在关注这个帖子,并对我这个问题的进展大力施援,最后还通过qq直接指导,没有diyself,我的问题就不可能解决,再次表示感谢!

    好了言归正传。

    个人总结了一下,用vsftpd建立ftp服务器,关键有四个问题,第一,明确目的;第二,安装vsftpd;第三,配置文件夹权限;第四,修改主配置文件。每个人的目的都不一样,而ubuntu安装vsftpd也不是什么难题,这里就不多说了,我的问题出在后两个。

    我的目的是建立一个ftp服务器(废话?),里边两个文件夹,public和upload。匿名用户对public只有读取的权限,对upload有任意权限;本地root用户对整个ftp文件夹有任意权限。看上去很简单的问题,可是我实现起来却不简单。
    一开始,我安装了vsftpd后,本地root用户权限没有任何问题,但是匿名登录ftp却不能上传(public和upload文件夹都可下载),原因是我没有修改/upload文件夹的权限,这个问题很快被diyself发现,在终端运行:
    sudo chmod 777 /home/ftp/upload
    即可。注意:这是我个人的目录,每个人的目录可能有所区别。

    到了这一步,匿名用户已经可以在upload文件夹里自由上传、删除、重命名了,不过,但是不能从upload文件夹下载了,而没有chmod的public却没问题,经过漫长的尝试(有兴趣的朋友可看一下本帖详细回复),最终在diyself的帮助下,我在vsftpd.conf文件夹里添加了一行:
    anon_umask=022
    问题解决了!就是这个umask在作祟!经查:
    umask是unix操作系统的概念,umask决定目录和文件被创建时得到的初始权限
    umask=022 时,新建的目录 权限是755,文件的权限是 644
    umask=077 时,新建的目录 权限是700,文件的权限时 600
    vsftpd的local_umask和anon_umask借鉴了它
    默认情况下vsftp上传之后文件的权限是600,目录权限是700
    想要修改上传之后文件的权限,有两种情况
    如果使用vsftp的是本地用户
    则要修改配置文件中的 local_umask 的值
    如果使用vsftp的是虚拟用户
    则要修改配置文件中的 anon_umask 的值

    到此问题已经解决了!非常感谢diyself,非常感谢ChinaUnix!!
    经此一役,本人决定从头开始,认真学习,做好基本功。

  • 以下是我自己在VWare下面虚拟FreeBSD所操作的步骤
    =====================================================
    为什么采用host-only上网呢,因为我们可以自定义IP范围,本机内主机与虚拟机可以很好的
    互访,当然别的模式也可以,这里只介绍host-only模式。

    VWare安装的网络我们只用到 VMware Virtual Ethernet Adapter for VMnet1

    xp下面名称是 :VMware Virtual Ethernet Adapter for VMnet1
    win7 下面:Local Area Connection 2

    将ADSL网络共享给上述网络 

    之后ipconfig /all

    xp下面VMware Virtual Ethernet Adapter for VMnet1 IP会变成 192.168.0.1
    win7下面VMware Virtual Ethernet Adapter for VMnet1 ip会变成 192.168.137.1

    在虚拟linux里面选择自定义IP  IP可以设定任意范围 如192.168.0.X  或 192.168.137.X  DNS用ADSL 这样就基本能上网了,有问题可以跟帖询问。

  • 修改mysql密码:

    1. mysqladmin -u root -p password **** //***为设定密码
    复制代码
    创建ragnarok数据库,导入
    1. mysql>create database ragnarok;
    2. mysql>use ragnarok;
    3. mysql>set names latin1;
    4. mysql>source /home/imea/sql-files/main.sql
    复制代码
    创建log数据库,导入
    1. mysql>create database log;
    2. mysql>use log;
    3. mysql>set names latin1;
    4. mysql>source /home/imea/sql-files/logs.sql
    复制代码
    更新GM帐号 以2000001为例
    1. mysql>update login set level="99" where account_id="2000001";
    复制代码

  • 1、安装vsftpd

          由于FB版本的更新及其站点服务器的调整,貌似我们现在无法直接pkg_add -r vsftpd来安装,因此需要通过ports方式来安装。

    以root用户执行如下命令:

    #cd /usr/ports/ftp/vsftpd

    #make install clean

    2、配置vsftpd.co...
  • 从6.0开始,freebsd升级ports就不再需要cvsup了,而是用portsnap,

    一、portsnap与cvsup的区别在于



    1、portsnap有数字签名,较安全,cvsup没有。

    2、portsnap是打包压缩下载,所以会比cvsup快一些,当然除了第一次使用。

    二、使用方法是:

    第一次使用:portsnap fetch e...
  • 我们在拍拍网店开通了在线RO魔物商店,出售的魔物资源完整,有兴趣的朋友可以支持支持,后期我们会更新更多的魔物商品,现在为价格优惠时期。且购买10个赠送一个活动

    地址:http://shop.paipai.com/6773611

     



     


  • 详细:http://www.im-ea.com/dev/viewthread.php?tid=16&extra=page%3D1

     

    imea.Team 准备发布2种版本,imea.SA与imea.RE,版本都严格最优化,简洁化,不加壳原生态支持。

    imea.SA为ea正式版本,代码来源于EA SVN

    imea.RE为ea非官方支持新职业三转版本,代码来源与EA [最优更新]

    2种版本都会发布简体中文,繁体版本[暂行],英文版本。暂时不会考虑发布TXT版本。

    同时包含win,linux版本支持。

    imea.SA与imea.RE都属于全免费无限制版本。

    版本更新进度关注论坛。

  • imea.Team最新支持三转职业完美DATA,包含内容如下:
    ----------------------------------------------------------------

    一,最新RO三转职业相关角色文件。

    二,最新RO三转职业音效文件。

    三,最新RO三转职业染色文件。

    四,中文版本任务记录系统面板。

    五,最全中文操作面板。

    六,支持到ep13.2数据库文件

    七,支持三转职业道具数据文件

    八,向下全面包含EA所有涉及到的最新道具,魔物,系列

    九,最新RO三转职业技能表技能描述文件

    十,添加卡片放大文件

    十一,修道院地图增大视角范围

    十二,添加原创99发光光环

    十三,更新几个新职业技能图标


    更多:http://www.im-ea.com/dev/viewthread.php?tid=15&extra=page%3D1

  • imea.Team网站上线

    http://www.im-ea.com/

     

    论坛:http://www.im-ea.com/dev

     

     

  • 等待了将近快一个月时间,域名审核终于通过了 ,接下来要开始忙了,站点上线时间另作通知。谢谢大家

  • 2009-10-30

    关于最近一些想法 - [Me]

    自己已经在开始组建团队成员,团队取名:imea.Team  主要针对RO游戏SF相关提供服务器,网站已经在开发当中,在考虑开发自有服务器端,网站域名:www.im-ea.com已经被我们注册了,正在备案当中,可能需要要一段时间等待,备案下来一系列的服务器都将出来。

    如果觉得自己是个人才,也可以联系我。

  • 有需要的朋友可以留下email。

  • 界面干净,漂亮,

    全部采用控制台模式操作,喜欢黑客类型的朋友有福了,先贴图公告下。

    暂时取名 Paranoia Hacker

  • 在 freebsd下面路径 /usr/ports/editors/vim/vim7X

    #cp /usr/local/share/vim/vim71/vimrc_example.vim ~/.vimrc

    1、配置文件的位置
    在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:.vimrc。例如,/root目录下,通常已经存在一个.vimrc文件。
           2、设置语法高亮显示
    1) 打开vimrc,添加以下语句来使得语法高亮显示:
    syntax on
    2) 如果此时语法还是没有高亮显示,那么在/etc目录下的profile文件中添加以下语句:
    export TERM=xterm-color
          
           3、设置Windows风格的C/C++自动缩进(添加以下set语句到vimrc中)
                  1设置(软)制表符宽度为4
                                set tabstop=4
                                set softtabstop=4
                  2设置缩进的空格数为4
                              set shiftwidth=4
                  3设置自动缩进即每行的缩进值与上一行相等;使用 noautoindent 取消设置:
    set autoindent
                  4设置使用 C/C++ 语言的自动缩进方式:
                              set cindent
                  5)设置C/C++语言的具体缩进方式(以我的windows风格为例):
                                set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
                  6)如果想在左侧显示文本的行号,可以用以下语句:
                              set nu
                7)最后,如果没有下列语句,就加上吧:
    if &term=="xterm"
    set t_Co=8
                 set t_Sb=^[[4%dm
    set t_Sf=^[[3%dm
    endif
  • 一切都在准备当中,正在开发lua版本EA。

    LUA脚本

    Lua最著名的应用是在暴雪公司的网络游戏WOW中。

    脚本速度大大提高。

    关于lua可查看百度百科:http://baike.baidu.com/view/416116.htm

     

  • 跟服务器有关系,仅三转服务器。

    域名公布[www.im-ea.com] 正在审核当中

    哈哈

  • /////////////////////////////////////////////////////
    ////////////////////////////////////////////////////
    //////////////Paranoia Ragnarok Online/////////////
    //////////////QQ:42425819////////////////////////
    ////////////http://eathena.blogbus.com///////////
    ////////////////////////////////////////////////
    ///////////////////////////////////////////////

    ParanoiaRO.魔物共享计划
    ----------------------------------------------------------------------------------
    Paranoia 发布的内容来源于网络,私自使用造成的法律问题请自行承担

    [RO.魔物共享计划 2009-10-11] - 波利家族系列

    [RO.魔物共享计划 2009-10-12] - Addax.Aposis

  • nginx 后起之秀,据说比apache快10倍,目前中国大陆使用nginx网站用户有:新浪、网易、腾讯,另外知名的微网志Plurk也使用nginx.

    在freebsd安装十分的方便

    cd /usr/ports&&make search key=^nginx

    cd /usr/ports/www/nginx

    make install clean

    启动:ngi...
  • BUG已经修复

    如果是4058 那么不会出现问题

    如果是4064 无法请求挂载,强行挂载技能全部为空,BUG记录到这,以免忘记修复。

  • FreeBSD编译EA SVN

    [1.EAthena编译:FreeBSD].FreeBSD与Vmware获得安装-2009-10-08 

    [2.EAthena编译:FreeBSD].FreeBSD在Vmware中安装-2009-10-08 

    [3.EAthena编译:FreeBSD].FreeBSD安装初始配置-2009-10-08 

    [4.EAthena编译:FreeBSD].FreeBSD重启之后的初始配置-2009-10-08 

    [5.EAthena编译:FreeBSD].gmake编译EA源代码-2009-10-08

    [6.EAthena编译:FreeBSD].EA的基础配置与启动-2009-10-08

    Thor更新器教程

    [Thor教程系列].Thor获得与文件解说 - 2009-10-08

    [Thor教程系列].Thor更新器配置 - 2009-10-10

  • 2009-10-07

    情迷首都 - [ParanoiaRO]

    白昼展示图:

     

    黑夜展示图:

     

  • Linux/unix上的软件包真是五花八门,不太统一。按软件包有redhat下的rpm,ubuntu的dpkg管理ded包,还有源码编 译,pl,py格式的;网络安装有redhat下的yum,ubuntu下的apt-get,suse听说又是另外一套(这个我没用过),现在 freebsd下管理网络软件包主要是ports。
    今天主要就来学习一下ports的管理。

    1、ports套件的安装和简单介绍
    [1].  安装
    ports安...
  • ------------------------------------------------
    cd /usr/ports/databases/mysql50-server
    make install clean;
    /usr/local/bin/mysql_install_db
    chown -R mysql /var/db/mysql
    #这一步一定不能少,否则mysql将启动不起来

    #启动mysql
    /us...