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的更多相关文章
- libguestfs手册(1): 架构
要编辑一个image,则运行下面的命令 guestfish -a ubuntutest.img ><fs> 会弹出一个命令行工具 运行run ><fs> run 我 ...
- libguestfs手册(3): virt命令
guestmount root# guestmount -a ubuntutest1.img -m /dev/sda1 ubuntutestp1 root# cd ubuntutestp1/root: ...
- guestfish 修改 image file
Example guestfish sessionSometimes, you must modify a virtual machine image to remove any traces of ...
- 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(3)
四.Nova-compute 步骤17:nova-compute接收到请求后,通过Resource Tracker将创建虚拟机所需要的资源声明占用 步骤18:调用Neutron API配置Networ ...
- nova file injection的原理和调试过程
file injection代码 file injection原理来讲是比较简单的,在nova boot命令中,有参数--file,是将文件inject到image中 nova boot --flav ...
- [原创]Linux-day1
原创:转发务必注明出处http://www.cnblogs.com/0zcl/p/6077298.html 一.Linux的基本原则 由目的单一的小程序组成:组合小程序完成复杂任务 一切皆文件 尽量避 ...
- 常用命令[Linux]
Linux文件类型 -:普通文件(f) d:目录文件 b:块设备文件(block) c:字符设备文件(character) l:符号链接文件(symbolic link file) p:命名管道文件( ...
- linux man使用方法 和centos安装中文man包 --转
http://blog.chinaunix.net/uid-25100840-id-302308.html 这两天学习<linux设备驱动程序开发详解>中的异步通知,其中有一个fcntl( ...
- 10 分钟学会Linux常用 bash命令
目录 基本操作 1.1. 文件操作 1.2. 文本操作 1.3. 目录操作 1.4. SSH, 系统信息 & 网络操作 基本 Shell 编程 2.1. 变量 2.2. 字符串替换 2.3. ...
随机推荐
- 从头开始学gradle【各系统安装gradle】
所有的环境都是基于jdk1.8 java -version windows安装 下载对应的gradle.zip安装包,解压到指定文件即可,然后配置相应的环境变量即可使用 linux/mac 安装 mk ...
- LeetCode 13. Roman to Integer(c语言版)
题意: Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M. Symbol Value ...
- flex布局学习
教程来自阮一峰的flex布局教程实例篇 容器五大属性: flex-direction:容器内项目的排列方向 (1)row:横向从左往右排列(默认) (2)row-reverse:横向从右往左排列 (3 ...
- js变量传递
基本类型.引用类型 基本类型: undefined.Null.Boolean.Number.String五种 (简单的数据段);引用类型: object (由多个值构成). 两种类型在使用上的区别: ...
- 微信小程序开发01 --- 微信小程序项目结构介绍
一.微信小程序简单介绍: 微信官方介绍微信小程序是一个不需要下载安装就可使用(呵呵,JS代码不用下载吗?展示的UI不用下载吗?)的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用. ...
- PHP获取服务器IP和客户端IP
<?php echo '前端机IP:'.$_SERVER['REMOTE_ADDR']; echo '<br />'; echo '后端机IP:'.$_SERVER['SERVER_ ...
- Windbg分析蓝屏Dump文件
一.WinDbg是什么?它能做什么? WinDbg是在windows平台下,强大的用户态和内核态调试工具.它能够通过dmp文件轻松的定位到问题根源,可用于分析蓝屏.程序崩溃(IE崩溃)原因,是我们日常 ...
- 2018-2019-2 网络对抗技术 20165206 Exp6 信息搜集与漏洞扫描
- 2018-2019-2 网络对抗技术 20165206 Exp6 信息搜集与漏洞扫描 - 实验任务 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口 ...
- OpenCV-Python:霍夫变换
霍夫变换常用来在图像中提取直线和圆等几何形状.如下图: 我们下面来看看如何使用霍夫变换来检测直线.一条直线可以用数学表达式 y = mx + 或者 ρ = xcosθ + y sinθ表示(极坐标) ...
- sqlserver2008 批量插入数据
private DataTable GetTableSchema() { DataTable dt = new DataTable(); dt.Columns.AddRange(new DataCol ...