Средства для восстановления/сброса пароля Windows 10/8/7.
Что делать, если я забыл или потерял пароль администратора в Windows? Это практически самый распространенный вопрос пользователей ПК, которые они могут задать. Если Вы не хотите, сохранять файлы и приложения на вашем компьютере, вы можете отформатировать ваш жесткий диск и сделать чистую установку системы. Но это не всегда так бывает. Я собрал список из 3 лучших инструментов, которые помогут вам легко восстановить/сбросить потерянные пароли в Windows 10/8/7.
Программа Offline NT Password & Registry Editor работает в автономном режиме и может сбросить пароль, а также это программа может редактировать реестр – это одно из самых популярных программных обеспечений для редактирования паролей Windows. Оно доступно уже около двух десятилетий. Это программное обеспечение прекрасно работает на Windows 10/8/7. Но после того, как Microsoft усилило некоторые аспекты безопасности в Windows 10 после её обновления, эта программа может не работать.
Этот инструмент ориентирован на продвинутых пользователей, поскольку он использует среду командной строки, и обычным пользователям, вероятно, будет трудно его понять. Выполните следующие действия, чтобы использовать программу Offline NT Password & Registry Editor, чтобы сбросить забытый пароль в Windows:
- Скачайте образ компакт-диска Offline NT Password & Registry Editor, и запишите его на диск.
- Измените последовательность загрузки в BIOS и настройте ваш компьютер для загрузки с компакт-диска.
3. Программа будет выводить список из всех установок Windows которые она найдёт на вашем жёстком диске.
4. Введите номер вашей заблокированной установки Windows и нажмите Enter. В следующем окне введите 1 и нажмите Enter для загрузки куста реестра Sam для редактирования.
5. Введите 1, чтобы выбрать вариант “сброс пароля [Sam]”.
6. Введите 1, чтобы выбрать вариант “редактировать пользовательские данные и пароли” .
7. Далее, введите избавление от заблокированных пользователей Windows и нажмите Enter.
8. Введите 1, чтобы выбрать вариант “чистый (пустой) пароль пользователя”.
9. Теперь вы успешно удалили пароль для входа. Нажмите клавишу Q, чтобы выйти, а затем введите Y, чтобы сохранить сделанные исправления в вашем реестре!
Содержание:
Самым быстрым и простым методом восстановления пароля учетной записи Windows является изменение пароля через учетную запись Администратора.
Данный способ состоит из следующих шагов:
Шаг 1. Входим в учетную запись Администратора при загрузке ОС.
Шаг 2. Нажимаем по кнопке «Пуск» правой клавишей мыши и выбираем «Панель управления».
Шаг 3. В открывшемся окне выбираем раздел «Учетные записи пользователей».
Шаг 4. Следом за этим выбираем пункт «Изменение типа записи».
Шаг 5. В открывшемся окне выбираем запись, пароль которой необходимо изменить, и кликаем по пункту «Изменить пароль».
Шаг 6. В открывшемся окне достаточно заполнить необходимые поля и подтвердить изменение пароля соответствующей кнопкой.
После подтверждения пароль будет изменен. Стоит отметить, что данный способ подойдет всем, кто имеет доступ к учетной записи Администратора. Если был утерян пароль записи Администратора, то следует прибегнуть к другим мерам, описанным ниже.
Использовать программу сброса пароля из набора BootPass
Если забыл пароль Windows 7 или другой ОС, нужно скачать набор программ BootPass, предназначенный для создания загрузочной USB-флешки, и приложение для записи последней — например, Rufus.
- 01 Вставьте флешку в компьютер и запустите Rufus.
- 02 Выберите в приложении ваше USB-устройство и распакованный образ BootPass .
- 03 Затем запустите процесс создания загрузочного носителя.(На эту работу программе понадобится некоторое время, поэтому запаситесь терпением.)
После загрузки с флешки вы увидите пункты меню на чёрном фоне, из числа которых вам нужно выбрать Password Reset. Загрузка продолжится, и вы увидите небольшое окно, в котором вам понадобится выбрать учётную запись пользователя. Приложение предупредит вас о том, что сейчас будет выполнен сброс пароля в соответствующем аккаунте. Согласитесь с предложенным действием, а после его выполнения перезагрузите компьютер. Не забудьте перед перезагрузкой извлечь USB-флешку или повторно войти в BIOS, чтобы указать в качестве первого загрузочного устройства ваш жёсткий диск.
Вариант 2
Если первый вариант по каким-либо причинам у вас не заработал — попробуйте инструмент Recover My Password (от Lazesoft). Отличается он тем, что самостоятельно подготавливает флешку + обладает высокой совместимостью (поддерживаются практически все версии Windows, начиная с 2000).
Lazesoft Recover My Password
- она позволяет сбрасывать пароль во всех популярных версиях Windows: 2000, XP, 2003, Vista, 7, 8, 10 (32/64 bits);
- поддерживает файловые системы NTFS, FAT32, FAT;
- поддерживает жесткие диски (IDE, SCSI, SATA, 1394, USB, SAS, RAID Drivers);
- поддерживает GPT диски;
- поддерживает UEFI и BIOS;
- ее можно записать на CD/DVD/USB-flash/USB-HDD и пр. носители;
- программа весит всего ~30 МБ, поэтому ее вполне можно скачать даже с медленным или лимитируемым интернет-подключением;
- ну и главное: при работе с ней вам нигде не нужно будет работать с командной строкой, разбираться в коде, или делать еще что-то сложное — программа рассчитана на начинающих пользователей!
В общем-то, именно поэтому я и рекомендую ее в этой статье, и покажу все действия, которые нужно выполнить.
1) Создание загрузочной аварийной флешки
Скачивание и установку утилиты я опускаю (они стандартны и с ними разберется каждый. ).
После запуска утилиты — нажмите на кнопку «Burn Bootable CD/USB Disk» .
Создание загрузочного носителя
Далее укажите версию ОС Windows у которой вы хотите сбросить пароль .
Ремарка! Отмечу, что я, выбрав вариант «Windows 10 64 bits», спокойно использовал флешку и для удаления паролей в Windows 7/8 (т.е. флешка, по сути, получается универсальной). Однако допускаю, что с некоторыми версиями ОС такое может не пройти.
Выбираем ОС, для которой сбросим пароль (Важно! У меня подобная аварийная флешка работает на всех версиях ОС, вне зависимости от того, что я тут выбрал. ).
Далее указываете букву USB-флеш накопителя (обратите внимание, что утилита предлагает также записать CD/DVD диск, или создать образ ISO).
Выбираем носитель — диск, флешка и пр.
Через 3-5 мин. флешка будет готова (обратите внимание на сообщение, если все OK — увидите «The recovery disc is now ready» как на скрине ниже).
2) Загрузка с подготовленной флешки (Live CD)
Теперь необходимо подключить флешку к тому компьютеру, где вы забыли пароль от ОС Windows, и загрузиться с нее . Для этого необходимо воспользоваться:
- либо загрузочным меню (Boot Menu);
- либо зайти в настройки BIOS (UEFI) и поменять приоритет загрузки.
*
Ремарка!
Темы эти достаточно обширны, и если вы не представляете, о чем даже идет речь, то рекомендую ознакомиться вот с этими статьями (там на доступном языке я попытался объяснить, как и что делать).
1) Как загрузиться с USB-флешки или внешнего HDD — инструкция
2) Как войти в BIOS (UEFI) на компьютере, ноутбуке — инструкция
Чаще всего для входа в BIOS (UEFI) используются кнопки F2 и DEL (нажимать лучше всего несколько раз и сразу после включения компьютера). В BIOS (UEFI) необходимо открыть Boot Menu (загрузочное меню). Часто раздел загрузки называется просто «Boot» .
В загрузочном меню необходимо указать тот накопитель, с которого вы хотите загрузиться (ориентируйтесь по названию, у флешек обычно значится что-то вроде «Kingston. «, «Transcend. » и т.д.).
Начинаем загрузку с нашей флешки
Еще одно фото настройки BIOS ноутбука для загрузки с флешки (Boot раздел в BIOS)
В общем, если загрузка с флешки прошла успешно, вы должны увидеть «черный» экран с предложением загрузить «Lazesoft Live CD» — выбираем этот вариант и жмем Enter.
Live CD — запускаем инструмент
3) Сбрасываем непосредственно сам пароль
После загрузки с флешки, у вас автоматически должно открыться окно с предложением сброса (Reset Password Windows, см. скрин ниже ). Просто нажмите кнопку «Next» .
Сброс пароля в Windows (Reset Password Windows)
Если у вас такое окно не появилось (либо случайно его закрыли), нажмите по ПУСК/Lazesoft Recovery My Password (как на фото ниже).
Если вдруг окна авто-запуска не было.
Далее необходимо указать вашу ОС Windows. Вообще, если у вас установлена одна ОС Windows — то программа сама автоматически ее выберет (если у вас несколько ОС на диске — то нужно вручную указать требуемую).
Выбираем текущую ОС Windows
В следующем шаге вы должны увидеть пользователей, которые зарегистрированы в выбранной Windows. Вам необходимо выбрать ту учетную запись, для который вы хотите удалить пароль.
Кстати, утилита также показывает, какая из учетных записей является администраторской.
Выбираем учетную запись пользователя
Последний шаг : необходимо нажать на кнопку «Reset|Unlock» (сброс/разблокировка).
Reset/Unlock — жмем кнопку
Если операция успешно завершена — увидите небольшое окно с сообщением «The Password reset successfully» . Пример представлен ниже.
Пароль удачно сброшен, выходим
После чего перезагружайте компьютер/ноутбук и попробуйте войти в свою учетную запись.
Осталось только войти. Задача решена!
Почти наверняка, если вы все сделали аналогично советам выше — вы без труда войдете в свою учетную запись, т.к. парольная защита была отключена/разблокирована.
В целом, данный способ достаточно простой, универсальный и доступный для начинающих пользователей.
Создание загрузочного диска / флешки с программой Reset Windows Password и её запуск
Программу вы можете скачать по ссылке:
После того как программа скачается необходимо записать её на диск или флешку. Инструкция по записи программы в виде файла ISO на CD/DVD диск находится вот здесь, а по записи программы в ISO на флешку — вот здесь.
Поскольку современные ноутбуки можно частенько встретить без дисковода для чтения дисков, то, думаю, большинству подойдёт способ записи программы на флешку, тем более она есть, пожалуй, у каждого владельца компьютера.
После того как вы запишите программу на диск или флешку, её необходимо запустить. Для этого следует перезагрузить компьютер и настроить ваш BIOS, чтобы компьютер грузился не как обычно с жёсткого диска, а с записанной флешки или CD/DVD диска.
В отдельной статье я давал инструкцию по настройке BIOS на загрузку компьютера с диска или флешки, прочтите её если испытываете трудности с загрузкой программы:
У каждого компьютера может быть своя особенность настройки загрузки с определённого устройства, поэтому чётких рекомендаций дать не получится. Но статья по ссылке выше должна помочь большинству.
Когда программа начнёт запускаться, вы увидите окно, похожее на загрузку обычной Windows 7:
Advanced PDF Password Recovery PROFESSIONAL 5.06 + Serial
- Windows / Пароли / Восстановление данных / PDF
- warezon
- 202
- 22-09-2016, 20:03
- 0
Название: Advanced PDF Password Recovery PROFESSIONAL 5.06 + Serial Размер: 41,69 mb Разработчик: ElcomSoft Co. Ltd. Операционка: Windows 8, 7, Vista, XP Язык интерфейса: Eng, Rus Дата: 22-09-2016, 20:03
Advanced PDF Password Recovery (APDFPR) – мощная и профессиональная программа, которая необходима для расшифровки PDF файлов, которые непосредственно были защищены паролем. Для формата PDF можно устанавливать 2 типа паролей, а именно: owner и user. User необходим для для открытия, а также для.
:: PasswdFinder
Небольшая утилита, которая помогает находить/восстанавливать потерянные пароли. После того как программа запущенна, окно программы покажет все пароли, сохраненные веб-браузерами, почтовыми клиентами, пейджерами, клиентами FTP и другими программами.
Браузеры: Apple Safari, Flock, Google Chrome 1.x — 6.x, Internet Explorer 4.x — 9.x, Opera 6.x — 11.x, Mozilla Browser, Mozilla Firefox, Mozilla SeaMonkey.
Программы обмена быстрыми сообщениями: RQ 0.9, AIM Pro, AOL Instant Messenger (older versions), Digsby, Excite Private Messenger 1.x, Faim 0.1, GAIM 1.x, Gizmo Project, Google Talk, ICQ 99b-2003b, Lite 4, Lite 5, IM2 (Messenger 2) 1.5.x, JAJC (Just Another Jabber Client), Miranda IM 0.2.x- 0.9.x, MSN Messenger 1.x-7.x, MySpaceIM 1.0, Odigo 4, Paltalk, Pandion 2.5, Pidgin, PSI, QIP 2005a, QIP.Online, SIM 0.9, Trillian 0.x, 2, 3, Trillian Astra, Windows Live Messenger, Windows Messenger, Yahoo! Messenger 3.x-6.x
Почтовые клиенты: Becky 2.x, Eudora/Eudora Light, Forte Agent 3.x, Gmail Notifier, Group Mail Free, IncrediMail, iScribe/nScribe 1.x, Mail Commander 8.x, Mail.Ru Agent 4.x — 5.x, Microsoft Outlook 2000, 2002, 2003, 2007, 2010, Microsoft Outlook Express 6.0, Mozilla Thunderbird 1.x — 3.x, Opera Email Client, PocoMail 3.x — 4.x,POP Peeper 3.x, The Bat! 1.x — 4.x, Vypress Auvis 2.x, Windows Live Mail, Windows Mail
Фтп клиенты: 32bit FTP, BitKinex 3.0.8, BulletProof FTP Client 1.x, 2.x, 2009, Classic FTP PC, CoffeeCup FTP 3.x, Core FTP 2.x, CuteFTP Home/Pro, DirectFTP, Directory Opus, ExpanDrive 1.8, FAR Manager 1.6x, 1.7x, 2.x, FFFTP 1.x, FileZilla 2.x, FlashFXP 1.x-3.x, Fling, FreeFTP, Frigate3 FTP 3.x, FTP Commander Pro/Deluxe, FTP Control 4, FTP Navigator, FTP Uploader, FTPExplorer 7.x, FTPRush 1.x, LeapFTP, NetDrive, SecureFX, SmartFTP 1.x — 4.x, SoftX FTP Client, TurboFTP 5.x — 6.x, UltraFXP 1.x, Web Site Publisher 2.1.0, WebDrive, Windows/Total Commander 4.x — 7.x, WinSCP, WS_FTP 5.x — 10.x, 12 Home/Pro, 2007
Другие программы: Absolute Poker, Advanced Dialer 2.x, ASP.NET Account, Cake Poker 2.0, CamFrog 3.x, Cisco VPN Client 5, ClubTimer 2.x, Dialer Queen 1.x, Download Master 4.x — 5.x, EType Dialer 1.x, FlashGet (JetCar) 1.x, FlexibleSoft Dialer 2.x-4.x, FreeCall 3.x, Full Tilt Poker, GetRight 5, Internet Download Accelerator 5, MuxaSoft Dialer 3.x — 4.x, PartyPoker, PC Remote Control, PokerStars, Punto Switcher 2.x, Remote Desktop Connection, Screen Saver Win9x, The Bee 1.x, Titan Poker, UPSMon 2.8, VDialer 3, Windows 9x Cached Network passwords, Windows Cached Credentials (.NET Passport, Domain and Network passwords), Windows Remote Access Service (RAS), VPN and Dial-up passwords, WinVNC 3.x
Браузеры
В браузере часто хранятся десятки, а то и сотни паролей. Понятное дело, если ты не используешь один пароль на все случаи жизни (а это не лучшая идея), запомнить пароли от всех сайтов и форумов бывает проблематично.
Если ты забыл важный пароль и не хочешь ломать себе голову, качай и ставь программу WebBrowserPassView. Ты будешь удивлен: она с легкостью извлечет пароли из Internet Explorer, Edge, Chrome, Opera, Safari, Firefox и Yandex Browser, причем поддерживаются самые новые версии. Лично я тестировал эту программу с IE, Firefox, Chrome и Opera — ни в одном случае не возникло осечек.
Перед запуском WebBrowserPassView желательно отключить антивирус, поскольку некоторые будут жаловаться, что это малварь. Результат восстановления показан на скриншоте. Не обессудь, но колонку Password и часть User Name я замазал.
Результат работы WebBrowserPassView
Выдели пароли, которые хочешь запомнить, выполни команду File — Save Selected Items. Выделенные пароли будут сохранены в обычный текстовый файл такого формата:
И конечно, программа годится для извлечения паролей на чужой машине. Если у тебя есть локальный доступ или удаленный — через RDP или TeamViewer, то заполучить пароли будет несложно.
Что есть файловая система?
Вам когда-нибудь требовалось отформатировать новый жесткий диск или USB-накопитель, и были даны варианты выбора из аббревиатур, таких как FAT, FAT32 или NTFS? Или вы однажды пытались подключить внешнее устройство, но ваша операционная система не смогла его определить? Вас иногда расстраивает, сколько времени требуется вашей операционной системе на поиск файла?Если вы сталкивались с чем-то из вышеперечисленного или просто кликнули мышью, чтобы найти файл или приложение на своем компьютере, значит, вы на собственном опыте узнали, что такое файловая система.
Многие люди могут не использовать явную методологию организации их личных файлов на ПК (статья_что_такое_файловая_система.docx). Однако абстрактная концепция организации файлов и каталогов для любого устройства с постоянной памятью должна быть очень систематичной при чтении, записи, копировании, удалении и взаимодействии с данными. Эта задача операционной системы обычно назначается файловой системе.
Есть много разных способов организации файлов и каталогов. Если просто представить себе картотечный шкаф с бумагами и папками, нужно будет учесть многие вещи при разработке системы для извлечения ваших документов. Вы бы упорядочили папки в алфавитном или обратно-алфавитном порядке? Вы бы разместили часто используемые файлы в передней или задней части картотеки? Как бы вы поступили с дубликатами, будь то намеренно (для избыточности) или случайно (назвав два файла одинаково)? Это всего лишь несколько аналогичных вопросов, на которые необходимо ответить при разработке файловой системы.
В этой статье мы глубоко погрузимся в то, как современные компьютеры решают эти проблемы. Мы рассмотрим различные роли файловой системы в более широком контексте операционной системы и физических дисков, и в дополнение, как файловые системы разработаны и реализованы.
Постоянные данные: Файлы и каталоги
Современные операционные системы становятся всё более сложными и нуждаются в управлении различными аппаратными ресурсами, планировании процессов, виртуализации памяти и многих других задачах. Когда дело доходит до данных, многие аппаратные средства, типа кэша и ОЗУ, были разработаны для ускорения времени доступа и обеспечения того, чтобы часто используемые данные находились “рядом” с процессором. Однако после выключения компьютера останется только информация, хранящаяся на постоянных устройствах, таких как жесткие диски (HDD) или твердотельные накопители (SSD). Таким образом, ОС должна особенно заботиться об этих устройствах и данных внутри, поскольку именно здесь пользователи будут хранить нужные им данные.
Две самые важные абстракции, разработанные за всё время для хранения — это файл и каталог. Файл — это линейный массив байтов, каждый из которых вы можете прочитать или записать. В то время как в пользовательском пространстве мы можем придумать умные имена для наших файлов, под капотом обычно находятся числовые идентификаторы для отслеживания имён файлов. Исторически сложилось так, что эта базовая структура данных часто ссылается на её индексный дескриптор inode. Интересно, что сама ОС мало что знает о внутренней структуре файла (т. е. является ли он изображением, видео или текстовым файлом); Фактически, всё, что ему нужно знать, — это как записать байты в файл для постоянного хранения и убедиться, что он сможет извлечь их позже при вызове.
Вторая основная абстракция — это каталог. На самом деле, под капотом, каталог — это просто файл, но он содержит очень специфический набор данных: список удобочитаемых имён сопоставленных с низкоуровневыми именами. На практике, это означает, что он содержит список других каталогов или файлов, которые в совокупности могут формировать дерево каталогов, в котором хранятся все файлы и каталоги.
Такая организация достаточно выразительна и масштабируема. Всё, что вам нужно, это указатель на корень дерева каталогов (это будет первый индексный дескриптор inode в системе), а оттуда вы сможете получить доступ к любым другим файлам на этом разделе диска. Эта система также позволяет создавать файлы с одинаковыми именами, если у них не один и тот же путь (т. е. они находятся в разных местах дерева файловой системы).
Технически вы можете назвать файл как угодно, но обычно принято обозначать тип файла с разделением точкой (например, .jpg в картинка.jpg), хотя и не обязательно. Некоторые операционные системы, такие как Windows, настоятельно рекомендуют использовать эти соглашения чтобы файлы открывались в соответствующем приложении, но содержимое самого файла не зависит от его расширения. Расширение — это всего лишь подсказка для операционной системы о том, как интерпретировать байты, содержащиеся в файле.
Как только у вас появятся файлы и каталоги, у вас должна быть возможность работать с ними. В контексте файловой системы это означает возможность считывать и записывать данные, управлять файлами (удалять, перемещать, копировать и т.д.) и управлять разрешениями для файлов (кто может выполнять все вышеперечисленные операции). Как же реализованы современные файловые системы, позволяющие выполнять все эти операции быстрым и масштабируемым образом?
Организация файловой системы
Размышляя о файловой системе обычно необходимо учитывать два аспекта. Первый — это структуры данных файловой системы. Другими словами, какие типы дисковых структур используются файловой системой для организации своих данных и метаданных? Второй аспект — это методы доступа: как процесс может открывать, читать или записывать в свои структуры?
Начнем с описания общей организации на диске элементарной файловой системы.
Первое, что вам нужно сделать, это разделить ваш диск на блоки. Обычно используемый размер блока составляет 4 КБ. Предположим, у вас очень маленький диск с объемом памяти 256 КБ. Первый шаг — разделить это пространство равномерно, используя размер вашего блока, и назначить номер каждому блоку (в нашем случае, обозначив блоки от 0 до 63):
Теперь давайте разберем эти блоки на разные регионы. Давайте отложим большую часть блоков для пользовательских данных и назовем это областью данных. В этом примере, давайте зафиксируем блоки 8-63 в качестве нашей области данных:
Если вы заметили, мы поместили область данных в последнюю часть диска, оставив первые несколько блоков для использования файловой системой в других целях. В частности, мы хотим использовать их для отслеживания информации о файлах, такой как местоположение файла в области данных, его размер, владелец и права доступа, а также прочая информация. Эта информация является ключевой частью файловой системы и называется метаданными.
Для хранения этих метаданных мы будем использовать специальную структуру данных, называемую индексным дескриптором (inode). В текущем примере давайте зададим 5 блоков в качестве inode и назовем эту область диска таблицей inode:
Индексы inode обычно не очень большие, в районе 256 байт. Таким образом, блок размером 4 КБ может содержать около 16 inode, а наша простая файловая система выше содержит всего 80 inode. Это число на самом деле значительно: это означает, что максимальное количество файлов в нашей файловой системе составляет 80. С большим диском вы, безусловно, можете увеличить количество inode, напрямую переводя их в большее количество файлов в вашей файловой системе.
Осталось еще несколько вещей для завершения нашей файловой системы. Нам нужно отслеживать, являются ли inode или блоки данных свободными или распределёнными. Эта структура распределения может быть реализована в виде двух отдельных битовых массивов, один для inode, а другой для области данных.
Битовый массив — это очень простая структура данных: каждый бит соответствует тому, является ли объект/блок свободным (0) или используемым (1). Мы можем назначить битовый массив индекса и битовый массив области данных их собственному блоку. Хотя это излишне (блок может использоваться для отслеживания объектов размером до 32 КБ, но у нас есть только 80 inode и 56 блоков данных), это удобный и простой способ организации нашей файловой системы.
Наконец, для последнего оставшегося блока (который, по совпадению, является первым блоком на нашем диске) нам нужен суперблок. Этот суперблок является своего рода метаданными для метаданных: в блоке мы можем хранить информацию о файловой системе, такую как количество inode (80) и где находится блок inode (блок 3) и так далее. Мы также можем поместить для файловой системы некоторый идентификатор в суперблок, чтобы было понятно как интерпретировать нюансы и детали различных файловых систем (например, мы можем отметить, что эта файловая система основана на Unix, файловая система ext4 или, возможно, NTFS). Когда операционная система считывает суперблок, у неё может быть схема того, как интерпретировать различные данные на диске и получать к ним доступ.
Индексный дескриптор Inode
До сих пор мы упоминали структуру данных inode в файловой системе, но еще не объяснили, какой это важный компонент. Inode — это сокращение от index node, и это историческое имя, данное в UNIX и более ранних файловых системах. Практически все современные системы используют концепцию inode, но могут называть их по-разному (например, dnode, fnode, и т. д.).
По сути, inode — это индексируемая структура данных, то есть специфичная информация, которая позволяет вам перейти в определенное местоположение (индекс) и узнать, как интерпретировать следующий набор битов.
На конкретный inode ссылается число (i-number), это низкоуровневое имя файла. Получив i-number, вы можете просмотреть его информацию, быстро перейдя к его местоположению. Например, из суперблока мы знаем, что область inode начинается с адреса 12 КБ.
Поскольку диск не адресуется по байтам, мы должны знать, к какому блоку обращаться, чтобы найти наш индекс. С помощью довольно простой математики мы можем вычислить идентификатор блока на основе i-number, размера каждого inode и размера блока. Впоследствии мы можем найти начало inode внутри блока и прочитать желаемую информацию.
Inode содержит практически всю необходимую информацию о файле. Например, каков его размер, сколько блоков ему выделено, какие разрешения выданы для доступа к файлу (т. Е. Кто является владельцем и кто может читать или записывать) это обычный файл или каталог, когда файл был создан или к нему в последний раз обращались. И многие другие флаги или метаданные о файле.
Один из наиболее важных элементов информации, хранящейся в inode это указатель (или список указателей), сообщающий где в области данных находятся нужные данные. Они известны как прямые указатели. Концепция хороша, но для очень больших файлов в небольшой структуре данных inode у вас могут закончиться указатели. Поэтому, многие современные системы имеют специальные косвенные указатели: вместо прямого перехода к данным файла в области данных вы можете использовать косвенный блок, чтобы увеличить количество прямых указателей для вашего файла. Таким образом, файлы могут стать намного больше, чем ограниченный набор прямых указателей, доступных в структуре данных inode.
Конечно вы можете использовать этот подход для поддержки ещё больших типов данных, используя двойные или тройные косвенные указатели. Этот тип файловой системы известен как имеющий многоуровневый индекс и позволяет файловой системе поддерживать большие файлы, например, в диапазоне гигабайт или больше. Распространённые файловые системы, такие как ext2 и ext3, используют многоуровневые системы индексирования. Более новые файловые системы, такие как ext4, имеют концепцию экстентов, которые представляют собой несколько более сложные схемы указателей.
Хотя структура данных inode очень популярна благодаря своей масштабируемости, было проведено множество исследований, чтобы понять её эффективность и степень, в которой необходимы многоуровневые индексы. Одно исследование показало кое-какие интересные измерения в файловых системах, в том числе:
⦁ Большинство файлов на самом деле очень маленькие (2 КБ — наиболее распространенный размер)
⦁ Средний размер файла растёт (в среднем почти на 200k)
⦁ Большинство байтов хранится в больших файлах (несколько больших файлов занимают большую часть пространства)
⦁ Файловые системы содержат много файлов (в среднем почти 100k)
⦁ Файловые системы заполнены примерно наполовину (даже по мере роста дисков файловые системы остаются заполненными на ~50 %)
⦁ Каталоги, как правило, маленькие (во многих из них мало записей, 20 или меньше)
Всё это указывает на универсальность и масштабируемость структуры данных inode, а также на то, как она прекрасно поддерживает большинство современных систем. Было реализовано множество оптимизаций для повышения скорости и эффективности, но основная структура за последнее время мало изменилась.
Под капотом каталоги — это просто очень специфичный тип файлов: они содержат список записей, использующих систему сопряжения (имя записи с i-number). Номер записи, как правило — человеко-читаемое имя, а соответствующий i-number отражает его «имя» в файловой системе.
Каждый каталог обычно также содержит 2 дополнительные записи указателей помимо списка имён пользователей: одна запись — “текущий каталог”, а другая — «родительский каталог».
Вот так в командной строке терминала вы можете “сменить текущий каталог”:
cd [имя каталога]
или переместиться ближе к корню используя:
cd ..
где “..” — абстрактное имя указателя родительского каталога.
Поскольку каталоги обычно являются просто «специальными файлами», управление содержимым каталога обычно так же просто, как добавление и удаление пар внутри файла. Каталог обычно имеет свой собственный inode в линейном дереве файловой системы (как описано выше), но в некоторых современных файловых системах, таких как XFS, были предложены и использованы новые структуры данных, такие как B-trees (B-деревья).
Методы доступа и оптимизации
Файловая система была бы бесполезна, если бы вы не могли читать и записывать в неё данные. Для этого вам требуется чётко определённая методология, позволяющая операционной системе получать доступ к байтам в области данных и интерпретировать их.
Основные операции с файлом включают открытие файла, чтение файла или запись в файл. Эти процедуры требуют огромного количества операций ввода-вывода (I/O) и обычно разбросаны по диску. Например, проход по дереву файловой системы от корневого узла к интересующему файлу требует перейти от inode к файлу каталога (потенциально мультииндексированному) и к расположению нужного файла. Если файл не существует, то требуются некоторые дополнительные операции, такие как создание записи inode и назначение требуемых разрешений.
Многие технологии, как аппаратные, так и программные, были разработаны для улучшения времени доступа и взаимодействия с хранилищем. Очень распространённой аппаратной оптимизацией является использование твердотельных накопителей, которые значительно ускоряет время доступа благодаря своим твердотельным свойствам. Жёсткие диски, с другой стороны, обычно имеют механические части (движущийся шпиндель), что означает, что существуют физические ограничения на то, как быстро вы можете “перепрыгивать” с одной части диска в другую.
Хотя твердотельные накопители обеспечивают быстрый доступ к диску, этого обычно недостаточно для ускорения чтения и записи данных. Операционная система обычно использует более быстрые, энергозависимые структуры памяти, такие как оперативная память и кэш, чтобы сделать данные “ближе” к процессору и ускорить операции. Фактически, сама операционная система обычно хранится в файловой системе, и одна из основных оптимизаций заключается в постоянном хранении общих файлов ОС, доступных только для чтения, в оперативной памяти, чтобы обеспечить быструю и эффективную работу операционной системы.
Не вдаваясь в подробности файловых операций, отметим, что для управления данными используются кое-какие интересные оптимизации. Например, при удалении файла одной из распространенных оптимизаций является простое удаление inode, указывающего на данные, и эффективная маркировка областей диска как «свободной памяти». В этом случае данные на диске физически не стираются, но доступ к ним удаляется. Чтобы полностью «удалить» файл, можно выполнить определенные операции форматирования, чтобы записать все нули (0) в удаляемые области диска.
Другой распространённой оптимизацией является перемещение данных. Как пользователи, мы можем захотеть переместить файл из одного каталога в другой в зависимости от наших личных предпочтений организации. Однако файловой системе просто необходимо изменить минимальные данные в нескольких файлах каталогов, а не фактически перемещать биты из одного места в другое. Используя концепцию inode и указателей, файловая система может очень быстро выполнить операцию “перемещения” (в пределах того же диска).
Когда дело доходит до “установки” приложений или игр, это просто означает копирование файлов в определённое место и установку глобальных переменных и флагов для их выполнения. В Windows установка обычно запрашивает каталог, а затем загружает данные для запуска приложения и помещает их в этот каталог. В установке нет ничего особенного, кроме автоматизированного механизма записи множества файлов и каталогов из внешнего источника (онлайн или физического носителя) на выбранный диск.
Популярные Файловые Системы
Современные файловые системы имеют множество подробных оптимизаций, которые работают рука об руку с операционной системой для повышения производительности и предоставления различных функций (таких как безопасность или поддержка больших файлов). Некоторые из наиболее популярных файловых систем сегодня: FAT32 (для флэш-накопителей и, ранее, Windows), NTFS (для Windows) и ext4 (для Linux).
На высшем уровне все эти файловые системы имеют схожие структуры на диске, но отличаются деталями и функциями, которые они поддерживают. Например, формат FAT32 (Таблица распределения файлов) был первоначально разработан в 1977 году и использовался на заре персональных компьютеров. Он использует концепцию связанного списка для доступа к файлам и каталогам, которая, хотя проста и эффективна, может быть медленной для больших дисков. Сегодня это широко используемый формат для флэш-накопителей.
NTFS (Файловая система новой технологии), разработанная Microsoft в 1993 году, учитывала многие из скромных начинаний FAT32. Она повышает производительность за счёт хранения различных дополнительных метаданных о файлах и поддерживает различные структуры для шифрования, сжатия, разреженных файлов и ведения системного журнала. NTFS всё еще используется сегодня в Windows 10 и 11. Аналогичным образом, устройства macOS и iOS используют проприетарную файловую систему, созданную Apple, HFS+ (также известная как Mac OS расширенная) была стандартом до того, как они представили файловую систему Apple (APFS) относительно недавно в 2017 году, и она лучше оптимизирована для более быстрых носителей данных, а также для поддержки расширенных возможностей, таких как шифрование и повышенная целостность данных.
Четвёртая «расширенная файловая» система, или ext4, является четвёртой итерацией файловой системы ext, разработанной в 2008 году, и системой по умолчанию для многих дистрибутивов Linux, включая Debian и Ubuntu. Она может поддерживать файлы больших размеров (до 16 тебибайт) и использует концепцию экстентов для дальнейшего улучшения inode и метаданных файлов. Она использует систему отложенного распределения для уменьшения записи на диск и имеет множество улучшений для контрольных сумм файловой системы для целостности данных, а также поддерживается в Windows и Mac.
Каждая файловая система предоставляет свой собственный набор функций и оптимизаций, и может иметь множество различий в реализации. Однако, по сути, все они выполняют одну и ту же функцию поддержки файлов и взаимодействия с данными на диске. Некоторые файловые системы оптимизированы для лучшей работы с различными операционными системами, поэтому файловая и операционная системы очень тесно переплетены.
Файловые системы Нового Поколения
Одной из наиболее важных особенностей файловой системы является её устойчивость к ошибкам. Аппаратные ошибки могут возникать по разным причинам, включая износ, случайные скачки напряжения или спады (из-за разгона процессора или других оптимизаций), случайные удары альфа-частиц (также называемые мягкими ошибками) и многие другие причины. На самом деле, аппаратные ошибки являются настолько дорогостоящей проблемой для выявления и отладки, что и Google, и Facebook опубликовали статьи о том, насколько важна устойчивость в масштабировании, особенно в центрах обработки данных.
С этой целью большинство файловых систем следующего поколения фокусируются на более высокой отказоустойчивости и более быстрой безопасности. Эти функции обходятся дорого, обычно приводя к снижению производительности, чтобы включить больше функций избыточности или безопасности в файловую систему.
Поставщики оборудования обычно включают различные механизмы защиты для своих продуктов, такие как защита ECC для оперативной памяти, опции RAID для резервирования дисков или полномасштабное резервирование процессора, такой как недавний полностью автономный чип Tesla (FSD). Однако этот дополнительный уровень защиты программного обеспечения через файловую систему не менее важен.
Корпорация Майкрософт уже много лет работает над этой проблемой в своей реализации устойчивой файловой системы (REFS). ReFS изначально была выпущена для Windows Server 2012 и предназначена для замены NTFS. REFS использует B+ деревья для всех своих структур на диске (включая метаданные и данные файлов) и для реализации использует подход, ориентированный на отказоустойчивости. Это включает контрольные суммы для всех независимо хранящихся метаданных, и политику распределения при записи. По сути, это снижает нагрузку на администраторов от необходимости периодически запускать средства проверки на ошибки, вроде CHKDSK, при использовании ReFS.
В мире с открытым исходным кодом Btrfs (произносится как “better FS” или “Butter FS”) набирает обороты с аналогичными функциями ReFS. Опять же, основное внимание уделяется отказоустойчивости, свойствам самовосстановления и простоте администрирования. Она также обеспечивает лучшую масштабируемость, чем ext4, обеспечивая примерно в 16 раз большую поддержку данных.
Хотя сегодня используется множество различных файловых систем, основная цель и высокоуровневые концепции мало изменились с течением времени. Для создания файловой системы вам потребуется кое-какая базовая информация о каждом файле (метаданные) и масштабируемая структура хранения для записи и чтения из различных файлов.
Базовая реализация inode и файлов вместе образуют очень расширяемую систему, которая была доработана и изменена, чтобы предоставить нам современные файловые системы. Хотя мы можем не задумываться о файловых системах и их функциях в нашей повседневной жизни, это является истинным свидетельством их надёжного и масштабируемого дизайна, которые позволили нам наслаждаться и пользоваться нашими цифровыми данными на компьютерах, телефонах, консолях и различных других системах.