Я не заметил изменения вашего вопроса до сих пор. Как написано сейчас, вопрос совсем другой, чем когда я впервые ответил на него. зеркало , которое вы описываете, на самом деле не в спецификации, так как это довольно опасный и уродливый взлом, известный как формат раздела гибридно-MBR . В этом вопросе теперь много больше смысла - на самом деле, это совсем не глупо.
Основное различие между диском GPT и гибридным MBR-диском заключается в том, что MBR GPT описывает весь диск как один раздел MBR, а гибридный MBR попытается застраховаться ради (крайне уродливой) совместимости и описать только область, охватываемую первыми четырьмя разделами. Проблема в этой ситуации состоит в том, что попытки гибридной MBR совместимости полностью сводят на нет цель защитной MBR GPT в первую очередь .
Как указано ниже, Защитная MBR должна защищать GPT-диск от глупых приложений, но если часть диска окажется для них нераспределенной, все ставки будут выключенный. Не используйте гибридную MBR, если это вообще может помочь - что, если на Mac, означает не использовать конфигурацию по умолчанию Bootcamp
.
В общем, если вам нужен совет по вопросам, связанным с EFI / GPT, идите никуда (за исключением, может быть, небольшого объезда здесь сначала), кроме rodsbooks.com .
Это (раньше было) своего рода глупый вопрос - я думаю, вы спрашиваете, как разбить GPT-диск без Защитной MBR . Ответить на этот вопрос вы не можете, потому что GPT - это стандарт формата таблицы разделов диска, и этот стандарт определяет защитный MBR, расположенный в заголовке диска. Видите?
Что вы можете сделать, так это стереть MBR или перезаписать ее - это не помешает большинству GPT-приложений получить доступ к данным раздела, но причина это включено в спецификацию, чтобы предотвратить зависание приложений, не поддерживающих -GPT, с таблицей разделов. Он предотвращает это, просто сообщая, что весь диск уже является одним разделом типа MBR, и никто не должен пытаться записать на него файловую систему, потому что это уже выделенное пространство. Удаление MBR снимает эту защиту.
В любом случае, вот как:
Это создает файл 4G ./ img
, полный NUL ...
dev / zero> ./ img \ {{1} } dd ibs = 4k obs = 4kx1k count = 1kx1k
1048576 + 0 записей в
1024 + 0 исходящих записей
4294967296 байт (4,3 ГБ) скопировано, 3,38218 с, 1,3 ГБ / с
Записывает в него таблицу разделов - включая ведущую Защитную MBR .
printf
следует строка \ n
ewline и записывается на стандартный ввод gdisk
. gdisk
интерпретирует команды, как если бы они были введены на нем в интерактивном режиме, и действует соответствующим образом, создавая две записи раздела GPT в таблице разделов GUID , которые он записывает в заголовок нашего . / img
файл. Весь вывод терминала сбрасывается в > / dev / null
(потому что это много, и мы все равно посмотрим на результаты) .
printf% s \\ n o y n 1 '' + 750M ef00 \
n 2 '' '' '' '' \
w y | > / dev / null \
gdisk ./img
Получает pr
четырехколоночное форматированное представление строк , сопровождаемых смещением
] в первых 2К из ./ img
.
<. img dd count="4" pr>
4 + 0 записей в
4 + 0 записей на выходе
2048 байт (2,0 кБ) скопировано, 7.1933e-05 с, 28,5 МБ / с
451 * 1033 K 1094 t 1212 n
510 U 1037> 1096 e 1214 u
512 EFI PART 1039; @fY 1098 m 1216 x
524 \ 1044 30 1153 = 1218
529 P 1047 L 1158 rG 1220 f
531 (1050 E 1161 y = i 1222 i
552 "1065 w 1165 G} 1224 л
568 V 1080 E 1170 $ Ub 1226 e
573 G 1082 F 1175 N 1228 s
575 G 1084 I 1178 C 1230 лет
577 y 1086 1180 b 1232 s
583 G 1088 S 1185 x 1234 t
602 Ml 1090 y 1208 L 1236 e
1024 (s * 1092 s 1210 i 1238 м {{ 1}}
Вы можете видеть, где заканчивается MBR, да? Байт 512.
Это записывает 512 пробелов вместо первых 512 байтов в ./ img
.
./ img> & 0 printf% 0512s
А теперь о плодах нашего труда.
Это интерактивный запуск gdisk
на ./ img
.
gdisk ./img
GPT fdisk (gdisk) версии 1.0.0
Сканирование таблицы разделов:
MBR: отсутствует
BSD: отсутствует
APM: отсутствует
GPT: присутствует
Обнаружен действительный GPT с поврежденной MBR; с помощью GPT и запишет новую
защитную MBR при сохранении.
Команда (? для справки): p
Disk ./img: 8388608 секторов, 4,0 ГиБ
Размер логического сектора: 512 байт
Идентификатор диска (GUID): 0528394A-9A2C-423B-9FDE-592CB74B17B3
Таблица разделов вмещает до 128 записей
Первое использование сектор 34,последний используемый сектор - 8388574
Разделы будут выровнены по границам из 2048 секторов
Общее свободное пространство - 2014 секторов (1007,0 КиБ)
Число Начало (сектор) Конец (сектор) Код размера Название
1 2048 1538047 750,0 МиБ EF00 Система EFI
2 1538048 8388574 3,3 ГиБ 8300 Файловая система Linux
Para que la imagen se muestre en la línea -,debe codificarse como un objeto MIME válido con un encabezado Content-Disposition: inline
en él.
El comando mpack
puede hacer esto.
Intenta enviar un correo electrónico como este:
mpack -s "TEST mail" -c image/jpeg download.JPEG <MASKED>@example.com
O si desea enviar el resultado a un archivo en lugar de enviarlo directamente:
mpack -s "TEST mail" -c image/jpeg download.JPEG -o email-with-image.txt
Luego puede enviarlo más tarde, p.:
mailx <MASKED>@example.com < email-with-image.txt
Si desea agregar texto a su mensaje antes de la imagen, escríbalo en un archivo y agregue una opción -d text-before.txt
al comando mpack
. Para agregar texto después de la imagen, solo debe agregarlo al archivo producido mpack -.
Вы можете использовать приведенную ниже команду.
mutt -e "set content_type=text/html" -a lb.png -s "Test Mail" user@example.com < mail.html
<img src="cid:lb.png" />
sendimagemail — это 100-строчная оболочка bash дляsendmail
(msmtp реализации ), которая поддерживает отправку нескольких встроенных изображений jpg/png/gif и текста в службы gmail/outlook/qq/163. Вот инструкция.
sendimagemail dst [image...] [--cc=''] [--bcc=''] [--subject='20210315 00:33:52'] [--body=''] [--dry] -- [sendmail-option]
# send text/html to one or more residents, with Cc and Bcc
sendimagemail bilabila@qq.com --body='Hi bilabila' --subject='Hi bilabila'
sendimagemail bilabila@qq.com --body='<div style=color:lightslategray>Hi bilabila<div/>'
sendimagemail 'qq bilabila@qq.com, google bilabila@gmail.com' --cc='163 bilabila@163.com' --bcc='ms bilabila@live.com'
# send one or more images
sendimagemail bilabila@qq.com a.jpg
sendimagemail bilabila@qq.com --body='<div>images</div>' a.jpg b.png c.gif
# send with non-default account
sendimagemail bilabila@qq.com a.jpg -- -a google
sendimagemail bilabila@qq.com a.jpg -- --from=bilabila@qq.com --host=smtp.qq.com --user=bilabila --passwordeval='echo TOKEN' --port 587 --auth --tls
sendimagemail bilabila@qq.com a.jpg -- --from=bilabila@163.com --host=smtp.163.com --user=bilabila@163.com --passwordeval='echo TOKEN' --port 25 --auth --tls
sendimagemail bilabila@qq.com a.jpg -- --from=bilabila@gmail.com --host=smtp.gmail.com --user=bilabila@gmail.com --passwordeval='echo TOKEN' --port 587 --auth --tls
# show what would be sent
sendimagemail bilabila@qq.com a.jpg --dry