Свойства файла в Windows и Linux: что означают и как их посмотреть

Свойства файла в Windows и Linux: что означают и как их посмотреть Полезное

Свойства файла — это сведения, которые файловая система и ОС хранят о файле отдельно от его содержимого: имя, размер, даты, атрибуты, владелец и права доступа. По ним система решает, чем открыть файл, показывать ли его и кому разрешить чтение или запись.

Четыре слова здесь легко спутать, поэтому сразу разведем их:

  • свойство — любое сведение о файле (общее слово);
  • атрибут — флаг вида «включен/выключен», например «Только чтение» или «Скрытый» в Windows;
  • права доступа — кто и что может делать с файлом (читать, изменять, запускать); это отдельный механизм, а не атрибут;
  • метаданные содержимого — автор документа, исполнитель трека, камера на фото; их пишет не ОС, а сам формат файла.

Команды и вывод ниже проверены 23.09.2026: Linux — в контейнере Ubuntu 24.04, Python 3.14, PowerShell 7.6. Шаги Проводника описаны для Windows 11.

Сводная таблица свойств

Свойство Что означает Где в Windows Где в Linux
Имя Название файла в каталоге Проводник, «Свойства» -> «Общие» ls
Расширение Часть имени после последней точки, подсказка о формате Там же, вкладка «Общие», поле «Тип файла» Та же часть имени, но система на нее почти не опирается
Размер Число байт содержимого «Размер» и «На диске» ls -l, stat
Даты Создание, изменение, доступ «Создан», «Изменен», «Открыт» stat: Access, Modify, Change, Birth
Атрибуты Флаги: только чтение, скрытый, системный, архивный «Общие» -> «Атрибуты», кнопка «Другие» Отдельных флагов «скрытый» нет, скрытость — точка в начале имени
Владелец и права Кто владеет файлом и что разрешено остальным Вкладка «Безопасность» ls -l, stat, chmod, chown

Как посмотреть свойства файла

В Проводнике Windows

  1. Откройте Проводник и найдите файл.
  2. Щелкните по нему правой кнопкой мыши и выберите «Свойства» (или выделите файл и нажмите Alt+Enter).
  3. На вкладке «Общие» будут тип, приложение для открытия, расположение, размер, даты и атрибуты. На вкладке «Безопасность» — права, на «Подробно» — метаданные содержимого.

Командой в PowerShell

Тот же набор свойств PowerShell показывает одной командой. Пример запускался в PowerShell 7.6 под Linux, в Windows команда та же:

Set-Content -Path report.txt -Value "hello"
Get-Item report.txt | Format-List Name, BaseName, Extension, Length, CreationTime, LastWriteTime, LastAccessTime, Attributes

Фактический вывод в Linux-контейнере:

Name           : report.txt
BaseName       : report
Extension      : .txt
Length         : 6
CreationTime   : 09/23/2026 15:55:31
LastWriteTime  : 09/23/2026 15:55:31
LastAccessTime : 09/23/2026 15:55:31
Attributes     : Normal

Length = 6: пять букв плюс перевод строки. В Windows даты будут в формате вашей локали, а в Attributes у нового файла обычно стоит Archive.

Командой в Linux

printf 'hello\n' > notes.txt
printf 'secret\n' > .env
ls -la
stat notes.txt

Вывод (Ubuntu 24.04, запуск от root в контейнере):

-rw-r--r-- 1 root root    7 Sep 23 15:55 .env
-rw-r--r-- 1 root root    6 Sep 23 15:55 notes.txt
  File: notes.txt
  Size: 6           Blocks: 8          IO Block: 4096   regular file
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2026-09-23 15:55:26.363052806 +0000
Modify: 2026-09-23 15:55:26.363052806 +0000
Change: 2026-09-23 15:55:26.363052806 +0000
 Birth: 2026-09-23 15:55:26.363052806 +0000

Файл .env виден только с ключом -a: обычный ls -l его не показывает.

Имя и расширение

Имя уникально в пределах одного каталога. Важная разница: Windows не различает регистр (Report.txt и report.txt — один и тот же файл), а Linux различает, там это два разных файла.

Правило Windows (NTFS) Linux (ext4)
Длина имени До 255 символов До 255 байт (кириллица в UTF-8 — 2 байта на букву)
Зарезервированные имена CON, PRN, AUX, NUL, COM1, LPT1 и подобные Нет
Регистр Не различается Различается

В именах Windows нельзя использовать символы <, >, :, ", /, \, |, ? и *; в Linux запрещены только / и нулевой байт. Длина полного пути — отдельный лимит: старые программы Windows ограничены 260 символами, даже если длинные пути в системе включены.

Расширение — часть имени после последней точки. Windows по нему выбирает программу для открытия, но содержимое файла расширение не меняет: переименовав photo.png в photo.txt, вы получите ту же картинку, которую Блокнот покажет как мусор.

Проводник по умолчанию скрывает известные расширения. Включить показ: «Вид» -> «Показать» -> «Расширения имен файлов». Это полезно для безопасности: файл invoice.pdf.exe при скрытых расширениях выглядит как invoice.pdf, хотя это программа.

Размер: байты и место на диске

В Windows в свойствах два поля: «Размер» — сколько байт в файле, и «На диске» — сколько места он реально занимает. Диск выделяет место кластерами, поэтому файл из 6 байт займет целый кластер. В выводе stat выше то же самое: Size: 6, но Blocks: 8 — это 8 блоков по 512 байт, то есть 4096 байт на диске.

Размер не равен числу символов. Кириллическая буква в UTF-8 занимает 2 байта, это видно в примере на Python ниже. И еще одна деталь единиц: Проводник пишет «КБ», но считает по 1024 байта.

Даты: какая из них что значит

Windows Linux (stat) Что фиксирует
Изменен Modify (mtime) Последнее изменение содержимого
Открыт Access (atime) Последнее чтение (обновляется не всегда)
Создан Birth Появление файла, если файловая система это хранит
Нет прямого аналога Change (ctime) Изменение свойств: прав, владельца, имени

Частая ошибка — считать ctime в Linux «временем создания». Это время последнего изменения записи о файле: после chmod оно обновится, а дата создания — нет.

Время доступа система часто обновляет не при каждом чтении ради скорости, так что доказательством «файл открывали» оно не служит. Остальные даты тоже можно выставить вручную: touch -d '2020-01-01 10:00' a.txt в Linux, свойство CreationTime в PowerShell. В проверочном прогоне после touch -d поле Modify стало 2020-01-01, а Change — текущим моментом: подмену выдает именно ctime.

Атрибуты Windows

Атрибут Буква в attrib Что делает
Только чтение R Программы не должны изменять файл; удаление требует подтверждения
Скрытый H Проводник не показывает файл, пока не включен показ скрытых
Системный S Помечает файлы ОС; Проводник прячет их строже
Архивный A Ставится при изменении; программы резервного копирования по нему находят новые файлы

«Только чтение» и «Скрытый» меняются галочками на вкладке «Общие», остальные настройки (индексирование, сжатие, шифрование) — кнопкой «Другие». Из командной строки:

attrib +r +h report.txt
attrib report.txt
attrib -r -h report.txt

Важная граница: атрибуты — это не защита. «Скрытый» только прячет файл из списка, а «Только чтение» может снять любой, у кого есть право менять атрибуты. От чужих пользователей защищают права доступа.

Права доступа и владелец

Владелец — учетная запись, которой принадлежит файл; обычно это тот, кто его создал. Владелец может менять права на свой файл. Сменить владельца в Linux может только root (chown), в Windows — администратор через «Безопасность» -> «Дополнительно».

В Windows права хранятся списком (ACL): для каждого пользователя или группы отмечено, что разрешено — чтение, запись, изменение, полный доступ. Посмотреть их можно на вкладке «Безопасность» или командой icacls report.txt.

В Linux модель проще: три набора прав rwx для владельца, группы и всех остальных. Разберем строку -rw-r----- (права 640):

Позиция Значение Кто
- Обычный файл (d — каталог) —
rw- = 6 Чтение и запись Владелец
r-- = 4 Только чтение Группа
--- = 0 Нет доступа Остальные

Цифра — сумма: чтение 4, запись 2, выполнение 1. Команда chmod 640 notes.txt дает ровно эту строку, проверено ls -l.

Свойства файла из программы: пример на Python

Полный скрипт: создает файл, печатает его свойства, делает файл доступным только для чтения и пробует записать.

from pathlib import Path
from datetime import datetime
import stat

p = Path("report.txt")
p.write_text("Привет, файл!\n", encoding="utf-8")

st = p.stat()
print("Имя:       ", p.name)
print("Основа:    ", p.stem)
print("Расширение:", p.suffix)
print("Размер:    ", st.st_size, "байт")
print("Символов:  ", len(p.read_text(encoding="utf-8")))
print("Изменен:   ", datetime.fromtimestamp(st.st_mtime).isoformat(timespec="seconds"))
print("Права:     ", stat.filemode(st.st_mode))

# Делаем файл "только для чтения" и пробуем записать
p.chmod(0o444)
print("Права:     ", stat.filemode(p.stat().st_mode))
try:
    p.write_text("перезапись", encoding="utf-8")
except PermissionError as e:
    print("Ошибка:    ", type(e).__name__, e)
finally:
    p.chmod(0o644)
    p.unlink()

Вывод на Python 3.14 в Linux от обычного пользователя:

Имя:        report.txt
Основа:     report
Расширение: .txt
Размер:     24 байт
Символов:   14
Изменен:    2026-09-23T15:55:20
Права:      -rw-r--r--
Права:      -r--r--r--
Ошибка:     PermissionError [Errno 13] Permission denied: 'report.txt'

Строка «24 байт» при 14 символах — это кириллица в UTF-8. Дата будет вашей.

Тот же скрипт от root выводит все строки, кроме последней: ошибки нет, root записал файл, несмотря на права 444. Права Linux ограничивают обычных пользователей, а администратора — нет. В Windows chmod из Python управляет только атрибутом «Только чтение», а не списком прав ACL.

Как менять свойства безопасно

  1. Меняйте свойства одного файла, а не всей папки сразу. Рекурсивные команды вроде chmod -R 777 или массовая выдача «Полного доступа» открывают данные всем.
  2. Перед изменением прав в Windows сохраните текущий список: icacls умеет выгружать его в файл ключом /save и восстанавливать ключом /restore.
  3. После изменения проверьте результат: ls -l или stat в Linux, вкладка «Безопасность» или icacls в Windows.
  4. Перед отправкой документа или фото удалите личные метаданные: «Подробно» -> «Удаление свойств и личной информации». В фото там могут быть координаты съемки.

Если не получилось

Симптом Вероятная причина Что сделать
Файл не сохраняется, «Отказано в доступе» Атрибут «Только чтение» или нет права на запись Снять атрибут; проверить вкладку «Безопасность» или ls -l
Файла нет в папке, хотя он точно есть Атрибут «Скрытый» или имя с точкой в Linux Включить показ скрытых; ls -a
Файл открывается не той программой Расширение связано с другим приложением «Свойства» -> «Приложение» -> «Изменить»
Кнопка «Изменить» на вкладке «Безопасность» неактивна Не хватает прав Обратиться к владельцу или администратору

Выводы

  • Свойства файла — сведения о нем вне содержимого: имя, расширение, размер, даты, атрибуты, владелец и права доступа.
  • Атрибуты Windows («Только чтение», «Скрытый») — флаги удобства, а не защита; от других пользователей защищают права доступа.
  • Размер в байтах не равен числу символов и месту на диске: кириллица в UTF-8 занимает 2 байта, а диск выделяет место кластерами.
  • В Linux ctime — время изменения свойств, а не создания; даты файлов можно изменить вручную, поэтому доказательством они не служат.
  • Посмотреть все свойства можно в окне «Свойства» Проводника, командой Get-Item в PowerShell, ls -l и stat в Linux.

Где применяется / связь с практикой

Свойства файлов — повседневная работа администратора: найти, почему пользователь не может сохранить отчет, выдать права группе на общую папку, разобраться со скрытыми файлами после сбоя. В Windows-инфраструктуре к этому добавляются права на сетевые ресурсы, групповые политики и Active Directory.

Освойте тему на практике

Если хотите системно освоить администрирование Windows-серверов и рабочих станций, посмотрите курс «Администратор Windows». Чтобы сначала познакомиться с преподавателями и форматом, подойдут бесплатные открытые уроки Otus.

FAQ

Можно ли изменить дату создания файла?
Да. В PowerShell это делается присваиванием свойства CreationTime, в Linux дату изменения выставляет touch -d. Поэтому по датам нельзя уверенно судить об истории файла.

Почему у папки галочка «Только чтение» стоит в виде квадратика?
Для папок Проводник показывает этот атрибут в неопределенном состоянии: галочка относится к файлам внутри папки, а не к самой папке.

Чем скрытый файл Windows отличается от скрытого файла Linux?
В Windows скрытость — атрибут H, имя любое. В Linux скрытым по соглашению считается файл, имя которого начинается с точки; отдельного флага нет.

OTUS Журнал
Скидка 5% 12-19 октября на курсы (popup)
Бесплатные открытые уроки (поп-ап)