From: Michael Shigorin <mike@osdn.org.ua>
To: community@altlinux.ru
Cc: mouse@altlinux.ru
Subject: [Comm] Re: монтирование iso
Date: Fri, 1 Oct 2004 23:44:36 +0300
Message-ID: <20041001204436.GG27950@osdn.org.ua> (raw)
In-Reply-To: <20040927172814.GD5288@wrars-comp.wrarsdomain>
[-- Attachment #1.1: Type: text/plain, Size: 661 bytes --]
On Mon, Sep 27, 2004 at 11:28:14PM +0600, Andrey Rahmatullin wrote:
> >>Каким образом можно примонтировать iso-образ?
> >Кстати, сизифовый (и, возможно, уже в ALC2.3) mc тоже обучен
> >по ним лазить. :)
> Блин, ну не лазает у меня. mc-4.6.0-alt9
> cdrecord-2.01-alt1a37 Чего там доставить надо?
home:~> rpm -qf /usr/bin/isoinfo
cdrecord-2.01-alt1a37
Вроде всё. Как именно не лазает? (там опять вроде ломали формат
вывода -- вот шило в чьём-то бэкенде засело :-/)
См. тж. аттач, не помню, был ли учтён (скорее нет).
Поможет -- ввесим BTS.
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
[-- Attachment #1.2: Type: message/rfc822, Size: 9305 bytes --]
[-- Attachment #1.2.1.1: mutt.Zp3LZf --]
[-- Type: text/plain, Size: 4105 bytes --]
Michael Shigorin wrote:
>
> Формат опять чуть уехал -- в [ ... ] группа цифр теперь разбита
> надвое пробелом. Патч прицеплен (и висит на
> https://bugzilla.altlinux.org/show_bug.cgi?id=4536).
>
В продолжение темы хочестся добавить, что проблемы не только с
форматом. С Joliet вечная беда, то UCS level 1 не понимает, то в UCS
level 3 добавляет ';1' в конце имени файла. Причем некоррекно отображает
даже имена файлов из образов дисков созданных при помощи mkisofs. Вот к
примеру INSERT из http://www.inside-security.de/:
>isoinfo -d -i INSERT-1.2.8_en.iso
CD-ROM is in ISO 9660 format
System id: LINUX
Volume id: Inside Security Rescue Toolkit
Volume set id:
Publisher id:
Data preparer id:
Application id: MKISOFS ISO 9660/HFS FILESYSTEM BUILDER & CDRECORD
CD-R/DVD CREATOR (C) 1993 E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING
---поскипано---
Joliet with UCS level 3 found
Rock Ridge signatures version 1 found
---поскипано---
пробуем получить список файлов:
>isoinfo -R -J -j koi8-r -l -i INSERT-1.2.8_en.iso
---поскипано---
Directory listing of
/isolinux____)____insert-1.2.8_master_en_isolinux____Y___________/
d--------- 0 0 0 2048 Apr 21 2004 [ 35 02] .
d--------- 0 0 0 4096 Mar 3 2004 [ 32 02] ..
---------- 0 0 0 2048 Apr 21 2004 [ 24561 00]
boot.cat____Y____b___}____boot.catPX$_$______$__________________
---------- 0 0 0 174 Apr 20 2004 [ 24562 00]
boot.msg____1____insert-1.2.8_master_en_isolinux_boot.msg___q0__
---------- 0 0 0 1545 Apr 20 2004 [ 24563 00]
f2_@___@________hV__hV__f_________________h____ ________________
---------- 0 0 0 9424 Apr 21 2004 [ 24564 00]
isolinux.bin________9____insert-1.2.8_master_en_isolinux_isolinu
---------- 0 0 0 2434 Jan 26 2004 [ 24569 00]
isolinux.cfg________9____insert-1.2.8_master_en_isolinux_isolinu
---------- 0 0 0 8762 Jul 29 2003 [ 24571 00]
logo.16_____1____insert-1.2.8_master_en_isolinux_logo.16____Y___
---------- 0 0 0 67648 Apr 2 2004 [ 24576 00]
memtest_____1____insert-1.2.8_master_en_isolinux_memtest____Y___
---------- 0 0 0 495568 Apr 3 2004 [ 24610 00]
miniroot.gz_9____insert-1.2.8_master_en_isolinux_miniroot.gz____
---------- 0 0 0 921594 Apr 2 2004 [ 24852 00]
vmlinuz_____1____insert-1.2.8_master_en_isolinux_vmlinuz____Y___
Ключ '-R' есть в командной строке, но он игнорируется, теперь так:
>isoinfo -R -l -i INSERT-1.2.8_en.iso
---поскипано---
Directory listing of /isolinux/
dr-xr-xr-x 2 0 0 2048 Apr 21 2004 [ 31 02] .
dr-xr-xr-x 4 0 0 2048 Mar 3 2004 [ 29 02] ..
-r--r--r-- 1 0 0 2048 Apr 21 2004 [ 24561 00] boot.cat
-r-xr-xr-x 1 0 0 174 Apr 20 2004 [ 24562 00] boot.msg
-r-xr-xr-x 1 0 0 1545 Apr 20 2004 [ 24563 00] f2
-r-xr-xr-x 2 0 0 9424 Apr 21 2004 [ 24564 00]
isolinux.bin
-r-xr-xr-x 1 0 0 2434 Jan 26 2004 [ 24569 00]
isolinux.cfg
-r-xr-xr-x 2 0 0 8762 Jul 29 2003 [ 24571 00] logo.16
-r-xr-xr-x 2 0 0 67648 Apr 2 2004 [ 24576 00] memtest
-r-xr-xr-x 1 0 0 495568 Apr 3 2004 [ 24610 00]
miniroot.gz
-r-xr-xr-x 2 0 0 921594 Apr 2 2004 [ 24852 00] vmlinuz
Как видно, Rock Ridge содержит все что нам надо, но игнорируется при
указании ключа '-J' (даже если поменять их местами легче не становится).
Отсюда предложение: забить на Joliet если есть RR. Я думаю, что именно к
этому нас подталкивает Joerg Schilling (очень хвалит RR и ругает
ограниченность Joliet). Ну и танцы с бубном вокруг имен файлов
оканчивающихся на ';1' (интересно, а цифры отличные от единицы бывают?).
То что у меня получилось работает на версиях 2.01a21 - 2.01a34, но
число различных образов у меня не велико, так что интересно как это
работает у других.
[-- Attachment #1.2.1.2: iso9660.diff --]
[-- Type: text/plain, Size: 1670 bytes --]
--- iso9660 Thu Jul 22 17:00:02 2004
+++ iso9660.new Thu Jul 22 01:33:24 2004
@@ -18,9 +18,14 @@
else
JOLIET_OPT="-J"
fi
- ISOINFO="isoinfo -R"
- # isoinfo -d -i "$1" | grep "NO Joliet" > /dev/null || ISOINFO="$ISOINFO $JOLIET_OPT"
- isoinfo -d -i "$1" | grep "Joliet with UCS level [2-9] found" > /dev/null && ISOINFO="$ISOINFO $JOLIET_OPT"
+ ISOINFO_CMD="isoinfo"
+
+ ISOINFO=`isoinfo -d -i "$1"`
+ if echo $ISOINFO | grep "Rock Ridge signatures version [1-9] found" > /dev/null; then
+ ISOINFO_CMD="$ISOINFO_CMD -R"
+ else
+ echo $ISOINFO | grep "Joliet with UCS level [2-9] found" > /dev/null && ISOINFO_CMD="$ISOINFO_CMD $JOLIET_OPT"
+ fi
}
mcisofs_list () {
@@ -33,14 +38,14 @@
*) MYCAT="cat";;
esac
-$ISOINFO -l -i "$1" | gawk '
+$ISOINFO_CMD -l -i "$1" | gawk '
BEGIN {
dir="";
# Pattern to match 8 first fields.
rx = "[^ ]+[ ]+";
+ irx = "^..\[ [0-9 ]+\] ";
rx = "^" rx rx rx rx rx rx rx rx;
# irx = "^. *[0-9]+. ";
- irx = "^..\[[ 0-9]+\] ";
}
/^$/ { next }
/^d---------/ { next }
@@ -57,6 +62,8 @@
# fix perms
sub("^---------- 0 0 0", "-r--r--r-- 1 root root", attr)
sub(" $", "", name)
+ # for pure ISO9660 and Joliet UCS level 3
+ sub(";1$", "", name)
## sub(";[0-9]+$", "", name) ## would break copyout
# skip . and ..
if (name ~ /^\.\.?/) next;
@@ -65,7 +72,7 @@
}
mcisofs_copyout () {
- $ISOINFO -i "$1" -x "/$2" > "$3"
+ $ISOINFO_CMD -i "$1" -x "/$2" > "$3"
}
save_ctype=`locale | grep LC_CTYPE`
@@ -79,6 +86,7 @@
test_iso "$@";
mcisofs_list "$@";
exit 0;;
+
copyout)
test_iso "$@";
mcisofs_copyout "$@";
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2004-10-01 20:44 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-26 11:12 [Comm] " Sergey Bezuglov
2004-09-26 11:15 ` Denis Klykvin
2004-09-26 11:17 ` Valery V. Inozemtsev
2004-09-26 14:44 ` Sergey Kuznetsov
2004-09-27 11:43 ` Aleksander N. Gorohovski
2004-09-26 17:51 ` [Comm] " Michael Shigorin
2004-09-27 17:28 ` Andrey Rahmatullin
2004-10-01 20:44 ` Michael Shigorin [this message]
2004-10-02 3:33 ` Andrey Rahmatullin
2004-10-02 10:08 ` Michael Shigorin
2004-10-04 9:14 ` Andrey Rahmatullin
2004-10-06 18:36 ` Michael Shigorin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20041001204436.GG27950@osdn.org.ua \
--to=mike@osdn.org.ua \
--cc=community@altlinux.ru \
--cc=mouse@altlinux.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git