跳至主要内容

博文

目前显示的是标签为“Linux”的博文

RH DOMAINNAME

RH修改domainname vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=sppttcn4 NISDOMAIN=cnsh 1. 检测SuSE的Telnet服务是否已安装(默认安装时是不安装Telent-Server的。) # chkconfig –list 在列表中,有如下显示,表示telnet服务已安装。 xinetd based services: telnet: on 如果未安装telnet-server,则请在YaST中安装软件包(telnet-server在CD2中)。 2. 启动telnet服务: #chkconfig telnet on 3. 确认服务已启动: # chkconfig –list xinetd based services: telnet: on 服务启动时,显示为on。 4. 修改配置文件ftpusers,使root可以登入 # cd /etc # mv securetty securetty.bak /etc # vi ftpusers 在root前加上注释,以便让root可以登入。 #root 保存后退出。 5. 修改可同时连接的telnet终端数量 # cd /etc # vi xinetd.conf 修改instances的数量: instances = 150 保存后退出。 6. 重新启动服务: # /etc/init.d/xinetd restart Shutting down xinetd: done Starting INET services. (xinetd)

mount all

IBM AIX: mount: $su - root #/usr/sbin/mount -rv cdrfs /dev/dc0 /cdrom /dev/cd0是光驱的位置,/cdrom是mount点 umount: #/usr/sbin/umount /cdrom HP-UX: mount: 首先确定操作系统的版本 $su - root #uname -a 如果是HP-UX B.11.11以下的版本 #nohup /usr/sbin/pfs_mountd & #nohup /usr/sbin/pfsd & #/usr/sbin/pfs_mount -t rrip -x unix \ /dev/dsk/c0t1d1 /SD_CDROM /dev/dsk/c0t1t1是光驱的位置,/SD_CDROM是mount点 如果是HP-UX B.11.22以上的版本 #/usr/sbin/mount -F cdfs -o rr \ /dev/dsk/c0t1d1 /SD_CDROM umount: HP-UX B.11.11以下的版本 #/usr/sbin/pfs_umount /SD_CDROM HP-UX B.11.22以上的版本 #/usr/sbin/umount /SD_CDROM Linux mount: 一般大多数的linux系统会自动mount插入的光盘 可以通过下面的命令确认 Red Hat: #ls /mnt/cdrom SuSE or UnitedLinux: #ls /cdrom 如果没有显示出文件列表,则手动挂载 Red Hat $su - root #mount -t iso9660 /dev/cdrom /mnt/cdrom SuSE #mount -t iso9660 /dev/cdrom /cdrom /dev/cdrom 是光驱的位置,/cdrom是mount点 umount: Red Hat: #eject /mnt/cdrom SuSE or UnitedLinux: #eject /cdrom Linux/390 此系统上不能直接mount,要通过NFS或者FTP的方式从其他服务器上抓取 hp OpenVMS mount: 1.插入光盘 2.以系统用户登入(SYSTEM) 3.$MOUNT /OVERRIDE=IDENTIFI...

Linux&Solaris

1) 查看开放端口 Linux: netstat -atn Solaris: netstat -P tcp -f inet -an 2) 查看网卡/网络状态 Linux: ifconfig Solaris: ifconfig -a 或者 dladm show-dev等 注1:Linux下每个网卡都是以eth0,eth1等来命名的,而Solaris则是以网卡驱动来命名的,如rtls0, iprb0, bge0, bge1,bnx0,e1000g1,nge1,xge0等,可以通过man来查看究竟是什么网卡,比如: # man iprb 注2:Linux在逐渐淘汰ifconfig命令,取而代之是功能更强调的iproute或者叫iproute2软件包,主要命令有ip和tc。用ifconfig给网卡添加另外一个ip,命令如下: # ifconfig eth0:0 192.168.3.15/24 broadcast 192.168.3.255 用ip如下: # ip addr add 192.168.3.15/24 broadcast 192.168.3.255 dev eth0 3) 查看系统安装的所有软件包 Linux: rpm -qa 或者 dpkg-query -l Solaris: pkginfo 4) 安装软件包 Linux: rpm -ivh stardict.rpm Solaris: pkgadd -d `pwd` SUNWstardict 5) 卸载软件包 Linux: rpm -e stardict Solaris: pkgrm SUNWstardict 6) 查看软件包的所有安装文件 Linux: rpm -ql stardict Solaris: pkgchk -l SUNWstardict | grep Pathname 注:在Solaris上还可以根据某一个文件来判断该文件属于哪一个安装包 # pkgchk -lp /usr/share/stardict/sounds/menushow.wav Pathname: /usr/share/stardict/sounds/menushow.wav Type: regular file Expected mode: 0644 Expected owner: root Expec...

VirtualBox SSH

今天想试下virtualbox下怎么进行ssh,因为virtual box的网络桥接方式比较不一样,他的nat和vm的差很多,vm的只要稍微配置下,你的ip定义的也会很有规律,而同时bridge又很方便,类似于开了一个新的网卡,能够dhcp很方便,所以大家都用。但由于HP现在不是很让用这个,而vb现在是sun力推的。所以可以试下,看了下vb的manaul, 也没多大看懂,google一下,然后一结合应该OK。 总结: 1. 给自己的gust machine取一个简单的名字,减少space,用几个字符搞定 2.建立一个bat文件,内容为: VBoxManage setextradata RH5 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ ssh /HostPort" 2222 VBoxManage setextradata RH5 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ ssh /GuestPort" 22 VBoxManage setextradata RH5 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ ssh /Protocol" TCP 这里的RH5是我自定义的端口,而这里的ssh是我开放的服务名称,都是可选变量。我们可以改换成solaris或者ubuntu,然后把开放的服务改成mysql,oracle,ftp等等。 3. 重启客户机,然后打开putty 4. 输入127.0.0.1端口是2222, 然后就能login

DG主备库切换

连不上主库,查看bdump下的日志,发觉链接不上。而备库的bdump下同样显示的disconnect,无奈重启主库,发觉仍旧不能连上,查看dmesg网卡坏了。。。。不过刚好,给我个主备库切换的机会。 因为主库的网卡以坏,同时也没有其他的生产用机连接,因为是测试机^ ^所以开始切换。根据piner在书中提到的switchover脚本,开始进行切换。基于以上原因我就没有修改备库IP。 $ more switchprimary.sh #!/bin/sh ORACLE_BASE=/SERVER/ora9;export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/9.2;export ORACLE_HOME PATH=$ORACLE_HOME/bin:$PATH;export PATH LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib; LD_LIBRARY_PATH ORACLE_SID=ora9i; export ORACLE_SID ORACLE_NLS=$ORACLE_HOME/ocommon/nls/admin/data; export ORACLE_NLS NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss';export NLS_DATE_FORMAT $ORACLE_HOME/bin/sqlplus /nolog startup pfile=?/dbs/initora9i.ora_pri exit EOF lsnrctl stop listenerdb lsnrctl start 但是服务器由此出来的提示是ora-01153错误,然后我做了下查看 [oracle@ora9-2 oracle]$ oerr ora 01153 01153, 00000, "an incompatible media recovery is active" // *Cause: Attempted to start an incompatible media recovery or open resetlogs // du...

ORACLE-DG实例

今天起ORACLE不能起,当我做到 SQL> ALTER DATABASE OPEN; ALTER DATABASE OPEN * ERROR at line 1: ORA-03113: end-of-file on communication channel 的时候不能启动,然后再做 SQL> alter database open; alter database open * ERROR at line 1: ORA-03114: not connected to ORACLE 就提示以上任务。 原因后来查明,而且我现在的DG是最大保护模式。因为周五的时候我主库的机器挂了然后重新冷启动的时候按错了机器,先将备库重启了。在主库与备库的交换中出现问题。 解决方法,首先我先期备库将备库的监听器启动,启动备库数据库监听,然后将备库启动到MOUNT。 之后启动主库,然后一步步照做就可以了

Shell实际运用和Oracle DataGuard一天小结

在实际生产应用中,其实我可以这么些,首先判断这个人是不是ROOT 那么就需要在脚本中写上这么个判断语句: #!/bin/sh #ifroot if [ "$LOGNAME" != "root" ] then echo "You need to be root to run this script" >&2 exit 1 else echo "Yes indeed you are $LOGNAME proceed" fi return是函数返回,exit是结束进程. exit(0); /*这个是正常的关闭所有程序 */ exit(1); /*这个就刚好相反,有错误的关闭 */ /dev/null #表示的是类似于windows的回收站,无限大 2>&1#表示将这些在后台处理 同样的语句在solaris下和RH下有点不同,当我使用exit语句时rh下会执行,而solaris直接就是跳出。也是是因为SHELL不同的缘故。 在for in中加” ”就是字符串,数字不加就是数字显示的是竖直排列,家了引号后就是横向排列了。 在使用的时候Sorlaris不支持$()这样的在shell中嵌套的写法,反而是支持``反引号的写法,RH测试两者都支持。 可以用ls wc –l显示文件夹的文件数,用shell的话是做个count #!/bin/sh #forcount counter=0 for files in * do counter=`expr $counter + 1` done echo "count the `pwd` total files is $counter" 要想从命令行启动mysqld服务器,你应当启动控制台窗口(或“DOS window”)并输入命令: C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld 根据系统中MySQL安装位置的不同,前面的例子中使用的路径也不同。 在非NT版本的Windows中,在后台启动mysqld。也就是,服务器启动后,你应当可以看见后面的命令提示。如果你用该方法在Windows NT、2000、XP或2003中启动服务器,服务器则在前台运行,在...

Shell总结

Shell的PDF基本上已经看完了,现在剩下的工作就是消化和吸收,其中还是有很多东西不明白,当然的在后期的摸索中度过,当然了现在小部分的SHELL语句已经基本上能读懂,但是大量的还是需要自己去看去体会。 http://publish.itpub.net/zt/oracle11g/index.html 11G

Shell记录20080415

在实际生产应用中,其实我可以这么些,首先判断这个人是不是ROOT 那么就需要在脚本中写上这么个判断语句: #!/bin/sh #ifroot if [ "$LOGNAME" != "root" ] then echo "You need to be root to run this script" >&2 exit 1 else echo "Yes indeed you are $LOGNAME proceed" fi return是函数返回,exit是结束进程. exit(0); /*这个是正常的关闭所有程序 */ exit(1); /*这个就刚好相反,有错误的关闭 */ /dev/null #表示的是类似于windows的回收站,无限大 2>&1#表示将这些在后台处理 同样的语句在solaris下和RH下有点不同,当我使用exit语句时rh下会执行,而solaris直接就是跳出。也是是因为SHELL不同的缘故。 在for in中加” ”就是字符串,数字不加就是数字显示的是竖直排列,家了引号后就是横向排列了。 在使用的时候Sorlaris不支持$()这样的在shell中嵌套的写法,反而是支持``反引号的写法,RH测试两者都支持。 可以用ls wc –l显示文件夹的文件数,用shell的话是做个count #!/bin/sh #forcount counter=0 for files in * do counter=`expr $counter + 1` done echo "count the `pwd` total files is $counter" 要想从命令行启动mysqld服务器,你应当启动控制台窗口(或“DOS window”)并输入命令: C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld 根据系统中MySQL安装位置的不同,前面的例子中使用的路径也不同。 在非NT版本的Windows中,在后台启动mysqld。也就是,服务器启动后,你应当可以看见后面的命令提示。如果你用该方法在Windows NT、2000、XP或2003中启动服务器,服务器则在前台...

Solaris学习笔记20080331

想看看Solaris的FTP服务,所以去网站上找,可是没有找到如何安装。。而SUN提供的技术文档里也没有关于这个的说法,结果#svcs ftp发现竟然是online状态开着的,所以粗略研究了下了,在/etc/ftpd下有人文件,大概的说下ftpusers是被禁止的用户而不是开放的用户,比如说root,而ftphosts列出的允许或拒绝从各种主机登录的,cat了一下发觉没有东西,猜想是不是类似于ip+用户名。Ftpaccess是主文件,只用使用ftpaccess –a了以后才能调用/etc/ftpd/ftpaccess的文件。 里面一些关键词: 格式如下class typelist addrglob Class 用于定义关键词,里面目前有realusers guestusers anonusers,real当然表示本机的用户,用anonymous进去发现不行,登录不了,然后切换到那天建立的ccav用户发觉就可以了。 Typelist呢表示三类用户,addrglob呢表示地址,默认为* 添加权限: Limit class n times [message_file] 在最后两行但是被#注释掉了,limit表字串意思,class表刚刚定义的类,主要是guest,realuser,anon.n表用户数,times表相连接日期和时间,any表任何日期,message_file表用户被拒绝访问的消息文件。 按照所提供的意思,可以把下面三行的意思可以认为如下: Limit-time anonymous 30 可以理解成限制链接时间,匿名,30分钟 Limit anonousers 10 wk0730-1800 /etc/… 可以理解为限制匿名用户为10个在工作的时间早7:30-18:00 信息为如下目录 Limit anonousers 50 SaSuAny1800-0730 /etc/…可以理解为限制匿名用户为50个在周六或者周日和其他任何时间的晚18:00-7:30 在环境中用/usr/sbin/ftpwho命令可以查看目前正在使用的用户是哪些 /usr/sbin/ftpcount可以查看目前哪些用户和登录限制 Loginfails 表示登录失败的次数 想修改ftpuser然后重启服务,发觉根本不会搜了下 ftp pkill -HUP inetd (ftp) dns pkil...

Solaris学习笔记20080328

smc类似于windows中我的电脑,管理,在终端中键入smc只能在X桌面下,会启动但是似乎时间比较长,因为第一次启动需要加载一些东西。 /etc/init.d/init.wbem是关于smc产生的Solaris Mangerment Console这个的启动,包括的选项有status,start,stop。 貌似还有个JAVA WEB CONSOLE进入方法 https://hostname:6789/ ,但是我本机连服务器连不上。。看下面的文档似乎是因为服务没有起来,在控制台下 #smcwebserver start 经过加载好像起来了。提示加载错误,某个管理程序没注册。去服务器上看看。服务器上还是不行,大概是因为我在安装的时候去掉了关于JAVA环境,所以导致有这个问题。先暂且不管他,因为尽然已经熟悉PUTTY的话,这个就不是很在乎了,无非多了一个更方便或者说远程连接进来控制服务器的一个手段。有一点需要指出的是在看操作手册的同时发现,关于昨天所讲的 #smcwebserver enable 中的类似于服务的enable和disable表述的意思是关于随机的启动服务,而不是重启该服务。 おまかせください是“就交给我吧” Solaris环境为每个系统上/etc/skel目录中的每个shell提供缺省的用户初始化文件。在默认的用户的/home下,ls了一番以后是没有任何东西的,而如果我们要安装oracle这样的话那么就需要在上面提到的/etc/skel这个文件中的关于local.cshrc复制到自己的文件夹下面。但是查找了一些资料好像多以自己建立为主,在Solaris提供的系统管理指南下,也可以自定义建立用户初始化文件 #mkdir /export/skel/oracle #cp /etc/skel/local.cshrc /export/skel/oracle/.cshrc 添加用户和将用户添加到组 # groupadd -g 102 scutters # useradd -u 1003 -g 102 -d /export/home/scutter1 -s /bin/csh \-c "Scutter1" -m -k /etc/skel scutter1 这个相比而...

VMWARE上网

从昨天下班到今天的现在,差不多一天,都在搞这个事情。关于VMWARE上网,GOOGLE了下发觉很多很多人都说简单等等,其实我还是不会,后来没办法。我的FREEBSD要上网下,那么我就设置了。后来看了个FALSH才知道,其实很简单,安装好后VMWARE两块网卡都需要把bridge协议钩掉,然后再虚拟机中使用自定义,我开始NAT到1上的。,后来分配下就好了,不知道怎么回事情。郁闷啊郁闷。 但是仅仅正对于FREEBSD和RHAT的上网,UBUNTU可以用桥接直接上 -、- -------- 下午准备出发

Blocking China

The last few days there are so many connections to our mirror server from China that I started to block certain subnets. There are usually around 10 clients connecting via HTTP and each is opening over 50 connections to our server. They are downloading mainly ISO images and other big files. I can see that each client is starting to download lots of different things. From Fedora 3 to Fedora 7 ISO images, Ubuntu ISO images, openSUSE ISO images and other old and large files. I started to block individual IP addresses but there are just too many so that I started to block whole subnets. I am using the following command to get an overview about which clients are opening many connections at once: lynx -dump -width=2000 http://localhost/server-status awk -F\ '{ print $11} ' sort -n uniq -c sort -n. The output looks something like this: 21 122.48.129.75 23 210.21.106.229 24 218.17.228.216 26 220.175.101.252 27 222.67.18.227 30 222.27.89.136 39 123.116.101.186 52 121.231.17.153 63 6...

Oracle学习笔记20080129

环境和shell变量 $ variable-name = value 或 ${variable-name = value} 注意,等号两边可以有空格。如果取值包含空格,必须用双引号括起来。shell变量可以用大小写字母。 表14-1变量设置时的不同模式 Variable-name=value 设置实际值到variable-name Variable-name+value如果设置了variable-name,则重设其值 Variable-name:?value 如果未设置variable-name,显示未定义用户错误信息 Variable-name?value 如果未设置variable-name,显示系统错误信息 Variable-name:=value 如果未设置variable-name,设置其值Variable-name:-value 同上,但是取值并不设置到variable-name,可以被替换 显示变量直接echo,清除变量unset,可将多个变量结合使用 有时要测试是否已设置或初始化变量。如果未设置或初始化,就可以使用另一值。 此命令格式为: $ {variable : -value }意即如果设置了变量值,则使用它,如果未设置,则取新值。 $ { variable : =value }测试变量是否取值,如果未设置,则返回一空串。 方法如下: $ { variable : +value }使用下述方法初始化变量为空字符串。v ariable = " "$DETINATION = " " 如果设置变量时,不想再改变其值,可以将之设置为只读方式。如果有人包括用户本人想要改变它,则返回错误信息。 格式如下:variable - name = valuereadonly variable-name 设置环境变量VARIABLE - NAME = value;export VARIABLE-NAME在两个命令之间是一个分号,也可以这样写:VARIABLE - NAME = valueExport VARIABLE-NAME用env查看所有环境变量,同样是用unset命令清楚环境变量 CDPATH改变目录路径变量,保留一系列由冒号隔开的路径名,用于cd命令。如果设置了CDPATH,cd一个目录时,首先查找CDPATH,如果C...

Oracle学习笔记20080128

表7-1 基本元字符集及其含义 ^ 只匹配行首 $ 只匹配行尾 * 一个单字符后紧跟 *,匹配0个或多个此单字符 [ ] 匹配[ ]内字符。可以是一个单字符,也可以是字符序列。可以使用 - 表示[ ]内字符序列范围,如用[1-5]代替[12345]\ 只用来屏蔽一个元字符的特殊含义。因为有时在shell中一些元字符有 特殊含义。\可以使其失去应有意义. 只匹配任意单字符pattern\{n\} 只用来匹配前面pattern出现次数。n为次数pattern\{n,\} m 只含义同上,但次数最少为npattern\{n,m\} 只含义同上,但pattern出现次数在n与m之间 实例:A\{2\}B出现的AAB,A\{4\}B出现的是AAAAB或AAAAAAAAB 表7-2经常使用的正则表达式举例 ^ 对行首 $ 对行尾 ^[the] 对以the开头行 [Ss]igna[lL] 对匹配单词signal、signaL、Signal、SignaL[Ss]igna[lL]\. 对同上,但加一句点[mayMAY] 对包含may大写或小写字母的行 ^USER$ 对只包含USER的行[tty]$ 对以tty结尾的行\. 对带句点的行^d..x..x..x 对对用户、用户组及其他用户组成员有可执行权限的目录 ^[^l] 对排除关联目录的目录列表 [.*0] 对0之前或之后加任意字符 [000*] 对000或更多个 [iI] 对大写或小写I[iI][nN] 对大写或小写i或n [^$] 对空行[^.*$] 对匹配行中任意字符串 ^......$ 对包括6个字符的行[a-zA-Z] 对任意单字符[a-z][a-z]* 对至少一个小写字母 [^0-9\$] 对非数字或美元标识 [^0-0A-Za-z] 对非数字或字母[123] 对1到3中一个数字 [Dd]evice 对单词device或DeviceDe..ce 对前两个字母为De,后跟两个任意字符,最后为ce\^q 对以^q开始行^.$ 对仅有一个字符的行^\.[0-9][0-9] 对以一个句点和两个数字开始的行'"Device"' 对单词deviceDe[Vv]ice\. 对单词Device或device[0-9]\{2\}-[0-9]\{2\}-[0-9]\{4\}对日期格式dd-mm-yyyy[...

Oracle20080124

awk略过。。实在是看不下去。。下次补上具体的,但是从进程来看,似乎和上面的grep差不多,但是一个是查询一个是显示还是拥有域的概念,多用来显示sql的报表类。今天看的是echo,今天就看一章吧,手头上还有个设计稿。。汗。。为难我了 echo echo string echo命令有很多功能,其中最常用的是下面几个: \c 不换行。 \f 进纸。 \t 跳格。 \n 换行。 你可以echo任何东西,linux系统用-n选项禁止echo输出换行,必须使用-e选项才能使转义符生效:如果想把一个字符串输出到文件中,使用重定向符号 >。或者可以追加到一个文件的末尾,使用重定向符号 >>这意味着不覆盖原有的内容. echo命令输出这样的字符串:“/dev/rmt0”,那么我们只要在引号前面加上反斜杠\即可: $ echo "\"/dev/rmt0"\" 可以使用read语句从键盘或文件的某一行文本中读入信息,并将其赋给一个变量。如果只指定了一个变量,那么read将会把所有的输入赋给该变量,直至遇到第一个文件结束符或回车。 它的一般形式为:read varible1 varible2 ... 例如 $read name tu lei $echo $name tu lei 第一个单词将被赋给第一个变量,而由于变量数少于单词数,字符串后面的部分将被全部赋给第二个变量。可以使用多个变量名进行定义。 cat $ cat myfile more或$ cat myfile pgcat命令的一般形式为: cat [options] filename1 ... filename2 ... cat命令最有用的选项就是:-v 显示控制字符 重定义文件至另一文件 $ cat myfile1 myfile2 myfile3 > bigfile $cat > myfile最后按 结束输入即可 管道可以通过管道把一个命令的输出传递给另一个命令作为输入。 管道用竖杠 表示。它的一般形式为:命令1 命令2 tee命令作用可以用字母T来形象地表示。它把输出的一个副本输送到标准输出,另一个副本拷贝到相应的文件中。如果希望在看到输出的同时,也将其存入一个文件,那么这个命令再合适不过了。 它的一般形式为:tee -a files ...

Oracle学习笔记20080122

sed。。没用过。。 先这么学者吧sed是一个非交互性文本流编辑器。它编辑文件或标准输入导出的文本拷贝。标准输入可能是来自键盘、文件重定向、字符串或变量,或者是一个管道的文本。 sed可以做些什么呢?别忘了,Vi(Ubuntu下为vim)也是一个文本编辑器。sed可以随意编辑小或大的文件,有许多sed命令用来编辑、删除,并允许做这项工作时不在现场。sed一次性处理所有改变,因而变得很有效,对用户来讲,最重要的是节省了时间 调用sed有三种方式: 在命令行键入命令; 将sed命令插入脚本文件,然后调用sed; 将sed命令插入脚本文件,并使sed脚本可执行。 使用sed命令行格式为:sed [选项] sed命令 输入文件。 记住在命令行使用sed命令时,实际命令要加单引号。 sed也允许加双引号。使用sed脚本文件,格式为: sed [选项] -f sed脚本文件 输入文件要使用第一行具有sed命令解释器的sed脚本文件,其格式为: sed脚本文件 [选项] 输入文件不管是使用shell命令行方式或脚本文件方式,如果没有指定输入文件,sed从标准输入中接受输入,一般是键盘或重定向结果。 sed选项如下: n 不打印;sed不写编辑行到标准输出,缺省为打印所有行(编辑和未编辑)。 p 命令可以用来打印编辑行。 c 下一命令是编辑命令。使用多项编辑时加入此选项。如果只用到一条sed命令,此选项无用,但指定它也没有关系。 f 如果正在调用sed脚本文件,使用此选项。此选项通知sed一个脚本文件支持所有的sed命令,例如:sed -f myscript.sed input_file,这里myscript.sed即为支持sed命令的文件。 使用sed在文件中查询文本的方式sed浏览输入文件时,缺省从第一行开始,有两种方式定位文本: 1) 使用行号,可以是一个简单数字,或是一个行号范围。 2) 使用正则表达式,怎样构建这些模式请参见第 7章。 x x为一行号,如1x,y 表示行号范围从x到y,如2,5表示从第2行到第5行/pattern/ 查询包含模式的行。例如/disk/或/[a-z]/ /pattern/pattern/ 查询包含两个模式的行。 例如/disk/disks/pattern/,x 在给定行号上查询包含模式的行。 如/ribbon/,3x,/pattern/ 通过...

Oracle学习笔记20080121

为了提交你刚刚创建的crontab文件,可以把这个新创建的文件作为cron命令的参数: $ crontab davecron 这样可以提交该文件 $ crontab -e可编辑 crontab文件(进去后发觉编辑界面简直难受的要死,还是vim好) $ crontab -l可列出crontab crontab -l > ...可将文件输出到别的地方 在编辑crontab的时候可以加入执行语句 30 3 1 * * /bin/find -name "core" -exec rm {} \;该语句的意思是每个月1号3点半把core文件找出来然后删掉(ubuntu下不知道,难道需要只能切换用户或者直接root?) 删除crontab 直接$crontab -r 如果不小心误删了crontab文件,假设你在自己的$HOME目录下还有一个备份,那么可以将其拷贝到/var/spool/cron/ ,其中 是用户名。 如果由于权限问题无法完成拷贝,可以用: $ crontab 其中 是你在$HOME目录中副本的文件名。 我建议你在自己的$HOME目录中保存一个该文件的副本。这就是为什么有些系统文档建议不要直接编辑crontab文件,而是编辑该文件的一个副本,然后重新提交新的文件。有些crontab的变体有些怪异,所以在使用crontab命令时要格外小心。如果遗漏了任何选项,crontab可能会打开一个空文件,或者看起来像是个空文件。这时敲delete键退出,不要按 ,否则你将丢失crontab文件。 at命令允许用户向cron守护进程提交作业,使其在稍后的时间运行。 也可通过/etc/at.allow和/etc/at.deny来控制用户运用at命令 at命令的基本形式为: at [-f script] [-m -l -r] [time] [date] 其中,-f script 是所要提交的脚本或命令。 -l 列出当前所有等待运行的作业。 atq命令具有相同的作用。 -r 清除作业。为了清除某个作业,还要提供相应的作业标识(ID);有些UNI X变体只接受atrm作为清除命令。 -m 作业完成后给用户发邮件。 time at命令的时间格式非常灵活;可以是H、HH.HHMM、HH:MM或H:M,其中H和M分别是小时和分钟。还可以使用a.m.或...

Oracle学习笔记20080118

做个rman的backup脚本,发觉对shell研究不是很深,纯建立脚本以后chmod a+x backup.ramn后,还差点,转战shell下,虽然一直想把shell好好用,但是好像没什么进展。 今天开始看shell 当然首先出现的还是ls,最常用的是ls -l,ls -la包含的信息: total 4232:该目录中所有文件所占的空间。 - r w x r- x r- x:这是该文件的权限位。 前面的横杠有: d 目录。 l 符号链接(指向另一个文件)。 s 套接字文件。 b 块设备文件。 c 字符设备文件。 p 命名管道文件。 - 普通文件,或者更准确地说,不属于以上几种类型的文件。 如果除去最前面的横杠,这里一共是9个字符,他们对应9个权限位。通过这些权限位,可以设定用户对文件的访问权限。这9个字符可以分组: r w x:文件属主权限 这是前面三位r- x:同组用户权限 这是中间三位r- x:其他用户权限 这是最后三位 1 该文件硬链接的数目。 root 文件的属主。root 文件的属主r o o t所在的缺省组(也叫做r o o t )。 3578 用字节来表示的文件长度,记住,不是K字节!Oct 14 04:44 文件的更新时间。 dmesg 文件名。 - rw- r-- r-- 文件类型为普通文件 文件属主可以读、写 同组用户可以读 其他用户可以读r-- --- --- 文文件属主可读,但不能写或执行 r-- r-- --- 文文件属主和同组用户(一般来说,是文件属主所在的缺省组)可读 r-- r-- r- - 文任何用户都可读,但不能写或执行 rwx r-- r- - 文文件属主可读、写、执行,同组用户和其他用户只可读 rwx r-x --- 文文件属主可读、写、执行,同组用户可读、执行 rwx r-x r- x 文文件属主可读、写、执行,同组用户和其他用户可读、执行 rw- rw- --- 文文件属主和同组用户可读、写 rw- rw- r- - 文文件属主和同组用户可读、写,其他用户可读 rw- rw- --- 文文件属主和同组用户及其他用户读可以读、写,慎用这种权限设置,因为任何用户都可以写入该文件 chmod [who] operator [permission] filenamewho的含义是: u 文件属主权限。g 同组用户权限。o 其他...

关于tablespace和table

今天拿测试库做练习,想来该做点什么,那么就建个tablespace吧。 第一次输入 SQL>CREATE TABLESPACE username DATAFILE '/SERVER/ora9/oradata/ora9 ' SIZE 100M AUTOEXTEND ON NEXT 5M MAXSIZE 200M; (后面回想的,前面怎么做的我在putty上也找不到了,SELECT了一个语句不知道不刷到哪里去了)然后发觉username应该是自己的用户名(傻了,-______-)继续写了下面这条 SQL>CREATE TABLESPACE atu DATAFILE '/SERVER/ora9/oradata/ora9/atu.dbf ' SIZE 100M AUTOEXTEND ON NEXT 5M MAXSIZE 200M; 然后第一条就成了今天郁闷的关键,因为在本来ora9是已经存在的文档目录所有.dbf文件都存放在这个下。 当我自己在linux环境下检查的时候发觉同时存在,就rm掉了,回到sqlplus下 SQL>shutdown immedaite;时候出现以下问题 ORA-01116: error in opening database file 15 ORA-01110: data file 15: '/SERVER/ora9/oradata/ora9' ORA-27041: unable to open fileLinux Error: 2: No such file or directory 无解,求助领导。 SQL>select file_id,file_name,tablespace_name from dba_data_files; 1 /SERVER/ora9/oradata/ora9/system01.dbf SYSTEM 2 /SERVER/ora9/oradata/ora9/hyf.dbf HYF 3 /SERVER/ora9/oradata/ora9/cwmlite01.dbf CWMLITE 4 /SERVER/ora9/oradata/ora9/drsys01.dbf DRSYS 5 /SERVER/ora9/oradata/ora9/indx01.dbf IND...