{"id":513,"date":"2011-10-05T15:28:56","date_gmt":"2011-10-05T19:28:56","guid":{"rendered":"http:\/\/theblane.com\/blog\/?p=513"},"modified":"2011-10-05T15:28:56","modified_gmt":"2011-10-05T19:28:56","slug":"perl-basic-solaris-zone-config","status":"publish","type":"post","link":"http:\/\/www.theblane.com\/blog\/archives\/513","title":{"rendered":"Perl &#8211; Basic Solaris Zone Config"},"content":{"rendered":"<p>#!\/usr\/bin\/perl<br \/>\n# &#8212; Written by Blane Craft &#8212;<br \/>\n# &#8212; 11\/03\/06 &#8212;<br \/>\n#<br \/>\n## &#8211; Basic Zone Config &#8211; ##<\/p>\n<p>print &#8216;##&#8211;Basic Zone Configuration&#8211;##&#8217;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint &#8216;Zone Name? &#8216;;<br \/>\n$name = <STDIN>; chomp ($name);<\/p>\n<p>print &#8216;Set Dir? &#8216;;<br \/>\n$setdir = <STDIN>; chomp ($setdir);<\/p>\n<p>print &#8216;Special Dir? &#8216;;<br \/>\n$spcdir = <STDIN>; chomp ($spcdir);<\/p>\n<p>print &#8216;Filesystem Type? &#8216;;<br \/>\n$fs = <STDIN>; chomp ($fs);<\/p>\n<p>print &#8216;Extra Options? &#8216;;<br \/>\n$extra = <STDIN>; chomp ($extra);<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\n## &#8211; Network Config &#8211; ##<\/p>\n<p>print &#8216;##&#8211;Network Configuration&#8211;##&#8217;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint &#8216;IP Address? &#8216;;<br \/>\n$ip = <STDIN>; chomp ($ip);<\/p>\n<p>print &#8216;Interface? &#8216;;<br \/>\n$if = <STDIN>; chomp ($if);<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\n## &#8211; Resource Control &#8211; ##<\/p>\n<p>print &#8216;##&#8211;Resource Control&#8211;##&#8217;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint &#8216;Resource Control? &#8216;;<br \/>\n$rctl = <STDIN>; chomp ($rctl);<\/p>\n<p>print &#8216;Resource Control Value? (in parens) &#8216;;<br \/>\n$rctlv = <STDIN>; chomp ($rctlv);<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint &#8216;##&#8211;Attributes&#8211;##&#8217;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint &#8216;Name? &#8216;;<br \/>\n$attrn = <STDIN>; chomp ($attrn);<\/p>\n<p>print &#8216;Type? &#8216;;<br \/>\n$attrt = <STDIN>; chomp ($attrs);<\/p>\n<p>print &#8216;Value? &#8216;;<br \/>\n$attrv = <STDIN>; chomp ($attrv);<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;Creating Zone and adding interfaces\\n&#8221;;<br \/>\nsleep 1;<br \/>\nsystem(&#8220;zonecfg -z $name &#8216;create ; set zonepath=\/Zones\/$name ; set autoboot=true ; add fs ; set dir=$setdir ; set special=$spcdir ; set type=$fs ; add options $extra ; end ; add net; set address=$ip ; set physical=$if ; end'&#8221;);<br \/>\nprint&#8221;Adding resource controls and values\\n&#8221;;<br \/>\nsleep 1;<br \/>\nsystem(&#8220;zonecfg -z $name &#8216;add rctl ; set name=$rctl ; set value=$rctlv ; end'&#8221;);<br \/>\nprint&#8221;Adding attributes, verifying, and exiting\\n&#8221;;<br \/>\nsleep 1;<br \/>\nsystem(&#8220;zonecfg -z $name &#8216;add attr ; set name=$attrn ; set type=$attrt ; set value=$attrv ; end ; verify ; commit ; exit'&#8221;);<br \/>\nprint&#8221;Listing existing zones\\n&#8221;;<br \/>\nsleep 1;<br \/>\nsystem(&#8220;zoneadm list -vc&#8221;);<br \/>\nprint&#8221;\\n&#8221;;<br \/>\nprint&#8221;\\n&#8221;;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>#!\/usr\/bin\/perl # &#8212; Written by Blane Craft &#8212; # &#8212; 11\/03\/06 &#8212; # ## &#8211; Basic Zone Config &#8211; ##&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,9,10],"tags":[],"class_list":["post-513","post","type-post","status-publish","format-standard","hentry","category-computer-stuff","category-linux","category-solaris"],"_links":{"self":[{"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/posts\/513","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/comments?post=513"}],"version-history":[{"count":1,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/posts\/513\/revisions"}],"predecessor-version":[{"id":514,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/posts\/513\/revisions\/514"}],"wp:attachment":[{"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/media?parent=513"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/categories?post=513"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.theblane.com\/blog\/wp-json\/wp\/v2\/tags?post=513"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}