存档
误删除了ESQL文件:/data/ase157/OCS-15_0/sample/esqlc/readdevice.cp,此为背景。
本文介绍使用ext3grep恢复ext3类型分区上误删除文件的过程。
误删除文件readdevice.cp所在分区名为:/data。
1、先安装ext3grep软件
wget http://ext3grep.googlecode.com/files/ext3grep-0.10.1.tar.gz 如果google无法下载的话,本站下载地址:https://www.dbainfo.net/wp-content/uploads/file/ext3grep-0.10.1.tar.gz。
tar zxvf ext3grep-0.10.1.tar.gz
cd ext3grep-0.10.1
./configure
make
make install
要使用 echo 命令的模式匹配字符功能,可以输入:
echo The back-up files are: *.bak
该用法将显示消息备份文件后跟有当前目录中以 .bak 结尾的文件名。
在正则表达式中,中括号[]是特殊字符,会匹配其中的任意一个字符且只是一个字符。
当想输出类似 [abc]这样的字符串时,最好使用双引号括起来。
echo "[abc]"
否则,如果直接使用echo [abc]输出,可能得到不同的”奇怪“的结果。
echo [abc]会在当前目录下,匹配名称为a或者b或者c的文件,如果当前目录包含a、b、c这三个文件中的任意一个,则返回相应的文件列表;否则返回 [abc]本身。
root@test:~# ls -l [abc]
-rw-r--r-- 1 root root 0 Apr 11 17:27 a
-rw-r--r-- 1 root root 0 Apr 11 17:34 b
root@test:~# echo [abc]
a b
root@test:~# echo [cde]
[cde]
root@test:~# echo *.sh
openvpn.sh setup-debian.sh
root@test:~#
在使用echo输出字符串的时候,如果不加双引号,会启用模式匹配功能;如果恰好能匹配到当前目录下的文件,则会输出匹配到的文件名列表。
如果没有匹配到文件的话, 会直接打印相应的字符串。
为了防止不确定的输出结果, 可以将字符串两边添加双引号。 为了中括号的问题去改造以前的代码是个比较大的工程。
在CentOS5.5 x86_64上安装了Oracle11g,版本号为:11.2.0.1.0
但是,在其它客户端上使用sqlplus连接的时候需要等待很长时间才能连接上,有时候报超时的错误。
错误信息为:
*********************************************************************** Fatal NI connect error 12537, connecting to: (LOCAL=NO) VERSION INFORMATION: TNS for Linux: Version 11.2.0.1.0 - Production Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.1.0 - Production TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.1.0 - Production Time: 30-NOV-2011 14:28:10 Tracing not turned on. Tns error struct: ns main err code: 12537 TNS-12537: TNS:connection closed ns secondary err code: 12560 nt main err code: 0 nt secondary err code: 0 nt OS err code: 0 opiodr aborting process unknown ospid (29666) as a result of ORA-609 Wed Nov 30 14:36:24 2011
Oracle11g服务器数据库名为:lzf,全局名称为:lzf.dbainfo.net
Linux下使用date计算某个月份的天数:
Month=2 Year=2008 nextmonth=`date -d "1 month $Year-$Month-"01"" +%Y-%m-%d` date -d "-1 day $nextmonth" +%d #或者将-d "1 month $Year-$Month-"01"" 和 date -d "-1 day $nextmonth" 写在一行命令中 Month=2 Year=2008 date -d "1 month $Year-$Month-"01"" -d "-1 day" +%d
使用cal 计算某个月份的天数:
1.安装所需要的包
所需的包有vnc-server(vnc服务器软件包),vnc(客户端包)。
另外,既然想用VNC,肯定是想要看图形界面,那就还要安装"GNOME Desktop Environment"(如果是想用GNOME,否则用KDE)
如下:
#yum install vnc-server(注意在root下安装) #yum install vnc #yum groupinstall "GNOME Desktop Environment"
注意安装前先用rpm -qa|grep "vnc-server"这种方式来查询一下是否已经安装好。一般如果你安装centos时选用的是默认的方式安装系统,那上面的步骤可以省略。
2.准备VNC用户资料,包括创建你想要的用户和密码(就是系统自己那种用户密码)。
如:
#useradd peter
#passwd peter
如果系统所需帐号已经建立,或是你只想用root来登录VNCServer,那此步骤也可以略过。
linux下显示dd命令的进度:
dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000
想要查看上面的dd命令的执行进度,可以使用下面几种方法:
比如:每5秒输出dd的进度
方法一:
watch -n 5 pkill -USR1 ^dd$
方法二:
watch -n 5 killall -USR1 dd
方法三:
while killall -USR1 dd; do sleep 5; done
方法四:
while (ps auxww |grep " dd " |grep -v grep |awk '{print $2}' |while read pid; do kill -USR1 $pid; done) ; do sleep 5; done
上述四种方法中使用三个命令:pkill、killall、kill向dd命令发送SIGUSR1信息,dd命令进程接收到信号之后就打印出自己当前的进度。
参考:贝塔中的DBA - 查看dd命令的执行进度
rhel5 与 rhel4 不同的地方是, rhel5 里没有 /etc/X11/gdm/ 这个目录,因此在用xmanager连接linux时应选择“new session--->XDCMP“。
修改相关的dgm配置文件:
1. /etc/gdm/custom.conf
将 [xdmcp] 部分的 Enable 设置为 1,即:
[xdmcp]
Enable=1
Post=177
将 [security] 部分的 DisallowTCP 设置为 false,即:
[security]
DisallowTCP=false
2. /usr/share/gdm/defaults.conf确保有以下几句配置
Enable=true
DisplaysPerHost=10
Port=177
AllowRemoteRoot=true
3. /etc/inittab里把默认级别改为5
id:5:initdefault:
x:5:respawn:/usr/sbin/gdm
4. /etc/securetty增加如下内容
pts/0
pts/1
pts/2
pts/3
pts/4
Sybase ASE V15.7于9月下旬发布,10月上旬才提供开发版下载地址。先在Linux x86_64上体验并测试一把。ASE V15.7已不支持Linux x86和Solaris x86,但是仍然可以用win x86做开发测试用途。
操作系统环境为:CentOS 5.5,内核版本:2.6.18-194.el5 x86_64
一开始使用安装向导创建服务的时候,报错!所有服务均创建失败!
修改安装向导生成的资源文件,已备后面利用srvbuildres创建服务。
首先设置一个能够解决Linux下Segmentation fault错误的环境变量: LD_POINTER_GUARD=0
在sybase用户环境下,执行下面的命令创建主服务时,
[sybase@centos5 ASE-15_0]$ srvbuildres -r ./sqlsrv.res