Arch Linux มี AUR (Arch User Repository) ซึ่งเป็นชุดของแพ็คเกจที่ผู้ใช้สร้างขึ้น ฉันจะติดตั้งแพ็กเกจเหล่านี้บน Arch Linux ARM ได้อย่างไร?
Arch Linux มี AUR (Arch User Repository) ซึ่งเป็นชุดของแพ็คเกจที่ผู้ใช้สร้างขึ้น ฉันจะติดตั้งแพ็กเกจเหล่านี้บน Arch Linux ARM ได้อย่างไร?
คำตอบ:
ตามหน้าBuilding Packagesจาก Arch Linux ARM คุณต้อง
ติดตั้งสิ่งจำเป็นสำหรับการสร้าง สิ่งเหล่านี้จำเป็นสำหรับการรวบรวมแพ็คเกจบน Arch Linux ARM
$ sudo pacman -S kernel26-headers file base-devel abs
PKGBUILD
ขอรับ คุณต้องดาวน์โหลด tarball ที่คุณต้องการ คุณสามารถค้นหา tarballs สำหรับโปรแกรมที่เอื้อ
ทำแพ็คเกจ ถัดไปคุณต้องเรียกใช้makepkg
เพื่อสร้างแพคเกจที่ pacman สามารถติดตั้งได้
$ makepkg -Acs
-A
ตัวเลือกที่จะไม่สนใจเป้าหมายสถาปัตยกรรม Arch -c
ตัวเลือกทำความสะอาดขึ้นไดเรกทอรีหลังจากที่makepkg
จะทำและ-s
ติดตั้งการอ้างอิงที่จำเป็น
แนะนำว่าคุณไม่ได้ทำงาน
makepkg
เป็นรากที่จะสามารถทำให้เกิดความเสียหายถาวรให้ระบบของคุณ หากคุณจำเป็นต้องเรียกใช้เป็นรูทจริงๆให้ใช้--asroot
ตัวเลือก
ติดตั้งแพ็คเกจ ควรจะมีการสร้างแฟ้มในไดเรกทอรีที่มีประเภทไฟล์makepkg
.pkg.tar.xz
คุณควรติดตั้งแพ็กเกจนี้โดยใช้
-U
ตัวเลือกกับ pacman
$ sudo pacman -U x.pkg.tar.xz
ให้แน่ใจว่าคุณแทนที่
x.pkg.tar.xz
ด้วยชื่อแพคเกจจริง
kernel26-headers
ยังคงเกิดขึ้นจริง? ไม่พบอะไรเกี่ยวกับมันด้วย google และกลุ่มที่มีbase-devel
file
ทางออกที่ง่ายที่สุดคือการใช้ Yaourt (อีกหนึ่งเครื่องมือที่เก็บผู้ใช้)
คุณสามารถติดตั้งด้วย:
pacman -S yaourt
จากนั้นซิงค์กับ AUR:
yaourt -Syy
จากนั้นคุณสามารถค้นหาแพ็คเกจ AUR:
yaourt package-name
ซึ่งจะให้พรอมต์แบบโต้ตอบสำหรับการติดตั้ง
หรือถ้าคุณรู้ชื่อแพคเกจอย่างแน่นอน:
yaourt -S package-name
คำสั่ง pacman ส่วนใหญ่เหมือนกันสำหรับ yaourt
pacman
และyaourt
คืออะไร?
pacman -S yaourt
ไม่ทำงานและฉันไม่สามารถเพิ่มได้archlinuxfr
เนื่องจากพวกเขาไม่ได้โฮสต์armv6h
yaourt
เคยเป็นที่เก็บหลักสำหรับ Arch Arm บางทีพวกเขาอาจลบมันออก .... แต่คุณยังสามารถสร้างมันได้จากแหล่งที่มาซึ่งอธิบายไว้ในบทความ AURเกี่ยวกับ Arch Wiki และมีแฟ้มแพคเกจสำหรับมันนี่ ฉันหวังว่าจะช่วย!
คำตอบทั้งหมดข้างต้นล้าสมัยแล้ว คำตอบของฉันไม่ดีมาก แต่หวังว่าจะหลีกเลี่ยงปัญหาที่จะล้าสมัย
วิกิพีเดียอย่างเป็นทางการอธิบายในรายละเอียดวิธีการหนึ่งที่ไปเกี่ยวกับการติดตั้ง / การสร้างแพคเกจที่ไม่เป็นส่วนหนึ่งของ pacman (บรรจุหีบห่อและ yaourt ณ วันนี้บริการ)
ทั้งผู้บรรจุหีบห่อและ yaourt ถูกตั้งค่าสถานะล้าสมัยใน AUR (อาจมีการเปลี่ยนแปลงในอนาคต)
ฉันใช้เครื่องบรรจุหีบห่อเพื่อจุดประสงค์นี้ซึ่งในความคิดของฉันเป็นทางเลือกที่เร็วกว่าสำหรับ yaourt
เพียงเพิ่มสองบรรทัดนี้ใน/etc/pacman.conf
:
[archlinuxfr]
Server = http://repo.archlinux.fr/$arch
จากนั้นคุณสามารถติดตั้ง / ปรับปรุงบรรจุหีบห่อผ่าน pacman:
# pacman -Sy packer
และใช้เครื่องบรรจุหีบห่อในแบบเดียวกับที่คุณใช้ Pacman:
$ packer -S some_aur_package
นอกจากนี้หากคุณไม่ต้องการอัปเกรดแพ็คเกจทั้งหมดรวมถึงแพ็คเกจจาก AUR:
$ packer -Syu
Packer จะเริ่มทำงานpacman -Syu
เพื่ออัพเกรดแพ็คเกจจากที่เก็บอย่างเป็นทางการจากนั้นจะอัพเกรดแพ็คเกจ AUR ทั้งหมด
สิ่งสำคัญ! yaourt
ไม่ปลอดภัยและเลิกใช้ตามวิกิ: https://wiki.archlinux.org/index.php/AUR_helpers
ในขณะที่ @Jivings คำตอบกลับมาดีที่สุดใน `12 แต่ฉันขอแนะนำให้ติดตั้งหนึ่งในผู้จัดการแพคเกจ arch arch ที่ปลอดภัยและมีคุณลักษณะมากขึ้น (และฉันขอแนะนำให้มีคนอัปเดต @Jivings คำตอบเนื่องจากมีการเปิดเผยมากที่สุด)
ฉันกำลังใช้aurman
และขุดมัน มีคุณสมบัติทั้งหมดมีความปลอดภัยและ cli ทำงานได้เกือบเหมือน pacman ติดตั้ง:
cd ~/Downloads
git clone https://aur.archlinux.org/aurman.git
cd aurman
makepkg -Acs
# Change xxx below to downloaded version
sudo pacman -U aurman-xxx.pkg.tar.xz
จากนั้นคุณสามารถทำตามคำแนะนำของ Pacman ได้เกือบทั้งหมด แต่ใช้aurman
แทน Pacman คำแนะนำต่อไปนี้ถูกนำมาจากhttps://www.digitalocean.com/community/tutorials/how-to-use-arch-linux-package-managementและให้ฉันเริ่ม:
Arch Linux ให้บริการการจัดการแพ็คเกจคล้ายกับที่พบในดิสทริบิวชั่นลีนุกซ์รุ่นอื่น ๆ นี่คือแนวทางการดำเนินการจัดการแพ็คเกจทั่วไป
ก่อนดำเนินการเพิ่มเติมตรวจสอบให้แน่ใจว่าฐานข้อมูลแพ็คเกจของคุณเป็นปัจจุบันด้วย:
sudo pacman -Sy
การจัดการแพ็คเกจใน Arch Linux ส่วนใหญ่นั้นมีรูปแบบที่น่าพอใจ:
pacman -<a-z><a-z>.
ตัวอย่างเช่นคำสั่งปกติสำหรับการค้นหาที่เก็บ pacman คือ
pacman -Ss <package>
...
หรือคุณสามารถใช้ pacman -Q ด้วยข้อเสียของการไม่เน้นสี
pacman -Qs linux
หากคุณต้องการเน้นสีด้วย pacman -S คุณสามารถยกเลิกการใส่เครื่องหมายสีจาก /etc/pacman.conf มันเน้นสิ่งที่แตกต่างจาก pacsearch ดังนั้นคุณอาจต้องการลองทั้งสองและดูว่าคุณชอบแบบไหนดีกว่า
sudo vi /etc/pacman.conf
...
# Misc options
#UseSyslog
Color
#TotalDownload
CheckSpace
#VerbosePkgLists
...
pacman -Qi displays basic information about an installed package.
pacman -Qi linux
Name : linux
Version : 3.8.4-1
Description : The linux kernel and modules
Architecture : x86_64
URL : http://www.kernel.org/
Licenses : GPL2
Groups : base
Provides : kernel26=3.8.4
Depends On : coreutils linux-firmware kmod mkinitcpio>=0.7
Optional Deps : crda: to set the correct wireless channels of your country
Required By : None
Optional For : None
Conflicts With : kernel26
Replaces : kernel26
Installed Size : 64728.00 KiB
Packager : Tobias Powalowski <tpowa@archlinux.org>
Build Date : Wed Mar 20 21:16:17 2013
Install Date : Fri Mar 29 01:02:14 2013
Install Reason : Explicitly installed
Install Script : Yes
Validated By : Unknown
หาก pacman -Qi ถูกส่งผ่านโดยไม่มีอาร์กิวเมนต์มันจะส่งคืนแพ็กเกจทั้งหมดในระบบ คุณสามารถค้นหาเอาต์พุตนี้เพื่อรับข้อมูลพิเศษเกี่ยวกับแพ็กเกจที่ติดตั้ง
ตัวอย่างเช่นหากคุณต้องการได้รับแต่ละแพ็คเกจและขนาด:
pacman -Qi | grep -e "Name" -e "Installed Size"
Name : a52dec
Installed Size : 244.00 KiB
Name : aalib
Installed Size : 768.00 KiB
...
ขณะที่ pacman -Qi ให้ข้อมูลเกี่ยวกับแพ็กเกจที่ติดตั้ง pacman -Si เคียวรีฐานข้อมูลสำหรับข้อมูลที่ดึงข้อมูลล่าสุดเกี่ยวกับแพ็กเกจ
pacman -Si linux
pacman -Ql แสดงรายการไฟล์ทั้งหมดที่เกี่ยวข้องกับแพ็คเกจ
pacman -Ql vi
vi /usr/
vi /usr/bin/
vi /usr/bin/edit
vi /usr/bin/ex
vi /usr/bin/vedit
vi /usr/bin/vi
...
ชื่อแพ็กเกจในแต่ละบรรทัดสามารถทำให้เอาต์พุตยากกว่าที่จะใช้ในสคริปต์ pacman -Qlq (เช่น "รายการค้นหา pacman, เงียบ") จะไม่พิมพ์ชื่อแพ็กเกจ
pacman -Qlq vi
/usr/
/usr/bin/
/usr/bin/edit
/usr/bin/ex
/usr/bin/vedit
/usr/bin/vi
...
คุณสามารถใช้ pacman -Qlq | grep bin เพื่อค้นหาไฟล์ทั้งหมดในแพ็คเกจที่อยู่ในโฟลเดอร์ bin (และอาจเป็นไฟล์เรียกทำงาน) สิ่งนี้มีประโยชน์เมื่อคำสั่งที่เกี่ยวข้องกับแพ็กเกจแตกต่างจากชื่อแพ็กเกจ
pacman -Qql pacman | grep bin
วิธีทั่วไปในการติดตั้งหรืออัพเกรดแพ็คเกจมาตรฐานคือ pacman -S
sudo pacman -S <package>
แพคเกจมักจะมีรูปแบบที่คล้ายกันในชื่อของพวกเขา วงเล็บสามารถใช้เป็นทางลัดได้
sudo pacman -S lua-{sec,socket,zlib}
บางครั้งคุณอาจต้องการดาวน์โหลดแพ็คเกจเพื่อการเก็บถาวรโดยไม่ต้องติดตั้ง pacman -Sw จะดาวน์โหลดแพ็คเกจไปยังโฟลเดอร์แคช
sudo pacman -Sw <package>
หากมีการดาวน์โหลดแพคเกจหรือหากคุณทราบ URL คุณสามารถติดตั้งได้โดยตรง
sudo pacman -U <package_path>
เนื่องจาก pacman revolves รอบความคิดของ "ซิงค์" แพคเกจด้วยพื้นที่เก็บข้อมูลระยะไกลpacman -S
จะอัพเกรดแพคเกจหากมีการติดตั้งแล้ว
Pacman สามารถแสดงรายการแพ็คเกจที่ล้าสมัย
pacman -Qu
น่าเสียดายที่มันไม่แสดงรุ่นของแพ็คเกจในที่เก็บดังนั้นคุณจะไม่สามารถบอกได้ว่าแต่ละแพคเกจล้าสมัยแล้ว หากนี่เป็นสิ่งสำคัญสำหรับคุณคุณอาจต้องการตรวจสอบตัวจัดการแพ็กเกจของบุคคลที่สามหรือเขียนสคริปต์ที่เชื่อมโยงกับเวอร์ชันแพ็กเกจที่ได้รับจาก pacman -Qi และ pacman -Si
คุณสามารถรับเวอร์ชันจาก pacman -Qi หรือ pacman -Si โดยใช้นิพจน์ทั่วไป
pacman -Qi linux | grep "Version" | sed 's/^Version\s*:\s//'
3.8.4-1
จากนั้นเขียนสคริปต์ที่แสดงเวอร์ชันต่างกัน
for i in $(pacman -Qqu)
do
printf "$i: "
printf "$(pacman -Qi "$i" | grep 'Version' | sed 's/^Version\s*:\s//') "
echo "$(pacman -Si "$i" | grep 'Version' | sed 's/^Version\s*:\s//')"
done
Pacman มีวิธีในการอัพเกรดแพ็คเกจทั้งหมดของคุณในคราวเดียว แต่ไม่แนะนำให้ทำเพราะ Arch เป็นการแจกจ่ายแบบโรลลิ่ง หากมีปัญหาเกิดขึ้นอาจต้องใช้เวลาในการพิจารณาสาเหตุของปัญหา
sudo pacman -Syu
Arch Linux ไม่ได้ดูแลแพ็คเกจที่เลิกใช้อย่างเป็นทางการ แต่คุณจะต้องพึ่งพาแคชแพ็กเกจและสถานที่ต่างๆเช่น Arch Rollback Machine ขุมทรัพย์
ทุกแพ็คเกจที่ดาวน์โหลดด้วย pacman จะถูกเก็บไว้ใน / var / cache / pacman / pkg
ls /var/cache/pacman/pkg | grep linux
linux-3.11.6-1-x86_64.pkg.tar.xz
linux-3.9.7-1-x86_64.pkg.tar.xz
...
หากคุณต้องการเปลี่ยนกลับเป็นแพ็คเกจในแคชให้ติดตั้งโดยตรง
pacman -U <path_to_cached_file>
Arch Rollback Machine เป็นชุดของภาพรวมของกระจก Arch Linux อย่างเป็นทางการ ขณะที่เขียนนี้มันกลับไปสี่เดือน ปัจจุบัน ARM มีโฮสต์ที่http://seblu.net/a/armแม้ว่าสิ่งนี้อาจเปลี่ยนแปลงได้ในอนาคต
สามารถติดตั้งแพ็คเกจ ARM ได้จากระยะไกลโดยใช้ pacman -U
pacman -U http://seblu.net/a/arm/2013/08/31/extra/os/x86_64/apache-2.2.25-1-x86_64.pkg.tar.xz
มันไม่สะดวกที่จะเรียกดู ARM สำหรับแพ็คเกจเก่า ๆ โชคดีที่มีเครื่องมือที่ทำให้สิ่งนี้ง่ายขึ้น:
downgrade
downgrader
พวกเขาค้นหาเวอร์ชันที่เก่ากว่าในแคชและ ARM การใช้งานของพวกเขาคือสิ่งที่คุณคาดหวัง
downgrade <package>
downgrader <package>
เครื่องมือทั้งสองอยู่ใน AUR ดังนั้นวิธีที่ง่ายที่สุดในการติดตั้งจะมีผู้ช่วยอย่าง yaourt
หมายเหตุ: ARM เป็นโครงการที่ไม่เป็นทางการและถูกปิดในอดีตดังนั้นจึงเป็นความคิดที่ดีที่จะหลีกเลี่ยงการล้างแคชของคุณในกรณีที่ ARM หยุดทำงานหรือเปลี่ยนตำแหน่งอีกครั้ง หากคุณต้องการม้วนแขนของคุณเองดูเหมือนว่าจะมีโครงการ NodeJS บน github การถอด
ลบแพ็กเกจหากไม่มีสิ่งใดขึ้นอยู่กับมัน ปล่อยให้การพึ่งพาของมันติดตั้ง
sudo pacman -R <package>
ลบแพ็กเกจหากไม่มีสิ่งใดขึ้นอยู่กับมัน ลบการอ้างอิงที่ไม่ต้องการโดยสิ่งอื่นใด
sudo pacman -Rs <package>
บังคับให้ถอนแพ็คเกจออก นี่คือคำสั่งที่คุณจะใช้เพื่อล้างข้อมูลแพ็กเกจจากระบบของคุณและติดตั้งใหม่เมื่อติดตั้งเพียงอย่างเดียวไม่เพียงพอ
sudo pacman -Rdd <package>
aurman -Rsn <package>
สิ่งแรกที่คุณต้องทำคือดาวน์โหลดแพ็คเกจจาก AUR ในการดำเนินการดังกล่าว: git clone http://aur.archlinux.org/package.git
แม้ว่าดูเหมือนว่าคุณกำลังดาวน์โหลด.git
ไฟล์เอาต์พุตจะเป็นไดเรกทอรี
cd package
เพื่อค้นหาPKGBUILD
ไฟล์ สิ่งนี้จะถูกใช้ในขั้นตอนต่อไป
สุดท้ายให้รันคำสั่งนี้เพื่อรวบรวมและติดตั้งแพ็คเกจที่คุณเพิ่งดาวน์โหลด makepkg -Sri
. หากคุณต้องการคำอธิบายที่ครอบคลุมเกี่ยวกับความหมายของตัวอักษรแต่ละตัวคุณสามารถเรียกใช้ตัวอักษรเหล่านั้นmakepkg -h
เพื่ออธิบายได้