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. ...
随机推荐
- 我的redis入门之路
1:操作环境:vmware12 , centOs7 ,redis5.0.3 centOs7安装与下载链接(原文地址): https://blog.csdn.net/qq_42570879/articl ...
- loj题目总览
--DavidJing提供技术支持 现将今年7月份之前必须刷完的题目列举 完成度[23/34] [178/250] 第 1 章 贪心算法 √ [11/11] #10000 「一本通 1.1 例 1」活 ...
- mui 记录
1.轮播添加无限循环 需要在 .mui-slider-group节点上增加.mui-slider-loop类 2.web移动端侧滑与滑动同时存在 参考https://segmentfault.com/ ...
- Java入门细则
(一)一个完整的Java.源程序应该包括下列部分: package语句,该部分至多只有一句,必须放在源程序的第一句. import语句,该部分可以有若干import语句或者没有,必须放在所有的类定 ...
- Http协议入门、响应与请求行、HttpServletRequest对象的使用、请求参数获取和编码问题
1 课程回顾 web入门 1)web服务软件作用: 把本地资源共享给外部访问 2)tomcat服务器基本操作 : 启动: %tomcat%/bin/startup.bat 关闭: %tomcat%/ ...
- hadoop2.x HDFS HA linux环境搭建
HDFS High Availability Using the Quorum Journal Manager 准备3台机器可以更多 NN DN ZK ZKFC JN RM DM n ...
- [转] JavaScript中in操作符(for..in)、Object.keys()和Object.getOwnPropertyNames()的区别
ECMAScript将对象的属性分为两种:数据属性和访问器属性.每一种属性内部都有一些特性,这里我们只关注对象属性的[[Enumerable]]特征,它表示是否通过 for-in 循环返回属性,也可以 ...
- Linux 安装qt5-designer并集成到Pycharm
在前面,有过介绍 Pycharm集成pyrcc4 =====>链接: Pyqt 打包资源文件 这个是在Windows下集成,且pyqt在Windows下一个双击exe搞定. 在pyqt5之前 ...
- net core体系-web应用程序-4asp.net core2.0 项目实战(CMS)-第一章 入门篇-开篇及总体规划
.NET Core实战项目之CMS 第一章 入门篇-开篇及总体规划 原文地址:https://www.cnblogs.com/yilezhu/p/9977862.html 写在前面 千呼万唤始出来 ...
- PTA_输入符号及符号个数打印沙漏(C++)
思路:想将所有沙漏所需符号数遍历一遍,然后根据输入的数判断需要输出多少多少层的沙漏,然后分两部分输出沙漏. #include<iostream> #include<cstring ...