linux 建立软连接

前段时间搞一个数据库迁移的时候:

                          由于是研发环境,直接迁移到一个已成型的服务器上,由于是直接copy的,碰到点问题,   目标服务器这个目录的空间不够,这个时候我把数据库copy到另外一个目录,在打开的时候报spfile记录的文件不对,这个时候我改好了spfile的目录,又报了数据文件不对,其实这个很简单,

                比如我原来记录的是在目录/home/oracle/a 现在到了/home/oracle/b,那原来指定的数据文件目录肯定不对,这个时候可以使用软连接,将目录替换下就好了。

直接将ln -s /home/oracle/a /home/oracle/b就可以了:

这里就是ln -s 了,我们来看下ln :

SYNOPSIS
       ln [OPTION]... [-T] TARGET LINK_NAME   (1st form)
       ln [OPTION]... TARGET                  (2nd form)
       ln [OPTION]... TARGET... DIRECTORY     (3rd form)
       ln [OPTION]... -t DIRECTORY TARGET...  (4th form)

DESCRIPTION
       In  the 1st form, create a link to TARGET with the name LINK_NAME.  In the 2nd form, create a link to TARGET in
       the current directory.  In the 3rd and 4th forms, create links to each TARGET in DIRECTORY.  Create hard  links
       by default, symbolic links with --symbolic.  When creating hard links, each TARGET must exist.

       Mandatory arguments to long options are mandatory for short options too.

       --backup[=CONTROL]
              make a backup of each existing destination file

       -b     like --backup but does not accept an argument

       -d, -F, --directory
              allow the superuser to attempt to hard link directories (note: will probably fail due to system restric-
              tions, even for the superuser)

       -f, --force
              remove existing destination files

       -n, --no-dereference
              treat destination that is a symlink to a directory as if it were a normal file

       -i, --interactive
              prompt whether to remove destinations
[oracle@db925 script]$ 
[oracle@db925 script]$ man ln
LN(1)                            User Commands                           LN(1)

NAME
       ln - make links between files

SYNOPSIS
       ln [OPTION]... [-T] TARGET LINK_NAME   (1st form)
       ln [OPTION]... TARGET                  (2nd form)
       ln [OPTION]... TARGET... DIRECTORY     (3rd form)
       ln [OPTION]... -t DIRECTORY TARGET...  (4th form)

DESCRIPTION
       In  the 1st form, create a link to TARGET with the name LINK_NAME.  In the 2nd form, create a link to TARGET in
       the current directory.  In the 3rd and 4th forms, create links to each TARGET in DIRECTORY.  Create hard  links
       by default, symbolic links with --symbolic.  When creating hard links, each TARGET must exist.

       Mandatory arguments to long options are mandatory for short options too.

       --backup[=CONTROL]
              make a backup of each existing destination file

       -b     like --backup but does not accept an argument

       -d, -F, --directory
              allow the superuser to attempt to hard link directories (note: will probably fail due to system restric-
              tions, even for the superuser)

       -f, --force
              remove existing destination files

       -n, --no-dereference
              treat destination that is a symlink to a directory as if it were a normal file

       -i, --interactive
              prompt whether to remove destinations

       -s, --symbolic
              make symbolic links instead of hard links

       -S, --suffix=SUFFIX
              override the usual backup suffix

       -t, --target-directory=DIRECTORY
              specify the DIRECTORY in which to create the links

       -T, --no-target-directory
              treat LINK_NAME as a normal file

       -v, --verbose
              print name of each file before linking

       --help display this help and exit

       --version
              output version information and exit

       The backup suffix is ‘~’, unless set with --suffix or SIMPLE_BACKUP_SUFFIX.  The version control method may  be
       selected via the --backup option or through the VERSION_CONTROL environment variable.  Here are the values:

       none, off
              never make backups (even if --backup is given)

       numbered, t
              make numbered backups

       existing, nil
              numbered if numbered backups exist, simple otherwise

       simple, never
              always make simple backups

 

 

我们看一个测试例子:

[oracle@db925 ~]$ ln -s /home/oracle/source /home/oracle/target/u01
[oracle@db925 ~]$ cd /home/oracle/source
[oracle@db925 source]$ ls
source.txt
[oracle@db925 source]$ cd /home/oracle/target/
[oracle@db925 target]$ ls
target.txt  u01
[oracle@db925 target]$ ls -ltr
total 0
-rw-r--r-- 1 oracle oinstall  0 Dec  5 15:01 target.txt
lrwxrwxrwx 1 oracle oinstall 19 Dec  5 15:02 u01 -> /home/oracle/source
[oracle@db925 target]$ cd u01
[oracle@db925 u01]$ ls
source.txt


其中source 为实际存在的,而u01为虚假的目录:

 

删除软连接:

[oracle@db925 u01]$ rm -rf /home/oracle/target/u01      ---跟删除普通目录一样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值