<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://www.smithnet.org.uk/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NickPGSmith</id>
	<title>Smithnet Wiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://www.smithnet.org.uk/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=NickPGSmith"/>
	<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Special:Contributions/NickPGSmith"/>
	<updated>2026-07-15T12:07:42Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1815</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1815"/>
		<updated>2026-07-15T08:29:01Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
** 120 MHz ECC SDRAM, propriety &lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
*** Proprietary ECC RAM: A4995A for 512 MB, A6016A for 1 GB&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: seagate ST373454LC (73 GB, 15 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Released: Dec 2000&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
**** Released: Sep 2003&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1814</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1814"/>
		<updated>2026-07-14T21:34:42Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
** 120 MHz ECC SDRAM, propriety &lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: seagate ST373454LC (73 GB, 15 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Released: Dec 2000&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
**** Released: Sep 2003&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1813</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1813"/>
		<updated>2026-07-14T21:26:13Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: seagate ST373454LC (73 GB, 15 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Released: Dec 2000&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
**** Released: Sep 2003&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1812</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1812"/>
		<updated>2026-07-14T21:25:26Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: seagate ST373454LC (73 GB, 15 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Released: Dec 2000&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1811</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1811"/>
		<updated>2026-07-14T21:05:51Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy (1.44 MB) for use with HFS and mount filesystem:&lt;br /&gt;
 mediainit -f 16 /dev/rfloppy/c0t1d0&lt;br /&gt;
 newfs -F hfs /dev/rfloppy/c0t1d0&lt;br /&gt;
 mount /dev/rfloppy/c0t1d0 /floppy&lt;br /&gt;
&lt;br /&gt;
Here, 16 is the format type listed in the floppy command&#039;s man page. Use 26 for 1.6 MB.&lt;br /&gt;
&lt;br /&gt;
Access MS-DOS formatted files (disks cannot be formatted in HP-UX) with:&lt;br /&gt;
 dosls /dev/rfloppy/c0t1d0:/somedir&lt;br /&gt;
 doscp /tmp/somefile.txt /dev/rfloppy/c0t1d0:/&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1810</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1810"/>
		<updated>2026-07-14T20:58:28Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy (DOS 1.44 MB) for use with HFS:&lt;br /&gt;
 mediainit -f 16 /dev/rfloppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page. Use 26 for 1.6 MB.&lt;br /&gt;
&lt;br /&gt;
Access MS-DOS formatted files (disks cannot be formatted in HP-UX) with:&lt;br /&gt;
 dosls /dev/rfloppy/c0t1d0:/somedir&lt;br /&gt;
 doscp /tmp/somefile.txt /dev/rfloppy/c0t1d0:/&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1809</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1809"/>
		<updated>2026-07-14T20:50:21Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Administration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy (DOS 1.44 MB):&lt;br /&gt;
 mediainit -f 16 /dev/rfloppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page. Use 26 for 1.6 MB.&lt;br /&gt;
&lt;br /&gt;
Read/write data to device file with tar, or access DOS formatted files with:&lt;br /&gt;
 dosls /dev/rfloppy/c0t1d0:/somedir&lt;br /&gt;
 doscp /tmp/somefile.txt /dev/rfloppy/c0t1d0:/&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1808</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1808"/>
		<updated>2026-07-14T20:45:50Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy (DOS 1.44 MB):&lt;br /&gt;
 mediainit -f 16 /dev/rfloppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page. Use 26 for 1.6 MB.&lt;br /&gt;
&lt;br /&gt;
Read/write data to device file with tar, or access DOS formatted files with:&lt;br /&gt;
* dosls&lt;br /&gt;
* doscp&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1807</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1807"/>
		<updated>2026-07-14T20:40:44Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy (DOS 1.44 MB):&lt;br /&gt;
 mediainit -f 16 /dev/floppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page. Use 26 for 1.6 MB.&lt;br /&gt;
&lt;br /&gt;
Read/write data to device file with tar, or access DOS formatted files with:&lt;br /&gt;
* dosls&lt;br /&gt;
* doscp&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1806</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1806"/>
		<updated>2026-07-14T17:09:31Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: seagate ST373454LC (73 GB, 15 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1805</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1805"/>
		<updated>2026-07-14T17:07:26Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Servers/Desktops */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; LG GDR8163B CD/DVD Drive&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1804</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1804"/>
		<updated>2026-07-07T11:38:20Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Server Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Servers/Desktops ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; Samsung CDRW/DVD SM-352B&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1803</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1803"/>
		<updated>2026-07-07T11:38:05Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Laptop Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptops ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Server Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; Samsung CDRW/DVD SM-352B&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1802</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1802"/>
		<updated>2026-07-04T11:55:29Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 5 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2026-07-04||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||19:37||3:55||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||42th of 334 overall. Very hilly, warm. Pacer V2.&lt;br /&gt;
Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-11||[https://www.pettswoodrunners.org/petts-wood-10k.html Petts Wood]|| || || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1801</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1801"/>
		<updated>2026-07-03T17:36:37Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Server Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptop Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Server Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; Samsung CDRW/DVD SM-352B&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Last Patches: &amp;quot;December 2009 Gold QPK bundle&amp;quot; (GOLDQPK11i-11.11.0912)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1800</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1800"/>
		<updated>2026-07-03T17:27:40Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Server Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptop Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Server Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;br /&gt;
&lt;br /&gt;
* HP Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
** 400 MHz PA-RISC PA-8500&lt;br /&gt;
** 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
** HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
*** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
** Firmware 5.0, ISL A.00.43&lt;br /&gt;
** Liteon CDROM LTN485S -&amp;gt; Samsung CDRW/DVD SM-352B&lt;br /&gt;
** Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
** Disk:&lt;br /&gt;
*** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
*** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
** Supports HP-UX&lt;br /&gt;
*** 10.20 32-bit from version ACE9912&lt;br /&gt;
*** 11.00 64-bit from version ACE9911&lt;br /&gt;
*** 11i v1 (11.11)&lt;br /&gt;
**** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
**** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
*** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1799</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1799"/>
		<updated>2026-07-03T17:26:08Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy:&lt;br /&gt;
 mediainit -f 16 /dev/floppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page.&lt;br /&gt;
&lt;br /&gt;
Read/write data to device file with tar, or access DOS formatted files with:&lt;br /&gt;
* dosls&lt;br /&gt;
* doscp&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1798</id>
		<title>HP-UX</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=HP-UX&amp;diff=1798"/>
		<updated>2026-07-02T16:53:04Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Processor Dependent Code */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Hardware ==&lt;br /&gt;
&lt;br /&gt;
* Vizualize [https://www.openpa.net/systems/hp-visualize_b1000_c3000_c3600.html C3000] (9000/785/C3000)&lt;br /&gt;
* 400 MHz PA-RISC PA-8500&lt;br /&gt;
* 512 MB (4 of 8 slots, max 8 GB)&lt;br /&gt;
* HP Visualize FX6 (A4554B) Graphics Card ([https://en.wikipedia.org/wiki/VESA_Enhanced_Video_Connector EVC] aka P&amp;amp;D-A Output) (with A4560A texture accelerator)&lt;br /&gt;
** Initially driving: 1280x1024@75Hz, compatible with 1600x1200 @75 Hz&lt;br /&gt;
* Firmware 5.0, ISL A.00.43&lt;br /&gt;
* Liteon CDROM LTN485S -&amp;gt; Samsung CDRW/DVD SM-352B&lt;br /&gt;
* Space for 2 SCSI-3 (Ultra 160) Disks&lt;br /&gt;
* Disk:&lt;br /&gt;
** Original: Seagate ST3920LC (9.1 GB, 10 k RPM, U160) / Fujitsu MAN3184MC (18 GB, 10 k RPM, U160)&lt;br /&gt;
** Upgraded: Fujitsu (73 GB, 10 k RPM, U320)&lt;br /&gt;
* Supports HP-UX&lt;br /&gt;
** 10.20 32-bit from version ACE9912&lt;br /&gt;
** 11.00 64-bit from version ACE9911&lt;br /&gt;
** 11i v1 (11.11)&lt;br /&gt;
*** Technical Computing [https://web.archive.org/web/20050219161856/http://docs.hp.com/en/B3920-90091/ch04s01.html Operating Environment] (TCOE) for workstations&lt;br /&gt;
*** Minimal Technical Operating Environment (MTOE) for workstations&lt;br /&gt;
** 11i v2 (11.23) unofficially; except graphics&lt;br /&gt;
&lt;br /&gt;
Note: with no keyboard, boots with first serial interface as console (9600-8N1)&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
OS Installation images:&lt;br /&gt;
* [https://archive.org/details/hp-ux11i11.0 HP-UX 11i (11.0)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-mission-critical-operating-environment-sept-2005 HP-UX 11i v1 (11.11) Misson Critical Environment (Sept 2005)]&lt;br /&gt;
* [https://archive.org/details/hp-ux-11i-version-1-application-software-june-2006 HP-UX 11i v1 Application Software (June 2006)]&lt;br /&gt;
* [https://archive.org/details/hpux-11i-v2 HP-UX 11i v2 (11.23)]&lt;br /&gt;
&lt;br /&gt;
Other software archive:&lt;br /&gt;
* [https://archive.org/details/ftp-hpux-connect-org-uk HP Connect]&lt;br /&gt;
&lt;br /&gt;
== Boot ==&lt;br /&gt;
&lt;br /&gt;
=== Processor Dependent Code ===&lt;br /&gt;
&lt;br /&gt;
Interrupt PDC boot process by keyboard in 10s, to enter Boot Console Handler (BCH):&lt;br /&gt;
&lt;br /&gt;
To show current options and help, and get to main menu:&lt;br /&gt;
 display&lt;br /&gt;
 help&lt;br /&gt;
 main&lt;br /&gt;
&lt;br /&gt;
Show boot path:&lt;br /&gt;
 path&lt;br /&gt;
&lt;br /&gt;
Boot from primary or alternative paths:&lt;br /&gt;
 boot PRI&lt;br /&gt;
 boot ALT&lt;br /&gt;
&lt;br /&gt;
Search for boot devices:&lt;br /&gt;
 search&lt;br /&gt;
&lt;br /&gt;
Search for IPL devices:&lt;br /&gt;
 search ipl&lt;br /&gt;
&lt;br /&gt;
Boot from one of the paths above with Path Number:&lt;br /&gt;
 boot P1&lt;br /&gt;
&lt;br /&gt;
Set primary boot path to SCSI ID 6:&lt;br /&gt;
 path pri P2&lt;br /&gt;
&lt;br /&gt;
Enter configuration menu:&lt;br /&gt;
 configuration&lt;br /&gt;
&lt;br /&gt;
Show/change monitor configuration:&lt;br /&gt;
 monitor list&lt;br /&gt;
&lt;br /&gt;
Show/change time configuration:&lt;br /&gt;
 time&lt;br /&gt;
&lt;br /&gt;
Enter information menu:&lt;br /&gt;
 information&lt;br /&gt;
&lt;br /&gt;
Enter service menu:&lt;br /&gt;
 service&lt;br /&gt;
&lt;br /&gt;
=== Initial System Loader ===&lt;br /&gt;
&lt;br /&gt;
Once a boot command is sucessful, the ISL is read from disk, and can be interacted with if chosen. Run Offline Diagnostics Environment (ODE):&lt;br /&gt;
 ode&lt;br /&gt;
&lt;br /&gt;
Or the HP-UX Secondary System Loader which starts the HP-UX kernel (vmunix):&lt;br /&gt;
 hpux&lt;br /&gt;
&lt;br /&gt;
possibly with flags  for single user, maintenance, or a custom kernel:&lt;br /&gt;
 hpux –is&lt;br /&gt;
 hpux –lm&lt;br /&gt;
 hpux (;0)/stand/vmunix.prev&lt;br /&gt;
&lt;br /&gt;
When booting off CD-ROM to install:&lt;br /&gt;
 hpux (;0):INSTALL&lt;br /&gt;
&lt;br /&gt;
See help for more.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
TBC&lt;br /&gt;
&lt;br /&gt;
== Support Plus ==&lt;br /&gt;
&lt;br /&gt;
 mkdir /cdrom&lt;br /&gt;
 ioscan -fnC disk&lt;br /&gt;
 mount -F cdfs -o ro -r /dev/dsk/c1t2d0 /cdrom&lt;br /&gt;
&lt;br /&gt;
See documents:&lt;br /&gt;
 * /cdrom/USRGUIDE.PDF&lt;br /&gt;
 * /cdrom/TEXT_FILES&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* [https://www.justsomestuff.co.uk/wiki/doku.php/hpux/hpux_index some docs]&lt;br /&gt;
* [https://nixdoc.net/man-pages/HP-UX/ nixdoc].&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
&lt;br /&gt;
If new devices are not detected:&lt;br /&gt;
 cd /dev&lt;br /&gt;
 insf -e&lt;br /&gt;
&lt;br /&gt;
Show all devices:&lt;br /&gt;
 ioscan -f&lt;br /&gt;
&lt;br /&gt;
Scan for disks:&lt;br /&gt;
 /usr/sbin/ioscan -d sdisk&lt;br /&gt;
&lt;br /&gt;
Scan for a floppy drive:&lt;br /&gt;
 ioscan -fnC floppy&lt;br /&gt;
&lt;br /&gt;
which should produce a device file like &amp;quot;/dev/floppy/c0t1d0&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Format a floppy:&lt;br /&gt;
 mediainit -f 16 /dev/floppy/c0t1d0&lt;br /&gt;
&lt;br /&gt;
where 16 is the format type listed in the floppy command&#039;s man page.&lt;br /&gt;
&lt;br /&gt;
Read/write data to device file with tar, or access DOS formatted files with:&lt;br /&gt;
* dosls&lt;br /&gt;
* doscp&lt;br /&gt;
&lt;br /&gt;
=== Desktop ===&lt;br /&gt;
&lt;br /&gt;
Enable/disable auto-start:&lt;br /&gt;
 /usr/dt/bin/dtconfig -e&lt;br /&gt;
 /usr/dt/bin/dtconfig -d&lt;br /&gt;
&lt;br /&gt;
Control which X servers to start:&lt;br /&gt;
 /etc/dt/config/Xservers&lt;br /&gt;
&lt;br /&gt;
Errors:&lt;br /&gt;
 /var/dt/Xerrors&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
Show network interfaces:&lt;br /&gt;
 lanscan -i&lt;br /&gt;
 ifconfig lan0&lt;br /&gt;
&lt;br /&gt;
Configuration files for IPv4 / IPv6:&lt;br /&gt;
* /etc/rc.config.d/netconf&lt;br /&gt;
* /etc/rc.config.d/netconf-ipv6&lt;br /&gt;
&lt;br /&gt;
=== Disks ===&lt;br /&gt;
&lt;br /&gt;
Show physical disk info:&lt;br /&gt;
 ioscan -funC disk&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
Show software bundles:&lt;br /&gt;
 swlist -i&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=OpenWRT&amp;diff=1797</id>
		<title>OpenWRT</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=OpenWRT&amp;diff=1797"/>
		<updated>2026-07-01T12:24:18Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* TP-Link Archer C7 v4 / v5 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Devices ==&lt;br /&gt;
&lt;br /&gt;
Future:&lt;br /&gt;
* Mercusys MR90X&lt;br /&gt;
* GL.iNet [https://openwrt.org/toh/gl.inet/gl-mt6000 GL-MT6000] (Flint 2)&lt;br /&gt;
&lt;br /&gt;
=== TP-Link Archer C7 v4 / v5 ===&lt;br /&gt;
&lt;br /&gt;
* [https://openwrt.org/toh/tp-link/archer_c7 Device page]&lt;br /&gt;
* 775 MHz CPU, 16 MiB flash, 128 MiB RAM&lt;br /&gt;
* Currently Installed: 25.12.4&lt;br /&gt;
* Max Power (2.4/5 GHz): 24/30 dBm&lt;br /&gt;
* When routing/firewall, max throughput is ~ 135 Mbps until &amp;quot;Software flow offloading&amp;quot; is enabled.&lt;br /&gt;
* Can trigger on WPS button with script in /etc/rc.button/wps&lt;br /&gt;
&lt;br /&gt;
=== HooToo TripMate Nano (HT-TM02) ===&lt;br /&gt;
&lt;br /&gt;
* [https://openwrt.org/toh/hootoo/tripmate-nano Device page]&lt;br /&gt;
* 360 MHz CPU, 8 MiB flash, 32 MiB RAM&lt;br /&gt;
* Currently Installed: 19.07.10&lt;br /&gt;
* Initial installation [https://forum.archive.openwrt.org/viewtopic.php?id=53014 here]&lt;br /&gt;
* Can remove kernel PPP packages&lt;br /&gt;
&lt;br /&gt;
==== Mode on Startup ====&lt;br /&gt;
&lt;br /&gt;
Read status of buttons:&lt;br /&gt;
&lt;br /&gt;
 root@wifi-ht:~# cat /sys/kernel/debug/gpio&lt;br /&gt;
  gpiochip0: GPIOs 0-21, parent: platform/10000600.gpio, 10000600.gpio:&lt;br /&gt;
  gpio-7   (                    |ht-tm02:blue:wlan   ) out lo    &lt;br /&gt;
  gpio-10  (                    |reset               ) in  hi    &lt;br /&gt;
  gpio-12  (                    |ht-tm02:green:lan   ) out lo    &lt;br /&gt;
  gpio-14  (                    |modeswitch          ) in  lo    &lt;br /&gt;
 root@wifi-ht:~#&lt;br /&gt;
&lt;br /&gt;
For modeswitch, &amp;quot;lo&amp;quot; is Wired, &amp;quot;hi&amp;quot; is WiFi position.&lt;br /&gt;
&lt;br /&gt;
Could also use [https://github.com/jefferyto/openwrt-slide-switch slide-switch] package. Biggest advantage of this is that it triggers at boot time, not just a switch change.&lt;br /&gt;
 opkg install slide-switch&lt;br /&gt;
&lt;br /&gt;
On startup On mode (button) change, copy files from /etc/config/config-wired or config-wireless to /etc/config with:&lt;br /&gt;
* etc/rc.d/S15config-mode -&amp;gt; /etc/config/config-mode&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 #&lt;br /&gt;
 # Set mode according to slide switch&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 CONFIG=/etc/config&lt;br /&gt;
 &lt;br /&gt;
 state=$(grep modeswitch /sys/kernel/debug/gpio | sed &#039;s/.*\(lo\|hi\).*/\1/&#039;)&lt;br /&gt;
 case &amp;quot;$state&amp;quot; in&lt;br /&gt;
         lo)&lt;br /&gt;
                 mode=&amp;quot;wired&amp;quot;&lt;br /&gt;
                 ;;&lt;br /&gt;
         hi)&lt;br /&gt;
                 mode=&amp;quot;wireless&amp;quot;&lt;br /&gt;
                 ;;&lt;br /&gt;
         *)&lt;br /&gt;
                 echo &amp;quot;unknown&amp;quot;&lt;br /&gt;
                 return 1&lt;br /&gt;
                 ;;&lt;br /&gt;
 esac&lt;br /&gt;
 &lt;br /&gt;
 message=&amp;quot;Using config mode: $mode&amp;quot;&lt;br /&gt;
 echo $message&lt;br /&gt;
 logger $message&lt;br /&gt;
 &lt;br /&gt;
 config=&amp;quot;$CONFIG/config-$mode&amp;quot;&lt;br /&gt;
 for file in $(ls $config)&lt;br /&gt;
 do&lt;br /&gt;
         echo $file&lt;br /&gt;
         cp &amp;quot;$config/$file&amp;quot; $CONFIG&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
== Configuration and Commands ==&lt;br /&gt;
&lt;br /&gt;
=== Misc ===&lt;br /&gt;
&lt;br /&gt;
* [https://busybox.net/downloads/BusyBox.html Busybox]&lt;br /&gt;
* [https://openwrt.org/docs/guide-user/base-system/uci UCI Configuration System]&lt;br /&gt;
* Show logging: logread -f&lt;br /&gt;
* wifi up&lt;br /&gt;
&lt;br /&gt;
In /etc/config:&lt;br /&gt;
* wireless&lt;br /&gt;
* dhcp&lt;br /&gt;
* system&lt;br /&gt;
* network&lt;br /&gt;
* firewall&lt;br /&gt;
&lt;br /&gt;
* [https://www.youtube.com/watch?v=UvniZs8q3eU OpenWRT setmentation]&lt;br /&gt;
&lt;br /&gt;
Disable IPv6 DHCP Server:&lt;br /&gt;
* Interface -&amp;gt; IPv6 -&amp;gt;&lt;br /&gt;
** RA-Servce: disabled&lt;br /&gt;
** DHCPv6-Service: disabled&lt;br /&gt;
** NDP-Proxy: disabled&lt;br /&gt;
&lt;br /&gt;
Custom startup scripts:&lt;br /&gt;
* /etc/rc.local&lt;br /&gt;
&lt;br /&gt;
In /etc:&lt;br /&gt;
* sysupgrade.conf&lt;br /&gt;
&lt;br /&gt;
=== DHCP ===&lt;br /&gt;
&lt;br /&gt;
Custom options may be given per network, eg: for NTP:&lt;br /&gt;
* 42, 192.168.1.1&lt;br /&gt;
&lt;br /&gt;
=== DNS ===&lt;br /&gt;
&lt;br /&gt;
* resolv.conf symlinked to /tmp/resolv.conf which points to local dnsmasq service which delivers from its cache or via DNS servers pointed to by proxies resolv.conf.auto (DHCP client updated)&lt;br /&gt;
* See also [https://openwrt.org/docs/guide-user/base-system/dns_configuration here]&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
 opkg update&lt;br /&gt;
 opkg list&lt;br /&gt;
 opkg list-installed&lt;br /&gt;
 opkg install blah&lt;br /&gt;
 opkg remove blah&lt;br /&gt;
&lt;br /&gt;
=== Reset ===&lt;br /&gt;
&lt;br /&gt;
* Controlled by /etc/rc.button/reset&lt;br /&gt;
* Quick press of reset button reboots&lt;br /&gt;
* Failsafe (long press) forces network to:&lt;br /&gt;
** 192.168.1.1 / 255.255.255.0&lt;br /&gt;
** SSH open with root / no password&lt;br /&gt;
** &amp;quot;firstboot&amp;quot; command to revert to factory defaults&lt;br /&gt;
** Hard factory reset (to 192.168.1.1.): umount /overlay &amp;amp;&amp;amp; jffs2reset &amp;amp;&amp;amp; reboot now&lt;br /&gt;
** &amp;quot;mount_root&amp;quot; to mount root partition&lt;br /&gt;
&lt;br /&gt;
=== Wifi commands ===&lt;br /&gt;
&lt;br /&gt;
 iw phy0 info&lt;br /&gt;
 iw reg get&lt;br /&gt;
 iw reg set GB&lt;br /&gt;
&lt;br /&gt;
See other [http://wireless.kernel.org/en/users/Documentation/iw#Scanning iw] commands and [http://git.kernel.org/cgit/linux/kernel/git/linville/wireless-regdb.git/tree/db.txt?id=HEAD Reg Database].&lt;br /&gt;
&lt;br /&gt;
=== USB and File sharing ===&lt;br /&gt;
&lt;br /&gt;
Add packages:&lt;br /&gt;
 opkg install kmod-usb-core kmod-usb-storage usbutils block-mount luci-app-minidlna&lt;br /&gt;
&lt;br /&gt;
Show device:&lt;br /&gt;
 ls /dev/sd*&lt;br /&gt;
 lsusb -t&lt;br /&gt;
&lt;br /&gt;
Driver USB 1, 2, 3: uhci/ohci, ehci, xhci&lt;br /&gt;
&lt;br /&gt;
Show device:&lt;br /&gt;
 # block info /dev/sda1&lt;br /&gt;
 /dev/sda1: UUID=&amp;quot;9814-E49A&amp;quot; LABEL=&amp;quot;2&amp;quot; VERSION=&amp;quot;FAT16&amp;quot; TYPE=&amp;quot;vfat&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Mount FAT32 USB stick:&lt;br /&gt;
 /sbin/block mount&lt;br /&gt;
 cd /mnt/sda1&lt;br /&gt;
&lt;br /&gt;
See also [https://openwrt.org/docs/guide-user/storage/usb-drives here]&lt;br /&gt;
&lt;br /&gt;
=== LEDs ===&lt;br /&gt;
&lt;br /&gt;
* Panel LEDS: [https://openwrt.org/start?id=docs/guide-user/base-system/led_configuration LED Config]&lt;br /&gt;
* [https://openwrt.org/docs/techref/hardware/port.gpio GPIO]&lt;br /&gt;
&lt;br /&gt;
=== Buttons ===&lt;br /&gt;
&lt;br /&gt;
* Panel buttons: [https://openwrt.org/docs/guide-user/hardware/hardware.button Button Config].&lt;br /&gt;
&lt;br /&gt;
procd interface:&lt;br /&gt;
&lt;br /&gt;
 root@hootoo:/etc/rc.button# ls&lt;br /&gt;
 BTN_0     failsafe  power     reset     rfkill&lt;br /&gt;
 root@hootoo:/etc/rc.button#&lt;br /&gt;
&lt;br /&gt;
scripts need to be named according to the button name, like &amp;quot;BTN_0&amp;quot; or &amp;quot;wps&amp;quot; (see [https://openwrt.org/docs/guide-user/hardware/hardware.button here]). They receive values:&lt;br /&gt;
* $BUTTON: Name of button&lt;br /&gt;
* $ACTION: &amp;quot;pressed&amp;quot;, &amp;quot;timeout&amp;quot; or &amp;quot;released&amp;quot;. For released, script returns timeout seconds (for hold down).&lt;br /&gt;
* $SEEN: number of seconds&lt;br /&gt;
&lt;br /&gt;
 root@wifi-ht:/etc/rc.button# cat BTN_0 &lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
 logger &amp;quot;Button $BUTTON: $ACTION (Seen $SEEN)&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 return 0&lt;br /&gt;
 root@wifi-ht:/etc/rc.button#&lt;br /&gt;
&lt;br /&gt;
=== 6in4 ===&lt;br /&gt;
&lt;br /&gt;
Requires packages: 6in4 luci-proto-ipv6 and used tunnel from [https://tunnelbroker.net/ Hurricane Electric].&lt;br /&gt;
* Restart network&lt;br /&gt;
* In LUCI, edit wan6 and change protocol from DHCPv6 to RFC4213&lt;br /&gt;
* Set Remote IPv4 address (eg 74.82.46.6)&lt;br /&gt;
* Set Local IPv6 address&lt;br /&gt;
* Set IPv6 routed prefix (Routed /48)&lt;br /&gt;
* Dynamic tunnel&lt;br /&gt;
** Tunnel ID&lt;br /&gt;
** HE username/password&lt;br /&gt;
&lt;br /&gt;
 ping ipv6.google.com&lt;br /&gt;
&lt;br /&gt;
Manual Config:&lt;br /&gt;
&lt;br /&gt;
 opkg install 6in4&lt;br /&gt;
&lt;br /&gt;
 uci set network.henet=interface&lt;br /&gt;
 uci set network.henet.proto=6in4&lt;br /&gt;
 uci set network.henet.peeraddr=[get IPv4 of HE gateway] &lt;br /&gt;
 uci set network.henet.ip6addr=&#039;[IPv6 from HE]&#039;&lt;br /&gt;
 uci set network.henet.tunnelid=[HE tunnel ID]&lt;br /&gt;
 uci set network.henet.username=[HE username]&lt;br /&gt;
 uci set network.henet.password=&#039;[HE password]&#039;&lt;br /&gt;
 uci commit network&lt;br /&gt;
 &lt;br /&gt;
 uci set firewall.@zone[1].network=&#039;wan henet&#039;&lt;br /&gt;
 uci commit firewall&lt;br /&gt;
 &lt;br /&gt;
 ifup henet&lt;br /&gt;
 /etc/init.d/firewall restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Regulatory Domains and Channels ==&lt;br /&gt;
&lt;br /&gt;
 iw reg set GB&lt;br /&gt;
 iw reg get&lt;br /&gt;
&lt;br /&gt;
Regulatory domains defined in:&lt;br /&gt;
 /lib/firmware/regulatory.db&lt;br /&gt;
&lt;br /&gt;
* [https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git Regulatory Database Github]&lt;br /&gt;
&lt;br /&gt;
See [https://openwrt.org/docs/guide-user/network/wifi/wifi_countrycode here] for explanation of format.&lt;br /&gt;
&lt;br /&gt;
The following lists taken from:&lt;br /&gt;
 iw list&lt;br /&gt;
&lt;br /&gt;
=== 2.4 GHz ===&lt;br /&gt;
&lt;br /&gt;
CA&lt;br /&gt;
* &#039;&#039;&#039;2412 MHz [1] (30.0 dBm)&#039;&#039;&#039;&lt;br /&gt;
* 2417 MHz [2] (30.0 dBm)&lt;br /&gt;
* 2422 MHz [3] (30.0 dBm)&lt;br /&gt;
* 2427 MHz [4] (30.0 dBm)&lt;br /&gt;
* &#039;&#039;&#039;2432 MHz [5] (30.0 dBm)&#039;&#039;&#039;&lt;br /&gt;
* 2437 MHz [6] (30.0 dBm)&lt;br /&gt;
* 2442 MHz [7] (30.0 dBm)&lt;br /&gt;
* 2447 MHz [8] (30.0 dBm)&lt;br /&gt;
* 2452 MHz [9] (30.0 dBm)&lt;br /&gt;
* 2457 MHz [10] (30.0 dBm)&lt;br /&gt;
* 2462 MHz [11] (30.0 dBm)&lt;br /&gt;
* 2467 MHz [12] (disabled)&lt;br /&gt;
* 2472 MHz [13] (disabled)&lt;br /&gt;
* 2484 MHz [14] (disabled)&lt;br /&gt;
&lt;br /&gt;
PA&lt;br /&gt;
* 2412 MHz [1] (24.0 dBm)&lt;br /&gt;
* 2417 MHz [2] (24.0 dBm)&lt;br /&gt;
* 2422 MHz [3] (24.0 dBm)&lt;br /&gt;
* 2427 MHz [4] (24.0 dBm)&lt;br /&gt;
* 2432 MHz [5] (24.0 dBm)&lt;br /&gt;
* 2437 MHz [6] (24.0 dBm)&lt;br /&gt;
* 2442 MHz [7] (24.0 dBm)&lt;br /&gt;
* 2447 MHz [8] (24.0 dBm)&lt;br /&gt;
* 2452 MHz [9] (24.0 dBm)&lt;br /&gt;
* 2457 MHz [10] (24.0 dBm)&lt;br /&gt;
* 2462 MHz [11] (24.0 dBm)&lt;br /&gt;
* 2467 MHz [12] (24.0 dBm)&lt;br /&gt;
* &#039;&#039;&#039;2472 MHz [13] (24.0 dBm)&#039;&#039;&#039;&lt;br /&gt;
* 2484 MHz [14] (disabled)&lt;br /&gt;
&lt;br /&gt;
UK&lt;br /&gt;
* 2412 MHz [1] (20.0 dBm)&lt;br /&gt;
* 2417 MHz [2] (20.0 dBm)&lt;br /&gt;
* 2422 MHz [3] (20.0 dBm)&lt;br /&gt;
* 2427 MHz [4] (20.0 dBm)&lt;br /&gt;
* 2432 MHz [5] (20.0 dBm)&lt;br /&gt;
* 2437 MHz [6] (20.0 dBm)&lt;br /&gt;
* 2442 MHz [7] (20.0 dBm)&lt;br /&gt;
* 2447 MHz [8] (20.0 dBm)&lt;br /&gt;
* 2452 MHz [9] (20.0 dBm)&lt;br /&gt;
* 2457 MHz [10] (20.0 dBm)&lt;br /&gt;
* 2462 MHz [11] (20.0 dBm)&lt;br /&gt;
* 2467 MHz [12] (20.0 dBm)&lt;br /&gt;
* 2472 MHz [13] (20.0 dBm)&lt;br /&gt;
* 2484 MHz [14] (disabled)&lt;br /&gt;
&lt;br /&gt;
=== 5 GHz ===&lt;br /&gt;
&lt;br /&gt;
IN&lt;br /&gt;
* 5180 MHz [36] (30.0 dBm)&lt;br /&gt;
* 5200 MHz [40] (30.0 dBm)&lt;br /&gt;
* 5220 MHz [44] (30.0 dBm)&lt;br /&gt;
* 5240 MHz [48] (30.0 dBm)&lt;br /&gt;
* 5260 MHz [52] (24.0 dBm)&lt;br /&gt;
* 5280 MHz [56] (24.0 dBm)&lt;br /&gt;
* 5300 MHz [60] (24.0 dBm)&lt;br /&gt;
* 5320 MHz [64] (24.0 dBm)&lt;br /&gt;
* 5500 MHz [100] (24.0 dBm)&lt;br /&gt;
* 5520 MHz [104] (24.0 dBm)&lt;br /&gt;
* 5540 MHz [108] (24.0 dBm)&lt;br /&gt;
* 5560 MHz [112] (24.0 dBm)&lt;br /&gt;
* 5580 MHz [116] (24.0 dBm)&lt;br /&gt;
* 5600 MHz [120] (24.0 dBm)&lt;br /&gt;
* 5620 MHz [124] (24.0 dBm)&lt;br /&gt;
* 5640 MHz [128] (24.0 dBm)&lt;br /&gt;
* 5660 MHz [132] (24.0 dBm)&lt;br /&gt;
* 5680 MHz [136] (24.0 dBm)&lt;br /&gt;
* 5700 MHz [140] (24.0 dBm)&lt;br /&gt;
* 5720 MHz [144] (24.0 dBm)&lt;br /&gt;
* 5745 MHz [149] (30.0 dBm)&lt;br /&gt;
* 5765 MHz [153] (30.0 dBm)&lt;br /&gt;
* 5785 MHz [157] (30.0 dBm)&lt;br /&gt;
* 5805 MHz [161] (30.0 dBm)&lt;br /&gt;
* 5825 MHz [165] (30.0 dBm)&lt;br /&gt;
* 5845 MHz [169] (30.0 dBm)&lt;br /&gt;
* 5865 MHz [173] (30.0 dBm)&lt;br /&gt;
&lt;br /&gt;
PA&lt;br /&gt;
* 5180 MHz [36] (30.0 dBm)&lt;br /&gt;
* 5200 MHz [40] (30.0 dBm)&lt;br /&gt;
* 5220 MHz [44] (30.0 dBm)&lt;br /&gt;
* 5240 MHz [48] (30.0 dBm)&lt;br /&gt;
* 5260 MHz [52] (30.0 dBm)&lt;br /&gt;
* 5280 MHz [56] (30.0 dBm)&lt;br /&gt;
* 5300 MHz [60] (30.0 dBm)&lt;br /&gt;
* 5320 MHz [64] (30.0 dBm)&lt;br /&gt;
* 5500 MHz [100] (30.0 dBm)&lt;br /&gt;
* 5520 MHz [104] (30.0 dBm)&lt;br /&gt;
* 5540 MHz [108] (30.0 dBm)&lt;br /&gt;
* 5560 MHz [112] (30.0 dBm)&lt;br /&gt;
* 5580 MHz [116] (30.0 dBm)&lt;br /&gt;
* 5600 MHz [120] (30.0 dBm)&lt;br /&gt;
* 5620 MHz [124] (30.0 dBm)&lt;br /&gt;
* 5640 MHz [128] (30.0 dBm)&lt;br /&gt;
* &#039;&#039;&#039;5660 MHz [132] (30.0 dBm)&#039;&#039;&#039;&lt;br /&gt;
* 5680 MHz [136] (30.0 dBm)&lt;br /&gt;
* 5700 MHz [140] (30.0 dBm)&lt;br /&gt;
* 5720 MHz [144] (30.0 dBm)&lt;br /&gt;
* &#039;&#039;&#039;5745 MHz [149] (30.0 dBm)&#039;&#039;&#039;&lt;br /&gt;
* 5765 MHz [153] (30.0 dBm)&lt;br /&gt;
* 5785 MHz [157] (30.0 dBm)&lt;br /&gt;
* 5805 MHz [161] (30.0 dBm)&lt;br /&gt;
* 5825 MHz [165] (30.0 dBm)&lt;br /&gt;
* 5845 MHz [169] (disabled)&lt;br /&gt;
* 5865 MHz [173] (disabled)&lt;br /&gt;
&lt;br /&gt;
UK&lt;br /&gt;
* 5180 MHz [36] (23.0 dBm)&lt;br /&gt;
* 5200 MHz [40] (23.0 dBm)&lt;br /&gt;
* 5220 MHz [44] (23.0 dBm)&lt;br /&gt;
* 5240 MHz [48] (23.0 dBm)&lt;br /&gt;
* 5260 MHz [52] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5280 MHz [56] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5300 MHz [60] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5320 MHz [64] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5500 MHz [100] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5520 MHz [104] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5540 MHz [108] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5560 MHz [112] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5580 MHz [116] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5600 MHz [120] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5620 MHz [124] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5640 MHz [128] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5660 MHz [132] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5680 MHz [136] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5700 MHz [140] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5720 MHz [144] (26.0 dBm) (radar detection)&lt;br /&gt;
* 5745 MHz [149] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5765 MHz [153] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5785 MHz [157] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5805 MHz [161] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5825 MHz [165] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5845 MHz [169] (20.0 dBm) (radar detection)&lt;br /&gt;
* 5865 MHz [173] (20.0 dBm) (radar detection)&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1796</id>
		<title>Hardware</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Hardware&amp;diff=1796"/>
		<updated>2026-07-01T10:05:36Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Printers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Laptop Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell E6400&lt;br /&gt;
** CPU: Core2Duo (2 logical processors)&lt;br /&gt;
** RAM: 8 GiB (2 x 4 GiB PC2-6400)&lt;br /&gt;
** Max RAM: 8 GiB&lt;br /&gt;
* Dell E7450&lt;br /&gt;
** CPU: Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz (4 logical processors)&lt;br /&gt;
** RAM: 16 GiB (2 x 8 GB DDR3 PC3L-12800/DDR3L-1600)&lt;br /&gt;
** Max RAM: 16 GiB (offical, 32 GiB unofficial with DDR3Low Voltage)&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
* Dell 1350cnw&lt;br /&gt;
** Colour&lt;br /&gt;
** Printing Preferences -&amp;gt; Layout -&amp;gt; Margin Shift/Margin -&amp;gt; Print Position -&amp;gt; Position: Center&lt;br /&gt;
* HP LaserJet P2055dn&lt;br /&gt;
** Properties -&amp;gt; Device Settings -&amp;gt; Installable Options -&amp;gt; Duplex Unit: Installed&lt;br /&gt;
&lt;br /&gt;
== Server Notes ==&lt;br /&gt;
&lt;br /&gt;
* Dell OptiPlex 7040&lt;br /&gt;
** CPU: Intel Core i7-6700 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 64 GiB (4 x 16 GiB)&lt;br /&gt;
* Dell OptiPlex 9010&lt;br /&gt;
** CPU: Intel Core i7-3770 CPU @ 3.40 GHz (8 logical processors)&lt;br /&gt;
** RAM: 32 GiB (4 x 8 GiB)&lt;br /&gt;
** Max RAM: 32 GiB (PC4-2400) (4 x 8 GiB)&lt;br /&gt;
* Dell PowerEdge T320&lt;br /&gt;
** CPU: Intel Pentium 1400 / Intel Xeon E5-1410 / Intel Xeon E5-2400 / Intel Xeon E5-2400 v2 (4 - 8 cores)&lt;br /&gt;
** RAM: &lt;br /&gt;
** Max RAM: 196 GiB (PC3-10600/DDR3-1333 Registered DIMM, ECC) (6 x 32 GiB)&lt;br /&gt;
* HP DL380G5&lt;br /&gt;
** CPU: Intel Xeon E5450 @ 3 GHz&lt;br /&gt;
** RAM: 16 GB (8 x 2 GiB)&lt;br /&gt;
** Max RAM: 64 GB (8 x 8 GiB)&lt;br /&gt;
&lt;br /&gt;
* HP iLO 2.33&lt;br /&gt;
** ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-rsa host-ilo&lt;br /&gt;
** 35DPH-SVSXJ-HGBJN-C7N5R-2SS4W&lt;br /&gt;
&lt;br /&gt;
To change the hostname that this ILO controls:&lt;br /&gt;
 show&lt;br /&gt;
 cd system1&lt;br /&gt;
 set oemhp_server_name = host.example.com&lt;br /&gt;
 show oemhp_server_name&lt;br /&gt;
&lt;br /&gt;
 cd map1&lt;br /&gt;
 set license=35DPHSVSXJHGBJNC7N5R2SS4W&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1795</id>
		<title>DBS</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1795"/>
		<updated>2026-06-30T15:43:56Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Configuration ==&lt;br /&gt;
&lt;br /&gt;
80 cm Triax dish, Technomate switch&lt;br /&gt;
* A: 19.2°E Astra 1 (Inverto Green, focus)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1KR-Europe.html Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1L-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1N-Pan-Europe.html Pan Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1M-Europe-Wide.html Europe Wide]&lt;br /&gt;
* B: 28.2°E Astra 2 (Technomate TM-1)&lt;br /&gt;
** UK Spot&lt;br /&gt;
** Europe Ku&lt;br /&gt;
* C: 23.5°E Astra 3 (Inverto Green)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Wide.html Europe Wide]&lt;br /&gt;
* D: 13°E Hotbird 13 (Technomate TM-1)&lt;br /&gt;
** Wide&lt;br /&gt;
60 cm Orbital dish&lt;br /&gt;
* 4.8°E/5.0°E Astra 4/SES 5 (Inverto Black)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-4A-Europe-BSS.html Europe BSS]&lt;br /&gt;
** One transponder at 10% from [https://www.lyngsat.com/maps/footprints/Astra-4A-Nordic-BSS.html Nordic BSS]&lt;br /&gt;
** 2M Monde from 3.1°E [https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html Europe]&lt;br /&gt;
Sky Dish Mk 4 (Zone 1, 43 x 58cm)&lt;br /&gt;
* Zinwell J4LS Quad LNB&lt;br /&gt;
&lt;br /&gt;
Cable: RG6 + compression F&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* [http://sat-news.co.uk/ Sat News]&lt;br /&gt;
* [https://www.dishpointer.com/ Dishpointer]&lt;br /&gt;
* [https://www.satsig.net/maps/lat-long-finder.htm Satelite Signals]&lt;br /&gt;
* [https://www.satbeams.com/footprints?position=290 Sat Beams]&lt;br /&gt;
* [https://www.linuxsat-support.com/cms/article/54-minimum-satellite-dish-size-for-uk-satellite-by-satellite/ Sateliites for UK]&lt;br /&gt;
&lt;br /&gt;
Universal LNBs require:&lt;br /&gt;
* DC to power and switch polarisation: 10.5 - 14.5 V: Vertical; 15.5 - 21 V: Horizontal&lt;br /&gt;
* 22 kHz / 0.5 V pp to switch to [https://en.wikipedia.org/wiki/Ku_band Ku] High Band, otherwise Low Band&lt;br /&gt;
* Low Band: 10.7 - 11.7 GHz -&amp;gt; 0.95 - 1.95 GHz (9.75 GHz LO)&lt;br /&gt;
* High Band: 11.7 - 12.75 GHz -&amp;gt; 1.1 - 2.15 GHz (10.6 GHz LO)&lt;br /&gt;
&lt;br /&gt;
Multi LNBs can be switched via [https://en.wikipedia.org/wiki/DiSEqC DiSEqC] protocol.&lt;br /&gt;
&lt;br /&gt;
== Sony TV Parameters ==&lt;br /&gt;
&lt;br /&gt;
* Pre BCH&lt;br /&gt;
** Number of errors before error correction (ideally 0)&lt;br /&gt;
* C/N: Carrier to Noise ratio&lt;br /&gt;
** Should be at least 9 - 11 dB&lt;br /&gt;
* UEC: Uncorrectable errors&lt;br /&gt;
** Should be 0&lt;br /&gt;
* Symbol Rate&lt;br /&gt;
** 27 500 kS/s : Typical for DVB-S&lt;br /&gt;
** 29 900 kS/s : Typical for DVB-S2 (limit of 36 MHz transponder)&lt;br /&gt;
** 30 000 kS/s : Typical for 4k/data&lt;br /&gt;
* Modulation: eg 8PSK 3/4&lt;br /&gt;
** Higher density than QPSK; for every 3 data bits, 1 error correction&lt;br /&gt;
* AGC: Automatic Gain Control, 8 bit value:&lt;br /&gt;
** 0 - 50: Very poor&lt;br /&gt;
** 100 - 170: Good&lt;br /&gt;
** 180 - 240: High&lt;br /&gt;
** 255: Saturation/overload&lt;br /&gt;
&lt;br /&gt;
== Satellites ==&lt;br /&gt;
&lt;br /&gt;
Received in South London, 57 cm oval Orbital Dish, Invecto Green / Technomate TM-1 LNB.&lt;br /&gt;
&lt;br /&gt;
* 53°E: Express AM6 (Elevation 13.6°, mag direction 120.2°, Pol -32.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=53 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-53E.php All Channels]&lt;br /&gt;
*** Iranian, Kurdish&lt;br /&gt;
* 52°E: TurkmenÄlem/MonacoSat (Elevation 14.1°, mag direction 121.1°, Pol -32.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=52 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-52E.php All Channels]&lt;br /&gt;
*** Persiana Media&lt;br /&gt;
*** Poker TV&lt;br /&gt;
*** Turkmenistan Sport&lt;br /&gt;
*** RTS Sport&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 46°E: AzerSpace 1/Africasat 1a (Elevation 17.3°, mag direction 127.0.°, Pol -29.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=46 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-46E.php All Channels]&lt;br /&gt;
*** CBC Sports HD (Azerbaijan), borderline &lt;br /&gt;
* 45°E: Azerspace-1 (Intelsat 3B) (Elevation 17.9°, mag direction 127.7°, Pol -29.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=45 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-45E.php All Channels]&lt;br /&gt;
*** City TV (Pop music)&lt;br /&gt;
*** Radio Focus Sofia&lt;br /&gt;
*** Radio 1 Rock&lt;br /&gt;
*** St Zagora&lt;br /&gt;
*** Other Bulgarian radio&lt;br /&gt;
* 42°E: Turksat (Elevation 19.4°, mag direction 130.7°, Pol -28.1°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=42 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-42E.php All Channels]&lt;br /&gt;
*** TRT News&lt;br /&gt;
*** TRT Spor&lt;br /&gt;
*** TRT Muzik&lt;br /&gt;
*** Al Jazeera&lt;br /&gt;
*** ANews&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 39°E: HellasSat 3 (Elevation 20.8°, mag direction 133.7°, Pol -26.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=39 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-39E.php All Channels]&lt;br /&gt;
*** Lots of Greek&lt;br /&gt;
*** TV5 Monde&lt;br /&gt;
*** BBC World News America&lt;br /&gt;
*** DW&lt;br /&gt;
*** Muvi2&lt;br /&gt;
* 28.5°E: Astra 2E/Eutelsat&lt;br /&gt;
* 28.2°E: [https://en.wikipedia.org/wiki/Astra_28.2%C2%B0E Astra 2] (Elevation 25.5°, Mag direction 146.5°, Pol -20.7°) &lt;br /&gt;
** [https://www.satbeams.com/footprints?position=28 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-28.2E.php All Channels]&lt;br /&gt;
** UK Freesat, Sky.&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN World HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
* 23.5°E: [https://en.wikipedia.org/wiki/Astra_23.5%C2%B0E Astra 3] (Elevation 27.1°, mag direction 150.6°, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=23 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-23.5E.php All Channels]&lt;br /&gt;
*** Ocko Star&lt;br /&gt;
* 19.2°E: [https://en.wikipedia.org/wiki/Astra_19.2%C2%B0E Astra 1] (Elevation 28.4°, mag direction 156.9°, Pol -14.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=19 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-19.2E.php All Channels]&lt;br /&gt;
*** Mainly German, Austrian, French.&lt;br /&gt;
*** BBC World HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** CGTN&lt;br /&gt;
*** TRTWorld HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN International&lt;br /&gt;
*** DW&lt;br /&gt;
*** MTV&lt;br /&gt;
*** Eurosport Germany&lt;br /&gt;
* 16°E: Eutelsat 16A (Elevation 29.2°, mag direction 159.6°, Pol -12.4°)&lt;br /&gt;
** Borderline reception. Romanian, Serbian&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=16 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-16E.php All Channels]&lt;br /&gt;
* 13°E: Hotbird [https://en.wikipedia.org/wiki/Hot_Bird 13°E] (Elevation 29.9°, 164.5° magnetic, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=13 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-13E.php All Channels]&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** DW HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Nasa TV HD&lt;br /&gt;
*** Press TV&lt;br /&gt;
* 10°E: Eutelsat 10A (Elevation 30.4°, 167.0° magnetic, Pol -7.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=10 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-10E.php All Channels]&lt;br /&gt;
*** ?&lt;br /&gt;
* 9°E: Eutelsat (EuroBird) 9A (Elevation 30.5°, mag direction 168.2°, Pol -7.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=9 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-9E.php All Channels]&lt;br /&gt;
*** BBC World News&lt;br /&gt;
*** M5 HD&lt;br /&gt;
*** RTG International&lt;br /&gt;
*** Nashville TV&lt;br /&gt;
* 7°E: Eutelsat W3A (Elevation 30.8°, mag direction 170.7°, Pol -5.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=7 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-7E.php All Channels]&lt;br /&gt;
*** Turkish channels&lt;br /&gt;
*** TRT Sport, TRT Musik&lt;br /&gt;
*** Alkafeel HD&lt;br /&gt;
*** CGTN HD&lt;br /&gt;
* 5.2°E: SES-5&lt;br /&gt;
* 4.8°E: Astra 4 (Sirius 4.8°) (Elevation 31.0°, mag direction 173.6°, Pol -3.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-5E.php All Channels]&lt;br /&gt;
** Ukrainian&lt;br /&gt;
* Eutelsat 3B&lt;br /&gt;
* https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html&lt;br /&gt;
* 1°W Thor (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** Romanian&lt;br /&gt;
* 5°W Eutelsat 5 West B (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
*** kTO, BFM, French&lt;br /&gt;
*** RTL Radio, Radio Classique + other French radio&lt;br /&gt;
* 7/8°W Eutelsat&lt;br /&gt;
** ?&lt;br /&gt;
*** Dubai ONE HD&lt;br /&gt;
* 14°W Express AM8 (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
&lt;br /&gt;
* 15°W Telstar 12 Vantage (Elevation 29°, mag direction 228°, Pol -14°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=228 Sat Beams]&lt;br /&gt;
** ?&lt;br /&gt;
*** Reuters Live&lt;br /&gt;
* 22°W: SES-4 (Elevation 27.6°, mag direction 207.0°, Pol +16.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=330 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-22W.php All Channels]&lt;br /&gt;
*** Reuters TV&lt;br /&gt;
* 30°W: [https://en.wikipedia.org/wiki/Hispasat Hispasat] (Elevation 24.8°, mag direction 216.2°, Pol +21.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=338 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-30W.php All Channels]&lt;br /&gt;
*** Mostly encrypted&lt;br /&gt;
*** Fala Brazil&lt;br /&gt;
*** Kuriakos HD&lt;br /&gt;
*** Al Jazerra&lt;br /&gt;
* 43°W: [https://en.wikipedia.org/wiki/Intelsat_11 Intelsat 11] (Elevation 18.9°, mag direction 229.8°, Pol +28.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=43 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-43W.php All Channels]&lt;br /&gt;
*** Only encrypted channels&lt;br /&gt;
&lt;br /&gt;
Not receivable:&lt;br /&gt;
&lt;br /&gt;
* 33°E&lt;br /&gt;
** Can&#039;t descriminate from Astra 28.8°E&lt;br /&gt;
&lt;br /&gt;
Full channel lists at [https://en.satexpat.com/ SatExpat].&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1794</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1794"/>
		<updated>2026-06-26T10:53:08Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
Installation is performed on a single disk; complex ZFS configurations need to be configured afterwards. The installer gives options:&lt;br /&gt;
1) Use the entire disk&lt;br /&gt;
* This creates a VTOC (SMI) label inside an MBR-style disk.&lt;br /&gt;
* It is the old Solaris x86 layout.&lt;br /&gt;
* The installer writes a Solaris2 fdisk partition covering the whole disk&lt;br /&gt;
* Inside that, Solaris creates VTOC slices (s0, s1, etc.)&lt;br /&gt;
* Boot method is legacy BIOS + GRUB&lt;br /&gt;
* Maximum usable disk size is 2 TB&lt;br /&gt;
* This is the layout used by older Solaris releases (10, early 11.x)&lt;br /&gt;
* This option exists mainly for compatibility with older hardware or older Solaris setups.&lt;br /&gt;
&lt;br /&gt;
2) Use a GPT partition on the disk&lt;br /&gt;
* This creates a GPT-labeled disk with an EFI System Partition (ESP).&lt;br /&gt;
* It is the modern Solaris layout.&lt;br /&gt;
* Uses EFI/GPT partitioning&lt;br /&gt;
* Boot method is UEFI + GRUB2&lt;br /&gt;
* Supports disks larger than 2 TB&lt;br /&gt;
* Cleaner layout:&lt;br /&gt;
**EFI System Partition&lt;br /&gt;
** rpool partition&lt;br /&gt;
** Required for modern hardware and recommended for new installs&lt;br /&gt;
** This is the layout Oracle expects for Solaris 11.4 going forward.&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Copy client file and edit server list:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show partitions:&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; partition -&amp;gt; print -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
=== Create a rpool mirror ===&lt;br /&gt;
&lt;br /&gt;
Assume here during install an EFI format disk was selected. The default root pool (rpool) is a single disk immediately after install (eg c3t0d0s0). We would like to add a second disk (c3t1d0s0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]).&lt;br /&gt;
&lt;br /&gt;
The second disk partition scheme must me configured to match the first. Observe the structure:&lt;br /&gt;
 format -e&lt;br /&gt;
 -&amp;gt; select disk 0 -&amp;gt; partition -&amp;gt; print -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Expect small boot partition (0), main usr partition (1) and small reserved (8).&lt;br /&gt;
&lt;br /&gt;
 format -e&lt;br /&gt;
 -&amp;gt; select disk 1 -&amp;gt; partition -&amp;gt; 0 -&amp;gt; enter label -&amp;gt; enter flags -&amp;gt; enter start sector -&amp;gt; enter end sector (with e suffix) -&amp;gt; label -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Add to rpool&lt;br /&gt;
 zpool attach rpool c3t0d0s0 c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
Ensure that either disk can boot if the other fails:&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t0d0s0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Slice s0 is used to mean the whole disk when formatted. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1793</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1793"/>
		<updated>2026-06-26T10:46:15Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
Installation is performed on a single disk; complex ZFS configurations need to be configured afterwards. The installer gives options:&lt;br /&gt;
1) Use the entire disk&lt;br /&gt;
* This creates a VTOC (SMI) label inside an MBR-style disk.&lt;br /&gt;
* It is the old Solaris x86 layout.&lt;br /&gt;
* The installer writes a Solaris2 fdisk partition covering the whole disk&lt;br /&gt;
* Inside that, Solaris creates VTOC slices (s0, s1, etc.)&lt;br /&gt;
* Boot method is legacy BIOS + GRUB&lt;br /&gt;
* Maximum usable disk size is 2 TB&lt;br /&gt;
* This is the layout used by older Solaris releases (10, early 11.x)&lt;br /&gt;
* This option exists mainly for compatibility with older hardware or older Solaris setups.&lt;br /&gt;
&lt;br /&gt;
2) Use a GPT partition on the disk&lt;br /&gt;
* This creates a GPT-labeled disk with an EFI System Partition (ESP).&lt;br /&gt;
* It is the modern Solaris layout.&lt;br /&gt;
* Uses EFI/GPT partitioning&lt;br /&gt;
* Boot method is UEFI + GRUB2&lt;br /&gt;
* Supports disks larger than 2 TB&lt;br /&gt;
* Cleaner layout:&lt;br /&gt;
**EFI System Partition&lt;br /&gt;
** rpool partition&lt;br /&gt;
** Required for modern hardware and recommended for new installs&lt;br /&gt;
** This is the layout Oracle expects for Solaris 11.4 going forward.&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Copy client file and edit server list:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show partitions:&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; partition -&amp;gt; print -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]):&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
Ensure that either disk can boot if the other fails:&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t0d0s0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Slice s0 is used to mean the whole disk when formatted. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1792</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1792"/>
		<updated>2026-06-26T10:04:40Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Installation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
Installation is performed on a single disk; complex ZFS configurations need to be configured afterwards. The installer gives options:&lt;br /&gt;
1) Use the entire disk&lt;br /&gt;
* This creates a VTOC (SMI) label inside an MBR-style disk.&lt;br /&gt;
* It is the old Solaris x86 layout.&lt;br /&gt;
* The installer writes a Solaris2 fdisk partition covering the whole disk&lt;br /&gt;
* Inside that, Solaris creates VTOC slices (s0, s1, etc.)&lt;br /&gt;
* Boot method is legacy BIOS + GRUB&lt;br /&gt;
* Maximum usable disk size is 2 TB&lt;br /&gt;
* This is the layout used by older Solaris releases (10, early 11.x)&lt;br /&gt;
* This option exists mainly for compatibility with older hardware or older Solaris setups.&lt;br /&gt;
&lt;br /&gt;
2) Use a GPT partition on the disk&lt;br /&gt;
* This creates a GPT-labeled disk with an EFI System Partition (ESP).&lt;br /&gt;
* It is the modern Solaris layout.&lt;br /&gt;
* Uses EFI/GPT partitioning&lt;br /&gt;
* Boot method is UEFI + GRUB2&lt;br /&gt;
* Supports disks larger than 2 TB&lt;br /&gt;
* Cleaner layout:&lt;br /&gt;
**EFI System Partition&lt;br /&gt;
** rpool partition&lt;br /&gt;
** Required for modern hardware and recommended for new installs&lt;br /&gt;
** This is the layout Oracle expects for Solaris 11.4 going forward.&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Copy client file and edit server list:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show partitions:&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]):&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
Ensure that either disk can boot if the other fails:&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t0d0s0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Slice s0 is used to mean the whole disk when formatted. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1791</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1791"/>
		<updated>2026-06-26T09:55:20Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* NTP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Copy client file and edit server list:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show partitions:&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]):&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
Ensure that either disk can boot if the other fails:&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t0d0s0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Slice s0 is used to mean the whole disk when formatted. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1790</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1790"/>
		<updated>2026-06-25T18:51:43Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show partitions:&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]):&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
Ensure that either disk can boot if the other fails:&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t0d0s0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Slice s0 is used to mean the whole disk when formatted. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1789</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1789"/>
		<updated>2026-06-25T18:35:46Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0).&lt;br /&gt;
&lt;br /&gt;
Add a second disk (c3t1d0) to make a mirror and ensure it&#039;s bootable (see [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/manage-zfs/managing-zfs-root-pool1.html here]):&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
(Slice s0 is used to mean the whole disk when formatted)&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1788</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1788"/>
		<updated>2026-06-25T18:29:17Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
(Slice s0 is used to mean the whole disk when formatted)&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;re-silvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1787</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1787"/>
		<updated>2026-06-25T18:17:44Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
For example to show partitions:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; verify -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
 (Slice s0 is used to mean the whole disk when formatted)&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1786</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1786"/>
		<updated>2026-06-25T14:46:12Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
 (Slice s0 is used to mean the whole disk when formatted)&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1785</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1785"/>
		<updated>2026-06-25T14:34:15Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
For example to wipe a pre-existing ZFS label so it can be reused:&lt;br /&gt;
 format&lt;br /&gt;
 -&amp;gt; select disk -&amp;gt; type -&amp;gt; 0 (Auto) -&amp;gt; label -&amp;gt; y -&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -M -P rpool /dev/rdsk/c3t1d0s0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1784</id>
		<title>DBS</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1784"/>
		<updated>2026-06-25T13:28:45Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Satellites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Configuration ==&lt;br /&gt;
&lt;br /&gt;
80 cm Triax dish, Technomate switch&lt;br /&gt;
* A: 19.2°E Astra 1 (Invecto Green, focus)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1KR-Europe.html Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1L-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1N-Pan-Europe.html Pan Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1M-Europe-Wide.html Europe Wide]&lt;br /&gt;
* B: 28.2°E Astra 2 (Technomate TM-1)&lt;br /&gt;
** UK Spot&lt;br /&gt;
** Europe Ku&lt;br /&gt;
* C: 23.5°E Astra 3 (Invecto Green)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Wide.html Europe Wide]&lt;br /&gt;
* D: 13°E Hotbird 13 (Technomate TM-1)&lt;br /&gt;
** Wide&lt;br /&gt;
60 cm Orbial dish&lt;br /&gt;
* 4.8°E/5.0°E Astra 4/SES 5 (Invecto Black)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-4A-Europe-BSS.html Europe BSS]&lt;br /&gt;
** One transponder at 10% from [https://www.lyngsat.com/maps/footprints/Astra-4A-Nordic-BSS.html Nordic BSS]&lt;br /&gt;
** 2M Monde from 3.1°E [https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html Europe]&lt;br /&gt;
Sky Dish Mk 4 (Zone 1, 43 x 58cm)&lt;br /&gt;
* Zinwell J4LS Quad LNB&lt;br /&gt;
&lt;br /&gt;
Cable: RG6 + compression F&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* [http://sat-news.co.uk/ Sat News]&lt;br /&gt;
* [https://www.dishpointer.com/ Dishpointer]&lt;br /&gt;
* [https://www.satsig.net/maps/lat-long-finder.htm Satelite Signals]&lt;br /&gt;
* [https://www.satbeams.com/footprints?position=290 Sat Beams]&lt;br /&gt;
* [https://www.linuxsat-support.com/cms/article/54-minimum-satellite-dish-size-for-uk-satellite-by-satellite/ Sateliites for UK]&lt;br /&gt;
&lt;br /&gt;
Universal LNBs require:&lt;br /&gt;
* DC to power and switch polarisation: 10.5 - 14.5 V: Vertical; 15.5 - 21 V: Horizontal&lt;br /&gt;
* 22 kHz / 0.5 V pp to switch to [https://en.wikipedia.org/wiki/Ku_band Ku] High Band, otherwise Low Band&lt;br /&gt;
* Low Band: 10.7 - 11.7 GHz -&amp;gt; 0.95 - 1.95 GHz (9.75 GHz LO)&lt;br /&gt;
* High Band: 11.7 - 12.75 GHz -&amp;gt; 1.1 - 2.15 GHz (10.6 GHz LO)&lt;br /&gt;
&lt;br /&gt;
Multi LNBs can be switched via [https://en.wikipedia.org/wiki/DiSEqC DiSEqC] protocol.&lt;br /&gt;
&lt;br /&gt;
== Sony TV Parameters ==&lt;br /&gt;
&lt;br /&gt;
* Pre BCH&lt;br /&gt;
** Number of errors before error correction (ideally 0)&lt;br /&gt;
* C/N: Carrier to Noise ratio&lt;br /&gt;
** Should be at least 9 - 11 dB&lt;br /&gt;
* UEC: Uncorrectable errors&lt;br /&gt;
** Should be 0&lt;br /&gt;
* Symbol Rate&lt;br /&gt;
** 27 500 kS/s : Typical for DVB-S&lt;br /&gt;
** 29 900 kS/s : Typical for DVB-S2 (limit of 36 MHz transponder)&lt;br /&gt;
** 30 000 kS/s : Typical for 4k/data&lt;br /&gt;
* Modulation: eg 8PSK 3/4&lt;br /&gt;
** Higher density than QPSK; for every 3 data bits, 1 error correction&lt;br /&gt;
* AGC: Automatic Gain Control, 8 bit value:&lt;br /&gt;
** 0 - 50: Very poor&lt;br /&gt;
** 100 - 170: Good&lt;br /&gt;
** 180 - 240: High&lt;br /&gt;
** 255: Saturation/overload&lt;br /&gt;
&lt;br /&gt;
== Satellites ==&lt;br /&gt;
&lt;br /&gt;
Received in South London, 57 cm oval Orbital Dish, Invecto Green / Technomate TM-1 LNB.&lt;br /&gt;
&lt;br /&gt;
* 53°E: Express AM6 (Elevation 13.6°, mag direction 120.2°, Pol -32.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=53 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-53E.php All Channels]&lt;br /&gt;
*** Iranian, Kurdish&lt;br /&gt;
* 52°E: TurkmenÄlem/MonacoSat (Elevation 14.1°, mag direction 121.1°, Pol -32.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=52 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-52E.php All Channels]&lt;br /&gt;
*** Persiana Media&lt;br /&gt;
*** Poker TV&lt;br /&gt;
*** Turkmenistan Sport&lt;br /&gt;
*** RTS Sport&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 46°E: AzerSpace 1/Africasat 1a (Elevation 17.3°, mag direction 127.0.°, Pol -29.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=46 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-46E.php All Channels]&lt;br /&gt;
*** CBC Sports HD (Azerbaijan), borderline &lt;br /&gt;
* 45°E: Azerspace-1 (Intelsat 3B) (Elevation 17.9°, mag direction 127.7°, Pol -29.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=45 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-45E.php All Channels]&lt;br /&gt;
*** City TV (Pop music)&lt;br /&gt;
*** Radio Focus Sofia&lt;br /&gt;
*** Radio 1 Rock&lt;br /&gt;
*** St Zagora&lt;br /&gt;
*** Other Bulgarian radio&lt;br /&gt;
* 42°E: Turksat (Elevation 19.4°, mag direction 130.7°, Pol -28.1°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=42 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-42E.php All Channels]&lt;br /&gt;
*** TRT News&lt;br /&gt;
*** TRT Spor&lt;br /&gt;
*** TRT Muzik&lt;br /&gt;
*** Al Jazeera&lt;br /&gt;
*** ANews&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 39°E: HellasSat 3 (Elevation 20.8°, mag direction 133.7°, Pol -26.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=39 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-39E.php All Channels]&lt;br /&gt;
*** Lots of Greek&lt;br /&gt;
*** TV5 Monde&lt;br /&gt;
*** BBC World News America&lt;br /&gt;
*** DW&lt;br /&gt;
*** Muvi2&lt;br /&gt;
* 28.5°E: Astra 2E/Eutelsat&lt;br /&gt;
* 28.2°E: [https://en.wikipedia.org/wiki/Astra_28.2%C2%B0E Astra 2] (Elevation 25.5°, Mag direction 146.5°, Pol -20.7°) &lt;br /&gt;
** [https://www.satbeams.com/footprints?position=28 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-28.2E.php All Channels]&lt;br /&gt;
** UK Freesat, Sky.&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN World HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
* 23.5°E: [https://en.wikipedia.org/wiki/Astra_23.5%C2%B0E Astra 3] (Elevation 27.1°, mag direction 150.6°, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=23 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-23.5E.php All Channels]&lt;br /&gt;
*** Ocko Star&lt;br /&gt;
* 19.2°E: [https://en.wikipedia.org/wiki/Astra_19.2%C2%B0E Astra 1] (Elevation 28.4°, mag direction 156.9°, Pol -14.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=19 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-19.2E.php All Channels]&lt;br /&gt;
*** Mainly German, Austrian, French.&lt;br /&gt;
*** BBC World HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** CGTN&lt;br /&gt;
*** TRTWorld HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN International&lt;br /&gt;
*** DW&lt;br /&gt;
*** MTV&lt;br /&gt;
*** Eurosport Germany&lt;br /&gt;
* 16°E: Eutelsat 16A (Elevation 29.2°, mag direction 159.6°, Pol -12.4°)&lt;br /&gt;
** Borderline reception. Romanian, Serbian&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=16 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-16E.php All Channels]&lt;br /&gt;
* 13°E: Hotbird [https://en.wikipedia.org/wiki/Hot_Bird 13°E] (Elevation 29.9°, 164.5° magnetic, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=13 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-13E.php All Channels]&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** DW HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Nasa TV HD&lt;br /&gt;
*** Press TV&lt;br /&gt;
* 10°E: Eutelsat 10A (Elevation 30.4°, 167.0° magnetic, Pol -7.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=10 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-10E.php All Channels]&lt;br /&gt;
*** ?&lt;br /&gt;
* 9°E: Eutelsat (EuroBird) 9A (Elevation 30.5°, mag direction 168.2°, Pol -7.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=9 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-9E.php All Channels]&lt;br /&gt;
*** BBC World News&lt;br /&gt;
*** M5 HD&lt;br /&gt;
*** RTG International&lt;br /&gt;
*** Nashville TV&lt;br /&gt;
* 7°E: Eutelsat W3A (Elevation 30.8°, mag direction 170.7°, Pol -5.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=7 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-7E.php All Channels]&lt;br /&gt;
*** Turkish channels&lt;br /&gt;
*** TRT Sport, TRT Musik&lt;br /&gt;
*** Alkafeel HD&lt;br /&gt;
*** CGTN HD&lt;br /&gt;
* 5.2°E: SES-5&lt;br /&gt;
* 4.8°E: Astra 4 (Sirius 4.8°) (Elevation 31.0°, mag direction 173.6°, Pol -3.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-5E.php All Channels]&lt;br /&gt;
** Ukrainian&lt;br /&gt;
* Eutelsat 3B&lt;br /&gt;
* https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html&lt;br /&gt;
* 1°W Thor (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** Romanian&lt;br /&gt;
* 5°W Eutelsat 5 West B (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
*** kTO, BFM, French&lt;br /&gt;
*** RTL Radio, Radio Classique + other French radio&lt;br /&gt;
* 7/8°W Eutelsat&lt;br /&gt;
** ?&lt;br /&gt;
*** Dubai ONE HD&lt;br /&gt;
* 14°W Express AM8 (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
&lt;br /&gt;
* 15°W Telstar 12 Vantage (Elevation 29°, mag direction 228°, Pol -14°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=228 Sat Beams]&lt;br /&gt;
** ?&lt;br /&gt;
*** Reuters Live&lt;br /&gt;
* 22°W: SES-4 (Elevation 27.6°, mag direction 207.0°, Pol +16.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=330 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-22W.php All Channels]&lt;br /&gt;
*** Reuters TV&lt;br /&gt;
* 30°W: [https://en.wikipedia.org/wiki/Hispasat Hispasat] (Elevation 24.8°, mag direction 216.2°, Pol +21.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=338 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-30W.php All Channels]&lt;br /&gt;
*** Mostly encrypted&lt;br /&gt;
*** Fala Brazil&lt;br /&gt;
*** Kuriakos HD&lt;br /&gt;
*** Al Jazerra&lt;br /&gt;
* 43°W: [https://en.wikipedia.org/wiki/Intelsat_11 Intelsat 11] (Elevation 18.9°, mag direction 229.8°, Pol +28.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=43 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-43W.php All Channels]&lt;br /&gt;
*** Only encrypted channels&lt;br /&gt;
&lt;br /&gt;
Not receivable:&lt;br /&gt;
&lt;br /&gt;
* 33°E&lt;br /&gt;
** Can&#039;t descriminate from Astra 28.8°E&lt;br /&gt;
&lt;br /&gt;
Full channel lists at [https://en.satexpat.com/ SatExpat].&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1783</id>
		<title>DBS</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=DBS&amp;diff=1783"/>
		<updated>2026-06-25T13:23:05Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Satellites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Configuration ==&lt;br /&gt;
&lt;br /&gt;
80 cm Triax dish, Technomate switch&lt;br /&gt;
* A: 19.2°E Astra 1 (Invecto Green, focus)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1KR-Europe.html Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1L-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1N-Pan-Europe.html Pan Europe]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-1M-Europe-Wide.html Europe Wide]&lt;br /&gt;
* B: 28.2°E Astra 2 (Technomate TM-1)&lt;br /&gt;
** UK Spot&lt;br /&gt;
** Europe Ku&lt;br /&gt;
* C: 23.5°E Astra 3 (Invecto Green)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Ku.html Europe Ku]&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-3B-Europe-Wide.html Europe Wide]&lt;br /&gt;
* D: 13°E Hotbird 13 (Technomate TM-1)&lt;br /&gt;
** Wide&lt;br /&gt;
60 cm Orbial dish&lt;br /&gt;
* 4.8°E/5.0°E Astra 4/SES 5 (Invecto Black)&lt;br /&gt;
** [https://www.lyngsat.com/maps/footprints/Astra-4A-Europe-BSS.html Europe BSS]&lt;br /&gt;
** One transponder at 10% from [https://www.lyngsat.com/maps/footprints/Astra-4A-Nordic-BSS.html Nordic BSS]&lt;br /&gt;
** 2M Monde from 3.1°E [https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html Europe]&lt;br /&gt;
Sky Dish Mk 4 (Zone 1, 43 x 58cm)&lt;br /&gt;
* Zinwell J4LS Quad LNB&lt;br /&gt;
&lt;br /&gt;
Cable: RG6 + compression F&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* [http://sat-news.co.uk/ Sat News]&lt;br /&gt;
* [https://www.dishpointer.com/ Dishpointer]&lt;br /&gt;
* [https://www.satsig.net/maps/lat-long-finder.htm Satelite Signals]&lt;br /&gt;
* [https://www.satbeams.com/footprints?position=290 Sat Beams]&lt;br /&gt;
* [https://www.linuxsat-support.com/cms/article/54-minimum-satellite-dish-size-for-uk-satellite-by-satellite/ Sateliites for UK]&lt;br /&gt;
&lt;br /&gt;
Universal LNBs require:&lt;br /&gt;
* DC to power and switch polarisation: 10.5 - 14.5 V: Vertical; 15.5 - 21 V: Horizontal&lt;br /&gt;
* 22 kHz / 0.5 V pp to switch to [https://en.wikipedia.org/wiki/Ku_band Ku] High Band, otherwise Low Band&lt;br /&gt;
* Low Band: 10.7 - 11.7 GHz -&amp;gt; 0.95 - 1.95 GHz (9.75 GHz LO)&lt;br /&gt;
* High Band: 11.7 - 12.75 GHz -&amp;gt; 1.1 - 2.15 GHz (10.6 GHz LO)&lt;br /&gt;
&lt;br /&gt;
Multi LNBs can be switched via [https://en.wikipedia.org/wiki/DiSEqC DiSEqC] protocol.&lt;br /&gt;
&lt;br /&gt;
== Sony TV Parameters ==&lt;br /&gt;
&lt;br /&gt;
* Pre BCH&lt;br /&gt;
** Number of errors before error correction (ideally 0)&lt;br /&gt;
* C/N: Carrier to Noise ratio&lt;br /&gt;
** Should be at least 9 - 11 dB&lt;br /&gt;
* UEC: Uncorrectable errors&lt;br /&gt;
** Should be 0&lt;br /&gt;
* Symbol Rate&lt;br /&gt;
** 27 500 kS/s : Typical for DVB-S&lt;br /&gt;
** 29 900 kS/s : Typical for DVB-S2 (limit of 36 MHz transponder)&lt;br /&gt;
** 30 000 kS/s : Typical for 4k/data&lt;br /&gt;
* Modulation: eg 8PSK 3/4&lt;br /&gt;
** Higher density than QPSK; for every 3 data bits, 1 error correction&lt;br /&gt;
* AGC: Automatic Gain Control, 8 bit value:&lt;br /&gt;
** 0 - 50: Very poor&lt;br /&gt;
** 100 - 170: Good&lt;br /&gt;
** 180 - 240: High&lt;br /&gt;
** 255: Saturation/overload&lt;br /&gt;
&lt;br /&gt;
== Satellites ==&lt;br /&gt;
&lt;br /&gt;
Received in South London, 57 cm oval Orbital Dish, Invecto Green / Technomate TM-1 LNB.&lt;br /&gt;
&lt;br /&gt;
* 53°E: Express AM6 (Elevation 13.6°, mag direction 120.2°, Pol -32.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=53 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-53E.php All Channels]&lt;br /&gt;
*** Iranian, Kurdish&lt;br /&gt;
* 52°E: TurkmenÄlem/MonacoSat (Elevation 14.1°, mag direction 121.1°, Pol -32.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=52 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-52E.php All Channels]&lt;br /&gt;
*** Persiana Media&lt;br /&gt;
*** Poker TV&lt;br /&gt;
*** Turkmenistan Sport&lt;br /&gt;
*** RTS Sport&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 46°E: AzerSpace 1/Africasat 1a (Elevation 17.3°, mag direction 127.0.°, Pol -29.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=46 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-46E.php All Channels]&lt;br /&gt;
*** CBC Sports HD (Azerbaijan), borderline &lt;br /&gt;
* 45°E: Azerspace-1 (Intelsat 3B) (Elevation 17.9°, mag direction 127.7°, Pol -29.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=45 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-45E.php All Channels]&lt;br /&gt;
*** City TV (Pop music)&lt;br /&gt;
*** Radio Focus Sofia&lt;br /&gt;
*** Radio 1 Rock&lt;br /&gt;
*** St Zagora&lt;br /&gt;
*** Other Bulgarian radio&lt;br /&gt;
* 42°E: Turksat (Elevation 19.4°, mag direction 130.7°, Pol -28.1°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=42 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-42E.php All Channels]&lt;br /&gt;
*** TRT News&lt;br /&gt;
*** TRT Spor&lt;br /&gt;
*** TRT Muzik&lt;br /&gt;
*** Al Jazeera&lt;br /&gt;
*** ANews&lt;br /&gt;
*** Music channels&lt;br /&gt;
* 39°E: HellasSat 3 (Elevation 20.8°, mag direction 133.7°, Pol -26.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=39 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-39E.php All Channels]&lt;br /&gt;
*** Lots of Greek&lt;br /&gt;
*** TV5 Monde&lt;br /&gt;
*** BBC World News America&lt;br /&gt;
*** DW&lt;br /&gt;
*** Muvi2&lt;br /&gt;
* 28.5°E: Astra 2E/Eutelsat&lt;br /&gt;
* 28.2°E: [https://en.wikipedia.org/wiki/Astra_28.2%C2%B0E Astra 2] (Elevation 25.5°, Mag direction 146.5°, Pol -20.7°) &lt;br /&gt;
** [https://www.satbeams.com/footprints?position=28 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/tv-28.2E.php All Channels]&lt;br /&gt;
** UK Freesat, Sky.&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN World HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
* 23.5°E: [https://en.wikipedia.org/wiki/Astra_23.5%C2%B0E Astra 3] (Elevation 27.1°, mag direction 150.6°, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=23 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-23.5E.php All Channels]&lt;br /&gt;
*** Ocko Star&lt;br /&gt;
* 19.2°E: [https://en.wikipedia.org/wiki/Astra_19.2%C2%B0E Astra 1] (Elevation 28.4°, mag direction 156.9°, Pol -14.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=19 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-19.2E.php All Channels]&lt;br /&gt;
*** Mainly German, Austrian, French.&lt;br /&gt;
*** BBC World HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** Arirang&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** CGTN&lt;br /&gt;
*** TRTWorld HD&lt;br /&gt;
*** CNBC Europe HD&lt;br /&gt;
*** CNN International&lt;br /&gt;
*** DW&lt;br /&gt;
*** MTV&lt;br /&gt;
*** Eurosport Germany&lt;br /&gt;
* 16°E: Eutelsat 16A (Elevation 29.2°, mag direction 159.6°, Pol -12.4°)&lt;br /&gt;
** Borderline reception. Romanian, Serbian&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=16 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-16E.php All Channels]&lt;br /&gt;
* 13°E: Hotbird [https://en.wikipedia.org/wiki/Hot_Bird 13°E] (Elevation 29.9°, 164.5° magnetic, Pol -10.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=13 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-13E.php All Channels]&lt;br /&gt;
*** Al Jazeera HD&lt;br /&gt;
*** DW HD&lt;br /&gt;
*** France 24 HD&lt;br /&gt;
*** NHK World HD&lt;br /&gt;
*** Nasa TV HD&lt;br /&gt;
*** Press TV&lt;br /&gt;
* 10°E: Eutelsat 10A (Elevation 30.4°, 167.0° magnetic, Pol -7.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=10 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-10E.php All Channels]&lt;br /&gt;
*** ?&lt;br /&gt;
* 9°E: Eutelsat (EuroBird) 9A (Elevation 30.5°, mag direction 168.2°, Pol -7.2°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=9 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-9E.php All Channels]&lt;br /&gt;
*** BBC World News&lt;br /&gt;
*** M5 HD&lt;br /&gt;
*** RTG International&lt;br /&gt;
*** Nashville TV&lt;br /&gt;
* 7°E: Eutelsat W3A (Elevation 30.8°, mag direction 170.7°, Pol -5.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=7 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-7E.php All Channels]&lt;br /&gt;
*** Turkish channels&lt;br /&gt;
*** TRT Sport, TRT Musik&lt;br /&gt;
*** Alkafeel HD&lt;br /&gt;
*** CGTN HD&lt;br /&gt;
* 5.2°E: SES-5&lt;br /&gt;
* 4.8°E: Astra 4 (Sirius 4.8°) (Elevation 31.0°, mag direction 173.6°, Pol -3.9°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-5E.php All Channels]&lt;br /&gt;
** Ukrainian&lt;br /&gt;
* Eutelsat 3B&lt;br /&gt;
* https://www.lyngsat.com/maps/footprints/Eutelsat-3B-Europe.html&lt;br /&gt;
* 1°W Thor (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** Romanian&lt;br /&gt;
* 5°W Eutelsat 5 West B (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=5 Sat Beams]&lt;br /&gt;
*** kTO, BFM, French&lt;br /&gt;
*** RTL Radio, Radio Classique + other French radio&lt;br /&gt;
* 7/8°W Eutelsat&lt;br /&gt;
** ?&lt;br /&gt;
*** Dubai ONE HD&lt;br /&gt;
* 14°W Express AM8 (Elevation X°, mag direction X°, Pol +X°)&lt;br /&gt;
&lt;br /&gt;
* 15°W Telstar 12 Vantage (Elevation 29°, mag direction 228°, Pol -14°)&lt;br /&gt;
** ?&lt;br /&gt;
** ?&lt;br /&gt;
*** Reuters Live&lt;br /&gt;
* 22°W: SES-4 (Elevation 27.6°, mag direction 207.0°, Pol +16.6°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=330 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-22W.php All Channels]&lt;br /&gt;
*** Reuters TV&lt;br /&gt;
* 30°W: [https://en.wikipedia.org/wiki/Hispasat Hispasat] (Elevation 24.8°, mag direction 216.2°, Pol +21.7°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=338 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-30W.php All Channels]&lt;br /&gt;
*** Mostly encrypted&lt;br /&gt;
*** Fala Brazil&lt;br /&gt;
*** Kuriakos HD&lt;br /&gt;
*** Al Jazerra&lt;br /&gt;
* 43°W: [https://en.wikipedia.org/wiki/Intelsat_11 Intelsat 11] (Elevation 18.9°, mag direction 229.8°, Pol +28.5°)&lt;br /&gt;
** [https://www.satbeams.com/footprints?position=43 Sat Beams]&lt;br /&gt;
** [https://en.kingofsat.net/pos-43W.php All Channels]&lt;br /&gt;
*** Only encrypted channels&lt;br /&gt;
&lt;br /&gt;
Not receivable:&lt;br /&gt;
&lt;br /&gt;
* 33°E&lt;br /&gt;
** Can&#039;t descriminate from Astra 28.8°E&lt;br /&gt;
&lt;br /&gt;
Full channel lists at [https://en.satexpat.com/ SatExpat].&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1782</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1782"/>
		<updated>2026-06-25T10:10:07Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Show all pools, or specific info about the root pool:&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0s2 | fmthard -s - /dev/rdsk/c3t1d0s2&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -v&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1781</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1781"/>
		<updated>2026-06-25T08:35:52Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS and disks (on x86) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Will show at least the root pool (rpool):&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0s2 | fmthard -s - /dev/rdsk/c3t1d0s2&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -v&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete. If the first disk is removed/failed, it should still boot with the second disk, although some nonessential filesystems (/export/home) will not. These can be mounted with:&lt;br /&gt;
 zfs mount -a&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=NTP&amp;diff=1780</id>
		<title>NTP</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=NTP&amp;diff=1780"/>
		<updated>2026-06-25T08:20:45Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: Created page with &amp;quot;== Servers ==  Default pools: * OpenWRT ** 0.openwrt.pool.ntp.org ** 1.openwrt.pool.ntp.org ** 2.openwrt.pool.ntp.org ** 3.openwrt.pool.ntp.org * NTP ** 0.uk.pool.ntp.org ** 1.uk.pool.ntp.org ** 2.uk.pool.ntp.org ** 3.uk.pool.ntp.org  Also: * time.cloudflare.com * time.google.com&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Servers ==&lt;br /&gt;
&lt;br /&gt;
Default pools:&lt;br /&gt;
* OpenWRT&lt;br /&gt;
** 0.openwrt.pool.ntp.org&lt;br /&gt;
** 1.openwrt.pool.ntp.org&lt;br /&gt;
** 2.openwrt.pool.ntp.org&lt;br /&gt;
** 3.openwrt.pool.ntp.org&lt;br /&gt;
* NTP&lt;br /&gt;
** 0.uk.pool.ntp.org&lt;br /&gt;
** 1.uk.pool.ntp.org&lt;br /&gt;
** 2.uk.pool.ntp.org&lt;br /&gt;
** 3.uk.pool.ntp.org&lt;br /&gt;
&lt;br /&gt;
Also:&lt;br /&gt;
* time.cloudflare.com&lt;br /&gt;
* time.google.com&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Main_Page&amp;diff=1779</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Main_Page&amp;diff=1779"/>
		<updated>2026-06-25T08:14:42Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Local Content */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Local Content ==&lt;br /&gt;
&lt;br /&gt;
Broadcasting&lt;br /&gt;
* [[AM Broadcast Band]]&lt;br /&gt;
* [[FM Broadcast Band]]&lt;br /&gt;
* [[DBS]]&lt;br /&gt;
&lt;br /&gt;
Computing&lt;br /&gt;
* [[Android]]&lt;br /&gt;
* [[Arduino]]&lt;br /&gt;
* [[Docker]]&lt;br /&gt;
* [[Go]]&lt;br /&gt;
* [[Google Cloud Platform]]&lt;br /&gt;
* [[Hardware]]&lt;br /&gt;
* [[HP-UX]]&lt;br /&gt;
* [[IPv6]]&lt;br /&gt;
* [[Kubernetes]]&lt;br /&gt;
* [[Linux]]&lt;br /&gt;
* [[MacOS]]&lt;br /&gt;
* [[NTP]]&lt;br /&gt;
* [[OpenWRT]]&lt;br /&gt;
* [[OpenVMS]]&lt;br /&gt;
* [[Oracle]]&lt;br /&gt;
* [[PKI]]&lt;br /&gt;
* [[Python]]&lt;br /&gt;
* [[R]]&lt;br /&gt;
* [[Rasberry Pi]]&lt;br /&gt;
* [[SGI/IRIX]]&lt;br /&gt;
* [[Solaris]]&lt;br /&gt;
* [[Training Notes]]&lt;br /&gt;
* [[Visual Studio Code]]&lt;br /&gt;
* [[Virtualisation]]&lt;br /&gt;
* [[Windows]]&lt;br /&gt;
* [[ZMJC Computer]]&lt;br /&gt;
&lt;br /&gt;
Electronics&lt;br /&gt;
* [[1-Wire]]&lt;br /&gt;
* [[DAT &amp;amp;amp; MiniDisc]]&lt;br /&gt;
* [[Dyson]]&lt;br /&gt;
* [[Equipment and Tools]]&lt;br /&gt;
* [[Geiger Counter]]&lt;br /&gt;
* [[GPS Module]]&lt;br /&gt;
* [[HC Radio Modules]]&lt;br /&gt;
* [[Interface Modules]]&lt;br /&gt;
* [[KiCad]]&lt;br /&gt;
* [[PSU Modules]]&lt;br /&gt;
* [[Repairs]]&lt;br /&gt;
* [[Tape Recording Calibration and Metering]]&lt;br /&gt;
&lt;br /&gt;
Maths and Physics&lt;br /&gt;
* [[General Relativity]]&lt;br /&gt;
* [[Lagrangian Mechanics]]&lt;br /&gt;
&lt;br /&gt;
Misc&lt;br /&gt;
* [[Films]]&lt;br /&gt;
* [[Gardening]]&lt;br /&gt;
* [[Gigs]]&lt;br /&gt;
* [[Lighting]]&lt;br /&gt;
* [[Running]]&lt;br /&gt;
* [[Scratchpad]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User&#039;s Guide] for information on using the wiki software.&lt;br /&gt;
&lt;br /&gt;
== Getting started ==&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ MediaWiki release mailing list]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]&lt;br /&gt;
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1778</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1778"/>
		<updated>2026-06-25T08:09:42Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* ZFS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS and disks (on x86) ==&lt;br /&gt;
&lt;br /&gt;
Show Disks:&lt;br /&gt;
 iostat -En&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Will show at least the root pool (rpool):&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c3t0d0). Add a second disk (c3t1d0) to make a mirrorm and ensure it&#039;s bootable:&lt;br /&gt;
&lt;br /&gt;
 prtvtoc /dev/rdsk/c3t0d0s2 | fmthard -s - /dev/rdsk/c3t1d0s2&lt;br /&gt;
 zpool attach rpool c3t0d0 c3t1d0&lt;br /&gt;
 bootadm install-bootloader -v&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1777</id>
		<title>Solaris</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Solaris&amp;diff=1777"/>
		<updated>2026-06-24T10:45:08Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* NTP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Installation ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/post/announcing-the-first-oracle-solaris-114-cbe Oracle CBE] (Common Build Environmnet) : Not for production&lt;br /&gt;
** eg: 11.4-11.4.42.0.0.111.0&lt;br /&gt;
* SRU (Support Repository Update) for production&lt;br /&gt;
** eg: 11.4.11.4.42.0.1.113.1&lt;br /&gt;
&lt;br /&gt;
see in /etc/os-release&lt;br /&gt;
&lt;br /&gt;
CBE does not install a desktop. To do this after a text install, change the repository location:&lt;br /&gt;
 pkg set-publisher -G&#039;*&#039; -g http://pkg.oracle.com/solaris/release/ solaris&lt;br /&gt;
&lt;br /&gt;
Check the online package, then install:&lt;br /&gt;
 pkg info -r solaris-desktop&lt;br /&gt;
 pkg install solaris-desktop&lt;br /&gt;
&lt;br /&gt;
== Packages ==&lt;br /&gt;
&lt;br /&gt;
Search for available gcc package, then install:&lt;br /&gt;
 pkg search gcc | grep &amp;quot;C++ Compiler&amp;quot;&lt;br /&gt;
 pkg install gcc-c++&lt;br /&gt;
 pkg install python-39&lt;br /&gt;
 pkg uninstall something&lt;br /&gt;
&lt;br /&gt;
== Swap ==&lt;br /&gt;
&lt;br /&gt;
Show usage:&lt;br /&gt;
 swap -l&lt;br /&gt;
&lt;br /&gt;
Show swap volume:&lt;br /&gt;
 zfs get volsize rpool/swap&lt;br /&gt;
&lt;br /&gt;
Set swap volume size:&lt;br /&gt;
 zfs set volsize=4G rpool/swap&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
Install and start:&lt;br /&gt;
 pkg install mysql&lt;br /&gt;
 svcadm enable mysql&lt;br /&gt;
&lt;br /&gt;
=== VirtualBox ===&lt;br /&gt;
&lt;br /&gt;
 pkg install runtime/python-39&lt;br /&gt;
&lt;br /&gt;
Uninstall old version, install new:&lt;br /&gt;
 pkgrm SUNWvbox&lt;br /&gt;
 pkgadd -d VirtualBox-7.1.8-SunOS-amd64-r168469.pkg&lt;br /&gt;
&lt;br /&gt;
Start:&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* [https://blogs.oracle.com/solaris/ Oracle Solaris Blog]&lt;br /&gt;
&lt;br /&gt;
=== Booting: x86 ===&lt;br /&gt;
&lt;br /&gt;
Into single-user mode:&lt;br /&gt;
* In grub menu, edit entry&lt;br /&gt;
* On $multiboot line, add &amp;quot;-s&amp;quot; to end&lt;br /&gt;
* CTRL-X to boot&lt;br /&gt;
&lt;br /&gt;
Show Grub boot options:&lt;br /&gt;
 bootadm list-menu&lt;br /&gt;
&lt;br /&gt;
Set default menu option to second one:&lt;br /&gt;
 bootadm set-menu default=1&lt;br /&gt;
&lt;br /&gt;
Set the timeout:&lt;br /&gt;
 bootadm set-menu timeout=10&lt;br /&gt;
&lt;br /&gt;
=== Booting: OpenBoot ===&lt;br /&gt;
&lt;br /&gt;
* ok&amp;gt; prompt: STOP-A or BRK&lt;br /&gt;
 banner&lt;br /&gt;
 reset-all&lt;br /&gt;
 probe-ide&lt;br /&gt;
 probe-scsi&lt;br /&gt;
 devaliases&lt;br /&gt;
 printenv boot-device&lt;br /&gt;
 setenv boot-device disk&lt;br /&gt;
 reset&lt;br /&gt;
&lt;br /&gt;
=== Package Management ===&lt;br /&gt;
&lt;br /&gt;
Show package publisher:&lt;br /&gt;
 pkg publisher&lt;br /&gt;
&lt;br /&gt;
Show us only the packages for which newer versions are available:&lt;br /&gt;
 pkg info -u&lt;br /&gt;
&lt;br /&gt;
Update:&lt;br /&gt;
 pkg update&lt;br /&gt;
&lt;br /&gt;
Show SRU installed (look at Branch and Packaging Date):&lt;br /&gt;
 pkg info entire&lt;br /&gt;
&lt;br /&gt;
Search for a package matching &amp;quot;ucb&amp;quot;:&lt;br /&gt;
 # pkg search ucb&lt;br /&gt;
 INDEX      ACTION VALUE                                  PACKAGE&lt;br /&gt;
 basename   file   usr/share/groff/1.22.3/font/devlj4/UCB pkg:/text/groff@1.22.3-11.4.0.0.1.14.0&lt;br /&gt;
 basename   dir    usr/ucb                                pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 pkg.fmri   set    solaris/compatibility/ucb              pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
 pkg.fmri   set    solaris/legacy/compatibility/ucb       pkg:/legacy/compatibility/ucb@11.4-11.4.0.0.1.15.0&lt;br /&gt;
 &lt;br /&gt;
 # pkg install pkg:/compatibility/ucb@11.4-11.4.0.0.0.11.0&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
&lt;br /&gt;
List all enabled services (-a also shows disabled):&lt;br /&gt;
 svcs&lt;br /&gt;
&lt;br /&gt;
Show long list about one service:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# svcs -l apache24&lt;br /&gt;
fmri         svc:/network/http:apache24&lt;br /&gt;
name         Apache 2.4 HTTP server&lt;br /&gt;
enabled      true&lt;br /&gt;
state        online&lt;br /&gt;
next_state   none&lt;br /&gt;
state_time   Mon Nov 12 16:22:58 2018&lt;br /&gt;
logfile      /var/svc/log/network-http:apache24.log&lt;br /&gt;
restarter    svc:/system/svc/restarter:default&lt;br /&gt;
contract_id  2017&lt;br /&gt;
manifest     /lib/svc/manifest/network/http-apache24.xml&lt;br /&gt;
dependency   optional_all/error svc:/system/filesystem/autofs:default (online)&lt;br /&gt;
dependency   require_all/none svc:/system/filesystem/local:default (online)&lt;br /&gt;
dependency   require_all/error svc:/milestone/network:default (online)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Enable a service:&lt;br /&gt;
 svcadm enable apache24&lt;br /&gt;
&lt;br /&gt;
=== Timezone ===&lt;br /&gt;
&lt;br /&gt;
Show:&lt;br /&gt;
 svccfg -s timezone:default listprop timezone/localtime&lt;br /&gt;
&lt;br /&gt;
Set:&lt;br /&gt;
 svccfg -s timezone:default setprop timezone/localtime = astring: &amp;quot;Europe/Amsterdam&amp;quot;&lt;br /&gt;
&lt;br /&gt;
See also files in: /usr/share/lib/zoneinfo&lt;br /&gt;
&lt;br /&gt;
=== User Management ===&lt;br /&gt;
&lt;br /&gt;
To give user ability to su to root:&lt;br /&gt;
* /etc/user_attr.d/local-entries&lt;br /&gt;
&lt;br /&gt;
To show status and unlock:&lt;br /&gt;
 passwd -s&lt;br /&gt;
 passwd -u someuser&lt;br /&gt;
&lt;br /&gt;
To stop account lockout:&lt;br /&gt;
 usermod -K lock_after_retries=no someuser&lt;br /&gt;
&lt;br /&gt;
== iSCSI initiator (Static) ==&lt;br /&gt;
&lt;br /&gt;
Check initiator service is up:&lt;br /&gt;
 svcs network/iscsi/initiator&lt;br /&gt;
&lt;br /&gt;
Add IP of storage system (use default port 3260):&lt;br /&gt;
 iscsiadm add static-config iqn.2000-01.com.example:initiator01, 192.0.2.2:3260&lt;br /&gt;
&lt;br /&gt;
Check targets:&lt;br /&gt;
 iscsiadm list static-config&lt;br /&gt;
&lt;br /&gt;
CHAPS enable:&lt;br /&gt;
 iscsiadm modify initiator-node --authentication CHAP&lt;br /&gt;
&lt;br /&gt;
Set user, and secret (password):&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-name someuser&lt;br /&gt;
 iscsiadm modify initiator-node --CHAP-secret&lt;br /&gt;
  Enter CHAP secret: ************&lt;br /&gt;
  Re-enter secret: ************&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Enable:&lt;br /&gt;
 iscsiadm modify discovery --static enable&lt;br /&gt;
&lt;br /&gt;
Show initiator status:&lt;br /&gt;
 iscsiadm list initiator-node&lt;br /&gt;
 iscsiadm list target&lt;br /&gt;
 iscsiadm list target-param -v&lt;br /&gt;
&lt;br /&gt;
Show iSCSI disks:&lt;br /&gt;
 iscsiadm list target -S | grep &amp;quot;OS Device Name&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
See also: [https://docs.oracle.com/cd/E53394_01/html/E54792/iscsi-1.html#scrolltoc Oracle Docs]&lt;br /&gt;
&lt;br /&gt;
== Kerberos ==&lt;br /&gt;
&lt;br /&gt;
Client: kclient&lt;br /&gt;
&lt;br /&gt;
== Networking ==&lt;br /&gt;
&lt;br /&gt;
[https://www.oracle.com/technetwork/articles/servers-storage-admin/s11-network-config-1632927.html networking]&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 dladm show-link&lt;br /&gt;
 dladm show-ether&lt;br /&gt;
&lt;br /&gt;
Show hostname:&lt;br /&gt;
 svccfg -s system/identity:node listprop config&lt;br /&gt;
&lt;br /&gt;
Set hostname:&lt;br /&gt;
 svccfg -s system/identity:node setprop config/nodename=&amp;quot;my-sol-host&amp;quot;&lt;br /&gt;
 svccfg -s system/identity:node setprop config/loopback=&amp;quot;localhost&lt;br /&gt;
&lt;br /&gt;
== NTP ==&lt;br /&gt;
&lt;br /&gt;
Client:&lt;br /&gt;
 cd /etc/inet; cp ntp.client &amp;gt; ntp.conf&lt;br /&gt;
&lt;br /&gt;
(edit file)&lt;br /&gt;
&lt;br /&gt;
 svcadm enable network/ntp:default&lt;br /&gt;
 svcs network/ntp&lt;br /&gt;
 ntpq -p&lt;br /&gt;
&lt;br /&gt;
== Reset root password ==&lt;br /&gt;
&lt;br /&gt;
* Boot from CD&lt;br /&gt;
* Select option 3: Shell&lt;br /&gt;
&lt;br /&gt;
Check availability of rpool (none expected):&lt;br /&gt;
 zpool list&lt;br /&gt;
&lt;br /&gt;
Import rpool:&lt;br /&gt;
 zpool import -f -R /a rpool&lt;br /&gt;
&lt;br /&gt;
df -h should show some filesystems under /a&lt;br /&gt;
&lt;br /&gt;
Show zfs filesystems, check for root/ROOT/...&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Set mount point for root filesystem:&lt;br /&gt;
 zfs set mountpoint=/mnt_tmp rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Check new entry under /mnt/tmp has been added:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
Mount filesystem:&lt;br /&gt;
 zfs mount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
&lt;br /&gt;
Remove password hash from /a/mnt_tmp/etc/shadow&lt;br /&gt;
&lt;br /&gt;
Reset mount point:&lt;br /&gt;
 zfs umount rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zfs set mountpoint=/ rpool/ROOT/11.4-11.4.31.0.1.88.5&lt;br /&gt;
 zpool export rpool&lt;br /&gt;
&lt;br /&gt;
* Reboot server&lt;br /&gt;
* edit grub menu (&amp;quot;e&amp;quot;)&lt;br /&gt;
* on line starting $multiboot, append &amp;quot;-s&amp;quot; option for single-user mode&lt;br /&gt;
* enter &amp;quot;root&amp;quot; and once in shell, change root password&lt;br /&gt;
* reboot&lt;br /&gt;
&lt;br /&gt;
== ZFS ==&lt;br /&gt;
&lt;br /&gt;
Disks can be listed and formatted with:&lt;br /&gt;
 format&lt;br /&gt;
&lt;br /&gt;
Will show at least the root pool (rpool):&lt;br /&gt;
 zpool list&lt;br /&gt;
 zpool status rpool&lt;br /&gt;
&lt;br /&gt;
Show zfs file systems:&lt;br /&gt;
 zfs list&lt;br /&gt;
&lt;br /&gt;
The default root pool (rpool) is a single disk immediately after install (eg c1t0d0). Add a second disk (c1t1d0) to make a mirror:&lt;br /&gt;
 zpool attach rpool c1t0d0 c1t1d0&lt;br /&gt;
&lt;br /&gt;
Then, monitor &amp;quot;zpool status rpool&amp;quot; output until &amp;quot;resilvering&amp;quot; is complete.&lt;br /&gt;
&lt;br /&gt;
=== Pools and Datasets ===&lt;br /&gt;
&lt;br /&gt;
Pools can be made from disk devices or files.&lt;br /&gt;
&lt;br /&gt;
Create a new pool from mulitple devices in a RAID (high level RAID: raidz2, raidz3):&lt;br /&gt;
 zpool create store raidz1 c1t2d0 c1t3d0 c1t4d0 c1t5d0&lt;br /&gt;
 zpool list store&lt;br /&gt;
 zfs list store&lt;br /&gt;
&lt;br /&gt;
Check for errors:&lt;br /&gt;
 zpool scrub store&lt;br /&gt;
&lt;br /&gt;
Pools are, by default, mounted under root, eg /store. No entry in fstab is required. Use the -m option on create to change this.&lt;br /&gt;
&lt;br /&gt;
Remove a pool:&lt;br /&gt;
 zpool destroy pool1&lt;br /&gt;
&lt;br /&gt;
Remove a disk:&lt;br /&gt;
 zpool detatch pool1 /root/disk1&lt;br /&gt;
&lt;br /&gt;
A dataset (like a subvolume) can be created in a pool, and can be nested:&lt;br /&gt;
 zfs create store/database&lt;br /&gt;
&lt;br /&gt;
Options can be passed on create, eg to change the mountpoint, etc:&lt;br /&gt;
 -o mountpoint=/database -o compression=gzip -o quota=100G -o reservation=50G&lt;br /&gt;
&lt;br /&gt;
=== Quotas and Reservations ===&lt;br /&gt;
&lt;br /&gt;
Quotas can be defined on datasets, such that no more than this amount of storage can be used. However, this limit may not be achieved if the pool&#039;s alocation is used up outside of this dataset. An reservation can be made from the pool so only this pool can use it.&lt;br /&gt;
&lt;br /&gt;
View and set quota:&lt;br /&gt;
 zfs get quota store/database&lt;br /&gt;
 zfs set quota=10G store/database&lt;br /&gt;
&lt;br /&gt;
View and set reservation:&lt;br /&gt;
 zfs get reservation store/database&lt;br /&gt;
 zfs set reservation=10G store/database&lt;br /&gt;
&lt;br /&gt;
=== Volume (Block Device) ===&lt;br /&gt;
&lt;br /&gt;
A block device can be created from a pool, eg for use by a virtual machine, dump device or swap.&lt;br /&gt;
 zfs create -V 5G store/vol&lt;br /&gt;
&lt;br /&gt;
will expose the device as /dev/zvol/dsk/store/vol&lt;br /&gt;
&lt;br /&gt;
Volumes can be used as iSCSI targets, see [https://docs.oracle.com/cd/E19253-01/819-5461/gaypf/index.html here].&lt;br /&gt;
&lt;br /&gt;
== Role Based Authentication ==&lt;br /&gt;
&lt;br /&gt;
List profiles for a user:&lt;br /&gt;
 profiles -l user1&lt;br /&gt;
&lt;br /&gt;
Create a new profile (local files, not LDAP):&lt;br /&gt;
 profile -p ChangePasswords -S files&lt;br /&gt;
 &amp;gt; set desc=&amp;quot;Allow changing of passwords&amp;quot;&lt;br /&gt;
 &amp;gt; set auth=solaris.passwd.assign,solaris.account.activate&lt;br /&gt;
 &amp;gt; info&lt;br /&gt;
 &amp;gt; verify&lt;br /&gt;
 &amp;gt; exit&lt;br /&gt;
&lt;br /&gt;
Update a user to be assigned the new profile:&lt;br /&gt;
 usermod +P ChangePasswords user1&lt;br /&gt;
&lt;br /&gt;
Profiles are stored locally in:&lt;br /&gt;
* /etc/security/prof_attr&lt;br /&gt;
&lt;br /&gt;
== Zones ==&lt;br /&gt;
&lt;br /&gt;
Oracle Docs:&lt;br /&gt;
* [https://docs.oracle.com/cd/E37838_01/html/E61037/zonesoverview.html#scrolltoc Zones Overview]&lt;br /&gt;
* [https://www.oracle.com/technetwork/articles/servers-storage-admin/o11-092-s11-zones-intro-524494.html Getting Started]&lt;br /&gt;
* [https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/use-zones/ Using Zones]&lt;br /&gt;
* [http://www.datadisk.co.uk/html_docs/sun/solaris_zones.htm Zones Cheatsheet]&lt;br /&gt;
&lt;br /&gt;
Check zfs:&lt;br /&gt;
 zfs list | grep zones&lt;br /&gt;
&lt;br /&gt;
Configuring a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zonecfg -z zone1&lt;br /&gt;
Use &#039;create&#039; to begin configuring a new zone.&lt;br /&gt;
zonecfg:zone1&amp;gt; create&lt;br /&gt;
create: Using system default template &#039;SYSdefault&#039;&lt;br /&gt;
zonecfg:zone1&amp;gt; set autoboot=true&lt;br /&gt;
zonecfg:zone1&amp;gt; set bootargs=&amp;quot;-m verbose&amp;quot;&lt;br /&gt;
zonecfg:zone1&amp;gt; set zonepath=/store/zones/zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; info&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
root@npgs-solaris:~#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
List config:&lt;br /&gt;
 zonecfg -z zone1 info&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm list -cv&lt;br /&gt;
  ID NAME             STATUS      PATH                         BRAND      IP&lt;br /&gt;
   0 global           running     /                            solaris    shared&lt;br /&gt;
   - zone1            configured  /system/zones/zone1          solaris    excl&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
root@npgs-solaris:~# zoneadm -z zone1 install&lt;br /&gt;
The following ZFS file system(s) have been created:&lt;br /&gt;
    rpool/VARSHARE/zones/zone1&lt;br /&gt;
Progress being logged to /var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
       Image: Preparing at /system/zones/zone1/root.&lt;br /&gt;
&lt;br /&gt;
Install Log: /system/volatile/install.25403/install_log&lt;br /&gt;
 AI Manifest: /tmp/manifest.xml.5c4vcb&lt;br /&gt;
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml&lt;br /&gt;
    Zonename: zone1&lt;br /&gt;
Installation: Starting ...&lt;br /&gt;
          Creating IPS image&lt;br /&gt;
Startup linked: 1/1 done&lt;br /&gt;
        Installing packages from:&lt;br /&gt;
            solaris&lt;br /&gt;
                origin:  http://pkg.oracle.com/solaris/release/&lt;br /&gt;
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED&lt;br /&gt;
Completed                            415/415   65388/65388  428.2/428.2  507k/s&lt;br /&gt;
&lt;br /&gt;
 PHASE                                          ITEMS&lt;br /&gt;
Installing new actions                   89400/89400&lt;br /&gt;
Updating package state database                 Done&lt;br /&gt;
Updating package cache                           0/0&lt;br /&gt;
Updating image state                            Done&lt;br /&gt;
Creating fast lookup database                   Done&lt;br /&gt;
Updating package cache                           1/1&lt;br /&gt;
Installation: Succeeded&lt;br /&gt;
 done.&lt;br /&gt;
&lt;br /&gt;
        Done: Installation completed in 1328.592 seconds.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  Next Steps: Boot the zone, then log into the zone console (zlogin -C)&lt;br /&gt;
&lt;br /&gt;
              to complete the configuration process.&lt;br /&gt;
&lt;br /&gt;
Log saved in non-global zone as /system/zones/zone1/root/var/log/zones/zoneadm.20181109T163221Z.zone1.install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Start the zone:&lt;br /&gt;
 zoneadm -z zone1 boot&lt;br /&gt;
&lt;br /&gt;
Login to the zone console (disconnect with ~.) and finish setup with UI:&lt;br /&gt;
 zlogin -C zone1&lt;br /&gt;
&lt;br /&gt;
Check status:&lt;br /&gt;
 zoneadm list -v&lt;br /&gt;
&lt;br /&gt;
Show config:&lt;br /&gt;
 zonecfg -z zone1 info -a&lt;br /&gt;
 zoneadm list -ip&lt;br /&gt;
&lt;br /&gt;
Shutdown a zone:&lt;br /&gt;
 zoneadm -z zone1 shutdown&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
By default, new zones are created with an exclusive IP network resource: a zone has access to a complete network stack, eg has its own IP address and routing.&lt;br /&gt;
&lt;br /&gt;
A network resource called anet with the following properties was automatically created:&lt;br /&gt;
 ip-type is exclusive&lt;br /&gt;
 linkname is net0&lt;br /&gt;
 lower-link is auto&lt;br /&gt;
 mac-address is random&lt;br /&gt;
 link-protection is mac-nospoof&lt;br /&gt;
&lt;br /&gt;
Confirm with:&lt;br /&gt;
 zonecfg -z z1 info -a&lt;br /&gt;
&lt;br /&gt;
This exists when the zone is running.&lt;br /&gt;
&lt;br /&gt;
 ipadm&lt;br /&gt;
 dladm show-link&lt;br /&gt;
&lt;br /&gt;
=== Setting resource limits ===&lt;br /&gt;
&lt;br /&gt;
Dedicated CPUs (set min 1, max 3: requres svc:/system/pools/dynamic to be enabled) to a zone:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add dedicated-cpu&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; set ncpus=1-3&lt;br /&gt;
zonecfg:zone1:dedicated-cpu&amp;gt; end&lt;br /&gt;
zonecfg:zone1&amp;gt; verify&lt;br /&gt;
zonecfg:zone1&amp;gt; commit&lt;br /&gt;
zonecfg:zone1&amp;gt; exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;select&amp;quot; to enter a resource once it exists. &amp;quot;remove&amp;quot; to delete)&lt;br /&gt;
&lt;br /&gt;
CPU caps (alternative to dedicated CPUs) can offer finer grained control. Set CPU cap (proportion guaranteed if there is contention), eg 150% of one CPU:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# zonecfg -z zone1&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-cpu&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; set ncpus=1.5&lt;br /&gt;
zonecfg:zone1:capped-cpu&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set Memory cap:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
zonecfg:zone1&amp;gt; add capped-memory&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set physical=512m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set swap=1024m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; set locked=128m&lt;br /&gt;
zonecfg:zone1:capped-memory&amp;gt; end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zones can be made immutable with the file-mac-profile property:&lt;br /&gt;
* none&lt;br /&gt;
** Normal read/write&lt;br /&gt;
* strict&lt;br /&gt;
** Read-only file system, no exceptions.&lt;br /&gt;
* fixed-configuration&lt;br /&gt;
** Permits updates to /var/* directories, with the exception of directories that contain system configuration components: IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration are fixed.&lt;br /&gt;
* flexible-configuration&lt;br /&gt;
** Permits modification of files in /etc/* directories, changes to root&#039;s home directory, and updates to /var/* directories. IPS packages, including new packages, cannot be installed. Persistently enabled SMF services are fixed. SMF manifests cannot be added from the default locations. Logging and auditing configuration files can be local. syslog and audit configuration can be changed.&lt;br /&gt;
&lt;br /&gt;
The mutability setting can be observed:&lt;br /&gt;
 # zoneadm list -p&lt;br /&gt;
 0:global:running:/::solaris:shared:-:none::&lt;br /&gt;
 1:z2:running:/system/zones/zone2:e4755797-169b-4f5b-b016-a28ccfbff24a:solaris:excl:-:none::&lt;br /&gt;
 4:z1:running:/system/zones/zone1:f1784415-3fe3-4cca-8f23-ac7c9180664f:solaris:excl:R:fixed-configuration::&lt;br /&gt;
&lt;br /&gt;
Here, zone1 is immutable.&lt;br /&gt;
&lt;br /&gt;
=== Creating a template ===&lt;br /&gt;
&lt;br /&gt;
Create a template based on zone &amp;quot;z1&amp;quot;:&lt;br /&gt;
 zlogin z1&lt;br /&gt;
 sysconfig create-profile -o /root/z1-template&lt;br /&gt;
&lt;br /&gt;
A configuration file will be created at z2-template/sc_profile.xml. From the global zone, stop z1.&lt;br /&gt;
 zonecfg -z z1 export -f /zones/z2-profile&lt;br /&gt;
&lt;br /&gt;
Copy the system configuration template:&lt;br /&gt;
 cp /system/zones/z1/root/root/z2-template/sc_profile.xml z2-template.xml&lt;br /&gt;
&lt;br /&gt;
Create zone 2 based on the z1 template:&lt;br /&gt;
 zonecfg -z z2 -f /root/z2-profile&lt;br /&gt;
 zoneadm -z 22 clone -c /root/z2-template.xml z1&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1776</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1776"/>
		<updated>2026-06-17T17:45:42Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* NFS Automounter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=48,margin_right=48,margin_top=12,margin_bottom=12&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0):&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;br /&gt;
&lt;br /&gt;
=== Wifi ===&lt;br /&gt;
&lt;br /&gt;
Turn off wifi:&lt;br /&gt;
 nmcli radio wifi off&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1775</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1775"/>
		<updated>2026-06-17T17:45:20Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Mail */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=48,margin_right=48,margin_top=12,margin_bottom=12&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0):&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,intr,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;br /&gt;
&lt;br /&gt;
=== Wifi ===&lt;br /&gt;
&lt;br /&gt;
Turn off wifi:&lt;br /&gt;
 nmcli radio wifi off&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1774</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1774"/>
		<updated>2026-06-17T13:34:09Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Temperature */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=48,margin_right=48,margin_top=12,margin_bottom=12&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0):&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft,intr    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,intr,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;br /&gt;
&lt;br /&gt;
=== Wifi ===&lt;br /&gt;
&lt;br /&gt;
Turn off wifi:&lt;br /&gt;
 nmcli radio wifi off&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1773</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1773"/>
		<updated>2026-06-17T12:24:15Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* I2C Development */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=48,margin_right=48,margin_top=12,margin_bottom=12&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0):&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft,intr    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,intr,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1772</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1772"/>
		<updated>2026-06-17T09:52:25Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Composite Video */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=48,margin_right=48,margin_top=12,margin_bottom=12&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0)@&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft,intr    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,intr,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1771</id>
		<title>Rasberry Pi</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Rasberry_Pi&amp;diff=1771"/>
		<updated>2026-06-17T09:46:34Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* Composite Video */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Device ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-3-model-b Rasberry Pi 3B] (&amp;quot;Rev 1.2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
 cat /proc/device-tree/model&lt;br /&gt;
&lt;br /&gt;
Hardware info:&lt;br /&gt;
* AV Connector:&lt;br /&gt;
** 1 (tip): L Audio&lt;br /&gt;
** 2: R Audio&lt;br /&gt;
** 3: Ground&lt;br /&gt;
** Sleeve: Composite Video.&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html Boards]&lt;br /&gt;
* [https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#gpio GPIO Header]&lt;br /&gt;
** 3.3 V on data lines only&lt;br /&gt;
** Pin numbers differ from chip/programmatic pin numbers&lt;br /&gt;
** 3.3 V power lines: 150-200 mA max&lt;br /&gt;
** 5 V power lines: from the main PSU input (reserve 1 A for Pi itself)&lt;br /&gt;
** Data lines: 15 mA max per pin, 50 mA total from all pins&lt;br /&gt;
&lt;br /&gt;
== Rasbery Pi OS ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.raspberrypi.com/documentation/computers/config_txt.html  /boot/firmware/config.txt].&lt;br /&gt;
&lt;br /&gt;
Command line configuration program:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
eg to enable I2C interface.&lt;br /&gt;
&lt;br /&gt;
Upgrade:&lt;br /&gt;
 apt update&lt;br /&gt;
 apt list --upgradeable&lt;br /&gt;
 apt upgrade -y&lt;br /&gt;
&lt;br /&gt;
=== Apache Web Server ===&lt;br /&gt;
&lt;br /&gt;
 apt install apache2 -y&lt;br /&gt;
&lt;br /&gt;
* Configuration: /etc/apache2&lt;br /&gt;
* Serve from: /var/www/html&lt;br /&gt;
&lt;br /&gt;
=== Composite Video ===&lt;br /&gt;
&lt;br /&gt;
Will default to NTSC; in /boot/firmware/cmdline.txt, add this to the end for PAL 50i:&lt;br /&gt;
 video=Composite-1:720x576@50ie&lt;br /&gt;
&lt;br /&gt;
Alternatives include:&lt;br /&gt;
 * NTSC: 720x480@60ie&lt;br /&gt;
 * PAL60: 720x480@60ie&lt;br /&gt;
&lt;br /&gt;
This will show the Pi desktop. Stop it to allow direct access to the framebuffer /dev/fb0:&lt;br /&gt;
 systemctl stop lightdm&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
 raspi-config&lt;br /&gt;
&lt;br /&gt;
* 1 System Options -&amp;gt; S5 Boot / Auto Login -&amp;gt; B1 Console&lt;br /&gt;
&lt;br /&gt;
Can explicitly set the standard:&lt;br /&gt;
 video=Composite-1:720x576@50ie,tv_mode=PAL&lt;br /&gt;
&lt;br /&gt;
Alternatives:&lt;br /&gt;
* PAL / PAL-M / PAL-N&lt;br /&gt;
* NTSC / NTSC-J (Japan) / NTSC-443&lt;br /&gt;
* SECAM&lt;br /&gt;
&lt;br /&gt;
To avoid overscan on TVs, add padding:&lt;br /&gt;
 video=Composite-1:720x576@50ie,margin_left=32,margin_right=32,margin_top=24,margin_bottom=24&lt;br /&gt;
&lt;br /&gt;
=== Go Development ===&lt;br /&gt;
&lt;br /&gt;
Because of limited RAM, best to cross compile on a more powerful system:&lt;br /&gt;
 CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build myprog.go&lt;br /&gt;
&lt;br /&gt;
Or install ARMv6 release:&lt;br /&gt;
 wget https://go.dev/dl/go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
 tar -C /usr/local -xzf go1.26.3.linux-armv6l.tar.gz&lt;br /&gt;
&lt;br /&gt;
Set environment variables:&lt;br /&gt;
 PATH=$PATH:/usr/local/go/bin&lt;br /&gt;
 GOPATH=$HOME/go&lt;br /&gt;
&lt;br /&gt;
=== GPIO Development ===&lt;br /&gt;
&lt;br /&gt;
Raspberry Pi OS use the newer gpiod subsystem (which interacts with /dev/gpiochip0).&lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libgpiod-dev gpiod -y&lt;br /&gt;
 g++ -O3 prog.cpp -o prog -lgpiodcxx&lt;br /&gt;
&lt;br /&gt;
See [https://libgpiod.readthedocs.io/en/master/ documentation].&lt;br /&gt;
&lt;br /&gt;
In Python, use:&lt;br /&gt;
 apt install python3-dev -y&lt;br /&gt;
&lt;br /&gt;
for python gpiod bindings. See [https://pypi.org/project/gpiod/ documentation]. &lt;br /&gt;
&lt;br /&gt;
Or the abstraction:&lt;br /&gt;
 apt install python3-gpiozero -y&lt;br /&gt;
&lt;br /&gt;
In Go, use: periph.io&lt;br /&gt;
&lt;br /&gt;
=== I2C Development ===&lt;br /&gt;
&lt;br /&gt;
Check devices:&lt;br /&gt;
 i2cdetect -y 1&lt;br /&gt;
&lt;br /&gt;
Get a byte (BME280/BMP280 chip ID register 0xD0)@&lt;br /&gt;
 i2cget -y 1 0x76 0xD0&lt;br /&gt;
&lt;br /&gt;
This returns 0x60 for BME280, 0x58 for BMP280) &lt;br /&gt;
&lt;br /&gt;
In C++:&lt;br /&gt;
 apt install libi2c-dev&lt;br /&gt;
 g++ i2c_prog.cpp -o i2c_prog -li2c&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
&lt;br /&gt;
MUA:&lt;br /&gt;
 apt install bsd-mailx&lt;br /&gt;
 apt install mutt&lt;br /&gt;
&lt;br /&gt;
Mount mail directory from server:&lt;br /&gt;
 mailhost:/var/spool/mail    /var/mail    nfs    rw,nofail,noatime,_netdev,soft,intr    0    0&lt;br /&gt;
&lt;br /&gt;
Or use automounter (see other section). Note: UID/GID must match.&lt;br /&gt;
&lt;br /&gt;
Exim is the default MTA:&lt;br /&gt;
 dpkg-reconfigure exim4-config&lt;br /&gt;
 update-exim4.conf&lt;br /&gt;
 systemctl restart exim4&lt;br /&gt;
&lt;br /&gt;
Monitor logs:&lt;br /&gt;
 tail -f /var/log/exim4/mainlog&lt;br /&gt;
&lt;br /&gt;
=== NFS Automounter ===&lt;br /&gt;
&lt;br /&gt;
 apt install autofs nfs-common -y&lt;br /&gt;
&lt;br /&gt;
To allow remove mounts to be accessed under /net/&amp;lt;server&amp;gt;/&amp;lt;export&amp;gt;, edit /etc/auto.master and enable the host map:&lt;br /&gt;
 /net    -hosts --timeout=60&lt;br /&gt;
&lt;br /&gt;
 systemctl enable autofs&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
To mount remote mail directory:&lt;br /&gt;
&lt;br /&gt;
Create the new /etc/auto.master.d/mail.autofs file:&lt;br /&gt;
 /-    /etc/auto.direct    --timeout=60&lt;br /&gt;
&lt;br /&gt;
Create the /etc/auto.direct file:&lt;br /&gt;
 /var/mail    -fstype=nfs,rw,soft,intr,tcp,rsize=8192,wsize=8192    mailhost:/var/spool/mail&lt;br /&gt;
&lt;br /&gt;
 systemctl restart autofs&lt;br /&gt;
&lt;br /&gt;
=== NTP Client ===&lt;br /&gt;
&lt;br /&gt;
 apt install systemd-timesyncd -y&lt;br /&gt;
&lt;br /&gt;
Edit /etc/systemd/timesyncd.conf and set NTP parameter&lt;br /&gt;
 systemctl restart systemd-timesyncd&lt;br /&gt;
 timedatectl status&lt;br /&gt;
 timedatectl timesync-status&lt;br /&gt;
&lt;br /&gt;
=== Service ===&lt;br /&gt;
&lt;br /&gt;
Create a service file /etc/systemd/system/temp-logger.service:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=CPU Temperature Logger to HTML&lt;br /&gt;
 After=network.target&lt;br /&gt;
 &lt;br /&gt;
 [Service]&lt;br /&gt;
 Type=oneshot&lt;br /&gt;
 ExecStart=/usr/local/bin/temp_logger.sh&lt;br /&gt;
 # Run as root or www-data depending on who owns your /var/www/html directory&lt;br /&gt;
 User=root&lt;br /&gt;
&lt;br /&gt;
Create a systemd timer /etc/systemd/system/temp-logger.timer:&lt;br /&gt;
 [Unit]&lt;br /&gt;
 Description=Run Pi Temperature Logger every 5 minutes&lt;br /&gt;
 &lt;br /&gt;
 [Timer]&lt;br /&gt;
 # Run 5 minutes after boot-up&lt;br /&gt;
 OnBootSec=5min&lt;br /&gt;
 # Run every 5 minutes relative to when the timer was started&lt;br /&gt;
 OnUnitActiveSec=5min&lt;br /&gt;
 # Ensures precision alignment to the clock wall if desired (optional)&lt;br /&gt;
 AccuracySec=1s&lt;br /&gt;
 &lt;br /&gt;
 [Install]&lt;br /&gt;
 WantedBy=timers.target&lt;br /&gt;
&lt;br /&gt;
Reload systemd, &lt;br /&gt;
 systemctl daemon-reload&lt;br /&gt;
 systemctl enable --now temp-logger.timer&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
Copy key (and generate ~/.ssh) from client tp pi:&lt;br /&gt;
 ssh-copy-id username@raspi.example.com&lt;br /&gt;
&lt;br /&gt;
=== Stress ===&lt;br /&gt;
&lt;br /&gt;
 apt install stress-ng&lt;br /&gt;
&lt;br /&gt;
Run memory test:&lt;br /&gt;
 stress-ng --vm 1 --vm-bytes 750M --timeout 120 --vm-keep --vm-method rand-sum&lt;br /&gt;
&lt;br /&gt;
CPU test:&lt;br /&gt;
 stress-ng --cpu 4 --cpu-method matrixprod --timeout 300&lt;br /&gt;
&lt;br /&gt;
=== Swap ===&lt;br /&gt;
 free -m&lt;br /&gt;
 swapon --show&lt;br /&gt;
&lt;br /&gt;
To see current zram configuration:&lt;br /&gt;
 zramctl &lt;br /&gt;
 zramctl --output-all /dev/zram0&lt;br /&gt;
&lt;br /&gt;
Configure hybrid configuration, overruding default /etc/rpi/swap.conf in /etc/rpi/swap.conf.d/hybrid-swap.conf:&lt;br /&gt;
 [Main]&lt;br /&gt;
 Mechanism=zram+file&lt;br /&gt;
 &lt;br /&gt;
 [Zram]&lt;br /&gt;
 FixedSizeMiB=512&lt;br /&gt;
 &lt;br /&gt;
 [File]&lt;br /&gt;
 FixedSizeMiB=1024&lt;br /&gt;
&lt;br /&gt;
Ensure systemd component is enabled and reboot:&lt;br /&gt;
 systemctl enable var-swap.swap&lt;br /&gt;
&lt;br /&gt;
There is no need to recreate/resize the /var/swap physical file, which is done at boot time if necessary. In this mode, file system swap will not be visible with swapon; instead it is owned by the zram kernel driver. Zram blocks are pushed to/from file as needed.&lt;br /&gt;
&lt;br /&gt;
=== Temperature ===&lt;br /&gt;
&lt;br /&gt;
 echo &amp;quot;scale=2; $(cat /sys/class/thermal/thermal_zone0/temp) / 1000&amp;quot; | bc&lt;br /&gt;
&lt;br /&gt;
CPU Core throttling above 80 C.&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1770</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1770"/>
		<updated>2026-06-15T18:55:50Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 10 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2024-07-27||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||20:27||4:05||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||42th of 334 overall. Very hilly, warm. Pacer V2.&lt;br /&gt;
Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-11||[https://www.pettswoodrunners.org/petts-wood-10k.html Petts Wood]|| || || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1769</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1769"/>
		<updated>2026-06-15T18:52:51Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 10 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2024-07-27||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||20:27||4:05||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||42th of 334 overall. Very hilly, warm. Pacer V2.&lt;br /&gt;
Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-11||Petts Wood|| || || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1768</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1768"/>
		<updated>2026-06-15T12:52:39Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 10 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2024-07-27||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||20:27||4:05||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||42th of 334 overall. Very hilly, warm. Pacer V2.&lt;br /&gt;
Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1767</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1767"/>
		<updated>2026-06-15T12:52:10Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 10 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2024-07-27||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||20:27||4:05||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||42th of 334 overall. Very hilly, warm. Pacer V2. Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
	<entry>
		<id>https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1766</id>
		<title>Running</title>
		<link rel="alternate" type="text/html" href="https://www.smithnet.org.uk/wiki/index.php?title=Running&amp;diff=1766"/>
		<updated>2026-06-14T16:15:04Z</updated>

		<summary type="html">&lt;p&gt;NickPGSmith: /* 10 km */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Distances ==&lt;br /&gt;
&lt;br /&gt;
See [https://www.calculator.net/pace-calculator.html Pace Calculator].&lt;br /&gt;
&lt;br /&gt;
=== 5 km ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.parkrun.org.uk/parkrunner/6454631/all/ All Parkruns]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-08-12||[https://www.parkrun.org.uk/swanseabay/parkrunner/6454631/ Swansea Bay Parkrun]||19:27||3:53||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-11&amp;lt;/br&amp;gt;2026-04-27||[https://www.parkrun.org.uk/southnorwood/parkrunner/6454631/ South Norwood Parkrun]||19:55||3:59||&lt;br /&gt;
|-&lt;br /&gt;
|2024-06-29||[https://www.parkrun.org.uk/crystalpalace/parkrunner/6454631/ Crystal Palance Parkrun]||20:43||4:09||&lt;br /&gt;
|-&lt;br /&gt;
|2024-07-27||[https://www.parkrun.org.uk/bromley/parkrunner/6454631/ Bromley Parkrun]||20:27||4:05||&lt;br /&gt;
|-&lt;br /&gt;
|2025-03-01||[https://www.parkrun.org.uk/medina/parkrunner/6454631/ Medina IOW Parkrun]||22:04||4:25||&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-17||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5495-2-25249 Dulwich Park]||19:58||4:00||13th Overall, 1st in V50 category&amp;lt;br/&amp;gt;Pacer V2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 20:00 (4:00 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 km ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2025-01-19||Regent&#039;s Park||43:03||4:18||2 weeks off/with injury. Metaspeed, cool.&lt;br /&gt;
|-&lt;br /&gt;
|2025-06-18||[https://results.netiming.co.uk/results.aspx?CId=20008&amp;amp;RId=465 Norman Park]||44:18||4:26||32nd of 292 overall. Pacer V2, Very hot.&lt;br /&gt;
|-&lt;br /&gt;
|2025-08-24||[https://results.runthrough.co.uk/myresults.aspx?CId=16487&amp;amp;RId=5504&amp;amp;EId=1&amp;amp;AId=1103850 Regent&#039;s Park]||41:57||4:12||18th of 362 overall. Metaspeed, warmish.&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-14||[https://results.netiming.co.uk/myresults.aspx?uid=20008-472-1-9265 High Elms]||45:23||4:32||Very hilly, warm. Pacer V2. Suggested PB + 5 min.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 42:00 (4:12 min/km)&lt;br /&gt;
&lt;br /&gt;
=== 10 mile (16 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2026-06-07||[https://results.racetimingsolutions.co.uk/myresults.aspx?CId=16269&amp;amp;RId=24211&amp;amp;EId=2&amp;amp;AId=231951 Dorking]||1:08:30||4:15||Metaspeed, cool/slight wind, undulating.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:09:00 (4:17 min/km)&lt;br /&gt;
&lt;br /&gt;
=== Half (21.1 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|2023-09-03||London [https://www.thebighalf.co.uk/ Big Half]||1:36:57||4:36||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2024-09-01||London Big Half||1:32:20||4:23||Hot&lt;br /&gt;
|-&lt;br /&gt;
|2025-09-07||London Big Half||1:32:06||4:22||Warm. On 1:30 pace until halfway, legs tiring.&amp;lt;br/&amp;gt;Insufficient training at race pace?&lt;br /&gt;
|-&lt;br /&gt;
|2026-09-06||London Big Half|| || ||&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Target: 1:30:00 (4:16 min/km)&lt;br /&gt;
&lt;br /&gt;
Notes from BH:&lt;br /&gt;
* Pre-race warmup walk&lt;br /&gt;
* Fueling plan&lt;br /&gt;
* Plan point of sprint finish earlier&lt;br /&gt;
&lt;br /&gt;
=== Marathon (42.2 km) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Date&lt;br /&gt;
!Location&lt;br /&gt;
!Time&lt;br /&gt;
!Pace (min/km)&lt;br /&gt;
!Notes&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|2022-05-01||[https://mkmarathon.com/ Milton Keynes]||3:53:00||5:31||Cramp near end: no fueling plan.&lt;br /&gt;
|-&lt;br /&gt;
|2023-05-01||Milton Keynes||3:34:04||5:04||&lt;br /&gt;
|-&lt;br /&gt;
|2024-05-06||Milton Keynes||3:21:04||4:46||&lt;br /&gt;
|-&lt;br /&gt;
|2025-05-05||Milton Keynes||3:40:21||5:13||After injury: insufficient long runs.&amp;lt;br/&amp;gt;Cool, 5 Gells/tablets/2 caffine&amp;lt;br/&amp;gt;Severe cramp in last 6 km&lt;br /&gt;
|-&lt;br /&gt;
|2025-10-18||[https://results.runthrough.co.uk/myresults.aspx?uid=16487-5587-6-56342 Battersea Park]||3:19:58||4:44||Cool, flat. 4 Gells + Sweets.Achillies niggle, New Balance&amp;lt;br/&amp;gt;Bad blisters, cramp after finish&lt;br /&gt;
|-&lt;br /&gt;
|2026-04-12||Brighton||3:29:04||4:57||Superblast 2 (Sunny but not too hot, light wind). Only 2 weeks intensive (100+k) after Achilles recovery. Needed to walk at water stations with cups. Fueling: good gel use, 2 caffeine tabs, 2 electrolyte tabs. Steady heart rate. Started to get cramp in last 5 km, very bad (needed to run/walk) in last 2 km.&lt;br /&gt;
[https://www.londonmarathonevents.co.uk/sites/default/files/2025-03/BRTN_2025_Road_Closure_Map_v4%201.pdf Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-05-04||[https://results.resultsbase.net/myresults.aspx?CId=8&amp;amp;RId=21049&amp;amp;EId=1&amp;amp;AId=81587 Milton Keynes]||3:18:04||4:41||Cool, steady pace, Metaspeed Sky +, good gel/electrolytes, no cramp until a little crossing the finish.&lt;br /&gt;
[https://www.mapmyrun.com/routes/view/5974644058 Map]&lt;br /&gt;
|-&lt;br /&gt;
|2026-10-24||Battersea Park|| || ||&lt;br /&gt;
|-&lt;br /&gt;
|2027-04-18||Newport|| || ||&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Targets:&lt;br /&gt;
* 3:30:00 (4:59 min/km) &lt;br /&gt;
* 3:20:00 (4:44 min/km)&lt;br /&gt;
* 3:15:00 (4:37 min/km)&lt;br /&gt;
&lt;br /&gt;
== Training ==&lt;br /&gt;
&lt;br /&gt;
* Polarised Training:&lt;br /&gt;
** Mostly consistent slow runs, high volume&lt;br /&gt;
** Speed work at Parkrun and track. &lt;br /&gt;
* Taper&lt;br /&gt;
** 2 - 3 weeks unnecessary if comfortable with prior volume, so used to recovering.&lt;br /&gt;
** Reduce volume but maintain intensity&lt;br /&gt;
* Sprints&lt;br /&gt;
** Hill sprints develop power; high cadence/look up not down&lt;br /&gt;
** Sprint training should be done not to exhaustion: multiple short bursts to engage fast twitch muscles&lt;br /&gt;
* Alternate:&lt;br /&gt;
** 2 weeks High Load (100+ km)&lt;br /&gt;
** 1 week De-load&lt;br /&gt;
** Vary according to feel, additional races&lt;br /&gt;
** Do not attempt full send Parkrun every week&lt;br /&gt;
* Be more specific closer to the race&lt;br /&gt;
* 2 Weeks from Marathon, peak with race-specific effort:&lt;br /&gt;
** 10 k easy / 15-20 km @ race pace (4:37 min/km)&lt;br /&gt;
** 4 x (5 km @ race pace + 1 km easy)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !!Mon!!Tue!!Wed!!Thu!!Fri!!Sat!!Sun&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|High Load&lt;br /&gt;
|18 km&lt;br /&gt;
|AM: 9 - 18 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|12 km&lt;br /&gt;
|18 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|21 - 37 km&lt;br /&gt;
|Rest / 8.5 km depending on previous day&lt;br /&gt;
|-&lt;br /&gt;
|De-Load&lt;br /&gt;
|8 km hill&lt;br /&gt;
|AM: 5 km;&amp;lt;br/&amp;gt;PM: Track, Max effort&lt;br /&gt;
|9 km&lt;br /&gt;
|12 km&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
|&#039;&#039;Parkrun&#039;&#039; 2 - 3 km warmup; 5 km race&lt;br /&gt;
|Rest / S&amp;amp;C&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Distances:&lt;br /&gt;
* ~ 6 km : 2 loops around SN Park&lt;br /&gt;
* 9 km : Beckenham J - Penge E&lt;br /&gt;
* 12 km : to BP Park&lt;br /&gt;
* ~ 12.5 km : CPalace - Sydenham - Beckenham J&lt;br /&gt;
* ~ 19 km : Elmers - Shirley - WWickham - Beckenham&lt;br /&gt;
* ~ 21.6 km : Grenwich observatory and back&lt;br /&gt;
* ~ 23 km : Elmers - Shirley - WWickham - Beckenham J with BP Park loop&lt;br /&gt;
* ~ 29.3 km : To SB, Grenwich observatory and back&lt;br /&gt;
* ~ 31.5 km : Elmers - Shirley - WWickham - Beckenham (and repeat with shortcut)&lt;br /&gt;
&lt;br /&gt;
S/C Excercises:&lt;br /&gt;
* Calf Raise&lt;br /&gt;
* Bench Lunge&lt;br /&gt;
* Plank&lt;br /&gt;
* Side Plank&lt;br /&gt;
* Toe Walk&lt;br /&gt;
* Heel Walk&lt;br /&gt;
&lt;br /&gt;
Form:&lt;br /&gt;
* Check, especially when tired&lt;br /&gt;
* Stop flapping arms about&lt;br /&gt;
* Don&#039;t slouch forward&lt;br /&gt;
&lt;br /&gt;
== Shoes ==&lt;br /&gt;
&lt;br /&gt;
Current:&lt;br /&gt;
* ASICS Metaspeed Sky+ (204 g) [2023-12]: Important Races: Half/Marathon. Carbon Plate.&lt;br /&gt;
* ASICS Novablast 5 (260 g) [2025-01]: Everyday, Easy, Parkrun.&lt;br /&gt;
* ASICS Nimbus 27 (300 g) [2025-04]: Extra cushioned, long runs.&lt;br /&gt;
* New Balance FuelCell SuperComp Pacer V2 (209 g) [2025-05]: Important Races: 5k/10k. Carbon Plate.&lt;br /&gt;
** Half size up, but still too tight for long runs.&lt;br /&gt;
* ASICS Gel Pulse 15 (260 g) [2025-09]: Walking, light runs.&lt;br /&gt;
* ASICS SuperBlast 2 (250 g) [2026-01]: Tempo, Track, more cushioned for Half/Marathon.&lt;br /&gt;
* Scott Supertrac RC 2 Trail (270 g) [2026-01]: Cross-Country.&lt;br /&gt;
** 1 size up&lt;br /&gt;
&lt;br /&gt;
Consider:&lt;br /&gt;
* ASICS Metaspeed Sky/Edge Tokyo (188 g, £240): Races/speed&lt;br /&gt;
* ASICS MegaBlast (230g, £210): Fast non-plate&lt;br /&gt;
* ASICS Metaspeed Ride (282 g, £180)&lt;br /&gt;
* ASICS Sonicblast Tokyo (256 g, *£170): Plate version of novablast? Tempo?&lt;br /&gt;
* ASICS Magic Speed 4 (242 g, £160 - 15%): Plate, tempo/speed work.&lt;br /&gt;
* ASICS Novablast 5 (260 g, *£135)&lt;br /&gt;
* ASICS Trabuco 14 (* £140): Trail&lt;br /&gt;
* Li-Ning Eedian 6 Elite (~200 g): Races&lt;br /&gt;
* Li-Ning Eedian 6 Challenger (~200 g): Propulsion and stability&lt;br /&gt;
&lt;br /&gt;
Retired:&lt;br /&gt;
* ASICS NovaBlast 3 (252 g) [2023-07]: Tempo/Track/Parkrun&lt;br /&gt;
* Saucony Mens Ride 17 (282 g) [2024-03]: Easy Run, Daily&lt;br /&gt;
* ASICS Cumulus&lt;br /&gt;
* ASICS Nimbus 22&lt;br /&gt;
* ASICS Nimbus 24 [2023-07]&lt;br /&gt;
&lt;br /&gt;
== Research ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.researchgate.net/profile/Malcolm-Collins/publication/49674432_Increased_running_speed_and_previous_cramps_rather_than_dehydration_or_serum_sodium_changes_predict_exercise-associated_muscle_cramping_A_prospective_cohort_study_in_210_Ironman_triathletes/links/0a85e53c93b820db45000000/Increased-running-speed-and-previous-cramps-rather-than-dehydration-or-serum-sodium-changes-predict-exercise-associated-muscle-cramping-A-prospective-cohort-study-in-210-Ironman-triathletes.pdf Increased running speed and previous cramps rather than dehydration or serum sodium]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&lt;br /&gt;
Runners:&lt;br /&gt;
* [https://www.youtube.com/@BenParkes Ben Parkes]&lt;br /&gt;
* [https://www.youtube.com/@thisisjogon Jog On]&lt;br /&gt;
* [https://www.youtube.com/@kofuzi Kofuzi]&lt;br /&gt;
* [https://www.youtube.com/@justalilbester Nick Bester]&lt;br /&gt;
* [https://www.youtube.com/@PhilyBowden Phily Bowden]&lt;br /&gt;
* [https://www.youtube.com/@RanToJapan Ran To Japan]&lt;br /&gt;
* [https://www.youtube.com/@runningchannel The Running Channel]&lt;br /&gt;
&lt;br /&gt;
Physio/Coach:&lt;br /&gt;
* [https://www.youtube.com/@SpringSnabbare Fredrik Zillén]&lt;br /&gt;
* [https://www.youtube.com/@NicklasRossnerPT Nick Rossner]&lt;br /&gt;
* [https://www.youtube.com/@runelitecoach Run Elite]&lt;br /&gt;
* [https://www.youtube.com/@TheRunExperience The Run Experience]&lt;br /&gt;
* [https://www.youtube.com/@SteveMagness Steve Magness]&lt;br /&gt;
&lt;br /&gt;
== Diet &amp;amp; Supplements ==&lt;br /&gt;
&lt;br /&gt;
* Eat at least 2 hours before a race&lt;br /&gt;
* Marathon/Half:&lt;br /&gt;
** Start taking carbs 20 mins after the start of a race&lt;br /&gt;
** At least 60 g / hour&lt;br /&gt;
** SiS GO Isotonic: 22 g carbs (general training)&lt;br /&gt;
** SiS Beta: 40 g carbs (important long races)&lt;br /&gt;
* Reduce oil intake which reduces nitric oxide&lt;br /&gt;
* Nitric oxide rich foods: rhubarb, celery, lettuce, beetroot, watermelon&lt;br /&gt;
* Sodium&lt;br /&gt;
** Suggested 300 - 600 mg/hr; up to 1 g/hr on very hot days.&lt;br /&gt;
** 2 tablets: 200 mg&lt;br /&gt;
* Caffeine&lt;br /&gt;
** 3 - 6 mg/kg -&amp;gt; ~ 400 mg (2 tablets)&lt;br /&gt;
** ~ 30 - 60 mins prior to race&lt;br /&gt;
** ~ 6 hours half life&lt;br /&gt;
* Turmeric&lt;br /&gt;
** Taken after exercise, can help with DOMS/recovery/anti-inflammatory&lt;br /&gt;
** Eat with black pepper or fat to aid absorption&lt;br /&gt;
* Creatine Monohydrate&lt;br /&gt;
** 5 - 10 g daily&lt;br /&gt;
* Magnesium Glycinate&lt;br /&gt;
** 3 g daily&lt;br /&gt;
* Collagen&lt;br /&gt;
** 10 - 15 g of hydrolyzed collagen peptides&lt;br /&gt;
** Collagen synthesis is dependent on Vitamin C&lt;br /&gt;
** 30 – 60 mins before strength training&lt;br /&gt;
** Do not take caffeine beforehand&lt;/div&gt;</summary>
		<author><name>NickPGSmith</name></author>
	</entry>
</feed>