libguestfs手册(2):guestfish command

添加一个drive:guestfs_add_drive_opts

add-drive filename [readonly:true|false] [format:..] [iface:..] [name:..] [label:..] [protocol:..] [server:..]

This function adds a disk image called filename to the handle.

When this function is called before "launch" (the usual case) then the first time you call this function, the disk appears in the API as /dev/sda, the second time as /dev/sdb, and so on.

# guestfish -a ubuntutest.img

Welcome to guestfish, the guest filesystem shell for
editing virtual machine filesystems and disk images.

Type: ‘help‘ for help on commands
      ‘man‘ to read the manual
      ‘quit‘ to quit the shell

><fs> add-drive ./ubuntutest1.img format:qcow2
><fs> run

><fs> list-devices
/dev/sda
/dev/sdb

><fs> list-partitions
/dev/sda1
/dev/sda2
/dev/sda5
/dev/sdb1

><fs> list-filesystems
/dev/sda1: ext4
/dev/sda2: unknown
/dev/sda5: swap
/dev/sdb1: ext3

# ps aux | grep guest
root     16128  0.1  0.0  96212  4588 pts/0    S+   20:29   0:00 guestfish -a ubuntutest.img
root     16139 36.1  0.1 1342196 90220 pts/0   Sl   20:29   0:02 /usr/bin/qemu-system-x86_64 -global virtio-blk-pci.scsi=off -nodefconfig -enable-fips -nodefaults -nographic -machine accel=kvm:tcg -m 500 -no-reboot -rtc driftfix=slew -no-hpet -no-kvm-pit-reinjection -kernel /var/tmp/.guestfs-0/kernel.16128 -initrd /var/tmp/.guestfs-0/initrd.16128 -device virtio-scsi-pci,id=scsi -drive file=ubuntutest.img,cache=writeback,id=hd0,if=none -device scsi-hd,drive=hd0 -drive file=./ubuntutest1.img,cache=writeback,format=qcow2,id=hd1,if=none -device scsi-hd,drive=hd1 -drive file=/var/tmp/.guestfs-0/root.16128,snapshot=on,id=appliance,cache=unsafe,if=none -device scsi-hd,drive=appliance -device virtio-serial-pci -serial stdio -device sga -chardev socket,path=/tmp/libguestfscoAfPi/guestfsd.sock,id=channel0 -device virtserialport,chardev=channel0,name=org.libguestfs.channel.0 -append panic=1 console=ttyS0 udevtimeout=600 no_timer_check acpi=off printk.time=1 cgroup_disable=memory root=/dev/sdc selinux=0 TERM=linux
root     16140  0.0  0.0  96212  1300 pts/0    S    20:29   0:00 guestfish -a ubuntutest.img

MOUNTING:guestfs_mount

><fs> mount /dev/sda1 /
><fs> ls
ls should have 1 parameter
type ‘help ls‘ for help on ls
><fs> ls /
bin
boot
dev
etc
home
initrd.img
lib
lib64
lost+found
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
vmlinuz
><fs> ls /home
openstack
><fs> ls /home/openstack
.bash_history
.bash_logout
.bashrc
.cache
.profile
sdb
><fs> ls /home/openstack/sdb
><fs> mount /dev/sdb1 /home/openstack/sdb
><fs> ls /home/openstack/sdb            
a
b
c
d
hello
lost+found
world
><fs>

FILESYSTEM ACCESS AND MODIFICATION

><fs> cat /home/openstack/.bash_history
sudo su

><fs> cat /home/openstack/.bash_logout
# ~/.bash_logout: executed by bash(1) when login shell exits.

# when leaving the console clear the screen to increase privacy

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi

chown

chmod

cp

……

PARTITIONING

><fs> part-list /dev/sdb
[0] = {
  part_num: 1
  part_start: 1048576
  part_end: 4294967295
  part_size: 4293918720
}
><fs> part-list /dev/sda
[0] = {
  part_num: 1
  part_start: 1048576
  part_end: 3221225471
  part_size: 3220176896
}
[1] = {
  part_num: 2
  part_start: 3222273024
  part_end: 5367660543
  part_size: 2145387520
}
[2] = {
  part_num: 5
  part_start: 3222274048
  part_end: 5367660543
  part_size: 2145386496
}

part-add
part-del
part-disk
part-get-bootable
part-get-gpt-type
part-get-mbr-id
part-get-name
part-get-parttype
part-init
part-list
part-set-bootable
part-set-gpt-type
part-set-mbr-id
part-set-name
part-to-dev
part-to-partnum

LVM2

lvcreate
lvcreate-free
lvm-canonical-lv-name
lvm-clear-filter
lvm-remove-all
lvm-set-filter
lvremove
lvrename
lvresize
lvresize-free
lvs
lvs-full
lvuuid

pvcreate
pvremove
pvresize
pvresize-size
pvs
pvs-full
pvuuid

vg-activate
vg-activate-all
vgchange-uuid
vgchange-uuid-all
vgcreate
vglvuuids
vgmeta
vgpvuuids
vgremove
vgrename
vgs
vgs-full
vgscan
vguuid

><fs> add-drive ./centos-5.8.new.qcow2 format:qcow2

><fs> pvs
/dev/sdb2
><fs> vgs
VolGroup00
><fs> vgscan
><fs> vgs-full
[0] = {
  vg_name: VolGroup00
  vg_uuid: mSeGoqicAVmrFmpe8gVnQUpjlNIRFHlJ
  vg_fmt: lvm2
  vg_attr: wzx-n-
  vg_size: 10603200512
  vg_free: 0
  vg_sysid:
  vg_extent_size: 33554432
  vg_extent_count: 316
  vg_free_count: 0
  max_lv: 0
  max_pv: 0
  pv_count: 1
  lv_count: 2
  snap_count: 0
  vg_seqno: 4
  vg_tags:
  vg_mda_count: 1
  vg_mda_free: 94208
}

><fs> vgmeta VolGroup00
# Generated by LVM2 version 2.02.98(2) (2012-10-15): Wed Jul  9 13:07:50 2014

contents = "Text Format Volume Group"
version = 1

description = "vgcfgbackup -f /tmp/vgmetaSV9JB9 VolGroup00"

creation_host = "(none)"        # Linux (none) 3.13.0-27-generic #50-Ubuntu SMP Thu May 15 18:06:16 UTC 2014 x86_64
creation_time = 1404911270      # Wed Jul  9 13:07:50 2014

VolGroup00 {
        id = "mSeGoq-icAV-mrFm-pe8g-VnQU-pjlN-IRFHlJ"
        seqno = 4
        format = "lvm2" # informational
        status = ["EXPORTED", "RESIZEABLE", "READ", "WRITE"]
        flags = []
        extent_size = 65536             # 32 Megabytes
        max_lv = 0
        max_pv = 0
        metadata_copies = 0

physical_volumes {

pv0 {
                        id = "K0B8Rq-HB21-lvo7-Eg3D-b0d9-Ya1I-w7C7AS"
                        device = "/dev/sdb2"    # Hint only

status = ["ALLOCATABLE", "EXPORTED"]
                        flags = []
                        dev_size = 20755980     # 9.89722 Gigabytes
                        pe_start = 384
                        pe_count = 316  # 9.875 Gigabytes
                }
        }

logical_volumes {

LogVol00 {
                        id = "92iHZD-bWrY-LN5I-vgwB-3JQm-jOjN-vOLYuv"
                        status = ["READ", "WRITE", "VISIBLE"]
                        flags = []
                        segment_count = 1

segment1 {
                                start_extent = 0
                                extent_count = 191      # 5.96875 Gigabytes

type = "striped"
                                stripe_count = 1        # linear

stripes = [
                                        "pv0", 0
                                ]
                        }
                }

LogVol01 {
                        id = "xsOBkU-Y1WU-HG8S-wZij-vT7W-152G-IbnnfY"
                        status = ["READ", "WRITE", "VISIBLE"]
                        flags = []
                        segment_count = 1

segment1 {
                                start_extent = 0
                                extent_count = 125      # 3.90625 Gigabytes

type = "striped"
                                stripe_count = 1        # linear

stripes = [
                                        "pv0", 191
                                ]
                        }
                }
        }
}

><fs> pvs-full
[0] = {
  pv_name: /dev/sdb2
  pv_uuid: K0B8RqHB21lvo7Eg3Db0d9Ya1Iw7C7AS
  pv_fmt: lvm2
  pv_size: 10603200512
  dev_size: 10627061760
  pv_free: 0
  pv_used: 10603200512
  pv_attr: ax-
  pv_pe_count: 316
  pv_pe_alloc_count: 316
  pv_tags:
  pe_start: 196608
  pv_mda_count: 1
  pv_mda_free: 94208
}

http://www.tldp.org/HOWTO/LVM-HOWTO/

DOWNLOADING

><fs> download /home/openstack/.bash_history testdownload

><fs> upload instance01.xml /home/openstack/testupload
><fs> ls /home/openstack                             
.bash_history
.bash_logout
.bashrc
.cache
.profile
sdb
testupload

命令集合

COMMANDS
    acl-delete-def-file
    acl-get-file
    acl-set-file
    add-cdrom
    add-domain
    domain
    add-drive
    add
    add-drive-opts
    add-drive-ro
    add-ro
    add-drive-ro-with-if
    add-drive-scratch
    scratch
    add-drive-with-if
    aug-clear
    aug-close
    aug-defnode
    aug-defvar
    aug-get
    aug-init
    aug-insert
    aug-label
    aug-load
    aug-ls
    aug-match
    aug-mv
    aug-rm
    aug-save
    aug-set
    aug-setm
    available
    available-all-groups
    base64-in
    base64-out
    blkdiscard
    blkdiscardzeroes
    blkid
    blockdev-flushbufs
    blockdev-getbsz
    blockdev-getro
    blockdev-getsize64
    blockdev-getss
    blockdev-getsz
    blockdev-rereadpt
    blockdev-setbsz
    blockdev-setro
    blockdev-setrw
    btrfs-device-add
    btrfs-device-delete
    btrfs-filesystem-balance
    btrfs-filesystem-resize
    btrfs-filesystem-sync
    btrfs-fsck
    btrfs-set-seeding
    btrfs-subvolume-create
    btrfs-subvolume-delete
    btrfs-subvolume-list
    btrfs-subvolume-set-default
    btrfs-subvolume-snapshot
    canonical-device-name
    cap-get-file
    cap-set-file
    case-sensitive-path
    cat
    checksum
    checksum-device
    checksums-out
    chmod
    chown
    clear-backend-setting
    command
    command-lines
    compress-device-out
    compress-out
    config
    copy-attributes
    copy-device-to-device
    copy-device-to-file
    copy-file-to-device
    copy-file-to-file
    copy-size
    cp
    cp-a
    cp-r
    cpio-out
    dd
    device-index
    df
    df-h
    disk-create
    disk-format
    disk-has-backing-file
    disk-virtual-size
    dmesg
    download
    download-offset
    drop-caches
    du
    e2fsck
    e2fsck-f
    echo-daemon
    egrep
    egrepi
    equal
    exists
    extlinux
    fallocate
    fallocate64
    feature-available
    fgrep
    fgrepi
    file
    file-architecture
    filesize
    filesystem-available
    fill
    fill-dir
    fill-pattern
    find
    find0
    findfs-label
    findfs-uuid
    fsck
    fstrim
    get-append
    get-attach-method
    get-autosync
    get-backend
    get-backend-setting
    get-backend-settings
    get-cachedir
    get-direct
    get-e2attrs
    get-e2generation
    get-e2label
    get-e2uuid
    get-hv
    get-libvirt-requested-credential-challenge
    get-libvirt-requested-credential-defresult
    get-libvirt-requested-credential-prompt
    get-libvirt-requested-credentials
    get-memsize
    get-network
    get-path
    get-pgroup
    get-pid
    pid
    get-program
    get-qemu
    get-recovery-proc
    get-selinux
    get-smp
    get-tmpdir
    get-trace
    get-umask
    get-verbose
    getcon
    getxattr
    getxattrs
    glob-expand
    grep
    grep-opts
    grepi
    grub-install
    head
    head-n
    hexdump
    hivex-close
    hivex-commit
    hivex-node-add-child
    hivex-node-children
    hivex-node-delete-child
    hivex-node-get-child
    hivex-node-get-value
    hivex-node-name
    hivex-node-parent
    hivex-node-set-value
    hivex-node-values
    hivex-open
    hivex-root
    hivex-value-key
    hivex-value-type
    hivex-value-utf8
    hivex-value-value
    initrd-cat
    initrd-list
    inotify-add-watch
    inotify-close
    inotify-files
    inotify-init
    inotify-read
    inotify-rm-watch
    inspect-get-arch
    inspect-get-distro
    inspect-get-drive-mappings
    inspect-get-filesystems
    inspect-get-format
    inspect-get-hostname
    inspect-get-icon
    inspect-get-major-version
    inspect-get-minor-version
    inspect-get-mountpoints
    inspect-get-package-format
    inspect-get-package-management
    inspect-get-product-name
    inspect-get-product-variant
    inspect-get-roots
    inspect-get-type
    inspect-get-windows-current-control-set
    inspect-get-windows-systemroot
    inspect-is-live
    inspect-is-multipart
    inspect-is-netinst
    inspect-list-applications
    inspect-list-applications2
    inspect-os
    is-blockdev
    is-blockdev-opts
    is-chardev
    is-chardev-opts
    is-config
    is-dir
    is-dir-opts
    is-fifo
    is-fifo-opts
    is-file
    is-file-opts
    is-lv
    is-socket
    is-socket-opts
    is-symlink
    is-whole-device
    is-zero
    is-zero-device
    isoinfo
    isoinfo-device
    journal-close
    journal-get
    journal-get-data-threshold
    journal-get-realtime-usec
    journal-next
    journal-open
    journal-set-data-threshold
    journal-skip
    kill-subprocess
    launch
    run
    lchown
    ldmtool-create-all
    ldmtool-diskgroup-disks
    ldmtool-diskgroup-name
    ldmtool-diskgroup-volumes
    ldmtool-remove-all
    ldmtool-scan
    ldmtool-scan-devices
    ldmtool-volume-hint
    ldmtool-volume-partitions
    ldmtool-volume-type
    lgetxattr
    lgetxattrs
    list-9p
    list-devices
    list-disk-labels
    list-dm-devices
    list-filesystems
    list-ldm-partitions
    list-ldm-volumes
    list-md-devices
    list-partitions
    ll
    llz
    ln
    ln-f
    ln-s
    ln-sf
    lremovexattr
    ls
    ls0
    lsetxattr
    lstat
    lstatlist
    luks-add-key
    luks-close
    luks-format
    luks-format-cipher
    luks-kill-slot
    luks-open
    luks-open-ro
    lvcreate
    lvcreate-free
    lvm-canonical-lv-name
    lvm-clear-filter
    lvm-remove-all
    lvm-set-filter
    lvremove
    lvrename
    lvresize
    lvresize-free
    lvs
    lvs-full
    lvuuid
    lxattrlist
    max-disks
    md-create
    md-detail
    md-stat
    md-stop
    mkdir
    mkdir-mode
    mkdir-p
    mkdtemp
    mke2fs
    mke2fs-J
    mke2fs-JL
    mke2fs-JU
    mke2journal
    mke2journal-L
    mke2journal-U
    mkfifo
    mkfs
    mkfs-opts
    mkfs-b
    mkfs-btrfs
    mklost-and-found
    mkmountpoint
    mknod
    mknod-b
    mknod-c
    mkswap
    mkswap-opts
    mkswap-L
    mkswap-U
    mkswap-file
    mktemp
    modprobe
    mount
    mount-9p
    mount-local
    mount-local-run
    mount-loop
    mount-options
    mount-ro
    mount-vfs
    mountpoints
    mounts
    mv
    nr-devices
    ntfs-3g-probe
    ntfsclone-in
    ntfsclone-out
    ntfsfix
    ntfsresize
    ntfsresize-opts
    ntfsresize-size
    parse-environment
    parse-environment-list
    part-add
    part-del
    part-disk
    part-get-bootable
    part-get-gpt-type
    part-get-mbr-id
    part-get-name
    part-get-parttype
    part-init
    part-list
    part-set-bootable
    part-set-gpt-type
    part-set-mbr-id
    part-set-name
    part-to-dev
    part-to-partnum
    ping-daemon
    pread
    pread-device
    pvchange-uuid
    pvchange-uuid-all
    pvcreate
    pvremove
    pvresize
    pvresize-size
    pvs
    pvs-full
    pvuuid
    pwrite
    pwrite-device
    read-file
    read-lines
    readdir
    readlink
    readlinklist
    realpath
    remount
    remove-drive
    removexattr
    rename
    resize2fs
    resize2fs-M
    resize2fs-size
    rm
    rm-f
    rm-rf
    rmdir
    rmmountpoint
    rsync
    rsync-in
    rsync-out
    scrub-device
    scrub-file
    scrub-freespace
    set-append
    append
    set-attach-method
    attach-method
    set-autosync
    autosync
    set-backend
    backend
    set-backend-setting
    set-backend-settings
    set-cachedir
    cachedir
    set-direct
    direct
    set-e2attrs
    set-e2generation
    set-e2label
    set-e2uuid
    set-hv
    hv
    set-label
    set-libvirt-requested-credential
    set-libvirt-supported-credentials
    set-memsize
    memsize
    set-network
    network
    set-path
    path
    set-pgroup
    pgroup
    set-program
    program
    set-qemu
    qemu
    set-recovery-proc
    recovery-proc
    set-selinux
    selinux
    set-smp
    smp
    set-tmpdir
    tmpdir
    set-trace
    trace
    set-uuid
    set-verbose
    verbose
    setcon
    setxattr
    sfdisk
    sfdiskM
    sfdisk-N
    sfdisk-disk-geometry
    sfdisk-kernel-geometry
    sfdisk-l
    sh
    sh-lines
    shutdown
    sleep
    stat
    statvfs
    strings
    strings-e
    swapoff-device
    swapoff-file
    swapoff-label
    swapoff-uuid
    swapon-device
    swapon-file
    swapon-label
    swapon-uuid
    sync
    syslinux
    tail
    tail-n
    tar-in
    tar-in-opts
    tar-out
    tar-out-opts
    tgz-in
    tgz-out
    touch
    truncate
    truncate-size
    tune2fs
    tune2fs-l
    txz-in
    txz-out
    umask
    umount
    unmount
    umount-opts
    umount-all
    unmount-all
    umount-local
    upload
    upload-offset
    user-cancel
    utimens
    utsname
    version
    vfs-label
    vfs-type
    vfs-uuid
    vg-activate
    vg-activate-all
    vgchange-uuid
    vgchange-uuid-all
    vgcreate
    vglvuuids
    vgmeta
    vgpvuuids
    vgremove
    vgrename
    vgs
    vgs-full
    vgscan
    vguuid
    wc-c
    wc-l
    wc-w
    wipefs
    write
    write-append
    write-file
    xfs-admin
    xfs-growfs
    xfs-info
    xfs-repair
    zegrep
    zegrepi
    zero
    zero-device
    zero-free-space
    zerofree
    zfgrep
    zfgrepi
    zfile
    zgrep
    zgrepi

libguestfs手册(2):guestfish command

时间: 2024-10-12 13:21:07

libguestfs手册(2):guestfish command的相关文章

guestfish 修改 image file

Example guestfish sessionSometimes, you must modify a virtual machine image to remove any traces of the MAC addressthat was assigned to the virtual network interface card when the image was first created,because the MAC address will be different when

命令帮助手册的使用

登陆 Login:用户名(身份认证,访问资源能力的设定[权限],映射给系统对应用ID) ID=identifier 认证机制:Authentication,鉴别用户,最常用的密码,密钥. 资源访问授权:Authorization,可以使用资源的权限 审计:Audition,大部分通过日志来完成,干了什么以日志的方式记录下来. [[email protected] ~]# startx & 终端: 用户与主机交互,必然用到的设备: 物理终端:直接接入本机的显示器和键盘设备:/dev/console

获取Linux命令帮助信息,及man手册的使用方法

Linux中命令的类型 Linux 中命令类型分为内部命令和外部命令. 使用type命令判断内部和外部命令,示例如下: [[email protected] ~]# type cd cd is a shell builtin #cd是shell的内置命令[[email protected] ~]# type passwdpasswd is /usr/bin/passwd #passwd命令存放在/usr/bin/passwd路径下 获取Linux命令帮助信息的方法 内部命令直接使用COMMAND

别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(3)

四.Nova-compute 步骤17:nova-compute接收到请求后,通过Resource Tracker将创建虚拟机所需要的资源声明占用 步骤18:调用Neutron API配置Network,虚拟机处于Networking的状态 需要注意的是,这一步虽然是配置Network,但是主要是数据结构的准备,真正的设备并没有创建. 由于在创建虚拟机的时候,我们指定了将虚拟机放到哪个private network里面,因而在创建真正的设备之前,所有的信息都需要准备好. 这里的知识点设计Netw

nova file injection

file injection代码 file injection原理来讲是比较简单的,在nova boot命令中,有参数--file,是将文件inject到image中 nova boot --flavor 2 --image d96b0e41-8264-41de-8dbb-6b31ce9bfbfc --key-name openstack --security-groups default --file /home/ubuntu/bootfromvolume1.xml=/home/cliu8/i

作业01

1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别. 答:    一次发行版         二次发行版       三次发行版    slackware(已不常见)    ├────────  suse(在欧美最流行)    │                   ├──────opensuse │ debian(黑客自发维护,最接近原汁原味的Linux) ├──────── ubuntu │                    ├────── mint │ redhat(提

[原创]Linux-day1

原创:转发务必注明出处http://www.cnblogs.com/0zcl/p/6077298.html 一.Linux的基本原则 由目的单一的小程序组成:组合小程序完成复杂任务 一切皆文件 尽量避免捕获用户接口 配置文件保存为纯文本格式 二.Linux基本认识 1. 接口 GUI接口: 图形接口  Graphic  User  Interface CLI接口: 命令提示符,  prompt,  bash(shell) #:root $:普通用户 2. 命令格式 命令格式为: 命令      

第一周作业

1.描述计算机的组成及其功能. 计算机的组成部分有运算器,控制器,存储器,输入设备,输出设备 1. 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序.数据.地址,协调计算机各部分工作及内存与外设的访问等. 2. 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理. 3. 存储器(Memory):存储器的功能是存储程序.数据和各种信号.命令等信息,并在需要时提供这些信息. 4. 输入(

linux使用帮助

使用帮助 Linux使用帮助: 1:内部命令帮助 2:外部命令帮助 3:本地帮助文档/usr/share/doc/ 4:官网在线文档 5:其它网站和搜索 6:man and info 内部命令帮助: man bash : 看到所有的内部命令帮助 Help- command: 查内部命令帮助 Man+命令: 查内部命令帮助 外部命令帮助: Command --help # COMMAND -h 使用手册(manual) # man COMMAND 信息页 # info COMMAND 程序自身的帮