我的系统中有一个卷组,是用单个物理卷创建的。
我正在创建两个逻辑卷 - 一个大小为 100M,另一个大小为 512M。
在LV上创建的100M大小的文件不显示出生时间属性。512M尺寸的LV没有这个问题。
有什么线索可以解释为什么会这样吗?
物理卷和卷组:
# pvdisplay
--- Physical volume ---
PV Name /dev/sda4
VG Name VG_System
PV Size 400.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 102399
Free PE 38099
Allocated PE 64300
PV UUID Awnq0n-24v1-Z53P-MC09-3Fvv-dc0r-6QvAyX
# vgdisplay VG_System
--- Volume group ---
VG Name VG_System
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 25
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV …
Run Code Online (Sandbox Code Playgroud) 我正在使用 Fedora-16 和 ext4。突然使用 stat 命令我可以看到一个叫做“出生”的东西。
# stat history_file1.txt
File: `history_file1.txt'
Size: 8944 Blocks: 24 IO Block: 4096 regular file
Device: 802h/2050d Inode: 4192 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2012-01-18 18:11:10.799900150 +0530
Modify: 2012-01-18 18:11:10.867908793 +0530
Change: 2012-01-18 18:11:10.867908793 +0530
Birth: -
Run Code Online (Sandbox Code Playgroud)
搜索手册页显示出生实例
%w 文件出生时间,人类可读;- 如果未知
%W 文件出生时间,从Epoch开始的秒数;0 如果未知
这是新增的字段吗?这个字段相对于 inode 存储在哪里?
我想将文件复制到远程节点,但前提是该文件存在。我把它复制到/tmp/webapps/partner.war
我的任务是:
- local_action: stat path="/tmp/webapps/{{ application }}.war"
register: war
- name: Copy warfile
copy: src=/tmp/webapps/{{ application }}.war dest=/tmp/deploy/{{ stage }}/{{ application }}.war
when: war.stat.exists == true
Run Code Online (Sandbox Code Playgroud)
但是 stat 总是告诉我,该文件不存在。如果我手动运行 stat,它会显示文件在那里。
结果:
TASK: [deploy | stat path="/tmp/webapps/{{ application }}.war"] ***************
<127.0.0.1> REMOTE_MODULE stat path="/tmp/webapps/partner.war"
<127.0.0.1> EXEC ['/bin/sh', '-c', 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367 && chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367 && echo $HOME/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367']
<127.0.0.1> PUT /tmp/tmpzrV_Ne TO /var/lib/awx/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367/stat
<127.0.0.1> EXEC ['/bin/sh', '-c', u'LANG=C LC_CTYPE=C /usr/bin/python /var/lib/awx/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367/stat; rm -rf /var/lib/awx/.ansible/tmp/ansible-tmp-1433920640.68-144173277081367/ >/dev/null 2>&1']
ok: [example.com -> …
Run Code Online (Sandbox Code Playgroud) 我想确保没有人更改文件。为了实现这一点,我不仅要检查文件的 MD5 总和,还要检查其大小,因为据我所知,这个额外的简单检查可以使伪造复杂化几位数字。
我可以相信stat
返回的尺寸吗?我不是说是否对stat
自身进行了更改。我没那么深。但是,例如,是否可以stat
通过破解目录文件来损害返回的文件大小?或者通过类似的方式,不需要超级用户权限?
它是Linux。