Freebsd pkg_add file
For a better experience, please enable JavaScript in your browser before proceeding. You are using an out of date browser. It may not display this or other websites correctly. You should upgrade or use an alternative browser. Thread starter prp-e Start date Aug 28, Should I use pkg?! SirDice Administrator Staff member. Thanks SirDice. Problem was solved. Last edited by a moderator: Oct 16, So how did you solve it? As common courtesy could you please disclose the solution to save people from starting a new thread for asking the same question?
To remove these outdated binary packages, run:. To address this, pkg has a built-in command to update package origins. When changing package origins, it is important to reinstall packages that are dependent on the package with the modified origin. To force a reinstallation of dependent packages, run:. The Ports Collection is a set of Makefile s, patches, and description files. Each set of these files is used to compile and install an individual application on FreeBSD, and is called a port.
Before installing and using the Ports Collection, please be aware that it is generally ill-advised to use the Ports Collection in conjunction with the binary packages provided via pkg to install software. Dependencies could be different for a port in HEAD compared to its counterpart in a quarterly branch release and this could result in conflicts between dependencies installed by pkg and those from the Ports Collection.
If the Ports Collection and pkg must be used in conjunction, then be sure that your Ports Collection and pkg are on the same branch release of the ports tree. The Ports Collection contains directories for software categories. Inside each category are subdirectories for individual applications. Each application subdirectory contains a set of files that tells FreeBSD how to compile and install that program, called a ports skeleton.
Each port skeleton includes these files and directories:. Makefile : contains statements that specify how the application should be compiled and where its components should be installed. This directory may also contain other files used to build the port. It also tells the ports system which files to remove upon deinstallation. Some ports include pkg-message or other files to handle special situations. The port does not include the actual source code, also known as a distfile.
Before an application can be compiled using a port, the Ports Collection must first be installed. If it was not installed during the installation of FreeBSD, use one of the following methods to install it:.
The key is used to verify the integrity of all downloaded files. Note that Portsnap updates are generated from a snapshot of the main branch of the Ports Collection and cannot be configured to use a different branch for example, quarterly.
If it is necessary to use a different branch of the Ports Collection for instance as referenced earlier in conjunction with binary packages , then the Git method must be used.
When using fetch , the extract or the update operation may be run consecutively, like so:. Refer to the Git Primer for a detailed description of Git. Git must be installed before it can be used to check out the ports tree. If a copy of the ports tree is already present, install Git like this:. If the ports tree is not available, or pkg is being used to manage packages, Git can be installed as a package:. This section provides basic instructions on using the Ports Collection to install or remove software.
The detailed description of available make targets and environment variables is available in ports 7. Before compiling any port, be sure to update the Ports Collection as described in the previous section. Alternately, run pkg audit -F before installing a new port. This command can be configured to automatically perform a security audit and an update of the vulnerability database during the daily security system check. For more information, refer to pkg-audit 8 and periodic 8.
Using the Ports Collection assumes a working Internet connection. It also requires superuser privilege. To compile and install the port, change to the directory of the port to be installed, then type make install at the prompt.
Messages will indicate the progress:. Since lsof is a program that runs with increased privileges, a security warning is displayed as it is installed. Once the installation is complete, the prompt will be returned. Some shells keep a cache of the commands that are available in the directories listed in the PATH environment variable, to speed up lookup operations for the executable file of these commands.
Users of the tcsh shell should type rehash so that a newly installed command can be used without specifying its full path. Use hash -r instead for the sh shell. Refer to the documentation for the shell for more information. During installation, a working subdirectory is created which contains all the temporary files used during compilation. Removing this directory saves disk space and minimizes the chance of problems later when upgrading to the newer version of the port:.
Some ports provide build options which can be used to enable or disable application components, provide security options, or allow for other customizations. If the port depends upon other ports which have configurable options, it may pause several times for user interaction as the default behavior is to prompt the user to select options from a menu. To avoid this and do all of the configuration in one batch, run make config-recursive within the port skeleton.
Then, run make install [clean] to compile and install the port. When using config-recursive , the list of ports to configure are gathered by the all-depends-list target. It is recommended to run make config-recursive until all dependent ports options have been defined, and ports options screens no longer appear, to be certain that all dependency options have been configured.
One method is to cd into the directory containing the port and type make config. Another option is to use make showconfig. Another option is to execute make rmconfig which will remove all selected options and allow you to start over. All of these options, and others, are explained in great detail in ports 7. The ports system uses fetch 1 to download the source files, which supports various environment variables.
See fetch 3 for the complete list of supported variables. Note that if a port has any dependencies, running this command in a category or ports skeleton will not fetch the distfiles of ports from another category. Instead, use make fetch-recursive to also fetch the distfiles for all the dependencies of a port. When using, specify the alternate location:. For example:. These can also be set as environmental variables. Refer to the manual page for your shell for instructions on how to set an environmental variable.
Installed ports can be uninstalled using pkg delete. Examples for using this command can be found in the pkg-delete 8 manual page. It is recommended to read the messages as the port is uninstalled. If the port has any applications that depend upon it, this information will be displayed but the uninstallation will proceed.
In such cases, it may be better to reinstall the application in order to prevent broken dependencies. Over time, newer versions of software become available in the Ports Collection. This section describes how to determine which software can be upgraded and how to perform the upgrade. On FreeBSD 10 and later, or if the system has been converted to pkg, the following command will list the installed ports which are out of date:.
For FreeBSD 9. X and lower, the following command will list the installed ports that are out of date:.
This file describes various issues and additional steps users may encounter and need to perform when updating a port, including such things as file format changes, changes in locations of configuration files, or any incompatibilities with previous versions. Make note of any instructions which match any of the ports that need upgrading and follow these instructions when performing the upgrade.
The Ports Collection contains several utilities to perform the actual upgrade. Each has its strengths and weaknesses. Historically, most installations used either Portmaster or Portupgrade. Synth is a newer alternative. The choice of which tool is best for a particular system is up to the system administrator.
It is recommended practice to back up your data before using any of these tools. It is designed to use the tools installed with the FreeBSD base system without depending on other ports or databases. To install this utility as a port:.
By default, Portmaster makes a backup package before deleting the existing port. If the installation of the new version is successful, Portmaster deletes the backup. Using -b instructs Portmaster not to automatically delete the backup. Adding -i starts Portmaster in interactive mode, prompting for confirmation before upgrading each port.
Many other options are available. Read through the manual page for portmaster 8 for details regarding their usage. If errors are encountered during the upgrade process, add -f to upgrade and rebuild all ports:.
Portmaster can also be used to install new ports on the system, upgrading all dependencies before building and installing the new port. To use this function, specify the location of the port in the Ports Collection:. It installs a suite of applications which can be used to manage ports. However, it is dependent upon Ruby.
To install the port:. Before performing an upgrade using this utility, it is recommended to scan the list of installed ports using pkgdb -F and to fix all the inconsistencies it reports.
To upgrade all the outdated ports installed on the system, use portupgrade -a. Alternately, include -i to be asked for confirmation of every individual upgrade:. To upgrade only a specified application instead of all available ports, use portupgrade pkgname. It is very important to include -R to first upgrade all the ports required by the given application:. If none are available locally, it then fetches packages from a remote site. If packages can not be found locally or fetched remotely, Portupgrade will use ports.
To avoid using ports entirely, specify -PP. This last set of options tells Portupgrade to abort if no packages are available:. To just fetch the port distfiles, or packages, if -P is specified, without building or installing anything, use -F.
For further information on all of the available switches, refer to the manual page for portupgrade. Unlock pkg command switch will allow you to remove the package restriction and modify or uninstall the package. In order to find out to which installed package a command or an executable file belongs to, issue the following command, as illustrated in the below screenshot examples. In order to locally download a package from Ports repository, without installing the package on the system, run pkg command with the fetch switch.
The downloaded package binary, which is a compressed. To check if the installed packages are exposed to common vulnerabilities or bugs issue the below command. To see a list of old vulnerabilities that where affecting a software package in earlier versions issue the below command.
Below is an excerpt of all known vulnerabilities that where found in Nginx web server compiled for FreeBSD. To ensure that software repositories and all your installed packages and are up-to-date with the latest versions or security patches, issue the following commands. To show remote repositories and local packages statistics, such as how many packages are installed in your system and how much disk space is filled by installed software, execute the following command.
To delete all dependencies left behind by installed packages in the system issue the below command. In order to automatically erase package management local cache directory for remote downloaded packages, run the below command. You should first verify the list of locally downloaded binary packages.
As you can see, FreeBSD has an impressive package collection system, similar to package management tools used in Linux distributions such as Yum , RPM and APT with a huge number of pre-compiled software binaries and a simple and effective command line, pkg, which can be used to manage the software in a decent manner. TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint!
If you like what you are reading, please consider buying us a coffee or 2 as a token of appreciation. We are thankful for your never ending support.
Those two are different things.
0コメント