<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software &#8211; LarryLai</title>
	<atom:link href="https://larrylai.com/category/it/software/feed/" rel="self" type="application/rss+xml" />
	<link>https://larrylai.com</link>
	<description>兼聽則明 偏聽則暗</description>
	<lastBuildDate>Sat, 02 Apr 2022 01:24:13 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://larrylai.com/wp-content/uploads/2017/03/larrylai_com-favicon.png</url>
	<title>Software &#8211; LarryLai</title>
	<link>https://larrylai.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>SSL Key Ownership</title>
		<link>https://larrylai.com/ssl-key-ownership/</link>
					<comments>https://larrylai.com/ssl-key-ownership/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Sun, 09 Feb 2020 07:39:51 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[certbot]]></category>
		<category><![CDATA[Jupiter-notebook]]></category>
		<category><![CDATA[letsencrypt]]></category>
		<category><![CDATA[ssl-key]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3775</guid>

					<description><![CDATA[<p>Issue: After receiving renewal notice from Let&#8217;s Encrypt for Jupyter server, go to the virtual machine hosting Jupyter and renew the key successfully. But cannot login to the jupyter notebook from https. Solution Remove the symbolic link of privkey.pem under /etc/letsencrypt/live/[mydomain]/privkey.pem recreate the symbolic link with the dedicated user running Jupyter notebook. Run command as [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/ssl-key-ownership/">SSL Key Ownership</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue:</strong><br />
After receiving renewal notice from Let&#8217;s Encrypt for Jupyter server, go to the virtual machine hosting Jupyter and renew the key successfully. But cannot login to the jupyter notebook from https.</p>
<p><strong>Solution</strong></p>
<ol>
<li style="list-style-type: none;">
<ol>
<li>Remove the symbolic link of privkey.pem under
<pre>/etc/letsencrypt/live/[mydomain]/privkey.pem</pre>
</li>
<li>recreate the symbolic link with the dedicated user running Jupyter notebook.</li>
<li>Run command as root:
<pre>systemctl restart jupyterhub</pre>
</li>
</ol>
</li>
</ol>
<p><strong>Tricks</strong></p>
<ol>
<li style="list-style-type: none;">
<ol>
<li style="list-style-type: none;">
<ul>
<li>As the jupyter server is run by the ownership of a dedicated user, after the renewal, the private key, i.e. privkey.pem must be owned by this user. However, I run the command:
<pre>certbot renew --standalone</pre>
<p>under root.</li>
<li>note that let&#8217;s encrypt command for CentOS 6 is quite different from CentOS7</li>
</ul>
</li>
</ol>
</li>
</ol>
<p><strong>Config</strong></p>
<ol>
<li style="list-style-type: none;">
<ul>
<li>OS: CentOS 7</li>
<li>Jupyter-notebook: 5.7.8</li>
</ul>
</li>
</ol>
<p>The post <a rel="nofollow" href="https://larrylai.com/ssl-key-ownership/">SSL Key Ownership</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/ssl-key-ownership/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>CSS List item style a) b)</title>
		<link>https://larrylai.com/css-list-item-style-a-b/</link>
					<comments>https://larrylai.com/css-list-item-style-a-b/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Tue, 07 Jan 2020 07:48:19 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Ordered List Item]]></category>
		<category><![CDATA[Text-indent]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3756</guid>

					<description><![CDATA[<p>Issue Default ordered list item style is decimal number, lower/upper alpha, lower/upper roman then followed by a dot. Thought it&#8217;s easy to change the dot to something like &#160; a) This is good 1st item &#160; b) This is good 2nd item. &#160; &#160; &#160; instead of: &#160; a. This is not good 1st item [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/css-list-item-style-a-b/">CSS List item style a) b)</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue</strong></p>
<p>Default ordered list item style is decimal number, lower/upper alpha, lower/upper roman then followed by a dot. Thought it&#8217;s easy to change the dot to something like<br />
&nbsp; a) This is good 1st item<br />
&nbsp; b) This is good 2nd item.   </p>
<p>&nbsp; &nbsp; &nbsp; instead of:<br />
&nbsp; a. This is not good 1st item<br />
&nbsp; b. This is not good 2nd item</p>
<p>However, there&#8217;s no simple way to change the style of ordered list item and remove the dot after the order number <code>&lt;ol&gt; &lt;li&gt;&lt;/li&gt;&lt;/ol&gt;</code>.<br />
As I got used to markdown&#8217;s convinence of auto numbering for ordered list items, don&#8217;t want to hard code the order into the list.</p>
<p><strong>Solution</strong></p>
<ol>
<li>Removing the default ordering number and using counter by creating counter variable  (say, list) like this<br />
&nbsp; <code>ol { list-style-type: none; counter-reset: list;}</code></li>
<li>Update counter variable for each \
<li> like this `ol&gt;li { counter-increment: list; } </li>
<li>Display the content of the new counter like this `ol&gt;li::before { content: counter(list, lower-alpha) &quot;) &quot;; }</li>
</ol>
<p><strong>Tricks</strong></p>
<ul>
<li>It&#8217;s a bit complex for multi-level ordered list, but the principle still applies</li>
<li>Some more has to be added to see hanging text like default ordered list display. This can be done by the following for modifying 2nd order level :
<pre>
ol ol {    
&nbsp; list-style-type: none;    
&nbsp; counter-reset: list;   
}     
ol ol>li::before {     
&nbsp; content: counter(list, lower-alpha) ") \00a0";
&nbsp; display: inline-block;
&nbsp; width: 1.5em;
&nbsp; text-align: right;
}    
ol ol>li {    
&nbsp; counter-increment: list;    
&nbsp; margin-left: .5em;    
&nbsp; text-indent: -1.5em;    
} 
</pre>
<p>Of course, several paramenters can be adjusted to fit into each individual case. These include margin-left, text-indent spaces and the counter number style, i.e. lower-alpha, lower-roman, decimal, etc.</p>
</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/css-list-item-style-a-b/">CSS List item style a) b)</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/css-list-item-style-a-b/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>MathJax Load Failed &#8211; WP Security Plugin</title>
		<link>https://larrylai.com/mathjax-load-failed-wp-security-plugin/</link>
					<comments>https://larrylai.com/mathjax-load-failed-wp-security-plugin/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Thu, 14 Nov 2019 09:42:55 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[MathJax]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP Security Plugin]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3745</guid>

					<description><![CDATA[<p>Issue After installing a WordPress security plugin call All-In-One WP Security, MathJax failed to load some JS including. Solution In the setting of the plugin, choose the tab Additional Firewall Rules Uncheck the option at the bottom, i.e. Advanced Character String Filter Config WordPress 5.3 All In One WP Security v4.4.2 MathJax-LaTex v1.3.11</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/mathjax-load-failed-wp-security-plugin/">MathJax Load Failed &#8211; WP Security Plugin</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue</strong><br />
After installing a WordPress security plugin call All-In-One WP Security, MathJax failed to load some JS including.</p>
<p><strong>Solution</strong>   </p>
<ul>
<li>In the setting of the plugin, choose the tab Additional Firewall Rules</li>
<li>Uncheck the option at the bottom, i.e. Advanced Character String Filter</li>
</ul>
<p><strong>Config</strong></p>
<ul>
<li>WordPress 5.3</li>
<li>All In One WP Security v4.4.2</li>
<li>MathJax-LaTex v1.3.11</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/mathjax-load-failed-wp-security-plugin/">MathJax Load Failed &#8211; WP Security Plugin</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/mathjax-load-failed-wp-security-plugin/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>CentOS VM Client Can&#8217;t Boot Up</title>
		<link>https://larrylai.com/centos-vm-client-cant-boot-up/</link>
					<comments>https://larrylai.com/centos-vm-client-cant-boot-up/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Fri, 30 Aug 2019 15:59:24 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[Boot Up]]></category>
		<category><![CDATA[CentOS7]]></category>
		<category><![CDATA[SELINUX]]></category>
		<category><![CDATA[VirtualBox6]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3695</guid>

					<description><![CDATA[<p>Issue VirtualBox client CentOS can&#8217;t boot up with error message: [FAILED] Failed to start Virtual Machine and Container Registration Service. [FAILED] Failed to start Login Service. Solution Disable SELINUX config with the following steps during boot up sequence: During Grub boot up stage, press &#039;e&#039; to edit grub sequence; Add systemd.unit=rescue.target to the end of [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/centos-vm-client-cant-boot-up/">CentOS VM Client Can&#8217;t Boot Up</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3>Issue</h3>
<p>VirtualBox client CentOS can&#8217;t boot up with error message: </p>
<ol>
<li>[FAILED] Failed to start Virtual Machine and Container Registration Service.</li>
<li>[FAILED] Failed to start Login Service.<br />
<img decoding="async" src="http://larrylai.com/wp-content/uploads/2019/08/Screenshot-2019-08-30-at-12.20.17-PM.png" alt="" /></li>
</ol>
<h3>Solution</h3>
<p>Disable SELINUX config with the following steps during boot up sequence:</p>
<ol>
<li>During Grub boot up stage, press <code>&#039;e&#039;</code> to edit grub sequence;</li>
<li>Add <code>systemd.unit=rescue.target</code> to the end of line with linux16 and boot with rescue mode;</li>
<li>Press ctrl+x to continue boot sequence</li>
</ol>
<h3>Config</h3>
<ul>
<li>CentOS 7 3.10</li>
<li>VirtualBox 6.0.10</li>
</ul>
<h3>Tricks</h3>
<ul>
<li>The cause of this boot up issue was difficult to found and the original setting of SELINUX was &#8216;permissive&#8217; not &#8216;enabled&#8217;. However, this issue may also be owing to bugs in VirtualBox 6.</li>
<li>During boot up process, by default the boot up is quiet, i.e. no system message will be displayed, only the boot up progress bar is seen. However, pressing <code>Esc</code> key will let you see the detail boot up messages.</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/centos-vm-client-cant-boot-up/">CentOS VM Client Can&#8217;t Boot Up</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/centos-vm-client-cant-boot-up/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Jupyter Notebook on Boot Automatically</title>
		<link>https://larrylai.com/3679-2/</link>
					<comments>https://larrylai.com/3679-2/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Fri, 16 Aug 2019 10:37:49 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Middleware]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[jupyter]]></category>
		<category><![CDATA[python]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3679</guid>

					<description><![CDATA[<p>Issue After making the file to create a system service for jupyter notebook running on CentOS so as to start jupyter server automatically during system start up, the service successfully loaded but systemctl status jupyter shown: Active: fail. Solution Be sure that jupyter-notebook is used instead of jupyter notebook, i.e. ExecStart=/[pathOfTheBinary]/jupyter-notebook or else it should [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/3679-2/">Jupyter Notebook on Boot Automatically</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue</strong><br />
After making the file to create a system service for <a href="https://jupyter.org" target="_blank" rel="noopener">jupyter notebook</a> running on CentOS so as to start jupyter server automatically during system start up, the service successfully loaded but <code>systemctl status jupyter</code> shown: <code>Active: fail</code>.</p>
<p><strong>Solution</strong><br />
Be sure that <code>jupyter-notebook</code> is used instead of <code>jupyter notebook</code>, i.e.<br />
ExecStart=/[pathOfTheBinary]/jupyter-notebook<br />
or else it should be bracketed with quotation marks to ensure the space between jupyter and notebook is allowed.</p>
<p><strong>Tricks</strong></p>
<ul>
<li>Be sure that the path of the jupyter binary is correct</li>
<li>Most of the info. on the web suggesting the content of jupyter.service file missed the fact that jupyter notebook is recommended to be run by non-root user, and it&#8217;s imperative that the location of jupyter configuration file must be specified in the jupyter.service file and not just the <code>User=[jupyterUser]</code> directive.</li>
</ul>
<p><strong>Config</strong></p>
<ul>
<li>CentOS: 7-6</li>
<li>jupyter: Anaconda3-5</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/3679-2/">Jupyter Notebook on Boot Automatically</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/3679-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PHP 7 &#038; Related Issues</title>
		<link>https://larrylai.com/php-7-related-issues/</link>
					<comments>https://larrylai.com/php-7-related-issues/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Tue, 12 Mar 2019 15:15:42 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Middleware]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Error]]></category>
		<category><![CDATA[PHP7]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3619</guid>

					<description><![CDATA[<p>Background After installing a WordPress plugin &#8211; WP Health, it&#8217;s reminded that PHP5 had no longer been supported since late 2018, thus there may be risk in all WordPress websites. Issue Since removing PHP5 (retrospectively known that it&#8217;s not necessary), and installed remi&#8217;s repository&#8217;s PHP72, some WordPress sites could not be accessed with message: &#8220;Internal [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/php-7-related-issues/">PHP 7 &#038; Related Issues</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Background</h2>



<p>After installing a WordPress plugin &#8211; WP Health, it&#8217;s reminded that PHP5 had no longer been supported since late 2018, thus there may be risk in all WordPress websites.</p>



<h2 class="wp-block-heading">Issue</h2>



<p>Since removing PHP5 (retrospectively known that it&#8217;s not necessary), and installed remi&#8217;s repository&#8217;s PHP72, some WordPress sites could not be accessed with message: &#8220;Internal Server Error. The server encountered an internal error or misconfiguration and was unable to complete your request.&#8221; Then using VirtualBox&#8217;s snapshot to roll back and finally got every site back to normal.</p>



<p>However, using re-check configuration of Virtualmin to see if there&#8217;s anything need to follow up, it&#8217;s known that mod_actions of Apache wasn&#8217;t enabled. Then after enabling mod_actions by uncommenting the following: </p>



<pre class="wp-block-preformatted">LoadModule actions_module modules/mod_action.so<br></pre>



<p>in /etc/httpd/conf.modules.d/00-base.conf, something weird that instead of executing php page, these pages were downloaded. Some members on forums suggested that the following in /etc/httpd/conf.d/php.conf should be commented out:</p>



<pre class="wp-block-preformatted">SetHandler application/x-httpd-php</pre>



<p>This really solved the problem of not executing php pages, but another weird thing happened. Some other websites couldn&#8217;t be accessed again with message: 500 Internal Server Error.</p>



<h2 class="wp-block-heading">Solution</h2>



<ol class="wp-block-list"><li>The permission of some html directories all granted to 775 and changed owner as apache.</li><li>In Virtualmin, Server Config -> Website Options -> PHP script execution mode must select FPM if mod_fpm is installed and enable.</li></ol>



<h2 class="wp-block-heading">Tricks</h2>



<p>Before comment out SetHandler application/x-httpd-php, directory permission was not a problem. What and how does something change the permission or why is the permission of html directories should be further granted to eliminated 500 Internal Server Error?</p>



<h2 class="wp-block-heading">Config</h2>



<ul class="wp-block-list"><li>WordPress 5.1</li><li>Virtualmin 6</li><li>PHP7.2 remi</li><li>CentOS7</li></ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/php-7-related-issues/">PHP 7 &#038; Related Issues</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/php-7-related-issues/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Centos7 Virtualmin Upgrade PHP7 MariaDB</title>
		<link>https://larrylai.com/centos7-virtualmin-upgrade-php7-mariadb/</link>
					<comments>https://larrylai.com/centos7-virtualmin-upgrade-php7-mariadb/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Thu, 28 Feb 2019 14:17:32 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[MariaDB10]]></category>
		<category><![CDATA[PHP7]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3604</guid>

					<description><![CDATA[<p>This is my first blog after upgrading to WordPress 5.1 from ver.4.8. Yes, I never tried 5.0 as it&#8217;s always risky to have a major upgrade to ver. x.0. The major difference is using Gutenberg as the post editor other than previous standard one or TinyMCE Advanced. For design of simplicity, Gutenberg is good. Background [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/centos7-virtualmin-upgrade-php7-mariadb/">Centos7 Virtualmin Upgrade PHP7 MariaDB</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>This is my first blog after upgrading to WordPress 5.1 from ver.4.8. Yes, I never tried 5.0 as it&#8217;s always risky to have a major upgrade to ver. x.0. The major difference is using Gutenberg as the post editor other than previous standard one or TinyMCE Advanced. For design of simplicity, Gutenberg is good.</p>



<h4 class="wp-block-heading">Background</h4>



<p>After installing WP Health, it&#8217;s shown that both MariaDB 5 (a default replacement of MySQL for CentOS7) and PHP5.6 are obsolete, i.e. no more formal support and no security patches will be released. It&#8217;s suggested to upgrade at least to MariaDB10 and PHP7.</p>



<p>Apart from security and support concern, it&#8217;s known that PHP7 has better performance than PHP5. </p>



<h4 class="wp-block-heading">Issue</h4>



<p>After upgrading, either the Virtualmin has problem in displaying submenu on the left panel or there&#8217;re &#8220;Internal Server Error&#8221; on some WordPress sites. It&#8217;s found out that during yum update MariaDB, it&#8217;s required to remove the old MariaDB5, however, for packages dependency needs, yum will at the same time remove Postfix and Virtualmin-base. If these 2 packages are reinstalled after upgrading to MariaDB, then WordPress has problem.</p>



<h4 class="wp-block-heading"> Solution</h4>



<p>Use rpm -e &#8211;nodeps to skip removal of Postfix and Virtualmin-base.</p>



<h4 class="wp-block-heading">Tricks</h4>



<p>After removal PHP5.6, list out all the related packages, e.g. php-mysqlnd, php-gd, etc. depending on my case, there&#8217;re some others. All these have to be reinstalled after installing PHP7.2 base package.</p>



<p>For upgrade of PHP7, never upgrade to the lastest PHP7.3 as some of the PHP packages do not have PHP7.3 compatible rpm, only have PHP7.2 compatible rpm. There&#8217;re many CentOS PHP7 upgrade info. on the web, but some are not good, after try and error, I use <a href="https://tecadmin.net/install-php7-on-centos7/" target="_blank" rel="noopener">TecAdmin.net&#8217;s</a> advice and got no problem.</p>



<h4 class="wp-block-heading">Config</h4>



<ul class="wp-block-list"><li>CentOS: 7.6</li><li>Virtualmin 6.06</li><li>WordPress 5.1</li><li>MariaDB: 10.1</li></ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/centos7-virtualmin-upgrade-php7-mariadb/">Centos7 Virtualmin Upgrade PHP7 MariaDB</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/centos7-virtualmin-upgrade-php7-mariadb/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cannot launch or remove iTunes from Mac High Sierra</title>
		<link>https://larrylai.com/cannot-launch-remove-itunes-mac-high-sierra/</link>
					<comments>https://larrylai.com/cannot-launch-remove-itunes-mac-high-sierra/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Thu, 28 Dec 2017 03:43:55 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[OSX]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3575</guid>

					<description><![CDATA[<p>Issue: when launching iTunes, it closed immediately after clicking the icon and appeared in half a second, then error screen appeared to ask for &#8220;ignore&#8221;, &#8220;report&#8221;, etc. Solution: Finder -&#62; Applications -&#62; iTunes.app right click -&#62; Get Info Expand &#8220;Sharing &#38; Permissions&#8221; click bottom right lock icon and input admin password select system permissions click [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/cannot-launch-remove-itunes-mac-high-sierra/">Cannot launch or remove iTunes from Mac High Sierra</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue:</strong></p>
<p>when launching iTunes, it closed immediately after clicking the icon and appeared in half a second, then error screen appeared to ask for &#8220;ignore&#8221;, &#8220;report&#8221;, etc.</p>
<p><strong>Solution:</strong></p>
<ol>
<li>Finder -&gt; Applications -&gt; iTunes.app</li>
<li>right click -&gt; Get Info</li>
<li>Expand &#8220;Sharing &amp; Permissions&#8221;</li>
<li>click bottom right lock icon and input admin password</li>
<li>select system permissions</li>
<li>click bottom wheel icon and select &#8220;Make system the owner&#8221;</li>
<li>install the latest iTunes pkg</li>
</ol>
<p><strong>Tricks:</strong></p>
<ul>
<li>Without step 6 above, no matter how uninstall, remove iTunes.app and reinstall the latest version, it will fail to restore it properly.</li>
<li>System always complains when simply removing iTunes.app by stating that iTunes is required by MacOS.</li>
<li>Even login as root in Terminal command, the directory iTunes.app cannot be removed.</li>
<li>Asking Apple support through <a href="https://discussions.apple.com/thread/8198527" target="_blank" rel="noopener">discussions.apple.com</a>, people only suggest reinstall the latest version of iTunes but no one suggest checking wheel icon under Sharing &amp; Permissions of Get Info window.</li>
</ul>
<p><strong>Config:</strong></p>
<ul>
<li>MacOS: High Sierra 10.13.2</li>
<li>iTunes:  12.7.2.60</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/cannot-launch-remove-itunes-mac-high-sierra/">Cannot launch or remove iTunes from Mac High Sierra</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/cannot-launch-remove-itunes-mac-high-sierra/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Mail Server Already Exists error iPhone iOS 11</title>
		<link>https://larrylai.com/mail-server-already-exists-error-iphone-ios-11/</link>
					<comments>https://larrylai.com/mail-server-already-exists-error-iphone-ios-11/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Wed, 20 Dec 2017 04:27:54 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[System]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=3568</guid>

					<description><![CDATA[<p>Issue: When open an email box, error appeared on iPhone warning: Cannot verify Mail Server Identity. One solution for this problem is to delete that mail account on iPhone and add it back. However, after account deleted, I could not add it back with the following warning: Mail Account already exists Solution: Logout iCloud on [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/mail-server-already-exists-error-iphone-ios-11/">Mail Server Already Exists error iPhone iOS 11</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue:</strong></p>
<p>When open an email box, error appeared on iPhone warning: Cannot verify Mail Server Identity. One solution for this problem is to delete that mail account on iPhone and add it back. However, after account deleted, I could not add it back with the following warning:</p>
<p>Mail Account already exists</p>
<p><strong>Solution:</strong></p>
<p>Logout iCloud on the iPhone</p>
<p>Add the deleted mail accounts</p>
<p><strong>Tricks:</strong></p>
<p>In previous version of iOS, when it showed that the system could not verify the mail server, it was easy to fix by accepting the certificate of the mail server. In my case, the certificate was expired, and I did not want to pay for SSL certificate renewal.</p>
<p>After deleting the mail account, actually it will not be listed on the account list. Thus, there is no clue why the error message was prompted.</p>
<p><strong>Config:</strong></p>
<ul>
<li>hardware: iPhone 6S</li>
<li>iOS:  11.2.1</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/mail-server-already-exists-error-iphone-ios-11/">Mail Server Already Exists error iPhone iOS 11</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/mail-server-already-exists-error-iphone-ios-11/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress Duplicator Plugin Server Error 500</title>
		<link>https://larrylai.com/wordpress-duplicator-plugin-server-error-500/</link>
					<comments>https://larrylai.com/wordpress-duplicator-plugin-server-error-500/#respond</comments>
		
		<dc:creator><![CDATA[larry]]></dc:creator>
		<pubDate>Fri, 21 Apr 2017 15:44:49 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Software]]></category>
		<guid isPermaLink="false">http://larrylai.com/?p=2900</guid>

					<description><![CDATA[<p>Issue: During scanning stage of running the Duplicator plugin on a WordPress site, there was an error: Server Error 500. Solution: Modify /etc/php.ini file to increase memory: memory_limit = 256M from 128M Tricks: Even there is error during the scanning stage, Duplicator still allowed building step to proceed and showing no error. Error 500 actually [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://larrylai.com/wordpress-duplicator-plugin-server-error-500/">WordPress Duplicator Plugin Server Error 500</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Issue:</strong></p>
<p>During scanning stage of running the Duplicator plugin on a WordPress site, there was an error: Server Error 500.</p>
<p><strong>Solution:</strong></p>
<p>Modify /etc/php.ini file to increase memory:</p>
<p style="padding-left: 30px;"><code>memory_limit = 256M</code></p>
<p><code></code>from 128M</p>
<p><strong>Tricks:</strong></p>
<p>Even there is error during the scanning stage, Duplicator still allowed building step to proceed and showing no error.</p>
<p>Error 500 actually does not tell anything informative</p>
<p>No special message was logged in Apache web server</p>
<p><strong>Config:</strong></p>
<ul>
<li>PHP               5.6.30</li>
<li>WordPress     4.7.4</li>
<li>Duplicator     1.2.4</li>
</ul>
<p>The post <a rel="nofollow" href="https://larrylai.com/wordpress-duplicator-plugin-server-error-500/">WordPress Duplicator Plugin Server Error 500</a> appeared first on <a rel="nofollow" href="https://larrylai.com">LarryLai</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://larrylai.com/wordpress-duplicator-plugin-server-error-500/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
