https://wiki.archlinux.org/api.php?action=feedcontributions&user=Nydahl98&feedformat=atomArchWiki - User contributions [en]2024-03-29T08:02:43ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Logitech_Quickcam_Pro_9000&diff=210247Logitech Quickcam Pro 90002012-06-18T17:37:21Z<p>Nydahl98: Adding page link to swedish wiki</p>
<hr />
<div>[[Category:Imaging]]<br />
[[Category:Other hardware]]<br />
[[sv:Logitech Quickcam Pro 9000]]<br />
The '''Logitech QuickCam Pro 9000''' is an expensive and fairly high-quality webcam that is available in several versions. It is of course and UVC device and as such works out-of-the-box in most cases, but if you want to maximize the usefulness of this device on Arch Linux you'll need to do some magic.<br />
<br />
==Usage Scenario==<br />
I use the webcam to record videos for a blog, and I want the highest possible image quality. As such, I will be capturing uncompressed, raw video and audio, use the autofocus feature of the camera and maintain a constant<br />
25 FPS framerate. Using uncompressed video means you will avoid compression artifacts, minimize CPU load during capture and allows the video encoder to work as efficent as possible when doing the final encoding of the result.<br />
By using autofocus (as opposed to having a fixed, inifinite focus) you'll get the sharpest possible image.<br />
<br />
By default the camera is limited to 15 FPS as long as auto-exposure is being used. This is because the time required for each frame is longer if lighting conditions are dim as less light hits the sensor. 15 FPS is the hard limit that the autoexposure mechanism must maintain at all times. Unfortunately for us 15 FPS looks really bad, so we need to switch autoexposure off and instead provide good, fixed lighting conditions.<br />
<br />
If you just want to use the camera as webcam, you should instead use a compressed format such as MJPEG which minimizes the load on the USB bus and the host CPU. Cheaper webcams typically lacks these compressed formats because they require more hardware and license fees.<br />
<br />
==Capture Software==<br />
By far the best capture software I've found is guvcview. Not only does it allow you to specify exactly the formats to use for both audio, video and container but it also has the ability to control the focus of the camera. Focus control is not part of the UVC standard, and without a software component that handles it you'll not be able to use the AF functionality at all. Unfortunately, guvcview is not available from the regular Arch Linux repositories and has to be built "manually" along with some support libraries.<br />
<br />
==Building the Software==<br />
{{aur|libwebcam}} is the support library needed for AF control.<br />
{{aur|guvcview}} is the viewer/capture application.<br />
<br />
Both applications are built easily using the AUR/ABS build system. In the case of libwebcam I used the patches and build scripts provided by esteemed member whitelynx.<br />
<br />
==Registering Camera Controls==<br />
During the installation of libwebcam the following line will be added to your ''/etc/udev/rules.d/80-uvcdynctrl.rules''<br />
<br />
ACTION=="add", SUBSYSTEM=="video4linux", DRIVERS=="uvcvideo", RUN+="/lib/udev/uvcdynctrl"<br />
<br />
After the installation, disconnect and reconnect your camera to trigger the rules, then start guvcview once as root, just to let it initialize the AF controls. If you are not yet a member of the "video" group, you should add yourself to it and login anew. After this you should be able to use the cameras full feature set, including autofocus, even as a regular user.</div>Nydahl98https://wiki.archlinux.org/index.php?title=Firewalls&diff=210246Firewalls2012-06-18T17:34:04Z<p>Nydahl98: Adding page link to swedish wiki</p>
<hr />
<div>[[Category:Networking]]<br />
[[Category:Security]]<br />
[[it:Firewalls]]<br />
[[sr:Firewalls]]<br />
[[sv:Brandväggar]]<br />
A firewall is a system designed to prevent unauthorized access to or from a private network (which could be just one machine). Firewalls can be implemented in only hardware or software, or a combination of both. Firewalls are frequently used to prevent unauthorized Internet users from accessing private networks connected to the Internet, especially intranets. All messages entering or leaving the intranet pass through the firewall, which examines each message and allows, proxys, or denies the traffic based on specified security criteria.<br />
<br />
There is a nice list of firewalls [http://wiki.debian.org/Firewalls here].<br />
<br />
There are many posts on the forums about different firewall apps and scripts so here they all are condensed into one page - please add your comments about each firewall, especially ease of use and a security check at [https://www.grc.com/x/ne.dll?bh0bkyd2 Shields Up].<br />
<br />
{{Note|Checks at Shields Up are only a valid measure of your router should you have one in the LAN. To accurately evaluate a software firewall, one needs to directly connect the box to the cable modem.}}<br />
<br />
==[[iptables]]==<br />
The Linux kernel itself has very powerful firewall called iptables. Other firewalls are usually just front-ends.<br />
<br />
See the [[iptables|iptables article]] for more information.<br />
<br />
'''More info:'''<br />
*[[Simple stateful firewall]]<br />
*[[Router]]<br />
*man iptables http://unixhelp.ed.ac.uk/CGI/man-cgi?iptables+8<br />
*http://tldp.org/HOWTO/Masquerading-Simple-HOWTO/<br />
*http://netfilter.org/documentation/HOWTO/NAT-HOWTO.html<br />
*http://www.frozentux.net/documents/iptables-tutorial/<br />
<br />
==iptables front-ends==<br />
===Arno's Firewall===<br />
[http://rocky.eld.leidenuniv.nl/ Arno's IPTABLES Firewall Script] is a secure firewall for both single and multi-homed machines.<br />
<br />
The script:<br />
*EASY to configure and highly customizable<br />
*daemon script included<br />
*a filter script that makes your firewall log more readable<br />
<br />
Supports:<br />
*NAT and SNAT<br />
*port forwarding<br />
*ADSL ethernet modems with both static and dynamically assigned IPs<br />
*MAC address filtering<br />
*stealth port scan detection<br />
*DMZ and DMZ-2-LAN forwarding<br />
*protection against SYN/ICMP flooding<br />
*extensive user definable logging with rate limiting to prevent log flooding<br />
*all IP protocols and VPNs such as IPsec<br />
*plugin support to add extra features.<br />
<br />
===ferm===<br />
[http://ferm.foo-projects.org/ ferm] (which stands for "For Easy Rule Making") is a tool to maintain complex firewalls, without having the trouble to rewrite the complex rules over and over again. ferm allows the entire firewall rule set to be stored in a separate file, and to be loaded with one command. The firewall configuration resembles structured programming-like language, which can contain levels and lists.<br />
<br />
===Firehol===<br />
[http://firehol.sourceforge.net/ FireHOL] is a language to express firewalling rules, not just a script that produces some kind of a firewall. It makes building even sophisticated firewalls easy - the way you want it. The result is actually iptables rules.<br />
<br />
{{Pkg|firehol}} is available in the [[Official Repositories|official repositories]].<br />
<br />
===Firetable===<br />
[http://projects.leisink.org/firetable Firetable] is an iptables-based firewall with "human readable" syntax.<br />
<br />
{{AUR|firetable}} is available in the [[Arch User Repository|AUR]].<br />
<br />
===Shorewall===<br />
[http://www.shorewall.net/ The Shoreline Firewall], more commonly known as "Shorewall", is high-level tool for configuring Netfilter. You describe your firewall/gateway requirements using entries in a set of configuration files. Shorewall reads those configuration files and with the help of the iptables utility, Shorewall configures Netfilter to match your requirements. Shorewall can be used on a dedicated firewall system, a multi-function gateway/router/server or on a standalone GNU/Linux system. Shorewall does not use Netfilter's ipchains compatibility mode and can thus take advantage of Netfilter's connection state tracking capabilities.<br />
<br />
{{Pkg|shorewall}} is available in the [[Official Repositories|official repositories]].<br />
<br />
===ufw===<br />
ufw (uncomplicated firewall) is a simple front-end for iptables and is available in the [[Official Repositories|official repositories]].<br />
<br />
See [[Uncomplicated Firewall]] for more information.<br />
<br />
===Vuurmuur===<br />
[http://www.vuurmuur.org/ Vuurmuur] Vuurmuur is a powerful firewall manager built on top of iptables. It has a simple and easy to learn configuration that allows both simple and complex configurations. The configuration can be fully configured through an {{Pkg|ncurses}} GUI, which allows secure remote administration through SSH or on the console. Vuurmuur supports traffic shaping, has powerful monitoring features, which allow the administrator to look at the logs, connections and bandwidth usage in realtime.<br />
<br />
{{AUR|Vuurmuur}} is available in the [[Arch User Repository|AUR]].<br />
<br />
==iptables GUIs==<br />
===Firestarter===<br />
[http://www.fs-security.com/ Firestarter] is a good GUI for iptables writen on GTK2, it has the ability to use both white and black lists for regulating traffic, it is very simple and easy to use, with good documentation available on their website.<br />
<br />
{{AUR|Firestarter}} has [[GNOME]] dependencies and is available in the [[Arch User Repository|AUR]].<br />
<br />
===Guarddog===<br />
[http://www.simonzone.com/software/guarddog/ Guarddog] is a really easy to use GUI for configuring iptables. After setting up a basic desktop configuration it passes all Shields Up tests perfectly.<br />
<br />
{{AUR|Guarddog}} requires {{Pkg|kdelibs3}} and is available in the [[AUR]] repository.<br />
<br />
To have the firewall settings applied at boot-up you must run {{ic|/etc/rc.firewall}} from inside {{ic|/etc/rc.local}} or something similar.<br />
<br />
===Uncomplicated Firewall (ufw) Frontends===<br />
[[Uncomplicated_Firewall#Gufw|Gufw]], a GTK-based front-end to {{Pkg|ufw}} which happens to be a CLI front-end to iptables (gufw->ufw->iptables), is super easy and super simple to use.<br />
{{Note|Gufw is perhaps the simplest replacement for tcp_wrappers, which was [https://www.archlinux.org/news/dropping-tcp_wrappers-support/ discontinued recently]}}<br />
[[Uncomplicated_Firewall#kcm-ufw|kcm-ufw]] is a KDE alternative to Gufw.<br />
<br />
See [[Uncomplicated_Firewall#GUI_frontends|Uncomplicated Firewall]] for more info.<br />
<br />
===KMyFirewall===<br />
[http://kmyfirewall.sourceforge.net/ KMyFirewall] is KDE3 GUI for iptables.<br />
<br />
Firewall editing capabilities are simple enough to use to be suitable for beginners, but also allow for sophisticated tweaking of the firewall settings.<br />
<br />
{{AUR|KMyFirewall}} requires {{Pkg|kdelibs3}} and is available in the [[Arch User Repository|AUR]].<br />
<br />
==Firewall Builder==<br />
[http://www.fwbuilder.org/ Firewall Builder] is "a GUI firewall configuration and management tool that supports iptables (netfilter), ipfilter, pf, ipfw, Cisco PIX (FWSM, ASA) and Cisco routers extended access lists. [...] The program runs on Linux, FreeBSD, OpenBSD, Windows and Mac OS X and can manage both local and remote firewalls." Source: http://www.fwbuilder.org/<br />
<br />
{{Pkg|fwbuilder}} is available in the [[Official Repositories|official repositories]].</div>Nydahl98https://wiki.archlinux.org/index.php?title=Frequently_asked_questions&diff=209930Frequently asked questions2012-06-17T11:23:34Z<p>Nydahl98: Adding page link to swedish wiki</p>
<hr />
<div>[[Category:About Arch]]<br />
[[Category:FAQs]]<br />
[[bg:FAQ]]<br />
[[cs:FAQ]]<br />
[[da:FAQ]]<br />
[[de:FAQ]]<br />
[[es:FAQ]]<br />
[[fa:پرسش و پاسخ]]<br />
[[fr:FAQ]]<br />
[[hr:FAQ]]<br />
[[id:FAQ]]<br />
[[it:FAQ]]<br />
[[ja:FAQ]]<br />
[[ko:FAQ]]<br />
[[lt:FAQ]]<br />
[[nl:FAQ]]<br />
[[pt:FAQ]]<br />
[[ro:Întrebări frecvente]]<br />
[[ru:FAQ]]<br />
[[sk:FAQ]]<br />
[[sv:FAQ]]<br />
[[th:FAQ]]<br />
[[tr:Sss]]<br />
[[zh-CN:FAQ]]<br />
[[zh-TW:FAQ]]<br />
{{Temporary i18n}}<br />
Besides the questions covered below, you may find [[The Arch Way]] and [[Arch Linux]] helpful. Both articles contain a good deal of information about Arch Linux.<br />
<br />
==General==<br />
===Q) What is Arch Linux?===<br />
'''A)''' See the article entitled [[Arch Linux]].<br />
<br />
===Q) Why would I want to use Arch?===<br />
'''A)''' If, after reading about the [[The Arch Way]] philosophy, you wish to embrace the 'do-it-yourself' approach and require or desire a simple, elegant, highly customizable, bleeding edge, general purpose GNU/Linux distribution, you may like Arch.<br />
<br />
===Q) Why would I not want to use Arch?===<br />
'''A)''' You may '''not''' want to use Arch, if:<br />
* after reading [[The Arch Way]], you disagree with the philosophy.<br />
* you do not have the ability/time/desire for a 'do-it-yourself' GNU/Linux distribution.<br />
* you require support for an architecture other than x86_64 or i686.<br />
* you take a strong stand on using a distribution which only provides free software as defined by GNU.<br />
* you believe an operating system should configure itself, run out of the box, and include a complete default set of software and desktop environment on the installation media.<br />
* you do not want a bleeding edge, rolling release GNU/Linux distribution.<br />
* you are happy with your current OS.<br />
* you want an OS that targets a different userbase.<br />
<br />
===Q) What distribution is Arch based on? ===<br />
'''A)''' Arch is independently developed, was built from scratch and is not based on any other GNU/Linux distribution. Before creating Arch, Judd Vinet admired and used CRUX, a great, minimalist distribution created by Per Lidén. Originally inspired by ideas in common with CRUX, Arch was built from scratch, and pacman was then coded in C.<br />
<br />
===Q) I am a complete GNU/Linux beginner. Should I use Arch?===<br />
'''A)''' This question has had much debate. Arch is targeted at more-advanced GNU/Linux users, but some people feel Arch is a good place to start for the motivated novice. If you are a beginner and want to use Arch, just be warned that you must be willing to invest significant time into learning a new system as well as accept the fact that Arch is fundamentally designed as a do-it-yourself distribution. It is the user who assembles the system and controls what it will be. Before asking any question, do your own independent research by Googling, searching the forum (and reading past FAQs) and searching the superb documentation provided by the Arch Wiki. ''There is a reason these resources were made available to you in the first place.'' Many thousands of ''volunteered'' hours have been spent compiling this excellent information.<br />
<br />
Recommended reading: The Arch Linux [[Beginners Guide|Beginners' Guide]].<br />
<br />
===Q) Arch requires too much time and effort to install and use. Also, the community keeps telling me to RTFM in so many words.===<br />
'''A)''' Arch is designed for and used by a specifically targeted user base. Perhaps it is not right for you.<br />
<br />
===Q) Is Arch designed to be used as a server? A desktop? A workstation?===<br />
'''A)''' Arch is not designed for any particular type of use. Rather, it is designed for a particular type of ''user''. Arch targets competent users who enjoy its do-it-yourself nature, and who further exploit it to shape the system to fit their unique needs. Therefore, in the hands of its target user base, Arch can be used for virtually any purpose. Many use Arch on both their desktops and workstations. And of course, archlinux.org runs on Arch.<br />
<br />
===Q) I really like Arch, except the development team needs to implement ''"feature X"''.===<br />
'''A)''' Before going further, did you read [[The Arch Way]]? Have you provided the feature/solution? Does it conform to the Arch philosophy of ''minimalism'' and ''code-correctness over convenience''? Get involved, contribute your code/solution to the community. If it is well regarded by the community and development team, perhaps it will be merged. The Arch community thrives on contribution and sharing of code and tools.<br />
<br />
===Q) When will the new release be made?===<br />
'''A)''' Arch Linux releases are merely a snapshot of the /core repository, combined with various features or modifications to the installer script itself. The rolling release model keeps every Arch Linux system current and on the bleeding edge by issuing one command.<br />
<br />
For this reason, releases are not terribly important in Arch, because the rolling-release system makes new releases out of date as soon as a package has been updated. If you are looking to obtain the latest Arch Linux release, you do not need to reinstall. You simply run the {{ic|pacman -Syu}} command and your system will be identical to what you would get with a brand-new install.<br />
<br />
For this same reason, new Arch Linux releases are not typically full of new and exciting features. New and exciting features are released as needed with the packages that are updated, and can be obtained immediately via {{ic|pacman -Syu}}.<br />
<br />
===Q) Is Arch Linux a stable distribution? Will I get frequent breakage?===<br />
'''A)''' The short answer is: It is largely as stable as ''you'' make it.<br />
<br />
''You'' assemble your own Arch system, atop the simple base environment, and ''you'' control system upgrades. Obviously, a larger, more complicated system incorporating multitudes of customized packages, and a plethora of toolkits and desktop environments would be more likely to experience configuration issues due to upstream changes than a slimmer, more simple system would. Arch is targeted at capable, proactive users. General UNIX competence and good system maintenance and upgrade practices also play a large role in system stability. Also recall that Arch packages are predominantly unpatched, so most application issues are inherently upstream.<br />
<br />
Therefore, it is ''the user'' who is ultimately responsible for the stability of his own rolling release system. The user decides when to upgrade, and merges necessary changes when required. If the user reaches out to the community for help, it is often provided in a timely manner. The difference between Arch and other distributions in this regard is that Arch is truly a 'do-it-yourself' distribution; complaints of breakage are misguided and unproductive, since upstream changes are not the responsibility of Arch devs.<br />
<br />
===Q) What exactly ''is'' this 'BSD-style' init framework I keep hearing about? ===<br />
'''A)''' Part of BSD's heritage is the simple init framework that it has incorporated. The main difference between a BSD init and a SysV init is that Arch's BSD-style init uses a single line in a single text file, {{ic|/etc/rc.conf}}, to point to scripts within a single directory, {{ic|/etc/rc.d/}}, for controlling all system services, regardless of runlevel.<br />
<br />
A SysV init, on the other hand, would use a system of multiple directories (usually 7 by default), one for each runlevel: {{ic|/etc/rc.0,1,2,3,4,5,6}}. Each directory shall contain a gratuitous number of symlinks -- one for each service. Each symlink points to a corresponding script in the {{ic|/etc/init.d/}} directory. Needless to say, the SysV method is more complex, as by default, dozens of symlinks reside under each {{ic|/etc/rc.0,1,2,3,4,5,6}} directory in addition to all of the scripts under {{ic|/etc/init.d/}}. Keeping in line with its simple philosophy, Arch Linux uses the BSD-style init.<br />
<br />
===Q) Arch needs more press (i.e. advertisement)===<br />
'''A)''' Arch gets plenty of press as it is. The goal of Arch Linux is not to be large, but rather, to provide an elegant, minimalist and bleeding edge distribution focused on simplicity and code-correctness. Organic, sustainable growth occurs naturally amongst the target user base.<br />
<br />
===Q) Arch needs more developers===<br />
'''A)''' Possibly so. Feel free to volunteer your time! Visit the [http://bbs.archlinux.org forums], [[IRC_Channel|IRC channels]], and [http://mailman.archlinux.org/mailman/listinfo/ mailing lists], and see what needs to be done. Getting involved in the Community Contributions subforum is a good way to start.<br />
<br />
===Q) Why is Arch so slow? Programs open slowly or do not run at all!===<br />
'''A)''' Make sure that your hostname is correctly set in {{ic|/etc/hosts}} (i.e., that it matches the hostname in {{ic|/etc/rc.conf}}. Have a look at "Configure the System" in The [[Beginners_Guide#F:_Configure_the_System|Beginners' Guide]]). If the hostnames do not match, applications may start up very slowly.<br />
<br />
===Q) Why is my internet so slow compared to other operating systems?===<br />
'''A)''' Is your network configured correctly? Have you double checked your {{ic|/etc/rc.conf}} {{ic|/etc/hosts}} and {{ic|/etc/resolv.conf}}? Have a look at the Beginners Guide's [[Beginners_Guide#Configure_the_system|Configure the System]].<br />
<br />
===Q) Why is Arch using all my RAM?===<br />
'''A)''' Essentially, unused RAM is wasted RAM.<br />
<br />
Many new users notice how the Linux kernel handles memory differently than they are used to. Since accessing data in RAM is much faster than from disk, the kernel caches recently accessed data in memory. The cached data is only cleared when the system begins to run out of unused memory and new data still needs to be loaded.<br />
<br />
Perhaps the most common culprit of this confusion is the {{ic|free}} command:<br />
<br />
{{hc|$ free -m|<nowiki> total used free shared buffers cached<br />
Mem: 1009 741 267 0 104 359<br />
-/+ buffers/cache: 278 731<br />
Swap: 1537 0 1537</nowiki>}}<br />
<br />
It is important to note the {{ic|-/+ buffers/cache:}} line -- a representation of the amount of memory that is actually in "active use" and the amount of "available" memory, rather than "unused".<br />
<br />
In the above example, a laptop with 1G of total RAM appears to be using 741M of it, with naught but a few idling terminals and web browser open! However, upon examining the emphasized line, see that only 278M of it is in "active use", and in fact 731M is "available" for new data. Apparently, 104M of that "used" memory contains buffered data and 359M contains cached data, both of which can be cleared away if needed. Only 267M of the total is truly "free" of the burden of data storage.<br />
<br />
The result of all this? Performance!<br />
<br />
See [http://www.linuxjournal.com/article/2770 this wonderful article] if your curiosity has been piqued!<br />
<br />
===Q) Where did all my free space go?===<br />
'''A)''' The answer to this question depends on your system. There are some [[Common Applications#Disk Usage Display Programs|fine utilities]] that may help you find the answer.<br />
<br />
==Package Management==<br />
===Q) What package is X in?===<br />
<br />
You can find out with pkgfile (in the {{Pkg|pkgtools}} package).<br />
<br />
Example:<br />
{{hc|$ pkgfile glxinfo|extra/mesa-demos}}<br />
<br />
===Q) I've found an error with Package X. What should I do?===<br />
'''A)''' First, you need to figure out if this error is something the Arch team can fix. Sometimes it's not (e.g. Firefox crashes may be the fault of the Mozilla team); this is called an ''upstream error''. If it is an Arch problem, there is a series of steps you can take:<br />
#Search the forums for information. See if anyone else has noticed it.<br />
#Post a [[Reporting Bug Guidelines|bug report]] with detailed information at http://bugs.archlinux.org.<br />
#If you'd like, write a forum post detailing the problem and the fact that you have reported it already. This will help prevent a lot of people from reporting the same error.<br />
<br />
===Q) Arch packages need to use a unique naming convention. .pkg.tar.gz and .pkg.tar.xz are too long and/or confusing===<br />
'''A)''' This has been discussed on the Arch mailing list. Some proposed a .pac file extension. As far as is currently known, there is no plan to change the package extension.<br />
As Tobias Kieslich, one of the Arch devs, put it, "A package '''is''' a gzipped [xz] tarball! And it can be opened, investigated and manipulated by any tar-capable application. Moreover, the mime-type is automatically detected correctly by most applications."<br />
<br />
===Q) Pacman needs a library so other applications can easily access package information===<br />
'''A)''' Since version 3.0.0, pacman has been the front-end to libalpm, the "Arch Linux Package Management" library. This library allows alternative front-ends to be written (for instance, a GUI front-end).<br />
<br />
===Q) Why does Pacman not have an official GUI front-end?===<br />
'''A)''' Please read [[The Arch Way]] and [[Arch Linux]]. The answer is basically that the Arch dev team will not be providing one. Feel free to use one of those developed by users. There is a selective list on [[Pacman GUI Frontends]].<br />
<br />
===Q) Pacman needs ''"feature X"!''===<br />
'''A)''' Please read [[The Arch Way]] and [[Arch Linux]]. The Arch philosophy is "Keep It Simple". If you think the idea has merit, and does not violate this simple litany, then you may choose to discuss it on the forum [http://bbs.archlinux.org/ here]. You might also like to check [http://bugs.archlinux.org here]; it's a place for feature requests if you find it is important.<br />
<br />
However, the best way to get a feature added to Pacman or Arch Linux is to implement it yourself. The patch or code may or may not be officially accepted, but perhaps others will appreciate, test and contribute to your effort.<br />
<br />
===Q) Arch needs a stable package branch===<br />
Check out [http://www.archserver.org/ ArchServer].<br />
<br />
===Q) What is the difference between all these repositories?===<br />
'''A)''' See [[Official Repositories]].<br />
<br />
===Q) I just installed Package X. How do I start it?===<br />
'''A)''' If you're using a desktop environment like [[KDE]] or [[GNOME]], the program should automatically show up in your menu. If you're trying to run the program from a terminal and do not know the binary name, try executing {{ic|<nowiki>pacman -Qlq packagename | grep bin</nowiki>}}. A common problem for packages like Firefox or OpenOffice is that they are installed to {{ic|/opt}}, which is not in your {{ic|$PATH}} - you can {{ic|source /etc/profile}} or relogin to fix this.<br />
<br />
===Q) Why is there only a single version of each shared library in the official repositories? ===<br />
'''A)''' Several distributions, such as Debian, have different versions of shared libraries packaged as different packages: {{ic|libfoo1}}, {{ic|libfoo2}}, {{ic|libfoo3}} and so on. In this way it is possible to have apps compiled against different versions of libfoo installed on the same system.<br />
<br />
Unlike Debian, Arch is a rolling-release cutting-edge distribution. The most visible trait of a cutting-edge distribution is availability of the latest versions of software in the repositories; in the case of Arch it also means that only the latest versions of all packages are officially supported. By dropping support for outdated software, package maintainers are able to spend more time ensuring the newest versions work as expected. As soon as a new version of a shared library becomes available from upstream, it is added to the repositories and affected packages are rebuilt to utilize the new version.<br />
<br />
===Q) What if I run {{ic|pacman -Syu}} and there will be an update for a shared library, but no updates for apps that depend on it? ===<br />
'''A)''' This scenario should not happen at all. Assuming an application called {{ic|foobaz}} is in one of the official repositories and builds successfully against a new version of a shared library called {{ic|libbaz}}, it will be updated along with {{ic|libbaz}}. If, however, it doesn't build successfully, {{ic|foobaz}} package will have a versioned dependency, e.g.<br />
libbaz=1.5<br />
and will be removed by pacman during {{ic|libbaz}} upgrade due to a conflict.<br />
<br />
If {{ic|foobaz}} is a package that you built yourself or installed from AUR, you should try rebuilding {{ic|foobaz}} against the new version of {{ic|libbaz}}. If the build fails, report the bug to the {{ic|foobaz}} developers.<br />
<br />
===Q) Is it possible that there will be a major kernel update in the repository, but some of the driver packages will not have been updated for the latest kernel?===<br />
'''A)''' No, it's not possible. Major kernel updates i.e. {{ic|2.6.x}} to {{ic|2.6.x+1}} are always accompanied by rebuilds of all supported kernel driver packages. On the other hand, if you have an unsupported package, such as {{AUR|catalyst}}, installed on your system, then a kernel update might break things for you if you do not rebuild it for the latest kernel. Users are responsible for updating any unsupported packages that they have installed.<br />
<br />
===Q) Does Arch use package signing?===<br />
'''A)''' Yes. Package signing in [[pacman]] has been implemented since version 4. See [[package signing]] for more information.<br />
<br />
==Installation==<br />
===Q) Arch needs a better installer. Maybe a GUI installer.===<br />
'''A)''' The discussion of a "better" installer is subjective. The best way to deal with these issues is to fit the installer to [[The Arch Way]]. If a suggestion for a better installer is backed with concrete arguments, it might be considered during future development of the installer. Since installation doesn't occur often (see the question above on rolling release), it is not a high priority for developers or users. Consider using [[archiso]] or [[larch]] [http://larch.berlios.de/].<br />
<br />
===Q) I installed Arch, and now I am at a bash login! What now?===<br />
'''A)''' Have a look at the Arch Linux [[Beginners' Guide]].<br />
<br />
===Q) Which desktop environment or window manager should I use?===<br />
'''A)''' Since many are available to you, use the one you like the most to fit your needs. Have a look at the [[Desktop_Environment|Desktop Environments page.]]<br />
<br />
===Q) What makes Arch unique amongst other "minimal" distributions?===<br />
'''A)''' A few distributions may provide minimal installation methods sharing some similar aspects to the Arch installation process. However, a few points must be noted:<br />
# Arch has been ''fundamentally designed'' as a lightweight, minimal base environment upon which to build.<br />
# Whether the Netinstall or Core images are used, the ''only'' way to install Arch is by building up from this minimal base.<br />
# The installer, base system, and the entire distribution are inherently a K.I.S.S. design approach, which makes it uniquely suitable for its target base of users.<br />
# Installing services and packages requires manual, interactive user configuration. Unlike other distributions which automatically configure services and startup behavior, Arch philosophy puts emphasis on the power user's competence and prerogative to handle such responsibilities. <br />
# Arch packaging is designed to be minimal, and ''optional'' package dependencies are never automatically installed. Rather, the user is simply notified of their existence during package installation, resulting in a slimmer system.<br />
# AIF, the simple Arch installer, is designed for a high level of transparency, and the base system is manually configured by the user to their needed specifications.<br />
# Arch provides excellent, thoroughly complete documentation to guide one through this process of system assembly.<br />
<br />
==Other==<br />
===Q) I get an error every time I use pacman saying 'warning: current locale is invalid; using default "C" locale'. What do I do?===<br />
'''A)''' As the error message says, your locale isn't correctly configured. Have a look at the [[Configuring locales|locale configuration wiki page]].<br />
<br />
===Q) How do I connect to my wireless network?===<br />
'''A)''' See [[Wireless Setup]].<br />
<br />
===Q) How do I connect to my wired network?===<br />
'''A)''' See [[Configuring Network]].<br />
<br />
===Q) What is this AUR thing I keep hearing about?===<br />
'''A)''' See [[Arch User Repository#FAQ]].<br />
<br />
===Q) Why do I get a green screen whenever I try to watch a video?===<br />
'''A)''' Your color depth is set wrong. It may need to be 24 instead of 16, for example.<br />
<br />
===Q) Spellcheck is marking all of my text as incorrect!===<br />
'''A)''' Have you installed an aspell dictionary? Use {{ic|pacman -Ss aspell}} to see available dictionaries for downloading.<br />
<br />
If installing aspell dictionary files did not resolve the problem. It is most likely to be a problem with {{ic|enchant}}.<br />
<br />
Firstly, check what dictionary files aspell knows about using the command {{ic|aspell dicts}}:<br />
$ aspell dicts<br />
Prints out:<br />
en<br />
en_GB<br />
...etc<br />
<br />
If your respective language dictionary is listed, add the following line to {{ic|/usr/share/enchant/enchant.ordering}}:<br />
language:aspell<br />
en_GB:aspell # Example</div>Nydahl98https://wiki.archlinux.org/index.php?title=Beginners%27_guide_old&diff=209928Beginners' guide old2012-06-17T11:03:27Z<p>Nydahl98: Adding page link to swedish wiki</p>
<hr />
<div>[[Category:About Arch]]<br />
[[Category:Getting and installing Arch]]<br />
[[bg:Beginners' Guide]]<br />
[[cs:Beginners' Guide]]<br />
[[da:Beginners' Guide]]<br />
[[de:Anleitung für Einsteiger]]<br />
[[es:Beginners' Guide]]<br />
[[fa:راهنمای_تازهکارها]]<br />
[[fr:Installation]]<br />
[[he:Beginners' Guide]]<br />
[[hr:Beginners' Guide]]<br />
[[hu:Beginners' Guide]]<br />
[[id:Beginners' Guide]]<br />
[[it:Beginners' Guide]]<br />
[[ja:Beginners' Guide]]<br />
[[ko:Beginners' Guide]]<br />
[[lt:Beginners' Guide]]<br />
[[nl:Beginners' Guide]]<br />
[[pl:Beginners' Guide]]<br />
[[pt:Beginners' Guide]]<br />
[[ru:Beginners' Guide]]<br />
[[sk:Beginners' Guide]]<br />
[[sr:Beginners' Guide]]<br />
[[sv:Nybörjarguiden]]<br />
[[tr:Yeni_başlayanlar_rehberi]]<br />
[[uk:Beginners' Guide]]<br />
[[zh-CN:Beginners' Guide]]<br />
[[zh-TW:Beginners' Guide]]<br />
{{Temporary i18n}}<br />
{{Tip|This guide is also available in multiple pages, rather than one large copy. If you would rather follow it that way, please start '''[[Beginners' Guide/Preface|here]]'''.}}<br />
{{Article summary start}}<br />
{{Article summary text|Provides a highly detailed, explanatory guide to installing, configuring and using a full-featured Arch Linux system.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|:Category:Accessibility}}<br />
{{Article summary wiki|Official Installation Guide}}<br />
{{Article summary wiki|Install from SSH}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|General Troubleshooting}}<br />
{{Article summary end}}<br />
<!-- Include the different sub pages --><br />
{{:Beginners' Guide/Preface}}<br />
{{:Beginners' Guide/Preparation}}<br />
{{:Beginners' Guide/Installation}}<br />
{{:Beginners' Guide/Post-Installation}}<br />
{{:Beginners' Guide/Extra}}</div>Nydahl98https://wiki.archlinux.org/index.php?title=Pacman&diff=202923Pacman2012-05-26T18:59:12Z<p>Nydahl98: Added Swedish link</p>
<hr />
<div>[[Category:Package management]]<br />
[[de:Pacman]]<br />
[[fr:Pacman]]<br />
[[ro:Pacman]]<br />
[[tr:pacman]]<br />
[[sv:Pacman]]<br />
{{i18n|pacman}} {{Lowercase title}}<br />
<br />
{{Article summary start}}<br />
{{Article summary text|pacman is the Arch Linux [[Wikipedia:Package management system|package manager]]. Package managers are used to install, upgrade, and remove software. This article covers basic usage and troubleshooting tips.}}<br />
{{Article summary heading|Overview}}<br />
{{Article summary text|{{Package management overview}}}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Downgrading Packages}}<br />
{{Article summary wiki|Improve Pacman Performance}}<br />
{{Article summary wiki|pacman GUI Frontends}}<br />
{{Article summary wiki|pacman Rosetta}}<br />
{{Article summary wiki|pacman Tips}}<br />
{{Article summary wiki|Pacman package signing}}<br />
{{Article summary wiki|FAQ#Package_Management}}<br />
{{Article summary wiki|Pacman-key}}<br />
{{Article summary wiki|Pacnew and Pacsave Files}}<br />
{{Article summary heading|Resources}}<br />
{{Article summary link|libalpm(3) Manual Page|https://www.archlinux.org/pacman/libalpm.3.html}}<br />
{{Article summary link|pacman(8) Manual Page|https://www.archlinux.org/pacman/pacman.8.html}}<br />
{{Article summary link|pacman.conf(5) Manual Page|https://www.archlinux.org/pacman/pacman.conf.5.html}}<br />
{{Article summary link|repo-add(8) Manual Page|https://www.archlinux.org/pacman/repo-add.8.html}}<br />
{{Article summary end}}<br />
<br />
The '''[https://archlinux.org/pacman/ pacman]''' [[Wikipedia:Package management system|package manager]] is one of the main features of Arch Linux. It combines a simple binary package format with an easy-to-use build system (see [[makepkg]] and [[Arch Build System]]). The goal of pacman is to make it possible to easily manage packages, whether they are from the official Arch repositories or the user's own builds.<br />
<br />
pacman keeps the system up to date by synchronizing package lists with the master server. This server/client model also allows you to download/install packages with a simple command, complete with all required dependencies.<br />
<br />
pacman is written in the C programming language and uses the {{ic|.pkg.tar.xz}} package format.<br />
<br />
{{Tip|The official {{Pkg|pacman}} package also contains other useful tools, such as '''makepkg''', '''pactree''', '''vercmp''' and more. You can get the full list from {{ic|pacman -Ql pacman <nowiki>|</nowiki> grep bin}} }}<br />
<br />
== Configuration ==<br />
<br />
pacman configuration is located in {{ic|/etc/pacman.conf}}. This is the place where the user configures the program to work in the desired manner. In-depth information about the configuration file can be found in [https://archlinux.org/pacman/pacman.conf.5.html man pacman.conf].<br />
<br />
=== General options ===<br />
<br />
General options are in the {{ic|[options]}} section. Read the man page or look in the default {{ic|pacman.conf}} for information on what can be done here.<br />
<br />
==== Skip package from being upgraded ====<br />
<br />
To skip upgrading a specific package, specify it as such:<br />
<br />
{{bc|<nowiki>IgnorePkg=linux</nowiki>}}<br />
<br />
For multiple packages use a space-separated list, or use additional {{ic|IgnorePkg}} lines.<br />
<br />
==== Skip package group from being upgraded ====<br />
<br />
As with packages, skipping a whole package group is also possible:<br />
<br />
{{bc|<nowiki>IgnoreGroup=gnome</nowiki>}}<br />
<br />
==== Skip files from being installed to system ====<br />
<br />
To always skip installation of specific directories list them under {{Ic|NoExtract}}. For example, to avoid installation of [[systemd]] units use this:<br />
<br />
{{bc|<nowiki>NoExtract=usr/lib/systemd/system/*</nowiki>}}<br />
<br />
=== Repositories ===<br />
<br />
This section defines which repositories to use, as referred to in {{ic|pacman.conf}}. They can be stated here directly, or included from another file.<br />
<br />
All official repositories use the same {{ic|/etc/pacman.d/mirrorlist}} file which uses the {{ic|$repo}} variable, making it necessary to maintain only one list.<br />
<br />
The following is an example for the [[Official Repositories|official repositories]] that defers [[mirrors]] to {{ic|/etc/pacman.d/mirrorlist}}.<br />
<br />
{{bc|<nowiki><br />
#[testing]<br />
#SigLevel = PackageRequired<br />
#Include = /etc/pacman.d/mirrorlist<br />
<br />
[core]<br />
#SigLevel = PackageRequired<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
[extra]<br />
#SigLevel = PackageOptional<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
#[community-testing]<br />
#SigLevel = PackageRequired<br />
#Include = /etc/pacman.d/mirrorlist<br />
<br />
[community]<br />
#SigLevel = PackageOptional<br />
Include = /etc/pacman.d/mirrorlist<br />
# If you want to run 32 bit applications on your x86_64 system,<br />
# enable the multilib repositories as required here.<br />
<br />
#[multilib-testing]<br />
#SigLevel = PackageRequired<br />
#Include = /etc/pacman.d/mirrorlist<br />
<br />
[multilib]<br />
#SigLevel = PackageOptional<br />
Include = /etc/pacman.d/mirrorlist<br />
<br />
# An example of a custom package repository. See the pacman manpage for<br />
# tips on creating your own repositories.<br />
#[custom]<br />
#SigLevel = Optional TrustAll<br />
#Server = file:///home/custompkgs<br />
</nowiki>}}<br />
<br />
{{Note|Care should be taken when using the [testing] repository. It is in active development and updating may cause some packages to stop working. People who use the [testing] repository are encouraged to subscribe to the [https://mailman.archlinux.org/mailman/listinfo/arch-dev-public arch-dev-public mailing list] for current information.}}<br />
<br />
=== Package security ===<br />
<br />
Pacman 4 supports signed packages, which adds an extra layer of security to the packages. To enable signature verification, take a look [[pacman-key|here]].<br />
<br />
== Usage ==<br />
<br />
What follows is just a small sample of the operations that pacman can perform. To read more examples, refer to [https://archlinux.org/pacman/pacman.8.html man pacman].<br />
<br />
===Installing packages===<br />
<br />
====Installing specific packages====<br />
To install a single package or list of packages (including dependencies), issue the following command:<br />
<br />
# pacman -S ''package_name1'' ''package_name2'' ...<br />
<br />
Sometimes there are multiple versions of a package in different repositories, e.g. [extra] and [testing]. To install the former version, the repository needs to be defined in front:<br />
<br />
# pacman -S extra/''package_name''<br />
<br />
====Installing package groups====<br />
Some packages belong to a group of packages that can all be installed simultaneously. For example, issuing the command:<br />
<br />
# pacman -S gnome<br />
will install all the packages that belong to the {{ic|gnome}} group. To see what packages belong to the gnome group, run:<br />
<br />
# pacman -Sg gnome<br />
<br />
Also visit https://archlinux.org/groups/ to see what package groups are available.<br />
<br />
{{Note|If a package in the list is already installed on the system, it will be reinstalled even if it is already up to date. This behavior can be overridden with the {{ic|--needed}} option.}}<br />
<br />
{{Warning|1=When installing packages, do '''not''' refresh the package list without [[#Upgrading packages|upgrading]] the system (i.e. {{ic|pacman -Sy ''package_name''}}); this can lead to dependency issues, see [[#Partial upgrades are unsupported]] and [https://bbs.archlinux.org/viewtopic.php?id=89328].}}<br />
<br />
=== Removing packages ===<br />
<br />
To remove a single package, leaving all of its dependencies installed:<br />
<br />
# pacman -R ''package_name''<br />
<br />
To remove a package and its dependencies which are not required by any other installed package:<br />
<br />
# pacman -Rs ''package_name''<br />
<br />
To remove a package, its dependencies and all the packages that depend on the target package:<br />
<br />
{{Warning|This operation is recursive, and must be used with care since it can remove many potentially needed packages.}}<br />
<br />
# pacman -Rsc ''package_name''<br />
<br />
To remove a package, which is required by another package, without removing the dependent package:<br />
<br />
# pacman -Rdd ''package_name''<br />
<br />
pacman saves important configuration files when removing certain applications and names them with the extension: {{ic|.pacsave}}. To prevent the creation of these backup files use the {{ic|-n}} option:<br />
<br />
# pacman -Rn ''package_name''<br />
<br />
{{Note|pacman will not remove configurations that the application itself creates (for example "dotfiles" in the home folder).}}<br />
<br />
===Upgrading packages===<br />
<br />
pacman can update all packages on the system with just one command. This could take quite a while depending on how up-to-date the system is. This command can synchronize the repository databases ''and'' update the system's packages (excluding 'local' packages that are not in the configured repositories):<br />
<br />
# pacman -Syu<br />
<br />
{{Warning|Instead of immediately updating as soon as updates are available, users must recognize that due to the nature of Arch's rolling release approach, an update may have unforeseen consequences. This means that it is not wise to update if, for example, one is about to deliver an important presentation. Rather, update during free time and be prepared to deal with any problems that may arise.}}<br />
<br />
pacman is a powerful package management tool, but it does not attempt to handle all corner cases. Read [[The Arch Way]] if this causes confusion. Users must be vigilant and take responsibility for maintaining their own system. '''When performing a system update, it is essential that users read all information output by pacman and use common sense.''' If a user-modified configuration file needs to be upgraded for a new version of a package, a {{ic|.pacnew}} file will be created to avoid overwriting settings modified by the user. Pacman will prompt the user to merge them. These files require manual intervention from the user and it is good practice to handle them right after every package upgrade or removal. See [[Pacnew and Pacsave Files]] for more info.<br />
<br />
{{Tip|Remember that pacman's output is logged in {{ic|/var/log/pacman.log}}.}}<br />
<br />
Before upgrading, it is advisable to visit the [https://archlinux.org/ Arch Linux home page] to check the latest news (or subscribe to the RSS feed): when updates require out-of-the-ordinary user intervention (more than what can be handled simply by following the instructions given by pacman), an appropriate news post will be made.<br />
<br />
If one encounters problems that cannot be solved by these instructions, make sure to search the forum. It is likely that others have encountered the same problem and have posted instructions for solving it.<br />
<br />
=== Querying package databases ===<br />
<br />
pacman queries the local package database with the {{ic|-Q}} flag; see:<br />
<br />
$ pacman -Q --help<br />
<br />
and queries the sync databases with the {{ic|-S}} flag; see:<br />
<br />
$ pacman -S --help<br />
<br />
pacman can search for packages in the database, searching both in packages' names and descriptions:<br />
<br />
$ pacman -Ss ''string1'' ''string2'' ...<br />
<br />
To search for already installed packages:<br />
<br />
$ pacman -Qs ''string1'' ''string2'' ...<br />
<br />
To display extensive information about a given package:<br />
<br />
$ pacman -Si ''package_name''<br />
<br />
For locally installed packages:<br />
<br />
$ pacman -Qi ''package_name''<br />
<br />
Passing two {{ic|-i}} flags will also display the list of backup files and their modification states:<br />
<br />
$ pacman -Qii ''package_name''<br />
<br />
To retrieve a list of the files installed by a package:<br />
<br />
$ pacman -Ql ''package_name''<br />
<br />
For packages not installed, use {{ic|pkgfile}} from [[pkgtools]] or {{ic|nosr}} from {{aur|nosr-git}} from [[AUR]].<br />
<br />
One can also query the database to know which package a file in the file system belongs to:<br />
<br />
$ pacman -Qo /path/to/a/file<br />
<br />
To list all packages no longer required as dependencies (orphans):<br />
<br />
$ pacman -Qdt<br />
<br />
To list a dependency tree of a package:<br />
<br />
$ pactree ''package_name''<br />
<br />
To list all the packages depending on a package, use {{ic|whoneeds}} from [[pkgtools]]:<br />
<br />
$ whoneeds ''package_name''<br />
<br />
=== Additional commands ===<br />
<br />
Upgrade the system and install a list of packages (one-liner):<br />
<br />
# pacman -Syu ''package_name1'' ''package_name2'' ...<br />
<br />
Download a package without installing it:<br />
<br />
# pacman -Sw ''package_name''<br />
<br />
Install a 'local' package that is not from a repository:<br />
<br />
# pacman -U /path/to/package/package_name-version.pkg.tar.xz<br />
<br />
Install a 'remote' package (not from a repository):<br />
<br />
# pacman -U <nowiki>http://www.example.com/repo/example.pkg.tar.xz</nowiki><br />
<br />
Clean the package cache of packages that are not currently installed ({{ic|/var/cache/pacman/pkg}}):<br />
<br />
{{Warning|Only do this if sure that the current versions of installed packages are stable and a [[Downgrading Packages|downgrade]] is not needed as {{ic|pacman -Sc}} removes all the old versions of installed packages.}}<br />
<br />
# pacman -Sc<br />
<br />
Clean the entire package cache:<br />
<br />
{{Warning|This clears the entire package cache. Doing this is a bad practice since it removes the ability to downgrade to the current set of packages in the case that an upgrade causes breakage.}}<br />
<br />
# pacman -Scc<br />
<br />
As an alternative to both the {{ic|-Sc}} and {{ic|-Scc}} switches, consider using {{AUR|Cacheclean}} from the [[AUR]]. This python script selectively cleans pacman's cache keeping x old version of each package therein.<br />
<br />
===Partial upgrades are unsupported===<br />
Arch Linux is a rolling release, and new [[Wikipedia:Library (computing)|library]] versions will be pushed to the repositories. The developers and trusted users will rebuild all the packages in the repositories that need to be rebuilt against the libraries. If the system has locally installed packages (such as [[Arch User Repository|AUR]] packages), users will need to rebuild them when their dependencies receive a [[Wikipedia:soname|soname]] bump.<br />
<br />
This means that partial upgrades are '''not supported'''. Do not use {{ic|pacman -Sy package}} or any equivalent such as {{ic|pacman -Sy}} and then {{ic|pacman -S package}}. Always upgrade before installing a package -- particularly if pacman has refreshed the sync repositories. Be very careful when using {{ic|IgnorePkg}} and {{ic|IgnoreGroup}} for the same reason.<br />
<br />
If a partial upgrade scenario has been created, and binaries are broken because they cannot find the libraries they are linked against, '''do not "fix" the problem simply by symlinking'''. Libraries receive [[Wikipedia:soname|soname]] bumps when they are '''not backwards compatible'''. A simple {{ic|pacman -Syu}} to a properly synced mirror will fix the issue as long as pacman is not broken.<br />
<br />
== Troubleshooting ==<br />
{{FAQ<br />
|question=An update to package XYZ broke my system!<br />
|answer=Arch Linux is a rolling-release cutting-edge distribution. Package updates are available as soon as they are deemed stable enough for general use. However, updates sometimes require user intervention: configuration files may need to be updated, optional dependencies may change, etc.<br />
<br />
The most important tip to remember is to not "blindly" update Arch systems. Always read the list of packages to be updated. Note whether "critical" packages are going to be updated ({{ic|linux}}, {{ic|xorg-server}}, and so on). If so, it is usually a good idea to check for any news at https://www.archlinux.org/ and scan recent forum posts to see if people are experiencing problems as a result of an update.<br />
<br />
If a package update is expected/known to cause problems, packagers will ensure that pacman displays an appropriate message when the package is updated. If experiencing trouble after an update, double-check pacman's output by looking at the log ({{ic|/var/log/pacman.log}}). <br />
<br />
At this point, '''only after ensuring there is no information available through pacman, there is no relative news on https://www.archlinux.org/, and there are no forum posts regarding the update''', consider seeking help on the forum, over [[IRC Channel|IRC]], or [[Downgrading Packages|downgrading the offending package]].}}<br />
<br />
{{FAQ<br />
|question=I know an update to package ABC was released, but pacman says my system is up to date!<br />
|answer=pacman mirrors are not synced immediately. It may take over 24 hours before an update is available to you. <br />
<br />
The only options are be patient or use another mirror. [https://www.archlinux.org/mirrors/status/ MirrorStatus] can help you identify an up-to-date mirror.}}<br />
<br />
{{FAQ<br />
|question=I get an error when updating: "file exists in filesystem"!<br />
|answer=ASIDE: ''Taken from https://bbs.archlinux.org/viewtopic.php?id=56373 by Misfit138.''<br />
<br />
error: could not prepare transaction<br />
error: failed to commit transaction (conflicting files)<br />
package: /path/to/file exists in filesystem<br />
Errors occurred, no packages were upgraded.<br />
<br />
Why this is happening: pacman has detected a file conflict, and by design, will not overwrite files for you. This is a design feature, not a flaw. <br />
<br />
The issue is usually trivial to solve. A safe way is to first check if another package owns the file ({{ic|pacman -Qo /path/to/file}}). If the file is owned by another package, [[Reporting Bug Guidelines|file a bug report]]. If the file is not owned by another package, rename the file which 'exists in filesystem' and re-issue the update command. If all goes well, the file may then be removed.<br />
<br />
If you had installed a program manually without using pacman or a frontend, you have to remove it and all its files and reinstall properly using pacman.<br />
<br />
Every installed package provides {{ic|/var/lib/pacman/local/$package-$version/files}} file that contains metadata about this package. If this file gets corrupted - is empty or missing - it results in "file exists in filesystem" errors when trying to update the package.<br />
Such an error usually concerns only one package and instead of manually renaming and later removing all the files that belong to the package in question, you can run {{ic|pacman -S --force $package}} to force pacman to overwrite these files.<br />
<br />
Do '''not''' run {{ic|pacman -Syu --force}}.<br />
}}<br />
<br />
{{FAQ<br />
|question=I get an error when installing a package: "not found in sync db"<br />
|answer=Firstly, ensure the package actually exists (and watch out for typos!) If certain the package exists, your package list may be out-of-date or your repositories may be incorrectly configured. Try running {{ic|pacman -Syy}} to force a refresh of all package lists.}}<br />
<br />
{{FAQ<br />
|question=pacman is repeatedly upgrading the same package!<br />
|answer=This is due to duplicate entries in {{ic|/var/lib/pacman/local/}}, such as two {{ic|linux}} instances. {{ic|pacman -Qi}} outputs the correct version, but {{ic|pacman -Qu}} recognizes the old version and therefore will attempt to upgrade.<br />
<br />
Solution: delete the offending entry in {{ic|/var/lib/pacman/local/}}.<br />
<br />
{{Note|pacman version 3.4 should display an error in case of duplicate entries, which should make this note obsolete.}}}}<br />
<br />
{{FAQ<br />
|question=pacman crashes during an upgrade!<br />
|answer=In the case that pacman crashes with a "database write" error whilst removing packages, and reinstalling or upgrading packages fails:<br />
#Boot using the Arch live CD<br />
#Mount your root filesystem<br />
#Update the pacman database via {{ic|pacman -Syy}}<br />
#Reinstall the broken package via {{ic|pacman -r /path/to/root -S package}}}}<br />
<br />
{{FAQ<br />
|question=I installed software using {{ic|make install}}; these files do not belong to any package!<br />
|answer=If receiving a "conflicting files" error, note that pacman will overwrite manually-installed software if supplied with the {{ic|-f}} switch ({{ic|pacman -Sf}}).<br />
<br />
See [[pacman Tips#Identify files not owned by any package]] for a script that searches the filesystem for ''disowned'' files.}}<br />
<br />
{{FAQ<br />
|question=I need a package with a specific file. How do I know what provides it?<br />
|answer=Install [[pkgtools]] which contains {{ic|pkgfile}} that uses a separate database with all files and their associated packages.}}<br />
<br />
{{FAQ<br />
|question=pacman is completely broken! How do I reinstall it?<br />
|answer=In the case that pacman is broken beyond repair, manually download the necessary packages ({{Pkg|openssl}}, {{Pkg|libarchive}}, and {{Pkg|pacman}}) and extract them to root. The pacman binary will be restored along with its default configuration file. Afterwards, reinstall these packages with pacman to maintain package database integrity. Additional information and an example (outdated) script that automates the process is available in [https://bbs.archlinux.org/viewtopic.php?id=95007 this] forum post.}}<br />
<br />
{{FAQ<br />
|question=After updating my system, I get a "unable to find root device" error after rebooting and my system will no longer boot.<br />
|answer=Most likely your initramfs got broken during a kernel update (improper use of pacman's {{ic|--force}} option can be a cause). Use the below procedure in order to restore it.<br />
<br />
Boot from a Arch live-cd. Once booted, run:<br />
<br />
# mkdir /mnt/arch<br />
# mount /dev/sda''X'' /mnt/arch (your root partition)<br />
# cd /mnt/arch<br />
# mount -t proc proc proc/<br />
# mount -t sysfs sys sys/<br />
# mount -o bind /dev dev/<br />
# mount /dev/sda''X'' boot/ (your /boot partition) #This step is not needed if you do not have a separate boot partition<br />
# chroot .<br />
# pacman -Syu udev mkinitcpio<br />
# mkinitcpio -p linux<br />
<br />
Afterwards, unmount and reboot.<br />
<br />
}}<br />
<br />
== See also ==<br />
* [[Common Applications/Utilities#Package management]]</div>Nydahl98