<?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>Miroslav Mirkov</title>
	<atom:link href="https://mirkov.net/feed/" rel="self" type="application/rss+xml" />
	<link>https://mirkov.net</link>
	<description>Personal Blog</description>
	<lastBuildDate>Thu, 15 May 2025 18:47:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mirkov.net/wp-content/uploads/2025/05/cropped-cropped-Screenshot_20250413_215947-32x32.png</url>
	<title>Miroslav Mirkov</title>
	<link>https://mirkov.net</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Reducing Slack&#8217;s Console Logging on Linux</title>
		<link>https://mirkov.net/slack-for-linux-disable-verbose-logging/</link>
					<comments>https://mirkov.net/slack-for-linux-disable-verbose-logging/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Thu, 15 May 2025 13:46:52 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=1109</guid>

					<description><![CDATA[If you&#8217;re looking to minimize the excessive console output generated by the Slack app on Linux, you can do so by adding the &#8220;--silen" flag to the application&#8217;s launch command. For example: This simple tweak helps keep your terminal or system logs cleaner, especially when running Slack from a launcher or custom script.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">If you&#8217;re looking to minimize the excessive console output generated by the Slack app on Linux, you can do so by adding the &#8220;<code>--silen"</code> flag to the application&#8217;s launch command. For example:</p>



<pre class="wp-block-code"><code>slack --silent</code></pre>



<p class="wp-block-paragraph">This simple tweak helps keep your terminal or system logs cleaner, especially when running Slack from a launcher or custom script.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/slack-for-linux-disable-verbose-logging/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VirtualBox &#8211; guest VM time sync</title>
		<link>https://mirkov.net/virtualbox-guest-vm-time-sync/</link>
					<comments>https://mirkov.net/virtualbox-guest-vm-time-sync/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Fri, 31 Jan 2025 13:26:18 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=1094</guid>

					<description><![CDATA[When operating a guest virtual machine (VM) in VirtualBox, ensuring efficient time synchronization is crucial for maintaining consistency and performance. One effective way to reduce the time it takes for a guest VM to sync its clock with the host system is by adjusting the time synchronization threshold. By setting an optimal threshold, you prompt [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">When operating a guest virtual machine (VM) in VirtualBox, ensuring efficient time synchronization is crucial for maintaining consistency and performance. One effective way to reduce the time it takes for a guest VM to sync its clock with the host system is by adjusting the time synchronization threshold. By setting an optimal threshold, you prompt the VM to sync more frequently, preventing significant time drift.</p>



<p class="wp-block-paragraph">To achieve this, you can employ the <code>VBoxManage</code> command from the host machine. The command to reduce the time sync threshold is as follows:</p>



<pre class="wp-block-code"><code>vboxmanage guestproperty set {VM_NAME_HERE} "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold" 30000</code></pre>



<p class="wp-block-paragraph">Replace <code>{VM_NAME_HERE}</code> with the name of your specific virtual machine. The value <code>30000</code> represents the threshold in milliseconds, meaning if the time drift exceeds 30 seconds, the guest additions time sync service adjusts the VM’s clock. By decreasing the threshold, you ensure more frequent synchronization, enhancing application performance and reliability in time-sensitive environments.</p>



<p class="wp-block-paragraph"><strong>Note: VirtualBox Guest Additions needs to be installed on the guest machine. </strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/virtualbox-guest-vm-time-sync/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Enforce SSH or SCP password authentication</title>
		<link>https://mirkov.net/force-ssh-scp-password-authentcation/</link>
					<comments>https://mirkov.net/force-ssh-scp-password-authentcation/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Thu, 20 Jul 2023 15:26:26 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=1036</guid>

					<description><![CDATA[Use the bellow ssh/scp options in order to enforce password (keyboard-interactive) authentication:]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Use the bellow ssh/scp options in order to enforce password (keyboard-interactive) authentication: </p>



<pre class="wp-block-code"><code>ssh -o PubkeyAuthentication=no user@example.com
scp -o PubkeyAuthentication=no user@example.com

or

ssh -o PreferredAuthentications="password" user@example.com
scp -o PreferredAuthentications="password" user@example.com</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/force-ssh-scp-password-authentcation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to connect without a password via ssh?</title>
		<link>https://mirkov.net/how-to-connect-without-a-password-via-ssh/</link>
					<comments>https://mirkov.net/how-to-connect-without-a-password-via-ssh/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Wed, 03 May 2023 17:08:03 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=1028</guid>

					<description><![CDATA[To connect without a password via SSH, you can use public key authentication. Public key authentication is a secure and convenient way to log in to a remote server without entering a password each time. Here&#8217;s a step-by-step guide to setting up passwordless SSH authentication: 1. Generate SSH key pair: On your local machine, generate [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">To connect without a password via SSH, you can use public key authentication. Public key authentication is a secure and convenient way to log in to a remote server without entering a password each time.</p>



<p class="wp-block-paragraph">Here&#8217;s a step-by-step guide to setting up passwordless SSH authentication:</p>



<p class="wp-block-paragraph">1. Generate SSH key pair: On your local machine, generate an SSH key pair if you haven&#8217;t already done so. Open a terminal and run the following command:</p>



<pre class="wp-block-code"><code>ssh-keygen -t rsa</code></pre>



<p class="wp-block-paragraph">This will generate a pair of keys: a private key (usually <code><strong>id_rsa</strong></code>) and a public key (usually <code><strong>id_rsa.pub</strong></code>).</p>



<p class="wp-block-paragraph">2. Copy the public key to the remote server: Use the following command to copy your public key to the remote server you want to connect to:</p>



<pre class="wp-block-code"><code>ssh-copy-id username@remote_host</code></pre>



<p class="wp-block-paragraph">Replace <code>username</code> with your username on the remote server and <code>remote_host</code> with the hostname or IP address of the remote server. You will be prompted for your password on the remote server.</p>



<p class="wp-block-paragraph">If the <code>ssh-copy-id</code> command is not available on your system, you can manually append the content of your public key (<code><strong>id_rsa.pub</strong></code>) to the <code><strong>~/.ssh/authorized_keys</strong></code> file on the remote server.</p>



<p class="wp-block-paragraph">3. Configure SSH on the remote server: SSH server configuration should allow public key authentication. On the remote server, open the SSH server configuration file (usually located at <code>/etc/ssh/sshd_config</code>) using a text editor. </p>



<p class="wp-block-paragraph">Locate the line that starts with <code><strong>#PubkeyAuthentication yes</strong></code> and remove the leading <code><strong>#</strong></code> to uncomment the line. If the line doesn&#8217;t exist, you can add it.</p>



<p class="wp-block-paragraph">Save the changes and exit the text editor.</p>



<p class="wp-block-paragraph">4. Restart SSH service: Restart the SSH service on the remote server to apply the changes you made to the configuration file. The command to restart SSH depends on your operating system. For example, on Ubuntu, you can use:</p>



<pre class="wp-block-code"><code>sudo service ssh restart</code></pre>



<p class="wp-block-paragraph">Alternatively, you can use the following command if you are using a system with systemd:</p>



<pre class="wp-block-code"><code>sudo systemctl restart sshd</code></pre>



<p class="wp-block-paragraph">5. Test the passwordless SSH login: Try to SSH into the remote server without a password:</p>



<pre class="wp-block-code"><code>ssh username@remote_host</code></pre>



<p class="wp-block-paragraph">Replace <code>username</code> with your username on the remote server and <code>remote_host</code> with the hostname or IP address of the remote server. If everything is set up correctly, you should be able to log in without entering a password.</p>



<p class="wp-block-paragraph">That&#8217;s it! You have successfully set up passwordless SSH authentication. Now you can log in to the remote server without typing your password each time.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/how-to-connect-without-a-password-via-ssh/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>NextCloud &#8211; Improve Images preview and reduce CPU load</title>
		<link>https://mirkov.net/nextcloud-improve-images-preview-and-reduce-cpu-load/</link>
					<comments>https://mirkov.net/nextcloud-improve-images-preview-and-reduce-cpu-load/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Sun, 12 Feb 2023 13:33:48 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=1012</guid>

					<description><![CDATA[Here&#8217;s a quick guide on how to improve images preview and reduce CPU usage of NextCloud while browsing your directories containing images. First you&#8217;ll need to install the following NextCloud App: Preview Generator Then you&#8217;ll have to run the following &#8220;occ&#8221; command in order to optimize the size of the generated thumbnails: Once the Preview [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Here&#8217;s a quick guide on how to improve images preview and reduce CPU usage of NextCloud while browsing your directories containing images.</p>



<p class="wp-block-paragraph">First you&#8217;ll need to install the following NextCloud App: <a rel="noreferrer noopener" href="https://github.com/nextcloud/previewgenerator" data-type="URL" data-id="https://github.com/nextcloud/previewgenerator" target="_blank">Preview Generator</a></p>



<p class="wp-block-paragraph">Then you&#8217;ll have to run the following &#8220;occ&#8221; command in order to optimize the size of the generated thumbnails:</p>



<pre class="wp-block-code"><code>php ./occ config:app:set previewgenerator squareSizes --value="32 256"
php ./occ config:app:set previewgenerator widthSizes  --value="256 384"
php ./occ config:app:set previewgenerator heightSizes --value="256"
php ./occ config:system:set preview_max_x --value 2048
php ./occ config:system:set preview_max_y --value 2048
php ./occ config:system:set jpeg_quality --value 60
php ./occ config:app:set preview jpeg_quality --value="60"</code></pre>



<p class="wp-block-paragraph">Once the Preview Generator app has been installed and activated, execute the following &#8220;ooc&#8221; command: </p>



<pre class="wp-block-code"><code>php ./occ preview:generate-all</code></pre>



<p class="wp-block-paragraph">This will scan all of your files and will genarate thumbnails. You can add the above command to your nextcloud user&#8217;s cron to be executed every 10 minutes eg:</p>



<pre class="wp-block-code"><code>*/10 * * * * php /path/to/your/nextcloud/occ preview:generate-all<br /></code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/nextcloud-improve-images-preview-and-reduce-cpu-load/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Enforce SSH Connections Alive</title>
		<link>https://mirkov.net/enforce-ssh-connections-alive%ef%bf%bc/</link>
					<comments>https://mirkov.net/enforce-ssh-connections-alive%ef%bf%bc/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Thu, 06 Oct 2022 14:06:33 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=992</guid>

					<description><![CDATA[Here are a couple of option you have in order to keep the SSH connection alive The above will instruct the &#8216;ssh&#8217; client to sent &#8220;alive&#8221; packets every 60 seconds. The following will set the same as default (by adding the option to your ssh client&#8217;s configuration file) for each ssh connection.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Here are a couple of option you have in order to keep the SSH connection alive</p>



<pre class="wp-block-code"><code>$ ssh -o <strong>ServerAliveInterval=60</strong> &lt;user&gt;@&lt;ip&gt;</code></pre>



<p class="wp-block-paragraph">The above will instruct the &#8216;ssh&#8217; client to sent &#8220;alive&#8221; packets every 60 seconds. </p>



<p class="wp-block-paragraph">The following will set the same as default (by adding the option to your ssh client&#8217;s configuration file) for each ssh connection.</p>



<pre class="wp-block-code"><code>$echo -e "Host *\n\tServerAliveInterval 60" &gt;&gt; $HOME/.ssh/config
</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/enforce-ssh-connections-alive%ef%bf%bc/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Traccar &#8211; fix &#8220;The write format 1 is smaller than the supported format 2&#8221;</title>
		<link>https://mirkov.net/traccar-fix-the-write-format-1-is-smaller-than-the-supported-format-2/</link>
					<comments>https://mirkov.net/traccar-fix-the-write-format-1-is-smaller-than-the-supported-format-2/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Tue, 27 Sep 2022 14:50:24 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=990</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[
<pre class="wp-block-code"><code>systemctl stop traccar
mkdir /opt/FIXH2
cd /opt/FIXH2
wget https://h2database.com/h2-2019-10-14.zip
wget https://github.com/h2database/h2database/releases/download/version-2.0.206/h2-2022-01-04.zip
unzip h2-2019-10-14.zip
mv h2 ./h2.2019
unzip h2-2022-01-04.zip
mv h2 ./h2.2022
find ./ -name "*.jar"
cp -p /opt/traccar.4.13/data/database.mv.db /opt/FIXH2
java -cp ./h2.2019/bin/h2-1.4.200.jar org.h2.tools.Script -url jdbc:h2:./database -user sa -script backup.zip -options compression zip
java -cp ./h2.2022/bin/h2-2.0.206.jar org.h2.tools.RunScript -url jdbc:h2:./database_new -user sa -script backup.zip -options compression zip
cp ./database_new.mv.db /opt/traccar/data/database.mv.db
systemctl start traccar</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/traccar-fix-the-write-format-1-is-smaller-than-the-supported-format-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>HOWTO extract Nginx logs for the past hour/s</title>
		<link>https://mirkov.net/howto-extract-nginx-logs-from-the-past-hour-s/</link>
					<comments>https://mirkov.net/howto-extract-nginx-logs-from-the-past-hour-s/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Thu, 03 Feb 2022 20:14:28 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=984</guid>

					<description><![CDATA[Here&#8217;s a quick and handy &#8220;awk&#8221; snippet to extract data from Nginx&#8217;s access or error log file for the past hour/s. This example shows how to extract data from /var/log/nginx/access.log for the past 60 minutes &#8211; &#8216;-60 min&#8217;.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Here&#8217;s a quick and handy &#8220;awk&#8221; snippet to extract data from Nginx&#8217;s access or error log file for the past hour/s. </p>



<pre class="wp-block-code"><code># awk -v d1="$(date --date '-60 min' '+%d/%b/%Y:%T')" '{gsub(/^&#91;\&#91;\t]+/, "", $4);}; $4 &gt; d1' /var/log/nginx/access.log</code></pre>



<p class="wp-block-paragraph">This example shows how to extract data from <strong>/var/log/nginx/access.log</strong> for the past 60 minutes &#8211; <strong>&#8216;-60 min&#8217;</strong>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/howto-extract-nginx-logs-from-the-past-hour-s/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>HOWTO exclude specific packages from being updated via yum or dnf</title>
		<link>https://mirkov.net/howto-exclude-specific-packages-from-being-updated-via-yum-or-dnf/</link>
					<comments>https://mirkov.net/howto-exclude-specific-packages-from-being-updated-via-yum-or-dnf/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Wed, 02 Feb 2022 17:46:08 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=981</guid>

					<description><![CDATA[Here are a few examples on how to exclude some packages from being updated during yum/dnf update: Exclude all kernel related packages during update: Exclude gcc and java: Exclude all gcc and php related packages: In order to permanently exclude/disable updating of some specific packages you might want to update your dnf.conf or yum.conf eg:]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Here are a few examples on how to exclude some packages from being updated during yum/dnf update: </p>



<pre class="wp-block-code"><code># yum update --exclude=PACKAGENAME </code></pre>



<p class="wp-block-paragraph">Exclude all kernel related packages during update: </p>



<pre class="wp-block-code"><code># yum update --exclude=kernel*</code></pre>



<p class="wp-block-paragraph">Exclude gcc and java:</p>



<pre class="wp-block-code"><code># yum update --exclude=gcc,java</code></pre>



<p class="wp-block-paragraph">Exclude all gcc and php related packages: </p>



<pre class="wp-block-code"><code># yum update --exclude=gcc* --exclude=php*
</code></pre>



<p class="wp-block-paragraph">In order to permanently exclude/disable updating of some specific packages you might want to update your <strong>dnf.conf</strong> or <strong>yum.conf</strong> eg:</p>



<pre class="wp-block-code"><code>&#91;main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exclude=kernel* php*             &lt;---</code></pre>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/howto-exclude-specific-packages-from-being-updated-via-yum-or-dnf/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>log4j / Log4Shell</title>
		<link>https://mirkov.net/log4j/</link>
					<comments>https://mirkov.net/log4j/#respond</comments>
		
		<dc:creator><![CDATA[Mirkov]]></dc:creator>
		<pubDate>Mon, 13 Dec 2021 15:45:08 +0000</pubDate>
				<category><![CDATA[HowTo]]></category>
		<guid isPermaLink="false">https://mirkov.net/?p=973</guid>

					<description><![CDATA[Well, the log4j &#8220;situation&#8221; escalated quickly: https://gist.github.com/SwitHak/b66db3a06c2955a9cb71a8718970c592 Happy patching everyone.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Well, the log4j &#8220;situation&#8221; escalated quickly:</p>



<p class="wp-block-paragraph"><a href="https://gist.github.com/SwitHak/b66db3a06c2955a9cb71a8718970c592">https://gist.github.com/SwitHak/b66db3a06c2955a9cb71a8718970c592</a></p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">Happy patching everyone. </p>
]]></content:encoded>
					
					<wfw:commentRss>https://mirkov.net/log4j/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
