Измените пароль root изображения Linux

Устройства не имеют UUID. Разделы делают. UUID создаются, когда файловая система отформатирована. Поэтому они могут быть изменены, и почему они действительно изменяются, когда Вы переформатировали.

Другими словами, UUID не является характеристикой части аппаратных средств, и нет никакого способа "найти" информацию, которая не существует.

Может быть один или несколько разделов на устройстве, которые имеют UUID, поэтому если Вы видели тот, прежде чем связано с ним, это - UUID раздела. Если существует больше чем один раздел, может быть UUID для каждого (там, также не может, начиная ни с одного требуются), но ни один из них не характеристики аппаратных средств (они - просто изменяемые части данных, хранивших на нем). Флеш-карты обычно идут с одним большим предварительно отформатированным FAT32 или разделом NTFS. При переформатировании этого UUID изменится.

Для нахождения UUID раздела действительно необходимо найти его идентификационные данные как блочное устройство. cat /proc/partitions должен перечислить все, о чем ядро знает, смонтированный или нет. Предположение там не является десятками дисков, присоединенных к Вашей системе, должно быть достаточно просто выяснить, каким является USB. /proc/partitions на самом деле перечисляет диск также, можно сказать это кроме его разделов, потому что диск не будет иметь числа в конце (sda по сравнению с sda1), и file -s вывод будет отличаться:

> file -s /dev/sda
/dev/sda: x86 boot sector; partition 1: ID=0x83, active, starthead 32, startsector 2048, 134217728 sectors; 
partition 2: ID=0x83, starthead 202, startsector 134219776, 58720256 sectors; 
partition 3: ID=0x83, starthead 245, startsector 192940032, 46137344 sectors; 
partition 4: ID=0x82, starthead 223, startsector 239077376, 10992304 sectors, code offset 0x63

> file -s /dev/sda1
/dev/sda1: Linux rev 1.0 ext4 filesystem data, UUID=cd8e11b5-07ac-7741-ae0c-36e63eacf8a1, volume name "_Fedora-17-x86_6/" (needs journal recovery) (extents) (large files) (huge files)

Иногда предварительно отформатированные диски являются всего одним большим устройством, например:

> file -s /dev/sdb
/dev/sdb: x86 boot sector, Microsoft Windows XP Bootloader NTLDR, code offset 0x3c, 
OEM-ID "MSDOS5.0", sectors/cluster 64, root entries 512, 
Media descriptor 0xf8, sectors/FAT 246, heads 255, sectors 4026368 (volumes > 32 MB) , reserved 0x1, serial number 0xe06de56f, 
unlabeled, FAT (16 bit)

Заметьте, что у этого на самом деле "не маркирован" и, кажется, нет UUID (они не обязательны).

5
28.03.2015, 02:06
1 ответ

на сцене, где у вас есть каталог Дерево, содержащее файл ... / etc / Shadow (Перед созданием файловой системы изображения) измените этот файл, чтобы ввести пароль HASH (ES), которые вы хотите иметь.

Самый простой способ сделать это с недавними версиями инструмента Chapswd из Suite Ninux Shadow Utilities (Debian Rheezy достаточно недавно) с вариантом -R . Использование образца:

chpasswd -R /path/to/build/tree <passwords.txt

С Passwords.txt , содержащие строки, такие как

root:swordfish
alibaba:opensesame

, если ваша среда сборки не поддерживает chapswd -r , вы можете использовать инструмент, который генерирует хеш пароль Призывая функцию Crypt и введите, чтобы в тене файл по текстовым манипуляциях. Например, (непроверенный код):

#!/usr/bin/python
import base64, crypt, os, re, sys
for line in sys.stdin.readlines():
    (username, password) = line.strip().split(":")
    salt = "$6$" + base64.b64encode(os.urandom(6))
    hashes[username] = crypt.crypt(password, salt)
old_shadow = open("etc/shadow")
new_shadow = open("etc/shadow.making", "w")
for line in old_shadow.readlines():
    (username, password, trail) = line.lstrip().split(":", 3)
    if hashes.has_key(username):
        line = username + ":" + hashes[username] + ":" + trail
    new_shadow.write(line)
old_shadow.close()
new_shadow.close()
os.rename("etc/shadow.making", "etc/shadow")
5
27.01.2020, 20:39

Теги

Похожие вопросы