How do I limit Dropbox's activity on the hard disk?
Solution 1
Complementing the answer of Carlos D. Barranco, you can edit the launcher file located in /usr/share/applications/dropbox.desktop
and permanently set a low priority start for dropbox.
In my case, it was also useful to limit the processor usage of dropbox. You can install package cpulimit: # apt-get install cpulimit
For example, to limit dropbox up to 20% processor usage: # cpulimit -b -e dropbox -l 20
In order to configure both low IO and low processing for dropbox automatically with the system launch, edit /usr/share/applications/dropbox.desktop
and replace dropbox start -i
by ionice -c 3 dropbox start -i && cpulimit -b -e dropbox -l 20
Command ionice
will set idle priority for IO access and the parameter -l
of cpulimit configures the processing limit in percentual values. More information on cpulimit can be found in: http://www.nixtutor.com/linux/changing-priority-on-linux-processes/
Solution 2
The right command is the following:
ionice -c 3 dropbox start -i
But you have to be careful and deactivate dropbox check box "Start dropbox on system startup" in dropbox config. Otherwise, dropbox will restore the command in the config file to "dropbox start -i" (without ionice call).
Hope this helps.
Solution 3
Running Kubuntu 14.04, the above suggestions did not work. I came up with this one and it solved this problem for me on my Lenovo T510.
In the file /usr/share/applications/dropbox.desktop
, change the Exec
line to read:
Exec=ionice -c 2 -n 7 dropbox start -i
Watching iotop, dropbox gets 99% of the CPU ONLY when no other process wants some time. It shares the hard drive with other processes by lowering it's demand level.
Solution 4
You propably have encrypted home directory? Decrypting all the files on your Dropbox folder takes time and all your CPU capacity (I have the same problem). Switching dropbox process to low priority has the desired effect of un-jamming the computer and syncing still working fine.
I just don't know how to automatically always start Dropbox with lower prioirty.
Solution 5
Maybe a complex solution, but it should work and resolve your problem:
Setup a file system in your system’s memory (tmpfs) and set that as your Dropbox folder. (Anything under /run/
will do this automatically.) It is temporary and will be deleted when you reboot! So you should setup something like a cron-job to periodically synchronize this location to a persistent folder in your home folder.
Update: This article disuses this method for browser profiles.
Alternatively, ionice will let you set the process priority to the file system. It could actually be more complicated to maintain and I am not even sure it does what you want.
Related videos on Youtube
aiao
Embedded Software Engineer. Areas of expertise: AUTOSAR, Linux, Yocto, information security, dynamic controls and drones.
Updated on September 18, 2022Comments
-
aiao over 1 year
On startup, Dropbox runs files indexing, which brings the system pretty much to a stand still for three minutes.
Is there a way to restrict Dropbox from accessing the hard disk, or decrease the priority of Dropbox's access to the hard disk?
-
Flimm about 11 yearsYou may be experiencing a Dropbox bug. (I'm not saying this question is off-topic, I'm just pointing out something you might want to consider.)
-
Javier Rivera about 11 years@Flimm: No, this is just how Dropbox works. It has to calculate a hash of all your files to check if they need to be synchronised. For me with 22 Gb and a slow processor it takes a couple of minutes. I have a SSD so this is clearly processor bound to me, but if OP has a slow hard disk it could be possible that he is i/o bound.
-
Glutanimate almost 11 yearsIf its interfering with your system startup you can always set dropbox up to start a bit later. See here for more information..
-
-
Flimm about 11 yearsionice (and System Monitor, for that matter), do let you modify the priority of a process, but I don't think it affects the priority of a process' I/O to the hard disk. I may be wrong.
-
Flimm about 11 yearsOn the other hand, the OP's real problem probably isn't access to the hard disk :P
-
Javier Rivera about 11 yearsDownvote: This looks dangerous to me. When Dropbox found an empty folder it could understand it two ways: it can believe that you deleted all your files and delete them from the cloud and other computers (you could recover then using the web interface) or it can start downloading all the files again from the web wasting bandwidth.
-
aiao about 11 years@JavierRivera I am a n00b to shell script writing, but I found snippets that should make it work. adding
pidof dropbox
sudo ionice -c3 -p$$
in/etc/rc.local
can somebody fill in the blanks?! and tell me if this should work. inspired from this blog -
Javier Rivera about 11 yearsGood idea. This is not going to work in rc.local as dropbox is likely not going to be started then. But editing ~/.config/autostart/dropbox.desktop to use ionice could. You should add this as an answer.