Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place! |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
10-28-2015, 02:20 AM
|
#1
|
Member
Registered: Jul 2014
Location: India
Distribution: CentOS
Posts: 75
Rep:
|
get installed rpm or deb package file
As in android, we can download the app from playstore, & if want we can share the app using shareit. It means the installable software must be present somewhere on the system.
Can we do the same in Linux distros as well ?
If I download a software like
Code:
apt-get install vlc
This command will directly download & install the vlc software. But if I want to give this software to someone else, then where does the vlc installable file i.e. .deb gets stored ?
Last edited by Harshit_24; 10-28-2015 at 05:18 AM.
|
|
|
10-28-2015, 02:41 AM
|
#2
|
LQ Muse
Registered: Aug 2005
Location: A2 area Mi.
Posts: 17,673
|
a bit of a MAJOR problem
you are using a Debian based system ( apt-get )
BUT
rpm's are REDHAT packages
Debian uses "deb " packages
Debian based systems use "apt" to install deb packages
RedHat based systems use yum ( or dnf and zypper) to install rpm packages
|
|
1 members found this post helpful.
|
10-28-2015, 03:09 AM
|
#3
|
Senior Member
Registered: Apr 2010
Posts: 2,285
|
if you want a software to give it to someone else as long as they have internet.
Give them the link where you download or install the file, or ask them to Google for the file.
or try:
find / -name '*.deb' -o -name '*.rpm'
Last edited by JJJCR; 10-28-2015 at 03:13 AM.
Reason: edit
|
|
1 members found this post helpful.
|
10-28-2015, 03:34 AM
|
#4
|
LQ Addict
Registered: Dec 2013
Posts: 19,872
|
i'm pretty sure it has an option to only download packages, maybe even to a location of your choice.
|
|
1 members found this post helpful.
|
10-28-2015, 05:03 AM
|
#5
|
LQ Guru
Registered: Aug 2004
Location: Sydney
Distribution: Rocky 9.2
Posts: 18,425
|
If you really are on a box that uses rpms, you can use http://linux.die.net/man/1/yumdownloader to just download it.
|
|
1 members found this post helpful.
|
10-28-2015, 06:19 AM
|
#6
|
Moderator
Registered: Dec 2009
Location: Germany
Distribution: Whatever fits the task best
Posts: 17,148
|
There is a major difference between Android's APKs and the RPMs and DEBs of Linux systems: APKs do not only contain the software you want to install, but also all of the dependencies that are not present on a standard Android system. This is not the case with RPMs or DEBs, they only store the information which dependencies are needed. For example, if I want to install VLC on the Arch system I post this from the package manager also wants to install a bunch of other packages as dependencies:
Code:
>>> sudo pacman -S vlc demon 11:07:11 ~ [INS]
[sudo] password for tobi:
resolving dependencies...
looking for conflicting packages...
Packages (9) libdvbpsi-1:1.3.0-1 libebml-1.3.1-1 libkate-0.4.1-5 libmatroska-1.4.2-1 libtar-1.2.20-2
libtiger-0.3.4-4 libupnp-1.6.19-1 zvbi-0.2.35-1 vlc-2.2.1-8
Total Download Size: 10.52 MiB
Total Installed Size: 54.67 MiB
:: Proceed with installation? [Y/n] n
So, if you want to share packages with other systems you not only will need to make sure that the other systems also run the same distro (not even Ubuntu and Debian are close enough that there is a guarantee that packages from one run flawlessly on the other) in a somewhat comparable version (you might run into problems when trying to run software compiled for Ubuntu 14.04 on older versions, for example), you also have to make sure to share all the dependencies with the software.
This is a know problem and there are different approaches to solve it:
- Use a universal runtime. This is the approach that for example Steam uses, all games should be compiled against Steam's runtime environment, this way they are distribution independent and run on any distribution that can run Steam.
- Use container technology, like Docker or the upcoming Ubuntu Snappy. This way you can deploy all the dependencies together with the software without touching the base system.
Both approaches make it possible to share software across different systems, even with different distributions in different versions.
|
|
1 members found this post helpful.
|
01-09-2017, 08:00 AM
|
#7
|
Member
Registered: Jul 2014
Location: India
Distribution: CentOS
Posts: 75
Original Poster
Rep:
|
Quote:
Originally Posted by TobiSGD
There is a major difference between Android's APKs and the RPMs and DEBs of Linux systems: APKs do not only contain the software you want to install, but also all of the dependencies that are not present on a standard Android system. This is not the case with RPMs or DEBs, they only store the information which dependencies are needed. For example, if I want to install VLC on the Arch system I post this from the package manager also wants to install a bunch of other packages as dependencies:
Code:
>>> sudo pacman -S vlc demon 11:07:11 ~ [INS]
[sudo] password for tobi:
resolving dependencies...
looking for conflicting packages...
Packages (9) libdvbpsi-1:1.3.0-1 libebml-1.3.1-1 libkate-0.4.1-5 libmatroska-1.4.2-1 libtar-1.2.20-2
libtiger-0.3.4-4 libupnp-1.6.19-1 zvbi-0.2.35-1 vlc-2.2.1-8
Total Download Size: 10.52 MiB
Total Installed Size: 54.67 MiB
:: Proceed with installation? [Y/n] n
So, if you want to share packages with other systems you not only will need to make sure that the other systems also run the same distro (not even Ubuntu and Debian are close enough that there is a guarantee that packages from one run flawlessly on the other) in a somewhat comparable version (you might run into problems when trying to run software compiled for Ubuntu 14.04 on older versions, for example), you also have to make sure to share all the dependencies with the software.
This is a know problem and there are different approaches to solve it:
- Use a universal runtime. This is the approach that for example Steam uses, all games should be compiled against Steam's runtime environment, this way they are distribution independent and run on any distribution that can run Steam.
- Use container technology, like Docker or the upcoming Ubuntu Snappy. This way you can deploy all the dependencies together with the software without touching the base system.
Both approaches make it possible to share software across different systems, even with different distributions in different versions.
|
Is it not possible to download the software like vlc with all its dependencies & put it in a particular location to be moved & installed in other linux system where internet is not accessible?
As in windows System, we can download the software & can install that software in any number of windows systems. Is it not possible with Linux OS?
|
|
|
01-09-2017, 08:08 AM
|
#8
|
LQ Guru
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,467
|
Quote:
Originally Posted by Harshit_24
Is it not possible to download the software like vlc with all its dependencies & put it in a particular location to be moved & installed in other linux system where internet is not accessible?
As in windows System, we can download the software & can install that software in any number of windows systems. Is it not possible with Linux OS?
|
Yes. The problem with that is simple, though....there is no 'Linux' that is like Windows. Windows 10 base, unpatched, unfixed, will STILL allow software to be installed. Whether it actually functions or not is a different matter. Installing a package for Debian on Red Hat won't work....a RHEL package on openSUSE won't work.
A program for Ubuntu 14.04 *MAY* work for Ubuntu 16.04 and have the same dependencies...and may NOT. And the dependencies have their OWN dependencies....do you know which ones are missing beforehand? Unless you can download ALL of them, then things aren't going to work. If you want to do that, then feel free....but it's fairly pointless, in my opinion. Putting it on the Internet for a few minutes and typing in "apt-get install vlc" or "yum install vlc" is far easier.
|
|
1 members found this post helpful.
|
01-09-2017, 08:12 AM
|
#9
|
LQ Guru
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342
|
for deb files I simpley goto the Debian web sight via google and it leads me there then i just download the deb file in question.
|
|
1 members found this post helpful.
|
01-09-2017, 08:18 AM
|
#10
|
LQ Guru
Registered: Apr 2005
Distribution: Linux Mint, Devuan, OpenBSD
Posts: 7,679
|
Quote:
Originally Posted by Harshit_24
Is it not possible to download the software like vlc with all its dependencies & put it in a particular location to be moved & installed in other linux system where internet is not accessible?
|
It is possible to cache it. You can use apt-cacher or apt-cacher-ng and then just carry the cache with you over to the system that is without Internet access.
|
|
1 members found this post helpful.
|
01-09-2017, 08:23 AM
|
#11
|
LQ Guru
Registered: Sep 2013
Location: Somewhere in my head.
Distribution: Slackware (15 current), Slack15, Ubuntu studio, MX Linux, FreeBSD 13.1, WIn10
Posts: 10,342
|
Last edited by BW-userx; 01-09-2017 at 08:27 AM.
|
|
1 members found this post helpful.
|
01-09-2017, 08:32 AM
|
#12
|
Member
Registered: Jul 2014
Location: India
Distribution: CentOS
Posts: 75
Original Poster
Rep:
|
Quote:
Originally Posted by TB0ne
Yes. The problem with that is simple, though....there is no 'Linux' that is like Windows. Windows 10 base, unpatched, unfixed, will STILL allow software to be installed. Whether it actually functions or not is a different matter. Installing a package for Debian on Red Hat won't work....a RHEL package on openSUSE won't work.
A program for Ubuntu 14.04 *MAY* work for Ubuntu 16.04 and have the same dependencies...and may NOT. And the dependencies have their OWN dependencies....do you know which ones are missing beforehand? Unless you can download ALL of them, then things aren't going to work. If you want to do that, then feel free....but it's fairly pointless, in my opinion. Putting it on the Internet for a few minutes and typing in "apt-get install vlc" or "yum install vlc" is far easier.
|
I got your point. But I just wanted to know if I have a System with any Linux distro suppose Ubuntu 16 where I can download & keep the software. Now I have another system with the same linux distro i.e. Ubuntu 16 where I want to install that downloaded software which dont have internet connection. Then it should be possible by some way to install the software since the environment of the OSs are same.
Quote:
Originally Posted by Turbocapitalist
It is possible to cache it. You can use apt-cacher or apt-cacher-ng and then just carry the cache with you over to the system that is without Internet access.
|
Thanks for your reply. I didn't know about it. Thanks for the information. I could try that by keeping in my local system to be installed somewhere else.
Quote:
Originally Posted by BW-userx
|
Thanks for the reply. It could a nice option. I can try it out.
Last edited by Harshit_24; 01-09-2017 at 08:37 AM.
|
|
|
01-09-2017, 08:53 AM
|
#13
|
LQ Guru
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 27,467
|
Quote:
Originally Posted by Harshit_24
I got your point. But I just wanted to know if I have a System with any Linux distro suppose Ubuntu 16 where I can download & keep the software. Now I have another system with the same linux distro i.e. Ubuntu 16 where I want to install that downloaded software which dont have internet connection. Then it should be possible by some way to install the software since the environment of the OSs are same.
|
Yes... AGAIN, you would have to download ALL THE DEPENDENCIES, and all of THEIR DEPENDENCIES TOO. You CAN do it, but it's time consuming and pointless. Assume you get the current version of VLC...great. And in six months when it's updated? Or any of the dependencies updated?? Going to KEEP updating everything, all the time???
It is a HUGE waste of time and effort. Even if internet access is problematic at your company, you can easily create a central repository server that DOES have Internet (or is updated from Internet), and update all your other machines from it: https://help.ubuntu.com/community/AptGet/Offline
|
|
1 members found this post helpful.
|
01-09-2017, 10:40 AM
|
#14
|
LQ Veteran
Registered: Jan 2011
Location: Abingdon, VA
Distribution: Catalina
Posts: 9,374
Rep: 
|
Quote:
Originally Posted by Harshit_24
I got your point. But I just wanted to know if I have a System with any Linux distro suppose Ubuntu 16 where I can download & keep the software. Now I have another system with the same linux distro i.e. Ubuntu 16 where I want to install that downloaded software which dont have internet connection. Then it should be possible by some way to install the software since the environment of the OSs are same.
|
Each vendor has differing requirements and IMO an "Internet Connection" is recommended on just about (dare I say it?) all of them?
Spare yourself a nervous breakdown...
Code:
"offline repositories" centos|debian|ubuntu
at any search engine, or
https://help.ubuntu.com/community/Ap...ine/Repository
"Suggested"? "Recommended"? Oh My!
Last edited by Habitual; 01-09-2017 at 10:44 AM.
|
|
1 members found this post helpful.
|
01-09-2017, 12:49 PM
|
#15
|
Senior Member
Registered: Nov 2011
Location: London, UK
Distribution: Debian
Posts: 1,950
|
Quote:
Originally Posted by John VV
a bit of a MAJOR problem
you are using a Debian based system ( apt-get )
BUT
rpm's are REDHAT packages
Debian uses "deb " packages
Debian based systems use "apt" to install deb packages
RedHat based systems use yum ( or dnf and zypper) to install rpm packages
|
If you really want to install a rpm package on Debian or a Debian based distro - you can!
Install the alien deb package into Debian,
This will allow you to install rpm packages.
I believe there is a degree of finger crossing involved though. 
|
|
1 members found this post helpful.
|
All times are GMT -5. The time now is 05:41 AM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|