การโฆษณา

บ้าน - คอมพิวเตอร์
วิธีสร้างพื้นที่เก็บข้อมูลใหม่ใน Git สร้างพื้นที่เก็บข้อมูล deb ในเครื่องของคุณเอง (Debian, Ubuntu ฯลฯ ) ด้วยมือของคุณเอง พื้นที่เก็บข้อมูลในเครื่องของ Ubuntu

ความสนใจที่ไม่ได้ใช้งานเกิดขึ้น (มันจะมีประโยชน์อย่างแน่นอนฉันแน่ใจ แต่ตอนนี้ไม่ได้ใช้งาน) สมมติว่ามีเครื่องจำนวนหนึ่งบน Ubuntu และหากมีจำนวนมากก็จะมีการรับส่งข้อมูลคำขอ ไปยังที่เก็บของเครื่องทั้งหมดจะเป็นสัดส่วนโดยตรงกับจำนวนเครื่องและหากการอัปเดตเครื่องหนึ่ง - ไม่เป็นไรถ้าอย่างนั้น 20 เครื่องขึ้นไปก็ถือว่าร้ายแรงแล้ว Unlims สำหรับกิจกรรมองค์กรนั้นไม่ดีในประเทศของเรา ดังนั้นปัญหาการจราจรจึงมักจะรุนแรงมาก และมันก็ไม่คุ้มค่าที่จะโหลดช่องเปล่า ๆ เมื่อมีวิธีแก้ปัญหาที่เรียบง่ายและสวยงาม

หากคุณค้นหาหัวข้อนี้ใน Google โซลูชันยอดนิยม 2 รายการแรกจะปรากฏขึ้น: apt-mirror และ apt-proxy โซลูชันทั้งสองมีความน่าสนใจในแบบของตัวเอง แต่เนื่องจากเพื่อที่จะแปลทั้งหมดนี้ให้เป็นระนาบที่ใช้งานได้จริง คุณต้องเข้าใจและตัดสินใจเลือก ฉันจะบอกคุณถึงคุณสมบัติต่างๆ สั้น ๆ

Apt-mirror เป็นแพ็คเกจที่สร้างมิเรอร์ของที่เก็บข้อมูลในเครื่องที่สมบูรณ์ มีการติดตั้ง กำหนดค่า จากนั้นเปิดใช้งานและดาวน์โหลดเนื้อหาทั้งหมดของที่เก็บที่ระบุในการตั้งค่า โดยหลักการแล้ว ถือว่าดี เพราะแพ็คเกจที่เป็นไปได้ทั้งหมดจะพร้อมใช้ทันทีและด้วยความเร็วสูง แต่ในทางกลับกัน เราจะต้องสูบฉีดทุกสิ่งที่เราต้องการและไม่จำเป็นออกไป อย่างน้อยความแตกต่างนี้ก็ทำให้การเลือก apt-mirror สิ้นสุดลง

Apt-proxy - ทำงานบนหลักการที่แตกต่างออกไปเล็กน้อย ฉันชอบมันมากกว่า ฉันคิดว่าหลักการมีสติปัญญามากกว่า มันไม่ได้ดาวน์โหลดทุกอย่าง แต่ดาวน์โหลดเฉพาะสิ่งที่ร้องขอเท่านั้นนั่นคือในความเป็นจริงในการร้องขอครั้งแรกมันจะดาวน์โหลดแพ็คเกจที่ต้องการจากอินเทอร์เน็ตดังนั้นคุณต้องรอและในการโทรครั้งต่อ ๆ ไปก็จะให้สำเนาในเครื่อง โดยทั่วไปแล้ว การพร็อกซีพื้นที่เก็บข้อมูลแคชคือทางเลือกของเรา!

สำหรับการทดลอง ฉันมีรถ 2 คันอยู่ในมือ เซิร์ฟเวอร์ขนาดเล็กและไม่สำคัญบน Debian Squeese และเดสก์ท็อปที่มี Ubuntu 9.10 Karmic (บน Debian ฉันตัดสินใจปรับใช้พรอกซีสำหรับตัวแทน Karmika บนเดสก์ท็อปฉันปรับ Source.list ตามนั้น)

แต่ทันใดนั้น ฉันไม่พบแพ็คเกจ apt-proxy ในหัวผักกาด Squeese หลังจากท่องอินเทอร์เน็ต ในหน้าโครงการ apt-proxy ฉันได้เรียนรู้ว่าชีวิตเป็นสิ่งที่ซับซ้อนและมีผู้เสียชีวิตจากอุบัติเหตุทางรถยนต์ขณะกลับจากงานปาร์ตี้ไอทีบางประเภท เป็นผลให้การปรับโครงสร้างใหม่ตามสัญญาไม่เสร็จสมบูรณ์ และโดยทั่วไปไม่มีใครรู้ อย่างไรก็ตาม ที่นั่น ฉันยังเห็นรายการโคลนของโปรเจ็กต์ และดูเถิด หนึ่งในนั้นอยู่ใน Debian: apt-cacher

บนเซิร์ฟเวอร์:

การติดตั้ง:
$ sudo apt-get ติดตั้ง apt-cacher
การตั้งค่า:
$ sudo vim /etc/apt-cacher/apt-cacher.conf

เนื่องจากเครื่องไคลเอนต์ของเราใช้ Ubuntu เราจึงตั้งค่า path_map ในการกำหนดค่า:
path_map = อูบุนตู ru.archive.ubuntu.com/ubuntu; อูบุนตูอัปเดต ru.archive.ubuntu.com/ubuntu; ubuntu-security security.ubuntu.com/ubuntu ; ubuntu-partner archive.canonical.com/ubuntu

พอร์ตเริ่มต้นของ apt-caher คือ 3142 เพื่อแนบเข้ากับพอร์ต<1024, надо запускать его из под рута, что в целом не нужно.

ดังนั้นเราจึงได้รับการเชื่อมต่อดังต่อไปนี้:
http://localrepo:3142/ubuntu => http://ru.archive.ubuntu.com/ubuntu http://localrepo:3142/ubuntu-updates => http://ru.archive.ubuntu.com/ubuntu http://localrepo:3142/ubuntu-security => http://security.ubuntu.com/ubuntu http://localrepo:3142/ubuntu-partner => http://archive.canonical.com/ubuntu

ยิ่งไปกว่านั้น สิ่งที่น่ายินดีก็คือ ไม่จำเป็นต้องระบุการแจกจ่ายแบบเจาะจง ซึ่งต่างจากแพ็คเกจอื่นๆ มากมาย กล่าวคือ ด้วยการตั้งค่าเหล่านี้ เราจึงสามารถให้บริการเครื่องที่มีการแจกจ่าย Ubuntu ใดก็ได้

เปิดใช้งานการเริ่มอัตโนมัติของ daemon:
$ sudo vim /etc/default/apt-cacher
ตั้งค่า: AUTOSTART=1
รีสตาร์ท:
$ sudo /etc/init.d/apt-cacher รีสตาร์ท
เอาล่ะ ทุกอย่างพร้อมที่จะไป

บนเครื่องเดสก์ท็อป:

ตอนนี้เราเพิ่มพื้นที่เก็บข้อมูลของเราไปยังรายการแหล่งที่มาของเครื่องเดสก์ท็อป:
$ sudo vim /etc/apt/sources.list

ฉันเพิ่งเจอยูทิลิตี้ ทำซ้ำ- ช่วยในการสร้างพื้นที่เก็บข้อมูลในเครื่องของการแจกแจงแบบอิงเดบ จากนั้นฉันก็นึกถึงฉัน ฉันรวบรวมแพ็คเกจที่ไม่ได้อยู่ในเอกสารสำคัญอย่างเป็นทางการมาเป็นเวลานาน ดังนั้นทุกครั้งที่ฉันต้องผ่านและติดตั้งมัน มันกลายเป็นไอ้เวรและฉันตัดสินใจสร้างส่วนที่มีที่เก็บของแพ็คเกจดังกล่าวเก็บไว้ที่นั่น ดังนั้นเมื่อเปลี่ยนระบบก็เพียงติดตั้งและใช้งานได้ตามต้องการ สำหรับฉันดูเหมือนว่านี่จะมีประโยชน์มากกว่าการบันทึกแคชจาก apt-get


สั้น ๆ เกี่ยวกับ ทำซ้ำ
คุณต้องสร้างไดเร็กทอรีสำหรับพื้นที่เก็บข้อมูล ทางเลือกของฉันตรงกับ /ที่เก็บข้อมูลดังนั้นจึงต้องใช้สิทธิ์ superuser ในการทำงาน และโดยหลักการแล้ว หากเพียงผู้ดูแลระบบเท่านั้นที่มีสิทธิ์ในการเขียนไดเร็กทอรีนี้ ก็มีโอกาสสูงที่จะไม่มีใครภายนอกสามารถทำร้าย "ไฟล์เก็บถาวร" ของคุณได้
# mkdir /repository
ไปที่นั่นกันเถอะ:
สร้างโฟลเดอร์ /ที่เก็บ/conf/สำหรับไฟล์คอนฟิกูเรชัน
# mkdir /repository/conf

เราสร้างไฟล์โดยเพิ่มส่วนที่จำเป็น (คุณสามารถอ่านเพิ่มเติมเกี่ยวกับสิ่งนี้ได้ในเอาต์พุตคำสั่ง ผู้ชายทำซ้ำในส่วนไฟล์กำหนดค่า)
# mousepad /repository/conf/distributions
ในข้อความต้นฉบับของคำอธิบาย ผู้เขียนได้ยกตัวอย่างไฟล์นี้ไว้


ที่มา: เดเบียน
ชุด: การทดสอบ
นอกจากนี้AcceptFor: การทดลองที่ไม่เสถียร
โค้ดเนม: เลนนี่
เวอร์ชัน: 5.0
สถาปัตยกรรม: แหล่งที่มา i386
ส่วนประกอบ: ส่วนประกอบหลักไม่ฟรี
UDebComponents: การสนับสนุนหลักไม่ฟรี
คำอธิบาย: พื้นที่เก็บข้อมูลในเครื่องของฉัน
ที่ไหน:
ต้นกำเนิด - ชื่อการแจกจ่าย = Debian
Suite - สาขา = การทดสอบ
นอกจากนี้AcceptFor - อนุญาตให้คุณ "พุช" แพ็คเกจสำหรับสาขาอื่น ๆ ไปยังพื้นที่เก็บข้อมูลการทดสอบ = การทดลองที่ไม่เสถียร หากไม่ได้ระบุตัวเลือก มันจะสาบานเช่นนี้เมื่อคุณพยายามเพิ่มแพ็คเกจจากสาขาที่ไม่เสถียร/ทดลอง
ชื่อรหัส - ชื่อรหัสสาขา = lenny
เวอร์ชัน - เวอร์ชันสาขา = 5.0
สถาปัตยกรรม - สถาปัตยกรรม ฉันมีโปรเซสเซอร์ x86 ดังนั้นฉันจึงมี i386 บางครั้งฉันก็อัปโหลดซอร์สไปยังที่เก็บด้วย ดังนั้นจึงมีแหล่งที่มา
ส่วนประกอบ - ส่วนของสาขาที่คุณสามารถวางแพ็คเกจ deb รวมถึงแหล่งที่มา = การสนับสนุนหลักที่ไม่ฟรี (คุณสามารถสร้างได้มากเท่าที่คุณต้องการ)
UDebComponents - ส่วนของสาขาที่คุณสามารถวางแพ็คเกจ udeb (มีบางส่วน) = main contrib ไม่ฟรี (ดีกว่าเมื่อตรงกับบรรทัดด้านบน)
คำอธิบาย - คำอธิบายด้วยวาจาสั้น ๆ ของพื้นที่เก็บข้อมูล = ตัวอย่างเช่น พื้นที่เก็บข้อมูลในเครื่องของฉัน

หากไดเร็กทอรีที่เก็บไม่ใช่ปัจจุบัน ให้เขียนสิ่งที่เรียกว่า บาเซเดียร์ตัวเลือก -b เบสเดียร์(ในกรณีของฉัน BASEDIR=/พื้นที่เก็บข้อมูล).

หลังจากสร้างไฟล์ /repository/conf/distributionsเริ่มต้นพื้นที่เก็บข้อมูล
#ทำซ้ำการส่งออก
# reprepro createsymlinks

คุณสามารถเติมพื้นที่เก็บข้อมูลด้วยแพ็คเกจได้ มีคำสั่งและตัวเลือกมากมายสำหรับสิ่งนี้ รายละเอียดเพิ่มเติมสามารถพบได้ใน man reprepro
ใช้มากที่สุด

การเพิ่มแพ็กเกจ deb ไปยังที่เก็บ
โดยทั่วไปจะมีลักษณะดังนี้:
# reprepro -b BASEDIR -C ส่วนรวมeb BRANCH /path/to/file/filename.deb
ตามที่ฉันได้อธิบายไว้ก่อนหน้านี้ นี่คือตัวอย่างของการเพิ่มแพ็กเกจที่ไม่ได้มาจากไดเร็กทอรีที่มีที่เก็บ แต่มาจากไดเร็กทอรีที่กำหนดเอง หากคุณอยู่ในไดเร็กทอรีที่เก็บ คำสั่งจะดูเหมือนเดิมแต่ไม่มี -b เบสเดียร์
เช่น หากต้องการเพิ่มแพ็คเกจ foo_1.0.debอยู่ในโฟลเดอร์ /home/user/debianในส่วนหลักของสาขา lenny คำสั่งจะมีลักษณะเช่นนี้
# reprepro -b /repository -C รวมหลัก eb lenny /home/user/debian/foo_1.0.deb

การลบแพ็กเกจ deb ออกจากที่เก็บ
หากต้องการลบแพ็กเกจ deb หนึ่งรายการออกจากสาขาพื้นที่เก็บข้อมูลที่ระบุ คุณต้องออกคำสั่งต่อไปนี้
# reprepro ลบสาขา package_name

เช่น สำหรับแพ็คเกจที่พิจารณา foo_1.0.debตั้งอยู่ในสาขา เลนนี่ให้คำสั่งนี้:
# reprepro ลบเลนนี่ฟู

หากต้องการใช้พื้นที่เก็บข้อมูล คุณต้องเพิ่มลงในไฟล์ /etc/apt/sources.listเป็นบรรทัดต่อไปนี้ (โดยทั่วไป):
ไฟล์ deb:///path_to_repository_folder/ ส่วนสาขา

ซึ่งสำหรับตัวอย่างของเราจะเป็นดังนี้:
deb file:///repository/ lenny main contrib ไม่ใช่ของฟรี

นี่เป็นพื้นฐานซึ่งฉันคิดว่าเพียงพอแล้วในกรณีของฉัน บทความต้นฉบับตั้งอยู่

เพื่อว่าหากจู่ๆ มีอะไรเกิดขึ้น ระบบลินุกซ์อย่าดาวน์โหลดโปรแกรมอีก แต่ให้ติดตั้งจากสิ่งที่คุณดาวน์โหลดไว้แล้ว

ดังนั้นฉันจึงคิดว่าจะแน่ใจได้อย่างไรว่าเราสามารถติดตั้งโปรแกรมที่ดาวน์โหลดมาเหล่านี้ได้ด้วยวิธีธรรมดาที่สุดโดยใช้คำสั่ง ฉลาดรับ- เมื่อคิดถึงสิ่งนี้ ฉันก็เกิดแนวคิดว่าทำไมไม่สร้างพื้นที่เก็บข้อมูลในเครื่องโดยใช้แพ็คเกจเดียวกันนี้ ฉันคิดเกี่ยวกับมัน Google มันเอาไป เครื่องมือหลักผู้ดูแลระบบ ผู้ดูแลระบบแทมบูรีน และเริ่มทำ

ดังนั้นแพ็คเกจ deb ของฉันจึงอยู่ในตำแหน่งเดียวกับที่ฉันทิ้งไว้ก่อนที่ฉันจะติดตั้งระบบใหม่เป็นการทดลอง กล่าวคือในโฮมไดเร็กตอรี่ในโฟลเดอร์ เด็บ- ฉันมีสิ่งนี้ /home/ดันเต้/debฉันอธิบายทั้งหมดนี้แล้ว แต่คุณมีไดเร็กทอรีเดียวกับที่คุณบันทึกแพ็คเกจ เปิดเทอร์มินัลแล้วไปที่โฟลเดอร์ที่มีแพ็คเกจ deb ในกรณีของฉัน คำสั่งในเทอร์มินัลมีลักษณะดังนี้:

cd /home/dante/deb.cd

คุณต้องป้อนเส้นทางไปยังแพ็กเกจ deb ของคุณ
หลังจากที่คุณได้นำทางไปยังโฟลเดอร์ที่มีแพ็คเกจ deb ที่บันทึกไว้แล้ว ป้อนคำสั่งต่อไปนี้:

sudo apt-ftparchive packages ./ |gzip -9 > packages.gz

จากนั้นให้ป้อนรหัสผ่านและรอจนกว่าไฟล์จะถูกสร้างขึ้น แพคเกจ.gz
ตอนนี้พื้นที่เก็บข้อมูลของเราถูกกำหนดไว้แล้ว สิ่งที่เหลืออยู่คือการเพิ่มเข้าไป แหล่งที่มา.รายการ- ให้เรานำเทอร์มินัลกลับมา เปิดไฟล์:

sudo นาโน /etc/apt/sources.list

ฉันมี ไฟล์นี้ดูเหมือนว่านี้:

ไฟล์ deb:///home/dante/deb ./
# deb cdrom:/ oneiric main ถูกจำกัด

# ดู http://help.ubuntu.com/community/UpgradeNotes สำหรับวิธีอัปเกรดเป็น
# การจัดจำหน่ายเวอร์ชันใหม่กว่า
deb http://archive.ubuntu.com/ubuntu oneiric หลักถูก จำกัด
deb-src http://archive.ubuntu.com/ubuntu oneiric จำกัด จักรวาลลิขสิทธิ์หลัก # เพิ่มโดยคุณสมบัติซอฟต์แวร์

## การอัปเดตการแก้ไขข้อบกพร่องที่สำคัญที่เกิดขึ้นหลังจากการเปิดตัวครั้งสุดท้ายของ
## การกระจาย.
deb http://archive.ubuntu.com/ubuntu oneiric-updates หลักถูก จำกัด
deb-src http://archive.ubuntu.com/ubuntu oneiric-updates จำกัด จักรวาลลิขสิทธิ์หลัก # เพิ่มโดยคุณสมบัติซอฟต์แวร์


##ทีม. นอกจากนี้ โปรดทราบว่าซอฟต์แวร์ในจักรวาลจะไม่ได้รับใดๆ
## ตรวจสอบหรืออัปเดตจากทีมรักษาความปลอดภัยของ Ubuntu
deb http://archive.ubuntu.com/ubuntu จักรวาล oneiric
deb http://archive.ubuntu.com/ubuntu oneiric-updates จักรวาล

##เอ็นบี ซอฟต์แวร์จากที่เก็บนี้ไม่ได้รับการสนับสนุนโดย Ubuntu ทั้งหมด
## ทีม และอาจไม่อยู่ภายใต้ใบอนุญาตฟรี กรุณาตอบสนองตัวเองเป็น
## สิทธิ์ของคุณในการใช้ซอฟต์แวร์ นอกจากนี้โปรดทราบว่าซอฟต์แวร์ใน
## multiverse จะไม่ได้รับการตรวจสอบหรืออัปเดตใด ๆ จาก Ubuntu
##ทีมงานรักษาความปลอดภัย.
deb http://archive.ubuntu.com/ubuntu oneiric multiverse
deb http://archive.ubuntu.com/ubuntu oneiric-updates ลิขสิทธิ์

##เอ็นบี ซอฟต์แวร์จากที่เก็บนี้อาจไม่ได้รับการทดสอบ
## อย่างกว้างขวางตามที่มีอยู่ในรุ่นหลัก แม้ว่าจะมีรวมอยู่ด้วยก็ตาม
## แอปพลิเคชันบางเวอร์ชันใหม่กว่าซึ่งอาจมีคุณสมบัติที่มีประโยชน์
## นอกจากนี้ โปรดทราบว่าซอฟต์แวร์ในแบ็คพอร์ตจะไม่ได้รับการตรวจสอบใดๆ
## หรืออัปเดตจากทีมรักษาความปลอดภัยของ Ubuntu
deb http://archive.ubuntu.com/ubuntu oneiric-backports ลิขสิทธิ์จักรวาลหลักที่ จำกัด
deb-src http://archive.ubuntu.com/ubuntu oneiric-backports ลิขสิทธิ์จักรวาลหลักที่ถูก จำกัด #Added โดยคุณสมบัติซอฟต์แวร์

deb http://archive.ubuntu.com/ubuntu oneiric-security หลักถูก จำกัด
deb-src http://archive.ubuntu.com/ubuntu oneiric-security จำกัด จักรวาลลิขสิทธิ์หลัก # เพิ่มโดยคุณสมบัติซอฟต์แวร์
deb http://archive.ubuntu.com/ubuntu oneiric-security จักรวาล
deb http://archive.ubuntu.com/ubuntu oneiric-security ลิขสิทธิ์

## ยกเลิกหมายเหตุสองบรรทัดต่อไปนี้เพื่อเพิ่มซอฟต์แวร์จาก Canonical"s
## พื้นที่เก็บข้อมูล "พันธมิตร"
## ซอฟต์แวร์นี้ไม่ได้เป็นส่วนหนึ่งของ Ubuntu แต่นำเสนอโดย Canonical และ
## ผู้จำหน่ายที่เกี่ยวข้องเป็นบริการสำหรับผู้ใช้ Ubuntu
deb http://archive.canonical.com/ubuntu พันธมิตร oneiric
deb-src http://archive.canonical.com/ubuntu พันธมิตร oneiric

## ซอฟต์แวร์นี้ไม่ได้เป็นส่วนหนึ่งของ Ubuntu แต่นำเสนอโดยบุคคลที่สาม
## นักพัฒนาที่ต้องการจัดส่งซอฟต์แวร์ล่าสุด
deb http://extras.ubuntu.com/ubuntu oneiric หลัก
deb http://archive.ubuntu.com/ubuntu/ จักรวาลลิขสิทธิ์หลักที่ถูก จำกัด ที่เสนอโดย oneiric
deb-src http://archive.ubuntu.com/ubuntu/ จักรวาลลิขสิทธิ์หลักที่ถูก จำกัด ที่เสนอโดย oneiric
deb-src http://extras.ubuntu.com/ubuntu oneiric หลัก

ในการเพิ่มโฟลเดอร์ของเราที่มีแพ็คเกจ deb ไปยังแหล่งแอปพลิเคชัน เราจำเป็นต้องเพิ่มบรรทัดต่อไปนี้

ไฟล์ deb:///home/dante/deb ./

เป็นการดีกว่าที่จะเพิ่มไว้ที่ด้านบนสุดของไฟล์ เนื่องจากระบบจะทำการสืบค้นที่เก็บเหล่านั้นซึ่งอยู่ที่จุดเริ่มต้นก่อน สิ่งที่เราได้ทำอย่างที่ท่านได้เห็นแล้ว เส้นทางโฟลเดอร์ของคุณอาจแตกต่างกัน เพียงจำไว้ว่าในตอนท้าย ./

เพิ่มที่เก็บทั้งหมดแล้ว คุณสามารถดูสิ่งนี้ได้ในแหล่งแอปพลิเคชัน ตอนนี้สิ่งที่คุณต้องทำคืออัปเดตรายการแพ็คเกจ ซึ่งสามารถทำได้ในเทอร์มินัลโดยใช้คำสั่ง:

อัปเดต sudo apt-get

ตอนนี้เราสามารถติดตั้งโปรแกรมจากพื้นที่เก็บข้อมูลของเรา ซึ่งเราสร้างจากแพ็คเกจ deb ที่บันทึกไว้ วิธีนี้ยังค่อนข้างสะดวกหากเราดาวน์โหลดแพ็คเกจ deb บนคอมพิวเตอร์เครื่องหนึ่งและติดตั้งลงในอีกเครื่องหนึ่ง

แทนที่จะใช้ dpkg -i package_name.deb ในการติดตั้ง คุณสามารถสร้างพื้นที่เก็บข้อมูลในเครื่องสำหรับแพ็คเกจที่นำมาบนแฟลชไดรฟ์หรือสื่ออื่นๆ จากนั้นใช้ synaptic/kynaptic (หรือ apt-get install package_name)

1. เป็นการดีกว่าที่จะดำเนินการทั้งหมดในฐานะรูท

ซูโดะ ซู

2. ตอนนี้ติดตั้งแพ็คเกจ dpkg-dev มันจะมียูทิลิตี้ dpkg-scanpackages ซึ่งเป็นสิ่งที่เราต้องการ

apt-get ติดตั้ง dpkg-dev

3. วางแพ็คเกจ .deb ทั้งหมดในไดเร็กทอรี เช่น /myrepo (ไม่ได้อยู่ในไดเร็กทอรีนี้โดยตรง แต่อยู่ในไดเร็กทอรีย่อยที่อยู่ในไดเร็กทอรีนี้)

4. ดำเนินการ

cd /myrepo dpkg-scanpackages /dev/null | gzip -9c > Package.gz

5. ตอนนี้คุณต้องเพิ่มพื้นที่เก็บข้อมูลใหม่ใน /etc/apt/sources.list แทรกบรรทัดลงใน /etc/apt/sources.list (ควรแทรกไว้ใกล้กับจุดเริ่มต้นมากกว่า เนื่องจาก apt-get (synaptic/kynaptic) ให้ความสำคัญกับแหล่งที่มาที่เร็วกว่าแหล่งอื่น)

ไฟล์ deb:/myrepo ./

6. อัปเดตรายการที่เก็บ

ฉลาดรับการปรับปรุง

หากเนื้อหาของไดเร็กทอรีแพ็กเกจเปลี่ยนแปลง ให้ทำซ้ำขั้นตอนที่ 1.4

สำหรับ ผู้ดูแลระบบ หัวข้อนี้เกือบจะมีความสำคัญเป็นอันดับแรก ท้ายที่สุดแล้ว โดยปกติแล้วองค์กรใดก็ตามที่ดูแลความปลอดภัยและความน่าเชื่อถือของเซิร์ฟเวอร์และเครือข่ายโดยทั่วไป จะพัฒนาและปรับใช้นโยบายความปลอดภัยบางอย่าง ซึ่งในทางกลับกันก็มีข้อจำกัดในการเข้าถึง เปิดอินเทอร์เน็ตสำหรับเครื่องไคลเอนต์ส่วนใหญ่จาก เครือข่ายท้องถิ่น- อย่างไรก็ตาม เป็นไปไม่ได้ที่จะทำโดยปราศจากสิ่งนี้ เนื่องจากเมื่อทำการบำรุงรักษา จำเป็นต้องดำเนินการอัปเดต ซอฟต์แวร์(โดย). การเผยแพร่การอัพเดตเหล่านี้โดยใช้ สื่อที่ถอดออกได้ไม่สะดวกมากและหากมีคอมพิวเตอร์จำนวนมากในเครือข่ายท้องถิ่นให้บริการก็แทบจะเป็นไปไม่ได้เลย ในกรณีนี้ ตัวเลือกที่สมเหตุสมผลคือการจัดระเบียบที่เก็บข้อมูลแพ็กเกจในเครื่องที่ดาวน์โหลดมาจากอินเทอร์เน็ตก่อนหน้านี้ ประมาณสองแนวทางหลักในการแก้ปัญหานี้โดยใช้ตัวอย่าง ระบบอูบุนตูจะมีการอธิบายเพิ่มเติมในบทความนี้

ที่เก็บแพ็กเกจทำงานบนระบบ Linux อย่างไร

นักพัฒนาซอฟต์แวร์จัดเตรียมลิงก์พิเศษเพื่อรองรับการเผยแพร่และมอบประสบการณ์ผู้ใช้ที่สะดวกสบาย พวกเขาชี้ไปที่ เซิร์ฟเวอร์ระยะไกลซึ่งจัดเก็บแพ็คเกจซอฟต์แวร์ล่าสุดและทดสอบโดยผู้พัฒนาสำหรับการแจกจ่ายที่กำหนด ด้วยลิงก์เหล่านี้ EMS "รู้" ว่าจะดาวน์โหลดและติดตั้งการอัปเดตแพ็คเกจเมื่อใดและที่ไหน ลิงก์เหล่านี้สามารถชี้ไปที่ทรัพยากรระยะไกลหรือทรัพยากรในพื้นที่ได้ ในกรณีที่สอง อาจเป็นคอมพิวเตอร์เครื่องอื่นในเครือข่ายท้องถิ่น หรือไดรฟ์ในเครื่อง และ/หรือแม้แต่ออปติคัลไดรฟ์ หากคุณลองใช้

Deb http://ru.archive.ubuntu.com/ubuntu/ จักรวาลไบโอนิค

นี่เป็นหนึ่งในที่เก็บระบบที่รวมอยู่ในการแจกจ่ายตั้งแต่แรก นอกจากนี้ยังมีพื้นที่เก็บข้อมูลที่จัดโดยผู้ใช้ที่ได้รับการตรวจสอบเป็นรายบุคคล เช่น:

Deb https://repos.codelite.org/ubuntu/bionic จักรวาล

นี่คือพื้นที่เก็บข้อมูลที่สร้างขึ้นโดยนักพัฒนาสภาพแวดล้อมการพัฒนา CodeLite โดยเฉพาะสำหรับ Ubuntu และลิงค์นี้ถูกเพิ่มเข้าไปในไฟล์ แหล่งที่มา.รายการด้วยตนเองแล้วโดยผู้ใช้ผู้ดูแลระบบคอมพิวเตอร์เอง หลังจากนั้นก็จะเป็นไปได้ การติดตั้งอัตโนมัติแพ็คเกจ CodeLite เวอร์ชันปัจจุบันและเสถียรตลอดจนการอัปเดต และนี่คือลักษณะลิงก์ไปยังพื้นที่เก็บข้อมูลที่จัดเก็บไว้ในสื่อออปติคัล:

Deb cdrom:/ จักรวาลที่ถูกจำกัดลิขสิทธิ์หลักของไบโอนิค

อย่างที่คุณเห็น คีย์เวิร์ดที่กำหนดโปรโตคอลการเข้าถึงคือค่าที่ตามหลัง "deb" สำหรับสื่อออปติคอลคือ “cdrom” และสำหรับการเข้าถึงเครือข่ายคือ “https”
ปรากฎว่าสามารถเสริมแหล่งเก็บข้อมูลได้ตามดุลยพินิจของคุณเอง โดยก่อนหน้านี้ได้จัดระเบียบพื้นที่จัดเก็บแพ็คเกจตามนั้น

การใช้พรอกซีเพื่อจัดระเบียบพื้นที่เก็บข้อมูลในเครื่อง

วิธีนี้เกี่ยวข้องกับการเข้าถึงที่เก็บข้อมูลผ่านแคชบนคอมพิวเตอร์พร็อกซีที่มี การเชื่อมต่อโดยตรงไปยังอินเทอร์เน็ต กลไกการทำงานของพื้นที่เก็บข้อมูลในเครื่องดังกล่าวมีดังนี้:

  • บนเครื่องไคลเอนต์ มีการร้องขอแพ็คเกจเป็นประจำสำหรับการติดตั้ง/อัพเดตผ่านคอมพิวเตอร์เซิร์ฟเวอร์
  • เซิร์ฟเวอร์ดาวน์โหลดแพ็คเกจที่ร้องขอ โดยจัดเก็บไว้ในที่เก็บข้อมูลแคชที่กำหนดเป็นพิเศษ จากนั้นจะพร้อมใช้งานสำหรับไคลเอนต์อื่น ๆ ทั้งหมด
  • เว็บเซิร์ฟเวอร์ Apache ทำหน้าที่เป็นผู้จัดจำหน่ายแพ็คเกจให้กับลูกค้า ดังนั้นจึงจำเป็นต้องมีการติดตั้ง

ดังนั้น ขั้นแรกคุณต้องติดตั้งทุกสิ่งที่คุณต้องการ เช่น เว็บเซิร์ฟเวอร์และยูทิลิตี้การแคชแพ็คเกจเอง:

$ sudo apt-get ติดตั้ง apache2 apt-cacher

เมื่อติดตั้ง apt-แคชเชอร์กล่องโต้ตอบการตั้งค่าจะปรากฏขึ้นซึ่งคุณสามารถกำหนดค่าลักษณะการทำงานของยูทิลิตี้ที่ต้องการได้ เช่น ตั้งค่าการทำงานอัตโนมัติและทำงานในโหมดดีมอน เหล่านี้และอื่นๆอีกมากมาย การตั้งค่าที่สำคัญสามารถทำได้ (เช่น การใช้โปรแกรมแก้ไข) ในไฟล์กำหนดค่า /etc/default/apt-cacher หากต้องการเปิดใช้งานการทำงานอัตโนมัติของ apt-cacher คุณต้องตั้งค่าพารามิเตอร์ AUTOSTART เป็น "1":

$ sudo nano /etc/default/apt-cacher - - # ตั้งค่าเป็น 1 เพื่อรัน apt-cacher เป็น daemon แบบสแตนด์อโลน ตั้งค่าเป็น 0 หากคุณกำลังจะไป # เพื่อรัน apt-cacher จาก /etc/inetd หรือใน โหมดซีจีไอ(เลิกใช้แล้ว) อีกทางหนึ่ง # การเรียกใช้ "dpkg-reconfigure apt-cacher" ควรจะทำงานให้คุณ # สตาร์ทอัตโนมัติ=1 - -

$ sudo นาโน /etc/apt-cacher/apt-cacher.conf - - ## ยกเลิกความคิดเห็นและตั้งค่าช่วง IP ## Allow_hosts = 192.168.1.105 - 192.168.1.125 #denied_hosts = - -

อย่างที่คุณเห็น ช่วงของที่อยู่ IP ที่ต้องการนั้นระบุไว้อย่างง่ายๆ หลังจากบันทึกการตั้งค่าที่คุณทำไว้ คุณจะต้องรีสตาร์ทเว็บเซิร์ฟเวอร์ Apache:

$ sudo service apache2 รีสตาร์ท

$ sudo systemctl รีสตาร์ท apache2

ตอนนี้คุณต้องบอกลูกค้าว่าพวกเขาต้องไปที่ไหนเพื่อติดตั้งแพ็คเกจและอัพเดต ในการดำเนินการนี้ บนเครื่องไคลเอ็นต์ คุณต้องสร้างไฟล์ /etc/apt/apt.conf.d/01proxy โดยใช้โปรแกรมแก้ไข nano เดียวกัน:

$ sudo นาโน /etc/apt/apt.conf.d/01proxy

และเพิ่มบรรทัดโดยมีคำสั่งต่อไปนี้:

รับ::http::พร็อกซี "http://192.168.1.100:3142";

นี่คือที่อยู่ของเซิร์ฟเวอร์ที่ติดตั้งและใช้งาน apt-แคชเชอร์ 192.168.1.100 ถูกระบุ แน่นอนว่านี่อาจเป็นที่อยู่อื่นที่กำหนดค่าไว้สำหรับเซิร์ฟเวอร์นี้

ตอนนี้คุณสามารถตรวจสอบการทำงานของพื้นที่เก็บข้อมูลในเครื่อง (หรือค่อนข้างเป็นระยะไกล แต่เข้าถึงได้ผ่านพรอกซี) โดยการรันคำสั่งเพื่ออัปเดตข้อมูลเกี่ยวกับแพ็คเกจที่มีอยู่:

$ sudo apt-get อัปเดต

APT-MIRROR – พื้นที่เก็บข้อมูลในเครื่องที่ครบครัน

วิธีนี้เป็น "ขั้นสูง" มากกว่าเมื่อเทียบกับการใช้ ฉลาดแคชเนื่องจากถือว่ามีที่เก็บแพ็กเกจเต็มรูปแบบโดยตรงบนเครื่องคอมพิวเตอร์/เซิร์ฟเวอร์หรือบนเครือข่ายท้องถิ่น แต่ก่อนอื่นต้องสร้างพื้นที่เก็บข้อมูลดังกล่าวโดยการดาวน์โหลดแพ็คเกจที่จำเป็นทั้งหมดลงไป เช่นเดียวกับกรณีของ ฉลาดแคชเว็บเซิร์ฟเวอร์ทำหน้าที่เป็นผู้จัดจำหน่ายแพ็คเกจ ขั้นตอนการตั้งค่าพื้นที่เก็บข้อมูลในเครื่องโดยใช้ยูทิลิตี้ apt-mirror มีดังต่อไปนี้:

  1. การติดตั้งแพ็คเกจที่จำเป็น: apt-mirror และ apache2;
  2. การสร้างพื้นที่เก็บข้อมูลในเครื่องและการกำหนดค่าแหล่งดาวน์โหลด การอัพโหลดแพ็คเกจไปยังพื้นที่เก็บข้อมูล
  3. การเปิดการเข้าถึงพื้นที่จัดเก็บข้อมูลสำเร็จรูปสำหรับลูกค้า
  4. การกำหนดค่าไคลเอ็นต์เพื่อใช้พื้นที่เก็บข้อมูลในเครื่อง

ดังนั้นให้ติดตั้งยูทิลิตี้และแพ็คเกจที่จำเป็น:

$ sudo apt-get ติดตั้ง apache2 apt-mirror

$ sudo mkdir /localrepo

ตอนนี้ในไฟล์กำหนดค่า /etc/apt/mirror.list คุณต้องแก้ไขบรรทัดด้วยคำสั่ง "set base_path" โดยระบุไดเร็กทอรีที่สร้างขึ้นใหม่สำหรับที่เก็บข้อมูล:

$ sudo nano /etc/apt/mirror.list ############ config ################## # set base_path /localrepo

ถัดไปในไฟล์เดียวกันคุณสามารถเพิ่มพื้นที่เก็บข้อมูลที่จำเป็นที่จะดาวน์โหลดแพ็คเกจได้ คุณสามารถคัดลอกที่เก็บมาตรฐานทั้งหมดได้จาก /etc/apt/sources.list
เมื่อบันทึกการตั้งค่าแล้วคุณสามารถเริ่มดาวน์โหลดแพ็คเกจด้วยคำสั่ง:

$sudo apt-กระจก

มันอาจจะต้องใช้เวลา เวลานานขึ้นอยู่กับความเร็วของการเชื่อมต่ออินเทอร์เน็ตของคุณ คำสั่งนี้มีประโยชน์มากในการเพิ่มลงในรายการขั้นตอนทั่วไป เพื่อให้พื้นที่เก็บข้อมูลในเครื่องได้รับการอัพเดตโดยอัตโนมัติ

เมื่อดาวน์โหลดที่เก็บข้อมูลในเครื่องโดยสมบูรณ์แล้ว เนื้อหาควรมีลักษณะดังนี้:

$ ls /localmirror กระจก skel var

เพื่อความสะดวกในการตั้งค่าไคลเอนต์ในภายหลัง จะมีประโยชน์ในการสร้างที่เก็บข้อมูลที่อยู่ในไดเร็กทอรีมิเรอร์:

$ ซีดี /localrepo $ sudo ln -s /localrepo/mirror/us.archive.ubuntu.com/ubuntu/ubuntu

ตอนนี้ลิงก์ Ubuntu จะถูกใช้เพื่อตั้งค่าที่เก็บฝั่งไคลเอ็นต์โดยแก้ไขไฟล์ /etc/apt/sources.list:
เมื่อเปิดไฟล์นี้ (โดยใช้คำสั่ง) โดยใช้โปรแกรมแก้ไข nano ตอนนี้คุณต้องเพิ่มที่เก็บข้อมูลต่อไปนี้:

Deb http://192.168.1.100/ubuntu trustyจักรวาล deb http://192.168.1.100/ubuntu trusty หลัก deb ที่จำกัด http://192.168.1.100/ubuntu trusty-updates หลักถูกจำกัด - -

ที่นี่ที่อยู่ 192.168.1.100 คือที่อยู่ IP ของคอมพิวเตอร์ที่สร้างและกำหนดค่าที่เก็บข้อมูลในเครื่อง
ตอนนี้คุณสามารถใช้คำสั่ง apt ทั่วไปเพื่อทำงานกับแพ็คเกจได้:

$ sudo apt-get อัปเดต $ sudo apt-get ติดตั้ง package_name

บทสรุป

โดยสรุป ควรจำไว้ว่าวิธีการจัดระเบียบที่เก็บข้อมูลในเครื่องที่อธิบายไว้ข้างต้นนั้นเหมาะสำหรับระบบที่ใช้รูปแบบแพ็คเกจ Debian สำหรับระบบที่ใช้ RPM ควรใช้เครื่องมืออื่นๆ

หากคุณพบข้อผิดพลาด โปรดเน้นข้อความและคลิก Ctrl+ป้อน.



 


อ่าน:



จะทำอย่างไรถ้าคุณพัฒนาแบบออฟไลน์

จะทำอย่างไรถ้าคุณพัฒนาแบบออฟไลน์

ในที่สุดเธอก็ไปเยี่ยมชมตลาดเกมคอมพิวเตอร์ โดยส่องสว่างด้วยแสงจากสัตว์ประหลาดเอเลี่ยนและปืนไฮเทค แน่นอนว่าเป็นเรื่องไม่ธรรมดาเช่นนี้...

การทดสอบโปรเซสเซอร์ว่ามีความร้อนสูงเกินไป

การทดสอบโปรเซสเซอร์ว่ามีความร้อนสูงเกินไป

คุณต้องตรวจสอบอุณหภูมิของโปรเซสเซอร์หรือการ์ดแสดงผลอย่างต่อเนื่อง เพราะหากร้อนเกินไป พีซีของคุณก็จะไม่เริ่มทำงาน เกี่ยวกับเรื่องนี้...

บริการสาธารณะของ Yesia คืออะไร

บริการสาธารณะของ Yesia คืออะไร

ไปเป็นวันที่ไม่สามารถรับบริการของรัฐหรือเทศบาลได้หากไม่ได้ไปพบผู้บริหารเป็นการส่วนตัว...

ตำแหน่งของหัวบนเสาอากาศ

ตำแหน่งของหัวบนเสาอากาศ

บทความนี้เปิดเผยวิธีการหลักในการกำหนดราบโดยใช้เข็มทิศแม่เหล็กและสถานที่ที่เป็นไปได้ การใช้งาน...

ฟีดรูปภาพ อาร์เอสเอส