<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Josue Morales Salazar</title>
    <description>The latest articles on Forem by Josue Morales Salazar (@morcar_josue).</description>
    <link>https://forem.com/morcar_josue</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3779625%2Fa0734d7a-83a2-44b5-a6ed-4ff28208ccd6.png</url>
      <title>Forem: Josue Morales Salazar</title>
      <link>https://forem.com/morcar_josue</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/morcar_josue"/>
    <language>en</language>
    <item>
      <title>Mount OneDrive as a Real Disk in Ubuntu (No Sync, No Duplicates, No Breaking Git)</title>
      <dc:creator>Josue Morales Salazar</dc:creator>
      <pubDate>Wed, 18 Feb 2026 14:15:06 +0000</pubDate>
      <link>https://forem.com/morcar_josue/mount-onedrive-as-a-real-disk-in-ubuntu-no-sync-no-duplicates-no-breaking-git-49ap</link>
      <guid>https://forem.com/morcar_josue/mount-onedrive-as-a-real-disk-in-ubuntu-no-sync-no-duplicates-no-breaking-git-49ap</guid>
      <description>&lt;p&gt;Most Linux users try to “sync” OneDrive.&lt;br&gt;
That is the mistake.&lt;/p&gt;

&lt;p&gt;Syncing cloud storage in development environments causes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;corrupted node_modules&lt;/li&gt;
&lt;li&gt;broken Git repositories&lt;/li&gt;
&lt;li&gt;infinite file conflicts&lt;/li&gt;
&lt;li&gt;slow builds&lt;/li&gt;
&lt;li&gt;SSD space exhaustion&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The correct approach is not synchronization — it is mounting.&lt;/p&gt;

&lt;p&gt;We will mount OneDrive as a native filesystem using &lt;strong&gt;rclone&lt;/strong&gt;, so Linux treats cloud storage like a network drive.&lt;/p&gt;

&lt;p&gt;Result:&lt;br&gt;
• No duplicated files&lt;br&gt;
• No local storage consumption&lt;br&gt;
• No repo corruption&lt;br&gt;
• Works permanently after reboot&lt;/p&gt;


&lt;h2&gt;
  
  
  Step 1 — Install rclone
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;rclone &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2 — Connect Microsoft Account
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;rclone config
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Choose:&lt;/p&gt;

&lt;p&gt;New remote → name: &lt;code&gt;onedrive&lt;/code&gt;&lt;br&gt;
Storage → &lt;code&gt;onedrive&lt;/code&gt;&lt;br&gt;
Region → default (global)&lt;br&gt;
Auto config → yes&lt;br&gt;
Type → OneDrive Personal&lt;br&gt;
Select the drive called &lt;strong&gt;OneDrive&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Confirm with &lt;code&gt;y&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Test connection:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;rclone lsd onedrive:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you see your folders → authentication is correct.&lt;/p&gt;




&lt;h2&gt;
  
  
  Step 3 — Create mount point
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; ~/OneDrive
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Temporary mount test:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;rclone mount onedrive: ~/OneDrive &lt;span class="nt"&gt;--vfs-cache-mode&lt;/span&gt; writes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Open file manager → cloud appears like a local disk.&lt;/p&gt;




&lt;h2&gt;
  
  
  Step 4 — Permanent mount (systemd user service)
&lt;/h2&gt;

&lt;p&gt;Create service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; ~/.config/systemd/user
nano ~/.config/systemd/user/onedrive.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Paste:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Unit]
Description=Rclone OneDrive Mount
After=network-online.target

[Service]
Type=simple
ExecStart=/usr/bin/rclone mount onedrive: /home/$USER/OneDrive --vfs-cache-mode writes --buffer-size 64M --dir-cache-time 12h
ExecStop=/bin/fusermount -u /home/$USER/OneDrive
Restart=on-failure

[Install]
WantedBy=default.target
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Enable:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;systemctl &lt;span class="nt"&gt;--user&lt;/span&gt; daemon-reload
systemctl &lt;span class="nt"&gt;--user&lt;/span&gt; &lt;span class="nb"&gt;enable &lt;/span&gt;onedrive
systemctl &lt;span class="nt"&gt;--user&lt;/span&gt; start onedrive
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Reboot.&lt;/p&gt;

&lt;p&gt;Your cloud storage now behaves like a native Linux drive.&lt;/p&gt;




&lt;h2&gt;
  
  
  Important Best Practice
&lt;/h2&gt;

&lt;p&gt;Never store Git repositories inside cloud drives.&lt;/p&gt;

&lt;p&gt;Correct architecture:&lt;/p&gt;

&lt;p&gt;Local:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/projects
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Cloud:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;~/OneDrive/docs
~/OneDrive/assets
~/OneDrive/backups
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Cloud stores knowledge.&lt;br&gt;
Git stores systems.&lt;/p&gt;




&lt;p&gt;This approach eliminates dependency on a single machine and makes development environments portable across devices.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>ubuntu</category>
      <category>cloud</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
