Xorriso를 사용하고 있으며 다음 명령을 실행하고 있습니다.
$MKISOFS \
-iso-level 3 \
-J -joliet-long \
-append_partition 2 0xef $UNIONDIR/$EFIIMG \
-partition_cyl_align all \
-add "$UNATTENDED_FILE" 'C:\System32\Sysprep' \
-o "$CFG_ISOPATH" \
"$UNIONDIR/"
변수를 채우는 명령은 다음과 같습니다.
/usr/bin/xorriso -as mkisofs -iso-level 3 -J -joliet-long -append_partition 2 0xef /tmp/union.19/boot-efi.img -partition_cyl_align all -add /tmp/wf_script-Xjc2i3/unattended.xml | 'C:\System32\Sysprep' -o 991cc570-10d9-11ec-818a-5d4c9d0ae440.iso /tmp/union.19/
이것은 내가 얻는 오류입니다. 이는 -add 옵션으로 인해 발생합니다.
+ /usr/bin/xorriso -as mkisofs -iso-level 3 -J -joliet-long -append_partition 2 0xef /tmp/union.19/boot-efi.img -partition_cyl_align all -add /tmp/wf_script-eZeXEW/unattended.xml 'C:\System32\Sysprep' -o 3d3839e0-10db-11ec-818a-5d4c9d0ae440.iso /tmp/union.19/
xorriso 1.5.0 : RockRidge filesystem manipulator, libburnia project.
Drive current: -outdev 'stdio:3d3839e0-10db-11ec-818a-5d4c9d0ae440.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 42.2g free
xorriso : FAILURE : -as mkisofs: Unrecognized option '-add'
xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'
+ ok 'Creating new windows ISO'
+ EXITCODE=5
+ '[' 5 = 0 ']'
+ echo 'FAILURE: Creating new windows ISO'
+ exit 5
FAILURE: Creating new windows ISO
+ cleanup
+ purge /tmp/etfsimg19 /tmp/etfsmnt.19 /tmp/lower.19 /tmp/prop.19 /tmp/union.19 /tmp/union.19 /tmp/upper.19 /tmp/work.19
+ cd /tmp
+ for X in "$@"
+ '[' -d /tmp/etfsimg19 ']'
+ for X in "$@"
+ '[' -d /tmp/etfsmnt.19 ']'
+ umount /tmp/etfsmnt.19
+ for X in "$@"
+ '[' -d /tmp/lower.19 ']'
+ umount /tmp/lower.19
+ for X in "$@"
+ '[' -d /tmp/prop.19 ']'
+ umount /tmp/prop.19
+ for X in "$@"
+ '[' -d /tmp/union.19 ']'
+ umount /tmp/union.19
+ for X in "$@"
+ '[' -d /tmp/union.19 ']'
+ umount /tmp/union.19
+ for X in "$@"
+ '[' -d /tmp/upper.19 ']'
+ umount /tmp/upper.19
+ for X in "$@"
+ '[' -d /tmp/work.19 ']'
+ umount /tmp/work.19
+ rm -rf /tmp/etfsimg19 /tmp/etfsmnt.19 /tmp/lower.19 /tmp/prop.19 /tmp/union.19 /tmp/union.19 /tmp/upper.19 /tmp/work.19
-add 옵션이 필요한 이유는 unattended.xml 파일을 ISO의 C:\System32\Sysprep 폴더에 넣어야 실행 시 자체적으로 설치를 수행할 수 있기 때문입니다.
어떤 종류의 도움이라도 대단히 감사하겠습니다.
인사
다닐로
답변1
이 명령은 -add
xorriso의 기본 명령 세트에 속하며 mkisofs 옵션과 호환되지 않습니다. (거기에 다음 명령 단어 전에 범위를 끝내기 위한 최종 인수가 필요합니다 . 목표를 고려하면 명령이 대신 --
필요하다고 말하고 싶습니다 .) mkisofs 시뮬레이션에서는 "pathspec" "ISO의 대상 경로"를 제공하여 이를 정의할 수 있습니다. " 형태 .-map
-add
target_path=source_path
ISO의 파일 또는 디렉터리 경로는 "/"로 구분되어야 합니다. 그렇더라도 경로 부분은 C:
여전히 ISO의 디렉터리 이름이 됩니다. 정말 이걸 원하시나요? (MS-Windows에 대한 지식은 0입니다.)
의도에 맞는 ISO 경로를 사용하면 mkisofs 호환성 옵션을 통해 $UNATTENDED_FILE
삽입된 $ISO_PATH
대상을 얻을 수 있습니다.
-graft-points "$ISO_PATH"="$UNATTENDED_FILE"
"$ISO_PATH"="$UNATTENDED_FILE"
$UNIONDIR/
파일을 $UNIONDIR/
덮어쓰는 것을 방지하려면 텍스트를 나중에 제공해야 합니다 "$ISO_PATH"
. (물론 "$ISO_PATH"
문자를 포함할 수는 없지만, 필요하다면 표현하는데 사용할 수 있습니다 =
.)\=