<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by VSYS Host on Medium]]></title>
        <description><![CDATA[Stories by VSYS Host on Medium]]></description>
        <link>https://medium.com/@vsys.host?source=rss-29c64ed2945c------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*7BBgBLoz1f4uJ1bUNFYi-w.png</url>
            <title>Stories by VSYS Host on Medium</title>
            <link>https://medium.com/@vsys.host?source=rss-29c64ed2945c------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 03 Apr 2026 19:01:16 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@vsys.host/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[How to Back Up, Import, and Migrate Apache Kafka Data on Ubuntu 18.04]]></title>
            <link>https://medium.com/@vsys.host/how-to-back-up-import-and-migrate-apache-kafka-data-on-ubuntu-18-04-ad70d9b8eaad?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/ad70d9b8eaad</guid>
            <category><![CDATA[data-engineering]]></category>
            <category><![CDATA[apache-kafka]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[vsys]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Fri, 03 Apr 2026 12:26:10 GMT</pubDate>
            <atom:updated>2026-04-03T12:26:10.092Z</atom:updated>
            <content:encoded><![CDATA[<p>Backing up Kafka data is critical for recovery after failures, user errors, or corrupted data. Data dumps of topics and cluster state allow full restoration and migration between servers.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DsbuMegh2sul8fu4hwu6ug.png" /></figure><p>This guide covers backup, restore, and migration of Kafka and ZooKeeper data.</p><h3>Requirements</h3><ul><li>Ubuntu 18.04 server (≥4GB RAM)</li><li>Apache Kafka installed</li><li>OpenJDK 8</li><li>sudo user</li><li>Optional: second server for migration</li></ul><h3>Step 1 — Prepare Data</h3><p>Kafka stores data in:</p><ul><li>Topics → collections of messages</li><li>Messages → basic data units</li></ul><p>Create test topics/messages before backup.</p><h3>Step 2 — Backup ZooKeeper Data</h3><p>ZooKeeper stores:</p><ul><li>cluster state</li><li>consumer data</li><li>broker metadata</li></ul><p>Backup ZooKeeper to preserve cluster consistency.</p><h3>Step 3 — Backup Kafka Data</h3><p>Export:</p><ul><li>topics</li><li>messages</li></ul><p>Use data dumps for full backup and recovery.</p><h3>Step 4 — Restore ZooKeeper</h3><p>Restore ZooKeeper state before Kafka to ensure cluster integrity.</p><h3>Step 5 — Restore Kafka Data</h3><p>Re-import:</p><ul><li>topics</li><li>message data</li></ul><p>This rebuilds the Kafka instance from backup.</p><h3>Step 6 — Verify</h3><p>Check:</p><ul><li>topics exist</li><li>messages are readable</li><li>consumers work correctly</li></ul><h3>Step 7 — Migrate to Another Server</h3><ul><li>Transfer backup to new server</li><li>Restore ZooKeeper</li><li>Restore Kafka data</li></ul><p>Used when:</p><ul><li>hardware failure</li><li>infrastructure upgrade/downgrade</li></ul><h3>Summary</h3><ul><li>Backup = Kafka data + ZooKeeper state</li><li>Restore order matters (ZooKeeper → Kafka)</li><li>Migration = restore on new server</li></ul><p>Ensures data recovery and seamless infrastructure changes.</p><p>Full guide 👉<a href="https://vsys.host/how-to/how-to-back-up-import-and-migrate-your-apache-kafka-data-on-ubuntu-18-04">https://vsys.host/how-to/how-to-back-up-import-and-migrate-your-apache-kafka-data-on-ubuntu-18-04</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ad70d9b8eaad" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Deploy an NGINX Proxy on Kubernetes Using a Helm Chart]]></title>
            <link>https://medium.com/@vsys.host/how-to-deploy-an-nginx-proxy-on-kubernetes-using-a-helm-chart-1e3a3d2947a8?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/1e3a3d2947a8</guid>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[nginx]]></category>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[helm]]></category>
            <category><![CDATA[kubernetes]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Tue, 31 Mar 2026 13:28:41 GMT</pubDate>
            <atom:updated>2026-03-31T13:28:41.128Z</atom:updated>
            <content:encoded><![CDATA[<p>Helm is a package manager for Kubernetes that allows defining, installing, and managing applications using reusable charts.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VIwK2H2Q3WVduqk_Sz7S0w.png" /></figure><p>This setup deploys an NGINX proxy with configurable backend routing via Helm values.</p><h3>Requirements</h3><ul><li>Helm installed</li><li>Running Kubernetes cluster (e.g., Minikube)</li></ul><p>Start cluster if needed:</p><pre>minikube start</pre><h3>Step 1 — Create Helm Chart</h3><pre>helm create nginx-proxy<br>cd nginx-proxy</pre><h3>Step 2 — Configure NGINX (ConfigMap)</h3><pre>apiVersion: v1<br>kind: ConfigMap<br>metadata:<br>  name: nginx-config<br>data:<br>  nginx.conf: |<br>    server {<br>        listen 80;<br><br>        location / {<br>            proxy_pass $PROXY_URL;<br>            proxy_set_header Host $host;<br>            proxy_set_header X-Real-IP $remote_addr;<br>            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br>            proxy_set_header X-Forwarded-Proto $scheme;<br>        }<br>    }</pre><p>The proxy forwards requests to a backend defined by PROXY_URL.</p><h3>Step 3 — Deployment</h3><p>Key configuration:</p><pre>env:<br>- name: PROXY_URL<br>  value: {{ .Values.proxyUrl | quote }}</pre><p>The NGINX config is mounted to:</p><pre>/etc/nginx/nginx.conf</pre><h3>Step 4 — Service (NodePort)</h3><pre>type: NodePort<br>nodePort: {{ .Values.nodePort }}</pre><h3>Step 5 — Values</h3><pre>proxyUrl: &quot;http://default.proxy.url&quot;<br>nodePort: 30000</pre><h3>Step 6 — Deploy</h3><pre>helm install my-nginx-proxy ./nginx-proxy \<br>--set proxyUrl=&quot;http://your.proxy.url&quot; \<br>--set nodePort=32000</pre><p>Check resources:</p><pre>kubectl get deployments<br>kubectl get services</pre><h3>Step 7 — Access</h3><pre>minikube service my-nginx-proxy --url</pre><h3>Update / Remove</h3><p>Update:</p><pre>helm upgrade my-nginx-proxy ./nginx-proxy \<br>--set proxyUrl=&quot;http://new.proxy.url&quot; \<br>--set nodePort=32001</pre><p>Remove:</p><pre>helm uninstall my-nginx-proxy</pre><h3>Summary</h3><ul><li>ConfigMap → defines NGINX behavior</li><li>Values → control backend and port</li><li>Helm → manages deployment lifecycle</li></ul><p>This allows changing proxy configuration without modifying Kubernetes manifests.</p><p>Full guide 👉 <a href="https://vsys.host/how-to/how-to-create-and-deploy-an-nginx-proxy-helm-chart-on-kubernetes">https://vsys.host/how-to/how-to-create-and-deploy-an-nginx-proxy-helm-chart-on-kubernetes</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1e3a3d2947a8" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Install .deb Files on Ubuntu]]></title>
            <link>https://medium.com/@vsys.host/how-to-install-deb-files-on-ubuntu-d42b2710a690?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/d42b2710a690</guid>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[ubuntu]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[vsys]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Fri, 27 Mar 2026 11:47:27 GMT</pubDate>
            <atom:updated>2026-03-27T11:47:27.525Z</atom:updated>
            <content:encoded><![CDATA[<p>Ubuntu uses .deb packages as the standard format for software distribution. While many packages are installed via repositories, there are cases where you need to install a .deb file manually.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xRRyI33YYvaj1hElMd3QHQ.png" /></figure><p>This guide outlines the common methods for installing .deb packages.</p><h3>Using dpkg</h3><p>The dpkg tool is the core package manager for Debian-based systems:</p><pre>sudo dpkg -i package.deb</pre><p>If dependencies are missing, fix them with:</p><pre>sudo apt install -f</pre><h3>Using apt</h3><p>You can install .deb files directly with apt, which also handles dependencies automatically:</p><pre>sudo apt install ./package.deb</pre><h3>GUI Installation</h3><p>Ubuntu also supports graphical installation. Simply double-click the .deb file and open it with the Software Center to install.</p><h3>Summary</h3><p>There are three main approaches:</p><ul><li>dpkg — manual installation</li><li>apt — automatic dependency resolution</li><li>GUI — user-friendly method</li></ul><p>Each method fits different workflows, from scripting to desktop usage.</p><p>📘 Full guide:<br> <a href="https://vsys.host/how-to/how-to-install-deb-files-on-ubuntu">https://vsys.host/how-to/how-to-install-deb-files-on-ubuntu</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d42b2710a690" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Restart a Linux Server]]></title>
            <link>https://medium.com/@vsys.host/how-to-restart-a-linux-server-a02d60d3d5b3?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/a02d60d3d5b3</guid>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[server-management]]></category>
            <category><![CDATA[sysadmin]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Tue, 24 Mar 2026 12:46:15 GMT</pubDate>
            <atom:updated>2026-03-24T12:46:15.008Z</atom:updated>
            <content:encoded><![CDATA[<p>Restarting a Linux server is a basic but essential task for system administration. It is commonly required for maintenance, applying updates, troubleshooting issues, or freeing system resources.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Nf58WA1MRgIaRQ7q4qEdhQ.png" /></figure><h3>Common Restart Methods</h3><h3>1. Using reboot</h3><p>The simplest and most common method:</p><pre>sudo reboot</pre><p>This command immediately restarts the system.</p><h3>2. Using shutdown</h3><p>To restart the system using shutdown:</p><pre>sudo shutdown -r now</pre><p>You can also schedule a restart by replacing now with a specific time (hh:mm).</p><h3>3. Using systemctl</h3><p>For systems running systemd:</p><pre>sudo systemctl reboot</pre><p>This command provides more control over system services.</p><h3>4. Using init (Legacy)</h3><p>Older systems using SysVinit can restart with:</p><pre>sudo init 6</pre><p>Runlevel 6 corresponds to a system reboot.</p><h3>Remote Restart via SSH</h3><p>You can restart a remote server by connecting via SSH:</p><pre>ssh user@server_ip</pre><p>Then execute any of the reboot commands.</p><h3>Summary</h3><p>Linux provides multiple ways to restart a system:</p><ul><li>reboot — simplest method</li><li>shutdown -r — supports scheduling</li><li>systemctl reboot — modern systemd approach</li><li>init 6 — legacy method</li></ul><p>Each method serves the same purpose, but the choice depends on your system and use case.</p><p>📘 Full guide:<br> <a href="https://vsys.host/how-to/how-to-restart-reboot-linux-server">https://vsys.host/how-to/how-to-restart-reboot-linux-server</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a02d60d3d5b3" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Fix “wget: command not found” in Linux]]></title>
            <link>https://medium.com/@vsys.host/how-to-fix-wget-command-not-found-in-linux-4cb9770adb2d?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/4cb9770adb2d</guid>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[linux-admin]]></category>
            <category><![CDATA[sysadmin]]></category>
            <category><![CDATA[wget]]></category>
            <category><![CDATA[devops]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Thu, 19 Mar 2026 15:08:13 GMT</pubDate>
            <atom:updated>2026-03-19T15:08:13.699Z</atom:updated>
            <content:encoded><![CDATA[<p>The wget: command not found error appears when the system cannot locate the wget executable. This typically happens when the utility is either not installed or not available in the system PATH.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*x-1nlztsiOTcqHMEhYwZxg.png" /></figure><h3>Step 1: Check if wget is Installed</h3><p>Run:</p><pre>which wget</pre><p>If no path is returned, wget is not installed.</p><p>You can also try:</p><pre>wget</pre><p>If the command is missing, the system will return an error.</p><h3>Step 2: Install wget</h3><p>For Debian-based systems:</p><pre>sudo apt update<br>sudo apt install wget</pre><p>For RHEL-based systems:</p><pre>sudo dnf install wget -y</pre><p>After installation, verify:</p><pre>wget --version</pre><h3>Step 3: Fix PATH Issues</h3><p>If wget is installed but still not found, it may not be in your PATH.</p><p>Add it manually:</p><pre>export PATH=$PATH:/usr/local/bin</pre><p>Then reload your shell:</p><pre>source ~/.bashrc</pre><h3>Step 4: Troubleshooting</h3><p>If installation fails:</p><ul><li>Check internet connection</li><li>Update package repositories (apt update, dnf update)</li><li>Ensure proper permissions</li><li>Review terminal logs for errors</li></ul><h3>Summary</h3><p>To fix the error:</p><ul><li>Install wget if missing</li><li>Ensure it’s available in PATH</li><li>Verify with wget --version</li></ul><p>Once configured, wget can be used for file downloads, automation, and API interactions.</p><p>📘 Full guide:<br> <a href="https://vsys.host/how-to/how-to-fix-the-wget-command-not-found-error">https://vsys.host/how-to/how-to-fix-the-wget-command-not-found-error</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4cb9770adb2d" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Enable and Use firewalld on CentOS 7]]></title>
            <link>https://medium.com/@vsys.host/how-to-enable-and-use-firewalld-on-centos-7-9bc8c6ec4a83?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/9bc8c6ec4a83</guid>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[centos7]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[firewall]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Tue, 17 Mar 2026 15:13:31 GMT</pubDate>
            <atom:updated>2026-03-17T15:13:31.024Z</atom:updated>
            <content:encoded><![CDATA[<p>firewalld is the default firewall management tool in CentOS 7. It allows administrators to configure network filtering rules dynamically without restarting the firewall service.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*qgrSL3hCht185XEv2zoUzQ.png" /></figure><h3>Enabling firewalld</h3><p>Start and enable firewalld to run on system boot:</p><pre>systemctl enable firewalld<br>systemctl start firewalld</pre><p>Check if the service is active:</p><pre>firewall-cmd --state</pre><h3>Managing Services</h3><p>To allow traffic for specific services like HTTP and HTTPS:</p><pre>firewall-cmd --permanent --add-service=http<br>firewall-cmd --permanent --add-service=https</pre><p>Apply the changes:</p><pre>firewall-cmd --reload</pre><h3>Working with Ports</h3><p>You can also open specific ports:</p><pre>firewall-cmd --permanent --add-port=8080/tcp<br>firewall-cmd --reload</pre><h3>Zones</h3><p>firewalld uses zones to define trust levels for network connections. You can assign interfaces and services to different zones depending on your security requirements.</p><h3>Summary</h3><p>firewalld provides:</p><ul><li>Dynamic rule updates without restart</li><li>Service-based and port-based configuration</li><li>Zone-based traffic control</li></ul><p>This makes it a flexible tool for managing firewall rules on CentOS servers.</p><p>Full guide: 👉 <a href="https://vsys.host/how-to/how-to-enable-and-use-firewalld-on-centos-7">https://vsys.host/how-to/how-to-enable-and-use-firewalld-on-centos-7</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=9bc8c6ec4a83" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Create a File in Linux]]></title>
            <link>https://medium.com/@vsys.host/how-to-create-a-file-in-linux-aec014dec8f4?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/aec014dec8f4</guid>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[tech-tips]]></category>
            <category><![CDATA[linux-commands]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Fri, 13 Mar 2026 11:24:27 GMT</pubDate>
            <atom:updated>2026-03-13T11:24:27.998Z</atom:updated>
            <content:encoded><![CDATA[<p>Creating files directly from the command line is a fundamental Linux skill, especially for system administrators working on servers without graphical interfaces. Linux provides multiple commands that allow users to quickly generate files or add content directly from the terminal.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*D4kUAwaFE2zoNnwbf5yP6A.png" /></figure><h3>Using the touch Command</h3><p>The fastest way to create a new empty file is with touch:</p><pre>touch test.txt</pre><p>If the file does not exist, it will be created. If it already exists, the command updates its timestamp.</p><h3>Using the Redirect Operator</h3><p>The &gt; operator can create a file instantly:</p><pre>&gt; test2.txt</pre><p>This command generates a new empty file in the current directory.</p><h3>Creating Files with cat</h3><p>The cat command can also create files and allow users to type content directly:</p><pre>cat &gt; test3.txt</pre><p>After entering text, press <strong>Ctrl+D</strong> to save and exit.</p><h3>Creating Files with echo</h3><p>You can create a file and add content in a single command:</p><pre>echo &quot;Random sample text&quot; &gt; test4.txt</pre><p>This writes the specified text into the file immediately.</p><h3>Using printf for Formatted Output</h3><p>For formatted text output, the printf command is useful:</p><pre>printf &quot;First line of text\nSecond line of text&quot; &gt; test5.txt</pre><p>This allows more control over formatting and line breaks.</p><h3>Summary</h3><p>Linux offers several ways to create files quickly:</p><ul><li>touch – fastest method for empty files</li><li>&gt; – simple redirection creation</li><li>cat – interactive file creation</li><li>echo – create files with predefined text</li><li>printf – formatted content output</li></ul><p>Mastering these commands allows users to efficiently manage scripts, configuration files, and data directly from the command line.</p><p>Full tutorial:<br> <a href="https://vsys.host/how-to/how-to-create-a-file-in-linux">https://vsys.host/how-to/how-to-create-a-file-in-linux</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=aec014dec8f4" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Create a File in Ansible]]></title>
            <link>https://medium.com/@vsys.host/how-to-create-a-file-in-ansible-2c818341bced?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/2c818341bced</guid>
            <category><![CDATA[automation]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[ansible]]></category>
            <category><![CDATA[vsys]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Tue, 10 Mar 2026 10:32:06 GMT</pubDate>
            <atom:updated>2026-03-10T10:32:06.156Z</atom:updated>
            <content:encoded><![CDATA[<p>Ansible simplifies infrastructure automation by allowing administrators to manage files across multiple servers using declarative playbooks. The process relies on built-in file management modules that handle file creation, modification, and permissions</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rio6PK6boiy0lpw9F06PEg.png" /></figure><h3>File Management Modules</h3><p>Ansible provides several modules for working with files:</p><ul><li><strong>file module</strong> — basic operations such as creating files, directories, or managing permissions</li><li><strong>copy module</strong> — copying files or embedding content directly into a file</li><li><strong>template module</strong> — creating files dynamically using variables and templates</li></ul><h3>Creating an Empty File</h3><p>To ensure a file exists without modifying its contents:</p><pre>- hosts: all<br>  tasks:<br>  - name: Creating an empty file<br>    file:<br>      path: &quot;/your_path&quot;<br>      state: touch</pre><p>The state: touch parameter ensures the file exists while preserving idempotence.</p><h3>Creating a File with Content</h3><p>Use the copy module to generate a file and define its contents directly in the playbook:</p><pre>- hosts: all<br>  tasks:<br>  - name: Creating a file with content<br>    copy:<br>      dest: &quot;/your_path&quot;<br>      content: |<br>        line 01<br>        line 02</pre><p>This approach is useful for configuration files or scripts.</p><h3>Creating Multiple Files</h3><p>You can also create multiple files in one task using loops:</p><pre>- hosts: all<br>  tasks:<br>  - name: Create multiple files<br>    file:<br>      path: &quot;{{ item }}&quot;<br>      state: touch<br>    loop:<br>      - test01.txt<br>      - test02.txt<br>      - test03.txt</pre><h3>Managing Permissions</h3><p>Ansible can define ownership and permissions within the same task:</p><pre>file:<br>  path: &quot;/your_path&quot;<br>  state: touch<br>  mode: &quot;0755&quot;<br>  owner: &quot;test&quot;</pre><p>This ensures consistent configuration across all managed systems.</p><p>Full tutorial:<br> <a href="https://vsys.host/how-to/how-to-create-a-file-in-ansible">https://vsys.host/how-to/how-to-create-a-file-in-ansible</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2c818341bced" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Installing a Graphical User Interface on a Linux Server]]></title>
            <link>https://medium.com/@vsys.host/installing-a-graphical-user-interface-on-a-linux-server-5afd45e92dd5?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/5afd45e92dd5</guid>
            <category><![CDATA[sysadmin]]></category>
            <category><![CDATA[gui]]></category>
            <category><![CDATA[vsys]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[devops]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Thu, 05 Mar 2026 13:25:05 GMT</pubDate>
            <atom:updated>2026-03-05T13:25:05.014Z</atom:updated>
            <content:encoded><![CDATA[<p>Most Linux server distributions are installed without a graphical interface. While this is efficient for server workloads, some users prefer a GUI for easier administration and visualization.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*esAVtWxSVyv2BxrQik72pQ.png" /></figure><p>This guide explains how to install desktop environments on <strong>Ubuntu, Debian, and CentOS</strong> servers.</p><h3>Prerequisites</h3><p>Before installing a GUI, ensure you have:</p><ul><li>Root or sudo access</li><li>SSH access to the server</li><li>Internet connectivity for package downloads</li><li>A remote access method such as VNC, KVM, or xRDP</li></ul><h3>Basic Preparation</h3><p>Start by updating your system packages:</p><p><strong>For Debian-based systems:</strong></p><pre>apt update &amp;&amp; apt upgrade -y</pre><p>For CentOS:</p><pre>yum update -y</pre><p>Create a separate user for GUI login:</p><pre>useradd -m username &amp;&amp; passwd username</pre><p>Root logins are typically not allowed for graphical sessions.</p><h3>Installing a Desktop Environment</h3><p>Examples from the guide include installing:</p><ul><li><strong>Ubuntu Desktop</strong></li><li><strong>Kubuntu Desktop</strong></li><li><strong>GNOME</strong></li><li><strong>KDE</strong></li></ul><p>These environments provide full graphical access to the server.</p><h3>Accessing the GUI</h3><p>Once installed, the GUI can be accessed through:</p><ul><li><strong>VNC</strong> — remote desktop access (not encrypted)</li><li><strong>KVM</strong> — direct console access through the hosting provider</li><li><strong>xRDP</strong> — encrypted remote desktop protocol access</li></ul><p>For security, the guide recommends <strong>xRDP over VNC</strong>, since VNC connections are not encrypted.</p><h3>Final Thoughts</h3><p>Adding a GUI to a Linux server can simplify management for users who prefer graphical tools over the command line. With proper setup and secure remote access, it becomes easy to manage server resources visually.</p><p>Full tutorial:<br> <a href="https://vsys.host/how-to/how-to-installation-of-a-graphical-user-interface-for-linux">https://vsys.host/how-to/how-to-installation-of-a-graphical-user-interface-for-linux</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=5afd45e92dd5" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Format Disk Partitions in Linux]]></title>
            <link>https://medium.com/@vsys.host/how-to-format-disk-partitions-in-linux-614c0d30b323?source=rss-29c64ed2945c------2</link>
            <guid isPermaLink="false">https://medium.com/p/614c0d30b323</guid>
            <category><![CDATA[sysadmin]]></category>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[partitioning]]></category>
            <category><![CDATA[devops]]></category>
            <category><![CDATA[vsys]]></category>
            <dc:creator><![CDATA[VSYS Host]]></dc:creator>
            <pubDate>Fri, 27 Feb 2026 10:06:49 GMT</pubDate>
            <atom:updated>2026-02-27T10:06:49.065Z</atom:updated>
            <content:encoded><![CDATA[<p>Working with disks in Linux often means creating, deleting, or formatting partitions. This guide outlines the standard CLI workflow using tools available on most distributions.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aimgTpXwT-ZKD1m3bJLiZg.png" /></figure><h3><strong>Step 1: Identify Your Disk</strong></h3><p>Use:</p><pre>lsblk<br>sudo fdisk -l</pre><p>to list all storage devices and their current partition layouts.</p><h3><strong>Step 2: Create or Modify Partitions</strong></h3><p>Start fdisk on your target disk:</p><pre>sudo fdisk /dev/sdx</pre><p>Within fdisk, use interactive commands to:</p><ul><li>Create (n)</li><li>Delete (d)</li><li>View current layout (p)</li><li>Write changes (w) Replace /dev/sdx with your device name (e.g., /dev/sdb).</li></ul><h3><strong>Step 3: Format Partitions</strong></h3><p>After creating partitions (e.g., /dev/sdx1), format with a filesystem like ext4:</p><pre>sudo mkfs.ext4 /dev/sdx1</pre><p>Other filesystems (XFS, Btrfs, etc.) can be used depending on your needs.</p><h3><strong>Step 4: Mount and Persist</strong></h3><p>Create a mount point and mount the partition:</p><pre>sudo mkdir /mnt/data<br>sudo mount /dev/sdx1 /mnt/data</pre><p>To keep it mounted after reboot, add an entry to /etc/fstab referencing the partition UUID.</p><h3><strong>Summary</strong></h3><p>Formatting disk partitions in Linux involves:</p><ul><li>Identifying the target device</li><li>Creating or adjusting partitions</li><li>Formatting them with appropriate file systems</li><li>Mounting and configuring persistence</li></ul><p>This workflow gives you full control over storage layout on servers or workstation environments.</p><p>Full step-by-step: <a href="https://vsys.host/how-to/how-to-format-disk-partitions-in-linux">https://vsys.host/how-to/how-to-format-disk-partitions-in-linux</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=614c0d30b323" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>