Spec-Zone.ru › Ansible 2.7

stat – Получение состояния файла или файловой системы

Новая версия с 1.3.

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Состояние

Обзор

  • Извлекает информацию о файле, аналогично команде linux/unix ‘stat’.
  • Для целей Windows используйте модуль win_stat вместо этого.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
checksum_algorithm
-
Добавлен в 2.0
    Варианты:
  • md5
  • sha1 ←
  • sha224
  • sha256
  • sha384
  • sha512
Алгоритм определения контрольной суммы файла. Вызовет ошибку, если хост не поддерживает указанный алгоритм.
Удаленный хост должен поддерживать указанный метод хеширования, md5 может быть недоступен, если хост соответствует стандарту FIPS-140.

Псевдонимы: checksum, checksum_algo
follow
boolean
    Варианты:
  • нет ←
  • да
Следовать ли символичным ссылкам.
get_attributes
boolean
Добавлен в 2.3
    Варианты:
  • нет
  • да ←
Получить атрибуты файла с помощью инструмента lsattr, если он доступен.

Псевдонимы: attr, attributes
get_checksum
boolean
Добавлен в 1.8
    Варианты:
  • нет
  • да ←
Возвращать ли контрольную сумму файла (по умолчанию sha1).
get_md5
boolean
    Варианты:
  • нет ←
  • да
Возвращать ли md5 сумму файла.
Вернет None, если это не обычный файл или если мы не можем использовать md5 (часто встречается на системах, соответствующих стандарту FIPS-140).
Значение по умолчанию для этого параметра изменилось с yes на no в Ansible 2.5 и будет удалено в Ansible 2.9.
Используйте get_checksum=true с checksum_algorithm=md5 для возврата md5 хэша в значении возврата checksum.
get_mime
boolean
Добавлен в 2.1
    Варианты:
  • нет
  • да ←
Использовать магию файлов и вернуть информацию о природе файла. Используется утилита 'file', присутствующая на большинстве систем Linux/Unix.
Это добавит поля `mime_type` и 'charset' в возврат, если возможно.
В 2.3 этот параметр изменился с 'mime' на 'get_mime', а значение по умолчанию изменилось на 'Да'.

Псевдонимы: mime, mime_type, mime-type
path
- / обязательно
Полный путь к файлу/объекту, для которого требуется информация.

Примечания

Примечание

  • Для целей Windows используйте модуль win_stat вместо этого.

Примеры

# Obtain the stats of /etc/foo.conf, and check that the file still belongs
# to 'root'. Fail otherwise.
- stat:
    path: /etc/foo.conf
  register: st
- fail:
    msg: "Whoops! file ownership has changed"
  when: st.stat.pw_name != 'root'

# Determine if a path exists and is a symlink. Note that if the path does
# not exist, and we test sym.stat.islnk, it will fail with an error. So
# therefore, we must test whether it is defined.
# Run this to understand the structure, the skipped ones do not pass the
# check performed by 'when'
- stat:
    path: /path/to/something
  register: sym

- debug:
    msg: "islnk isn't defined (path doesn't exist)"
  when: sym.stat.islnk is not defined

- debug:
    msg: "islnk is defined (path must exist)"
  when: sym.stat.islnk is defined

- debug:
    msg: "Path exists and is a symlink"
  when: sym.stat.islnk is defined and sym.stat.islnk

- debug:
    msg: "Path exists and isn't a symlink"
  when: sym.stat.islnk is defined and sym.stat.islnk == False


# Determine if a path exists and is a directory.  Note that we need to test
# both that p.stat.isdir actually exists, and also that it's set to true.
- stat:
    path: /path/to/something
  register: p
- debug:
    msg: "Path exists and is a directory"
  when: p.stat.isdir is defined and p.stat.isdir

# Don't do checksum
- stat:
    path: /path/to/myhugefile
    get_checksum: no

# Use sha256 to calculate checksum
- stat:
    path: /path/to/something
    checksum_algorithm: sha256

Значения возврата

Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:

Ключ Возвращено Описание
stat
сложный
успех
словарь, содержащий все данные stat, некоторые платформы могут добавить дополнительные поля

atime
float
успех, путь существует и пользователь может читать статистику
Время последнего доступа

Пример:
1424348972.575
attributes
список
добавлено в 2.3
успех, путь существует и пользователь может выполнить путь
список атрибутов файла

Пример:
['immutable', 'extent']
charset
строка
успех, путь существует и пользователь может читать статистику, установленный Python поддерживает это, и параметр `mime` был true, в случае ошибки вернётся 'unknown'.
кодировка символов файла

Пример:
us-ascii
checksum
строка
успех, путь существует, пользователь может читать статистику, путь поддерживает хеширование, и алгоритм хеширования доступен
хеш пути

Пример:
50ba294cdf28c0d5bcde25708df53346825a429f
ctime
float
успех, путь существует и пользователь может читать статистику
Время последнего обновления или создания метаданных (зависит от ОС)

Пример:
1424348972.575
dev
целое число
успех, путь существует и пользователь может читать статистику
Устройство, на котором находится inode

Пример:
33
executable
булево
добавлено в 2.2
успех, путь существует и пользователь может выполнить путь
Указывает, может ли вызывающий пользователь выполнить путь

exists
булево
успех
Существует ли фактически целевой путь или нет

Пример:
True
gid
целое число
успех, путь существует и пользователь может читать статистику
Числовой идентификатор, представляющий группу владельца

Пример:
1003
gr_name
строка
успех, путь существует и пользователь может читать статистику, установленный Python поддерживает это
Имя группы владельца

Пример:
www-data
inode
целое число
успех, путь существует и пользователь может читать статистику
Номер inode пути

Пример:
12758
isblk
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь блочным устройством

ischr
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь символьным устройством

isdir
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь каталогом

isfifo
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь именованной пайпом

isgid
булево
успех, путь существует и пользователь может читать статистику
Указывает, совпадает ли идентификатор группы вызывающего пользователя с идентификатором группы владельца

islnk
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь символьной ссылкой

isreg
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь обычным файлом

Пример:
True
issock
булево
успех, путь существует и пользователь может читать статистику
Указывает, является ли путь сокетом Unix-домена

isuid
булево
успех, путь существует и пользователь может читать статистику
Указывает, совпадает ли идентификатор пользователя, вызвавшего, с идентификатором владельца

lnk_source
строка
успех, путь существует и пользователь может читать статистику, и путь является символьной ссылкой
Целевой объект символьной ссылки, нормализованный для удалённой файловой системы

Пример:
/home/foobar/21102015-1445431274-908472971
lnk_target
строка
добавлено в 2.4
успех, путь существует и пользователь может читать статистику, и путь является символьной ссылкой
Целевой объект символьной ссылки. Обратите внимание, что относительные пути остаются относительными

Пример:
../foobar/21102015-1445431274-908472971
md5
строка
успех, путь существует и пользователь может читать статистику, путь поддерживает хеширование и md5 поддерживается
md5 хеш пути; это будет удалено в Ansible 2.9 в пользу значения возвращаемого checksum

Пример:
f88fa92d8cf2eeecf4c0a50ccc96d0c0
mimetype
строка
успех, путь существует и пользователь может читать статистику, установленный Python поддерживает это, и параметр `mime` был true, в случае ошибки вернётся 'unknown'.
магические данные файла или тип MIME

Пример:
application/pdf; charset=binary
mode
восьмеричный
успех, путь существует и пользователь может читать статистику
Разрешения Unix файла в восьмеричном формате

Пример:
1755
mtime
float
успех, путь существует и пользователь может читать статистику
Время последней модификации

Пример:
1424348972.575
nlink
целое число
успех, путь существует и пользователь может читать статистику
Количество ссылок на inode (жёсткие ссылки)

Пример:
1
path
строка
успех и если путь существует
Полный путь к файлу/объекту, для которого нужно получить данные

Пример:
/path/to/file
pw_name
строка
успех, путь существует и пользователь может читать статистику, и установленный python поддерживает это
Имя пользователя владельца

Пример:
httpd
readable
логическое
добавлено в 2.2
успех, путь существует, и пользователь может читать путь
Указывает, имеет ли вызывающий пользователь право читать путь

rgrp
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли группа владельца право на чтение

Пример:
True
roth
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеют ли другие право на чтение

Пример:
True
rusr
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли владелец право на чтение

Пример:
True
size
целое число
успех, путь существует и пользователь может читать статистику
Размер в байтах для обычного файла, количество данных для некоторых специальных файлов

Пример:
203
uid
целое число
успех, путь существует и пользователь может читать статистику
Числовой идентификатор, представляющий владельца файла

Пример:
1003
wgrp
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли группа владельца право на запись

woth
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеют ли другие право на запись

writeable
логическое
добавлено в 2.2
успех, путь существует и пользователь может записать в путь
Указывает, имеет ли вызывающий пользователь право на запись в путь

wusr
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли владелец право на запись

Пример:
True
xgrp
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли группа владельца право на выполнение

Пример:
True
xoth
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеют ли другие право на выполнение

Пример:
True
xusr
логическое
успех, путь существует и пользователь может читать статистику
Указывает, имеет ли владелец право на выполнение

Пример:
True


Статус

  • Этот модуль гарантирует отсутствие изменений интерфейса, несовместимых со старыми версиями, в будущем. [stableinterface]
  • Этот модуль поддерживается Командой ядра Ansible. [core]

Поддержка Red Hat

Дополнительную информацию о поддержке этого модуля компанией Red Hat можно найти в этой статье базы знаний Red Hat.

Авторы

  • Bruce Pennypacker (@bpennypacker)

Подсказка

Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/stat_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API