puppet远程创建硬连接文件失败

Q: puppet能否创建硬链接,follow参数作用到底是什么?

     45 #file {'/tmp/aaa':
     46 #       ensure => present,
     47 #       target => "/root/install.log",
     48 #       path => "/tmp/aaa",
     49         #links => manage,
     50         #links => follow,
     51 #       source => "/root/install.log",  
     52 #}

尝试用ensure=link的方法,创建一个/root/install.log的硬链接到/tmp/aaa,但是没有成功,第一次创建了一个属性一致的空文件,第二次创建了一个软连接。没有创建预料中的硬链接!

    [root@puppet2 tmp]# puppet agent -t
    //第一次拉取
    [root@puppet2 tmp]# ll
    total 8
    -rw-r--r-- 1 root root  0 Jun 13 06:09 aaa
    //空文件
    [root@puppet2 tmp]# puppet agent -t
    //第二次拉取
    lrwxrwxrwx 1 root root 17 Jun 13 06:10 aaa -> /root/install.log    //变成了软连接
    -rw-r--r-- 1 root root  0 Jun 13 06:10 date.log

A:

1.将ensure=present选项变为ensure=link

    file {'/tmp/aaa':
     46         ensure => link,
     47         target => "/root/install.log",
     48         path => "/tmp/aaa",
     49 #       links => manage,
     50         links => follow,
     51 #       source => "/root/install.log",  
     52 }

直接变成了软连接

    lrwxrwxrwx 1 root root 17 Jun 13 06:15 aaa -> /root/install.log
    -rw-r--r-- 1 root root  0 Jun 13 06:14 date.log

2.更换写法,不用link,用source

     45 file {'/tmp/aaa':
     46         ensure => link,
     47 #       target => "/root/install.log",
     48         path => "/tmp/aaa",
     49 #       links => manage,
     50 #       links => follow,
     51         source => "/root/install.log",
     52 }

结果:

    [root@puppet2 tmp]# ll -i
    total 24
    658875 -rw-r--r-- 1 root root 14197 Jun 13 06:17 aaa

    //源文件
    [root@puppet2 ~]# ll -i
    total 48
    141308 -rw-------. 1 root root  1137 Jun  8 09:12 anaconda-ks.cfg
    130051 -rw-r--r--. 2 root root 14197 Jun  8 09:12 install.log

两个文件虽然内容一致,但是并不是硬链接,从iNode号可以看出,只是复制了一遍文件。

结论:
①在puppet中,并不能创建硬链接。

②第一次拉取空文件是因为“follow”,这个选项生效了,成功将源文件所有信息都复制了一遍,但是只复制了属性而没有复制内容,第二次拉取target生效,将文件变成了软连接。但是并没有办法创建硬链接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值