Benutzer-Werkzeuge

Webseiten-Werkzeuge


mount_iso

====== mount ISO ====== ===== Linux ===== > mount -o loop /var/tmp/cdrom.iso /mnt > losetup -a /dev/loop0: [0006]:977176076 (/var/tmp/cdrom.iso), offset 1048576 ==== LVM-Volumen aus einem Image mounten ==== __Image-Infos anzeigen:__ > fdisk -lu /var/tmp/host01.img ... Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000cf766 Device Boot Start End Blocks Id System /var/tmp/host01.img1 * 2048 1171455 584704 83 Linux /var/tmp/host01.img2 1171456 639631359 319229952 8e Linux LVM __mount der ersten primären Partition:__ > mkdir /mnt_boot > mount -r -o loop,offset=$((512*2048)) /var/tmp/host01.img /mnt_boot > ls -lha /mnt_boot __umount der ersten primären Partition:__ > umount /mnt_boot __mount eines LV:__ > losetup -f /dev/loop0 > losetup /dev/loop0 /var/tmp/host01.img > kpartx -l /dev/loop0 loop0p1 : 0 1169408 /dev/loop0 2048 loop0p2 : 0 638459904 /dev/loop0 1171456 > kpartx -a /dev/loop0 > vgscan Reading all physical volumes. This may take a while... Found volume group "vgtrusty" using metadata type lvm2 > vgchange -ay vgtrusty 3 logical volume(s) in volume group "vgtrusty" now active > ls -lha /dev/vgtrusty/ total 0 drwxr-xr-x 2 root root 100 Apr 6 14:17 . drwxr-xr-x 17 root root 5,1K Apr 6 14:17 .. lrwxrwxrwx 1 root root 7 Apr 6 14:17 mysql -> ../dm-7 lrwxrwxrwx 1 root root 7 Apr 6 14:17 root -> ../dm-5 lrwxrwxrwx 1 root root 7 Apr 6 14:17 swap -> ../dm-6 > mkdir /mnt_lv > mount /dev/vgtrusty/mysql /mnt_lv __umount des LV:__ > umount /mnt_lv > lvchange -an vgtrusty > vgchange -an vgtrusty 0 logical volume(s) in volume group "vgtrusty" now active > kpartx -d /dev/loop0 > losetup -d /dev/loop0 > losetup -f /dev/loop0 ===== vor FreeBSD 5 ===== # vnconfig /dev/vn0c /var/tmp/cdrom.iso # mount -t cd9660 /dev/vn0c /mnt # umount /mnt # vnconfig -u /dev/vn0c ===== ab FreeBSD 5 ===== # mdconfig -a -t vnode -u 0 -f /var/tmp/cdrom.iso # mdconfig -l md0 # mdconfig -l -u md0 md0 vnode 2.2G /var/tmp/cdrom.iso oder # mdconfig -l -u 0 md0 vnode 2.2G /var/tmp/cdrom.iso # mount -t cd9660 /dev/md0 /mnt # umount /mnt # mdconfig -d -u 0 Will man alle gemounteten __vnodes__ ausführlich sehen, geht das so ganz gut: # for i in $(mdconfig -l);do mdconfig -l -u ${i};done md0 vnode 2.2G /var/tmp/cdrom.iso md1 swap 1024M md2 vnode 679M /home/kontor/technik/edv/iso/ubuntu/ubuntu-11.10-server-i386.iso === /home/bin/mount_img.sh === #!/bin/sh # ################################################################################ # # Diese Schritte sind nur als "root" ausfuehrbar! # Ein MS-DOS-Disketten-Image soll gemountet werden: # # Beispiel fuer FreeBSD bis zur Version 4: # ======================================== # # vnconfig -c /dev/vn0c ~/kontor/SYS/msdos622.img # mount -t msdos /dev/vn0c /mnt # # # Unmounten des Images (loesen vom Image): # # umount /mnt # vnconfig -u /dev/vn0c # # # Beispiel fuer FreeBSD ab der Version 5: # ======================================= # # mdconfig -a -t vnode -u 1 -f ~/kontor/SYS/msdos622.img # mount -t msdos /dev/md2 /mnt # # # Unmounten des Images (loesen vom Image): # # for i in $(mdconfig -l);do mdconfig -l -u ${i};done # # umount /mnt # mdconfig -d -u md1 # # umount /mnt # mdconfig -d -u 1 # ################################################################################ if [ "$(uname -s)" != "FreeBSD" ] ; then echo "" echo "Dieses Script laeft nur auf FreeBSD!" echo "ABBRUCH!" exit 1 fi VERSION="$(uname -r|cut -f1 -d'.')" if [ "${VERSION}" -lt "5" ] ; then echo "Dieses Script arbeitet erst ab FreeBSD 5." exit 1 fi if [ -n "${1}" ] ; then case "${1}" in [Cc][Dd]) # CD9660 - mount DATEISYSTEM="cd9660" ;; [Ee][Xx][Tt]) # EXT2FS - mount DATEISYSTEM="ext2fs" ;; [Dd][Oo][Ss]) # MSDOSFS - mount DATEISYSTEM="msdosfs" ;; [Nn][Tt][Ff][Ss]) # NTFS - mount # ntfs-3g -o permissions /dev/da6s1 /mnt/ DATEISYSTEM="ntfs-3g" ;; [Uu][Ff][Ss]) # UFS - mount DATEISYSTEM="ufs" ;; [Uu]) # normales unmounten #echo "Welcher Mountpoint soll geloest werden (z.B. /mnt):" if [ -d "${2}" ] ; then VNODE="$(df "${2}" | awk '/^\/dev\// && /\/md[0-9]/ {print $1}')" if [ -n "${VNODE}" ] ; then echo "umount \"${2}\"" umount "${2}" echo "mdconfig -d -u ${VNODE}" mdconfig -d -u ${VNODE} else echo " # umount des gemounteten Images ${0} u [MountPoint] ${0} u /mnt " fi else echo " # umount des gemounteten Images ${0} u [MountPoint] ${0} u /mnt " fi ;; *) echo " ${0} cd [cdrom.iso] [/mnt] ${0} ext [linux.img] [/mnt] ${0} dos [msdos.img] [/mnt] ${0} ntfs [mswin.img] [/mnt] ${0} ufs [bsd.img] [/mnt] oder ${0} u [/mnt] # umount des gemounteten Images " ;; esac if [ -n "${DATEISYSTEM}" ] ; then if [ -f "${2}" ] ; then IMAGEFILE="${2}" else echo " ${0} cd [cdrom.iso] [/mnt] ${0} ext [linux.img] [/mnt] ${0} dos [msdos.img] [/mnt] ${0} ntfs [mswin.img] [/mnt] ${0} ufs [bsd.img] [/mnt] " fi if [ -d "${3}" ] ; then MOUNTPOINT="${3}" else MOUNTPOINT="/mnt" fi VNODE="$(mdconfig -a -t vnode -f "${IMAGEFILE}")" if [ "${DATEISYSTEM}" != "ntfs-3g" ] ; then mount -t "${DATEISYSTEM}" /dev/${VNODE} "${MOUNTPOINT}" else ntfs-3g -o permissions /dev/${VNODE} "${MOUNTPOINT}" fi fi else echo " ${0} cd [cdrom.iso] [/mnt] ${0} ext [linux.img] [/mnt] ${0} dos [msdos.img] [/mnt] ${0} ntfs [mswin.img] [/mnt] ${0} ufs [bsd.img] [/mnt] oder ${0} u [/mnt] # umount des gemounteten Images " fi ==== DVD mit UDF ==== Leider kann //mount_udf// oft (in meinem Fall) eine [[http://de.wikipedia.org/wiki/Universal_Disk_Format|UDF]]-DVD nicht mounten: === Image-Datei === # mdconfig -l md0 # mount -t udf /dev/md0 /mnt mount_udf: /dev/md0: Invalid argument das geht mit //FreeBSD 8.0// leider nicht per //mount//, sondern nur mit //udfclient//: # portinstall -prO sysutils/udfclient # udfclient /var/tmp/cdrom.iso === DVD === mit //FreeBSD 9.0// hat das mounten einer UDF-DVD geklappt: # mount -t udf /dev/cd0 /cdrom ===== FreeBSD 8 ===== # vi /etc/sysctl.conf vfs.usermount=1 # vi /etc/devfs.conf link acd0 cdrom own acd0 root:operator perm acd0 0660

mount_iso.txt · Zuletzt geändert: 2017/04/06 14:48 von manfred