Comments (10)
Sorry for broken experience. Compatibility tests show that pip runs fine on amd64 linuxes - I am curious how your setup on Synology is different... We run compatibility test in python virtual envs while your setup seems to be with it - may be that is the root cause...
from icloud_photos_downloader.
Thanks for the quick response Andrey. I'm not too familiar with Python or virtual environments, but I followed the Sam the Geek guide to set things up.
Here is a screenshot of the repro steps ... maybe I have a stale pip package cache or something?
from icloud_photos_downloader.
"Permission denied" for /tmp folder suggests that user under which icloudpd is running does not have sufficient/necessary privileges for using /tmp folder. I suspect the fact that icloudpd self-extracts into tmp and then runs from there, complicate things.
I tried reproducing the situation using docker on linux and non-privileged account -- no lack. I don't have Synology hardware and seems that DSM is not available for installing into VM.
A number of options for your to proceed:
- use 1.17.2 until we repro and fix the issue - you already figured that path
- use icloudpd docker image instead of pip - I don't have experience with Synology, but setting up docker and running apps in it seems to be well supported on Synology
from icloud_photos_downloader.
Hi Andrey, using docker image seems to be an issue as well. Please see my post #762. May I ask you to check what has been changed? Thanks a lot. - If you like we can also have a quick remote session to demonstrate ;)
from icloud_photos_downloader.
To test your theory that it might be a permissions issue I logged in with sudo -i
and tried again:
Immediately after running this command I checked and there is no /tmp/staticx-lHadii
in the file system, but maybe it was cleaned up as part of the script.
Is this expanding into /tmp
new for 1.17.3? I noticed that there were some commits related to building and deployment between 1.17.2 and 1.17.3.
Anyway, thanks for looking into this and I'm happy to test or provide additional info.
from icloud_photos_downloader.
Is this expanding into /tmp new for 1.17.3? I noticed that there were some commits related to building and deployment between 1.17.2 and 1.17.3.
We've been packaging python into single binary executable for some time now. In 1.17.3 I added validation and tweaks to the process that may have changed the behavior around /tmp folder.
Anyway, thanks for looking into this and I'm happy to test or provide additional info.
My thoughts on possible avenues for troubleshooting:
- try clean install of icloudpd, not upgrade
- try installing into venv (btw installing without venv does not work for me for latest pip at all)
- try root vs user
- try docker instead of pip/python
IIUC DSM allows running Virtual DSM (as VM). That may be better option for troubleshooting than your real setup.
from icloud_photos_downloader.
I got the same issue, it's happening because /tmp
is mounted with noexec
on Synology DSM 7.
sudo mount /tmp -o remount,exec
will temporary fix this issue. I don't see it in the fstab, so I will probably try to run icloudpd differently if I don't see how to change this config.
from icloud_photos_downloader.
Yup @gierschv the sudo mount /tmp -o remount,exec
allows 1.17.3 to work. Thanks!
I guess something in 1.17.3 now requires the ability to execute from within /tmp
whereas that wasn't necessary in previous versions. I don't know much about DSM but if there is a better workaround in the future (like adding a line into fstab
somewhere) I'd be interested in hearing it.
Or better yet, maybe icloudpd
can be expanded and executed from $TMP instead @AndreyNikiforov ? But I'm not sure if that's feasible / possible / a good idea.
from icloud_photos_downloader.
Or better yet, maybe
icloudpd
can be expanded and executed from $TMP instead @AndreyNikiforov ? But I'm not sure if that's feasible / possible / a good idea.
I'll keep looking for Synology with special permission on /tmp use case. I suspect that before 1.17.3 you were getting source code, while in 1.17.3 you started getting binaries and /tmp behavior is related to how self-extracting binaries work.
In general, I found binary distributions (docker, binary pip, binary npm) easier to support as there are less uncertainty and better compatibility (e.g. source icloudpd on arm needs rust compiler and plenty of libs during installation). There will be nuances like Synology /tmp use case and we'll have to figure out how to solve them.
Thanks for your patience
from icloud_photos_downloader.
@genegoykhman I'm going to have to update my guide at some point, a few of the instructions are a little out of date.
It also appears that you can use export TMPDIR=$HOME/tmp;
before running icloudpd
which allows you to run it without needing sudo. This allows for use in scheduled tasks and unattended setup.
from icloud_photos_downloader.
Related Issues (20)
- Can't login "Bad username or password for" HOT 2
- icloudpd 1.17.3: Unhandled Exception While Authenticating HOT 10
- Live pics are downloaded as HEIC and MOV
- Option to only download N oldest HOT 3
- Two Containers - One Downloads, the other Doesn't. HOT 4
- crashed during 2fa (Failed to execute script 'icloudpd_ex' due to unhandled exception!) HOT 5
- Hello hello
- Reverse geocode GPS coordinates from photos and write appropriate EXIF location tags?
- Only small fraction of photos is downloaded HOT 1
- Only small number of photos is downloaded from library with 44k photos HOT 13
- icloudpd 1.17.3: Failed to execv() /tmp/staticx-kJmNbp/icloud-1.17.3-linux-amd64.dynamic: Permission denied HOT 8
- Download EXIF Favorite flag HOT 3
- pyicloud_ipd.exceptions.PyiCloudFailedLoginException: ('Invalid email/password combination.', PyiCloudAPIResponseError('Unknown reason')) HOT 5
- No JPG downloaded HOT 2
- Authenticate HOT 2
- Downloads consistently stall when including videos HOT 6
- Thinks it's a find my iphone command line tool HOT 1
- Error that I don't understand. "private db access disabled for this account" HOT 2
- Unable to use the software (-d arguement not recognized) etc
- iCloud Drive and Ubiquity support HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from icloud_photos_downloader.