vSphere 的摩天大楼就建设在ESXi这个坚实的type 1虚拟管理器的基础之上。它就是一个操作系统,可以通过SSH登录。于是,我在其管理界面上开通了ESXi主机的远程登录功能。步骤如下:
1)在VMware Workstation中启动ESXi主机,会看到DCUI上显示着主机的IP地址。
2)打开浏览器,登录主机的IP地址。
3)点击Navigator--->Manage---->Security---->Lockdown Mode---->Edit Settings,选择Disabled(三个选项:Disabled、Normal Lockdown、Strict Lockdown)。
4)点击Navigator--->Manage---->Security---->Services,选择TSM、TSM Shell,选择Policy,Start and Stop With Host。
我的个人电脑使用的是CentOS 7操作系统,在终端上输入ssh root@172.16.92.128(安装时自动分配的IP地址),输入密码就登录了。进去之后,先看看根目录:
在上图中,可以看那个叫scratch的分区。这个分区就是一个VFAT文件系统上的分区,4GB大小,一个是用来保存report 日志的分区。它实际上指向的是scratch -> /vmfs/volumes/5d653d15-461dfccc-77a2-000c298b51e3,即/vmfs/volumes下一个目录。实际上,除了datastore使用的是VMFS 6文件系统,ESXi主机使用的是VFAT文件系统。如下:
[root@172:/vmfs/volumes] df -h
Filesystem Size Used Available Use% Mounted on
VMFS-6 142.5G 65.1G 77.4G 46% /vmfs/volumes/datastore1
vfat 285.8M 172.9M 112.9M 60% /vmfs/volumes/5d653d0f-64439c8c-7b4c-000c298b51e3
vfat 4.0G 26.8M 4.0G 1% /vmfs/volumes/5d653d15-461dfccc-77a2-000c298b51e3
vfat 249.7M 155.2M 94.6M 62% /vmfs/volumes/0ef1c67e-54175993-9656-932280ba9446
vfat 249.7M 146.5M 103.2M 59% /vmfs/volumes/3e062d7e-1ad90a51-07ec-d5b812fdb036
还可以看到store就是主机本地的datastore,也是存放在/vmfs/volumes下,再搜索一vmx为后缀的文件,马上会发现,所有虚拟机就藏在这个目录下。
输入有些命令,如top,则会提示没有这样的命令。于是便到/bin目录下看一看。这才发现一个秘密。原来,ESXi主机上的Linux命令基本上都是由busybox提供的。下面这些,一共129个命令,都由busybox提供。
/bin/python3
/bin/fdisk
/bin/runInRP
/bin/ping
/bin/ping6
/bin/ps
/bin/vmware
/bin/lspci
/bin/hwclock
/bin/irqinfo
/bin/bootOption
/bin/amldump
/bin/pidof
/bin/lsof
/bin/vdu
/bin/vdf
/bin/pgrep
/bin/pkill
/bin/uptime
/bin/[
/bin/[[
/bin/ash
/bin/awk
/bin/basename
/bin/bunzip2
/bin/bzip2
/bin/cat
/bin/chgrp
/bin/chmod
/bin/chown
/bin/chvt
/bin/cksum
/bin/clear
/bin/cp
/bin/crond
/bin/cut
/bin/date
/bin/dd
/bin/diff
/bin/dirname
/bin/dnsdomainname
/bin/du
/bin/echo
/bin/egrep
/bin/eject
/bin/env
/bin/expr
/bin/false
/bin/fgrep
/bin/find
/bin/getty
/bin/grep
/bin/gunzip
/bin/gzip
/bin/halt
/bin/head
/bin/hexdump
/bin/hostname
/bin/inetd
/bin/init
/bin/kill
/bin/ln
/bin/logger
/bin/login
/bin/ls
/bin/lzopcat
/bin/lzop
/bin/md5sum
/bin/mkdir
/bin/mkfifo
/bin/mknod
/bin/mktemp
/bin/more
/bin/mv
/bin/nohup
/bin/nslookup
/bin/od
/bin/poweroff
/bin/printf
/bin/readlink
/bin/reboot
/bin/reset
/bin/resize
/bin/rmdir
/bin/rm
/bin/sed
/bin/seq
/bin/setsid
/bin/sha1sum
/bin/sha256sum
/bin/sha512sum
/bin/sh
/bin/sleep
/bin/sort
/bin/stat
/bin/stty
/bin/sum
/bin/sync
/bin/tail
/bin/tar
/bin/taskset
/bin/tee
/bin/test
/bin/timeout
/bin/time
/bin/touch
/bin/true
/bin/uname
/bin/uniq
/bin/unlzop
/bin/unzip
/bin/usleep
/bin/vi
/bin/watch
/bin/wc
/bin/wget
/bin/which
/bin/who
/bin/xargs
/bin/zcat
/bin/pigz
/bin/python
/bin/netdbg
/bin/scp
/bin/ssh
/bin/passwd
/bin/vm-support
/bin/esxcli
/bin/vim-cmd
129个命令全部指向/usr/lib/vmware/busybox/bin/busybox。更神奇的是,这个busybox只有673.4k个字节,连1M都不到。原来,这是一位高手开发的软件包,开源提供。到他的网站busybox.net上瞅一瞅。知道这个BusyBox是在Linux内核上精心搜索、安装了300多条Unix命令,可以在Unix、Linux、Android、FreeBSD等符合POSIX标准的操作系统上运行。这么精简的身段,这么强悍的功能,特别适合用来开发嵌入式系统。
看来busybox的开发者并不喜欢Linux 7发行版中的systemd。BusyBox作者的网页有一个链接叫Life without Systemd(可以译为:没有systemd的日子),指向一个名叫kill_it_with_fire.txt的文件,教人如何把systemd干掉。链接是:https://busybox.net/kill_it_with_fire.txt。
ESXi主机的/bin只有124M,而我的CentOS 7的/usr/bin则有495M大小。这恐怕也是ESXi保持“苗条”身材的秘密吧。
大别阿郎,原名张瑞旗,河南光山县人,广东省作家协会会员。1994年焦作矿业学院英语专业毕业,获西悉尼大学工商管理硕士学位。做过翻译、秘书、销售、程序员、服务器管理员;创办公司13载;创作了长篇小说《神级宅男网管》《枪手》。出版过非虚构文学作品《从大别山到修水河》《午后三点的乡愁》《请与我同框》。2018年根据自己的长篇小说《行辘》改编的同名电影剧本获中国首届工业文学作品大赛推荐作品奖。现在广州腾科任红帽培训讲师。
来源:oschina
链接:https://my.oschina.net/u/589241/blog/3123045