Transmission unMenu package


704 posts in this topic Last Reply

Recommended Posts

I am having permission issues where each directory and file downloaded with Transmission are owned by root and have 755 (for directories) and 644 (for files) permissions so I have to manually chown each download.

 

Is there a way to modify the Transmission unMenu files so that Transmission runs as nobody instead of as root? I think this would solve the problem?

 

Thanks!

 

There is a umask setting at the end of the config variables.  I think I gave a link to the Trasnmission page that explains what it does.  Have a look at that and see if setting a different umask fixes the issue.

 

Is there a way to get Transmission to run as nobody? I am still having permission problems because the owner is root for all the downloads. The umask option did set the permissions I wanted but I still have to telnet in and change the owner of the files to nobody:users before being able to access them through the network share drive.

 

Thanks!

Link to post
  • Replies 703
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

I am having permission issues where each directory and file downloaded with Transmission are owned by root and have 755 (for directories) and 644 (for files) permissions so I have to manually chown each download.

 

Is there a way to modify the Transmission unMenu files so that Transmission runs as nobody instead of as root? I think this would solve the problem?

 

Thanks!

 

There is a umask setting at the end of the config variables.  I think I gave a link to the Trasnmission page that explains what it does.  Have a look at that and see if setting a different umask fixes the issue.

 

Is there a way to get Transmission to run as nobody? I am still having permission problems because the owner is root for all the downloads. The umask option did set the permissions I wanted but I still have to telnet in and change the owner of the files to nobody:users before being able to access them through the network share drive.

 

Thanks!

 

probably, though I have not checked into it... and probably won't

 

I know there is a thread about getting sabnzb to run as nobody.  my suggestion is to look through that and see if you can get it working for transmission.

Link to post

I tried to change ownership of the configuration files, but I am getting "Operation not permitted" errors.

 

root@Tower:/boot/custom# ps -ef |grep transmission
root     19497  7253  0 10:04 pts/0    00:00:00 grep transmission
root@Tower:/boot/custom# chown -R nobody:users transmission
chown: changing ownership of `transmission/transmission_conf/settings.local': Operation not permitted
chown: changing ownership of `transmission/transmission_conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission_conf': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/torrents': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/blocklists': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json.default': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/resume': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission.conf': Operation not permitted
chown: changing ownership of `transmission/transctl': Operation not permitted
chown: changing ownership of `transmission': Operation not permitted

 

Any ideas why I can't change permissions?

 

Thanks!

Link to post

I tried to change ownership of the configuration files, but I am getting "Operation not permitted" errors.

 

root@Tower:/boot/custom# ps -ef |grep transmission
root     19497  7253  0 10:04 pts/0    00:00:00 grep transmission
root@Tower:/boot/custom# chown -R nobody:users transmission
chown: changing ownership of `transmission/transmission_conf/settings.local': Operation not permitted
chown: changing ownership of `transmission/transmission_conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission_conf': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/torrents': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/blocklists': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json.default': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/resume': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission.conf': Operation not permitted
chown: changing ownership of `transmission/transctl': Operation not permitted
chown: changing ownership of `transmission': Operation not permitted

 

Any ideas why I can't change permissions?

 

Thanks!

 

Honestly not sure, If I get a chance I will see if I can help with this.  I did find some things with the current Transmission unMenu package (the one attached to this post) that does not work quite correctly.  I am working with Rajahal to narrow it down and get the issue fixed.

Link to post

I tried to change ownership of the configuration files, but I am getting "Operation not permitted" errors.

 

root@Tower:/boot/custom# ps -ef |grep transmission
root     19497  7253  0 10:04 pts/0    00:00:00 grep transmission
root@Tower:/boot/custom# chown -R nobody:users transmission
chown: changing ownership of `transmission/transmission_conf/settings.local': Operation not permitted
chown: changing ownership of `transmission/transmission_conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission_conf': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/torrents': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/blocklists': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json.default': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/resume': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission.conf': Operation not permitted
chown: changing ownership of `transmission/transctl': Operation not permitted
chown: changing ownership of `transmission': Operation not permitted

 

Any ideas why I can't change permissions?

 

Thanks!

 

Honestly not sure, If I get a chance I will see if I can help with this.  I did find some things with the current Transmission unMenu package (the one attached to this post) that does not work quite correctly.  I am working with Rajahal to narrow it down and get the issue fixed.

For the short term, I'm going to remove the transmission.conf file from the official release.  It will not affect anybody who already has it, it will just prevent the existing file from being over-written if a "check-for-updates" is performed in unMENU.  (I'm about to make a few other updates)

 

Until it is back in the official release, it can be downloaded from this thread where you have it attached.

 

Joe L.

Link to post

For the short term, I'm going to remove the transmission.conf file from the official release.  It will not affect anybody who already has it, it will just prevent the existing file from being over-written if a "check-for-updates" is performed in unMENU.  (I'm about to make a few other updates)

 

Until it is back in the official release, it can be downloaded from this thread where you have it attached.

 

Joe L.

 

Works for me.  I should have had the changes/fixes/updates done a week or so ago but have been to busy to test them properly.

Link to post

I tried to change ownership of the configuration files, but I am getting "Operation not permitted" errors.

 

root@Tower:/boot/custom# ps -ef |grep transmission
root     19497  7253  0 10:04 pts/0    00:00:00 grep transmission
root@Tower:/boot/custom# chown -R nobody:users transmission
chown: changing ownership of `transmission/transmission_conf/settings.local': Operation not permitted
chown: changing ownership of `transmission/transmission_conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission_conf': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/torrents': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/blocklists': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json.default': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/resume': Operation not permitted
chown: changing ownership of `transmission/transmission.conf/settings.json': Operation not permitted
chown: changing ownership of `transmission/transmission.conf': Operation not permitted
chown: changing ownership of `transmission/transctl': Operation not permitted
chown: changing ownership of `transmission': Operation not permitted

 

Any ideas why I can't change permissions?

 

No ideas, only facts. Those files are on your USB flash drive and the way it's mounted and the filesystem type it uses does not allow for that operation.

 

In order to do that, you need the files on a drive with an appropriate filesystem and mounted appropriately, for instance your cache drive or a data drive.

Link to post

Thanks for clearing up the facts, BRiT!

 

I just replaced every instance of /boot/custom/ with /mnt/disk2/.custom/

 

And then after the bubbaQ.tgz is installed with installpkg, I mv the contents of /boot/custom/transmission to /mnt/disk2/.custom/transmission and then change ownership of /mnt/disk2/.custom/transmission to nobody:users

 

I just did this and it seems to be working upon my initial glance. "ps -ef | grep transmission" shows that nobody is running the transmission-daemon ;)

 

Now to test it out!

Link to post

Not sure if this is the right place to ask this question but I'm trying to add a link to the Transmission client page in the Stop Transmission script using the MyHost variable (unless there is a better variable to use):

PACKAGE_INSTALLATION echo "#define USER_SCRIPT_DESCR This will stop the <a target=\"_blank\" 
href=\"http://${MyHost}{vRPC_PORT}/transmission/web\">Transmission daemon</a>" 
>> "${SCRIPT_DIRECTORY}"/42-unmenu_user_script_stop_transmission

 

The variable MyHost is used near the top of the transmission-unmenu-package.conf file to also link to the Transmission client page. While it resolves %%MyHost%% to tower in the PACKAGE_DESCR, I don't think it knows what ${MyHost} or %MyHost% or %%MyHost% is when I put it in the PACKAGE_INSTALLATION command.

 

I also tried adding MyHost and unRAIDHost to the unmenu.conf file but no luck with that, either.

 

The only way I've gotten it to "work" is by using ${MyHost-Tower} but it really would be no different than just "hard coding" "Tower"

Link to post

Not sure if this is the right place to ask this question but I'm trying to add a link to the Transmission client page in the Stop Transmission script using the MyHost variable (unless there is a better variable to use):

PACKAGE_INSTALLATION echo "#define USER_SCRIPT_DESCR This will stop the <a target=\"_blank\" 
href=\"http://${MyHost}{vRPC_PORT}/transmission/web\">Transmission daemon</a>" 
>> "${SCRIPT_DIRECTORY}"/42-unmenu_user_script_stop_transmission

 

The variable MyHost is used near the top of the transmission-unmenu-package.conf file to also link to the Transmission client page. While it resolves %%MyHost%% to tower in the PACKAGE_DESCR, I don't think it knows what ${MyHost} or %MyHost% or %%MyHost% is when I put it in the PACKAGE_INSTALLATION command.

 

I also tried adding MyHost and unRAIDHost to the unmenu.conf file but no luck with that, either.

 

The only way I've gotten it to "work" is by using ${MyHost-Tower} but it really would be no different than just "hard coding" "Tower"

 

The %%MyHost%% stuff (along with the other %%Variable%% stuff) is a request I put into JoeL for a package manager enhancement so variables could be used from within the package description.  You can reference the variables in the package installation lines via the ${MyHost} way.  I have never tried to add a link in a stop script but ${MyHost-Tower} should default to "Tower" if nothing is specified.

 

What are you trying to add this to the stop script? if you don't mind me asking.

Link to post

I'm just adding a link to the Stop scripts of Transmission, SickBeard, CouchPotato, and SABnzbd so I can just click and go to manage them from the User Scripts page. It's secondary purpose is so I can see very quickly whether they are running or not (since the Start script does not have the link).

 

The ${MyHost-Tower} does default to Tower so there is no point to using ${MyHost-Tower} since MyHost is not defined. I can totally just use href="http://Tower:9091" but for others who don't use the defaults, it wouldn't work for them, especially if they aren't using "Tower" as the host name. That's why I was wondering if there was a syntax or some other method of using the MyHost variable.

 

Thanks.

Link to post

Also an update to changing the permissions and running as nobody, it seems to have worked... I downloaded some files and didn't have to chown the files ;) Thanks, BRiT and prostuff1.

 

I'm sure it's possible to just use the vINSTALL_LOCATION variable to install everything but don't want to mess with what's currently working for me right now LOL. I'm happy that there are now less writes to the flash drive since the original script does a lot on the /boot/ drive.

Link to post

Also an update to changing the permissions and running as nobody, it seems to have worked... I downloaded some files and didn't have to chown the files ;) Thanks, BRiT and prostuff1.

 

I'm sure it's possible to just use the vINSTALL_LOCATION variable to install everything but don't want to mess with what's currently working for me right now LOL. I'm happy that there are now less writes to the flash drive since the original script does a lot on the /boot/ drive.

Glad you got this to work.  I was thinking about the nobody thing after you posted it and then about the permissions issues.  The vINSTALL_LOCATION variable may fix it though I am not sure.  I do not copy everything over to the vINSTALL_LOCATION so some files may not have been able to chown'ed (transctl comes to mind).  If I get some free time I will look into running it as nobody but probably will not have a chance for a while.

Link to post

PACKAGE_INSTALLATION installpkg "${PACKAGE_DIRECTORY}"/transmission-unraid-0.0.2-i386-bubbaQ.tgz

When the above command gets executed, it unpacks transctl to /boot/custom/transmission

 

I just move the unpacked files in /boot/custom/transmission to /mnt/disk2/.custom or wherever you want transmission to install then chown the /mnt/disk2/.custom/transmission directory

Link to post

PACKAGE_INSTALLATION installpkg "${PACKAGE_DIRECTORY}"/transmission-unraid-0.0.2-i386-bubbaQ.tgz

When the above command gets executed, it unpacks transctl to /boot/custom/transmission

 

I just move the unpacked files in /boot/custom/transmission to /mnt/disk2/.custom or wherever you want transmission to install then chown the /mnt/disk2/.custom/transmission directory

 

Correct, I do not control where transmission unpacks to.  That is actually in the transmission.tgz file that was created by bubbaQ.

 

What I do later on in the unMenu package is move the /boot/custom/transmission/transmission.conf folder to the specified vINSTALL_LOCATION.

 

I could possibly move the entire transmission folder, but when I set it up to only move the transmission.conf folder is was because of the excessive amount of writing to the flash drive.  The torrents and resume folder (mostly the resume folder) was being updated/changed very frequently by Transmission.

Link to post

So I changed some values in the .cfg in the package manager in unMenu but the changes do not reflect on transmission. Such as append names with .part and max upload 40 kb/s with True Flag. I have rebooted and reinstalled transmission but they are not sticking. I can however change the UL speed within the transmission webgui itself to 40kb/s. Just wondering why there is a .cfg setting in unMenu that doesn't work and settings within webgui that do? Thanks

Link to post

So I changed some values in the .cfg in the package manager in unMenu but the changes do not reflect on transmission. Such as append names with .part and max upload 40 kb/s with True Flag. I have rebooted and reinstalled transmission but they are not sticking. I can however change the UL speed within the transmission webgui itself to 40kb/s. Just wondering why there is a .cfg setting in unMenu that doesn't work and settings within webgui that do? Thanks

 

the transmission web ui is "real time" and therefor will be reset when you reboot again.

 

as for the .part stuff, that is something I might need to look into.  There is a lot of stuff that has to be controlled, and changed.

 

Also, did you pull the newest version of the transmission package from the first post in this thread, or did you use the one that was already included with unMenu?  The included one is buggy... actually the one in the first post is buggy also.  I am testing a new version and should be able to attach it to the first post in this thread later tonight.

Link to post

using the one in unMenu, works fine. All the settings stuck the first time I set them such as where the .torrent files go and where to watch. Its just the .part append and UL speed are not sticking in the .cfg. I set it and for the life of me I couldn't figure why I kept unlimited Uploading till I set it in the webui. So now there are two different values one for 80kb/s in .cfg and the 40kb/s in the webgui that is working. Wonder why there isnt a conflict within the program...

Link to post

Not sure if this is the right place to ask this question but I'm trying to add a link to the Transmission client page in the Stop Transmission script using the MyHost variable (unless there is a better variable to use):

There is a better "variable" to use...  and it is a "constant"

 

Use either "localhost" or "127.0.0.1" as shown here:

PACKAGE_INSTALLATION echo "#define USER_SCRIPT_DESCR This will stop the <a target=\"_blank\"

href=\"localhost:${vRPC_PORT}/transmission/web\">Transmission daemon</a>"  >> "${SCRIPT_DIRECTORY}"/42-unmenu_user_script_stop_transmission

 

"localhost" or "127.0.0.1" will always represent the current host the application is running on.

Link to post

There is a better "variable" to use...  and it is a "constant"

 

Use either "localhost" or "127.0.0.1" as shown here:

PACKAGE_INSTALLATION echo "#define USER_SCRIPT_DESCR This will stop the <a target=\"_blank\"

href=\"localhost:${vRPC_PORT}/transmission/web\">Transmission daemon</a>"  >> "${SCRIPT_DIRECTORY}"/42-unmenu_user_script_stop_transmission

 

"localhost" or "127.0.0.1" will always represent the current host the application is running on.

 

localhost does not work. The link shows up as localhost:9091/transmission/web which can't be found.

 

Strangely, however, if I use ${localhost}, the link shows up as

http://tower:8080/:9091/transmission/web

Pretty close! Is there another constant I could use that would strip the ":8080/"?

Link to post

There is a better "variable" to use...  and it is a "constant"

 

Use either "localhost" or "127.0.0.1" as shown here:

PACKAGE_INSTALLATION echo "#define USER_SCRIPT_DESCR This will stop the <a target=\"_blank\"

href=\"localhost:${vRPC_PORT}/transmission/web\">Transmission daemon</a>"  >> "${SCRIPT_DIRECTORY}"/42-unmenu_user_script_stop_transmission

 

"localhost" or "127.0.0.1" will always represent the current host the application is running on.

 

localhost does not work. The link shows up as localhost:9091/transmission/web which can't be found.

 

Strangely, however, if I use ${localhost}, the link shows up as

http://tower:8080/:9091/transmission/web

Pretty close! Is there another constant I could use that would strip the ":8080/"?

I just uploaded a modified version where MyHost is now available as a shell variable.  Use the "check for updates" button, a new package manager will be installed.  "transmission" will not be downloaded, as I took it out of my re,ease-list, but you'l still be able to use your existing .conf file.

 

Give

${MyHost}

a try with the new package manager.

 

Joe L.

Link to post
I just uploaded a modified version where MyHost is now available as a shell variable.  Use the "check for updates" button, a new package manager will be installed.  "transmission" will not be downloaded, as I took it out of my re,ease-list, but you'l still be able to use your existing .conf file.

 

Give

${MyHost}

a try with the new package manager.

 

Joe L.

 

Perfect! Thanks, Joe! You're the best!

Link to post

hi,

 

The download link has gone from the 1st post in the thread.

 

Does anyone know where I can re-download it from please?

 

Thanks

 

Give me a day or so.  I am in the middle of testing an update of the package and did not want anyone using the previous one that had a bug in it.  I think I have it ironed out, but want to make sure of it.

Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.