Skip to content

SmartOS上更新虚拟机配置

这里以一个SmartOS zone更新IP及网关为例。

用到的命令是vmadm update UUID < json.file。相关配置都需要以json的格式给出,这个我有点不习惯。或许还有其它方式,不过我不了解。

Read more

Triton headnode的状态检查

headnode启动后可以运行sdc-healthcheck命令来查看各个服务的状态。 [root@headnode (masan) ~]# sdc-healthcheck ZONE STATE AGENT STATUS global running – online assets running – online sapi running – online binder running – online manatee running – online moray running – online amonredis running – svc-err redis running -…

Read more

一次SmartDataCenter headnode启动失败的修复

headnode启动时显示: hash mismatch press any key to reboot 重新启动了几次都是如此。即使是rescue模式也是一样。幸好这只是台测试用的机器,如果真的是一个负责整个数据中心的headnode无法启动,那后果简直不堪设想。目前我还没看到headnode有什么容错的方案。 记得上次关机之前运行了sdcadm experimental update-*命令更新过一些东西,或许是这个过程中出了什么问题。 尝试了几种方法,发现把headnode中的config文件备份下来,重新制作一个启动的U盘,然后把config文件再拷贝过去就可以重新启动了,原来的zones貌似都可正常启动。 具体如下: 把headnode启动U盘插入到一台Linux机器,把它根目录下的config文件拷贝出来。如果你的已经无法读取了,那我也没办法。 使用原来下载的img文件重新制作一个启动U盘。 使用此U盘启动headnode机器,使用rescue模式。同样需要在grub中设置os_console参数。 使用root登陆(密码文件在下载img文件的压缩包中) 登陆后设置网络,使此机器可以连通存放config文件的Linux机器。我要使用scp命令来复制。具体可参考SmartOS的网络配置方式。 在headnode机器上,进入到/mnt/usbkey目录中,将config文件复制到此文件夹下 完成后重新启动即可解决上述启动问题。2016/04/30 更新: 再次重启后发现headnode会默认使用PXE方式启动,这样无法启动headnode。修复方法是在headnode自动后,以root登陆,运行/usbkey/scripts/mount-usb.sh 脚本以挂载U盘,然后编辑/mnt/usbkey/boot/grub/menu.lst文件,将“default 0”这行改为“default 1”即可。0对应的就是PXE启动,1对应的就是“Live 64bit”的启动方式。

Read more

smartos上如何安装软件

SmartOS使用NetBSD的pkgsrc来安装软件。 具体方式如下: 安装pkgin工具: 先到 http://pkgsrc.joyent.com/packages/SmartOS/bootstrap/上看看最新的pkgin源码包是什么。如目前最新为bootstrap-2015Q4-x86_64.tar.gz 安装 cd / curl -k http://pkgsrc.joyent.com/packages/SmartOS/bootstrap/bootstrap-2015Q4-x86_64.tar.gz | gzcat | tar -xf – 重新编译软件包数据库 # pkg_admin rebuild 更新pkgin数据库 pkgin -y up 安装软件 pkgin in pkg_name pkgin常用命令列表 Command Description pkgin up Updates the pkgin database. You should run this…

Read more

Running bash on Windows 10

微软最近宣布他们正在和Cananical(Ubuntu)合作,要把bash整合到Windows 10中。这听起来像是一个很不错的主意。平时我自己在使用Windows的时候,最不满意的就是Windows的命令行了,无论是功能还是界面。如果能够在Windows上使用bash SHELL以及一些常用的unix命令行工具,如sed/awk/grep/sort等等,那将会让工作效率大大提升,感觉也更好一些。 下面的视频是Windows channel 9上的一个的一个演示。从视频中我们可以看到,在Windows的bash shell中能使用的命令还挺多。Vi,Ruby,用gcc编译hello world C代码。演示者Russ甚至使用apt-get install git命令安装了git,并使用git clone来复制了一个github上的代码库。按主持人的说法,搬到Windows上的不止是bash shell,而是整个“user mode linux”。

Read more

OpenBSD上doas用法简介

doas是OpenBSD 5.8上开始出现的一个程序,用来代替sudo。相比sudo,它的好处是配置简单明了。坏处嘛我还不知道,估计功能上没有sudo那么全面吧。因为我都是用sudo的一些基本功能(指定那些用户可以切换到root),所以对sudo的优势了解并不全面。另外就是,doas的配置完全不兼容sudo,且目前只有OpenBSD上才有。 doas的配置文件是/etc/doas.conf,配置规则如下 permit|deny [options] identity [as target] [cmd command [args …]] 一个规则以permit(允许)或deny(拒绝)开头,  接下来是一些选项(options,非必须),然后是配置的用户名或用户组(identity部分),再接下来是这个用户(identity部分)可以(或不允许)以哪个用户(target)的身份来执行命令,用as关键词来表示。这也是可选的。如果省略,表示这个用户(identity)可以以任意用户的身份执行后面cmd关键词指定的命令;   cmd关键词用来指定允许(或拒绝)的命令,args关键词用来指定命令的参数; cmd 和args都是可选的。省略的话表示任意命令和参数。 选项(options)部分有一下两个选择: a. nopass , 表示用户无需输入密码 b. keepenv  { [ variables … ] },表示用户的使用环境将会被保持,如果不指定的话,默认是会重置的(除了这些变量: DISPLAY, HOME, LOGNAME, MAIL, PATH, TERM, USER and USERNAME.)。keepenv还可以指定具体那些变量被保持。将需要保持的变量名称放在大括号中,多个时以空格分开。…

Read more
Sidebar