Jadual Kandungan
analisis pakej deb
Buat pakej deb
Apa yang boleh diperbaiki dalam kaedah membuat pakej deb di atas:
Rumah tutorial komputer pengetahuan komputer Sangat mudah untuk membuat pakej deb dalam Linux: Analisis komposisi dalaman dan prinsip penggunaan fail pakej pemasangan deb Ubuntu

Sangat mudah untuk membuat pakej deb dalam Linux: Analisis komposisi dalaman dan prinsip penggunaan fail pakej pemasangan deb Ubuntu

Feb 19, 2024 pm 01:21 PM
linux dokumen deb

Sangat mudah untuk membuat pakej deb dalam Linux: Analisis komposisi dalaman dan prinsip penggunaan fail pakej pemasangan deb Ubuntu

Fail Deb ialah fail arkib yang digunakan untuk mengedar dan memasang Linux Debian dan program pengedaran terbitannya, biasanya mengandungi data aplikasi. Ia berguna untuk mengendalikan kebergantungan, penyepaduan desktop dan menjalankan skrip pra dan selepas pemasangan. Format pakej lain yang serupa dengan format Deb ialah fail rpm yang biasa digunakan dalam pengedaran siri Fedora.

Artikel ini menunjukkan cara membuat pakej deb yang ringkas melalui contoh, menerangkan peranan setiap fail dalam pakej deb dan cara untuk melaksanakan dan mengekalkannya selepas pemasangan.

analisis pakej deb

deb ialah format arkib Unix biasa yang mengandungi fail aplikasi dan utiliti lain. Komponen utama ialah fail kawalan (kawalan), yang mengandungi maklumat penting tentang pakej deb dan pemasang.

  • Secara dalaman, pakej deb mengandungi koleksi fail yang menyerupai struktur direktori sistem fail biasa Linux, seperti /usr, /usr/bin, /opt, dsb. Semasa pemasangan, fail yang diletakkan dalam salah satu daripada direktori ini disalin ke lokasi yang sama dalam sistem fail sebenar. Contohnya, fail binari seperti /usr/bin/binaryfile dalam pakej akan dipasang pada /usr/bin/binaryfile sistem.
  • Secara luaran, semua fail pakej deb mengikut konvensyen penamaan tertentu:
_-_.deb
Salin selepas log masuk

Andaikan anda ingin menerbitkan program yang dipanggil mynano, versi 1.0, yang dibina untuk pemproses 64-bit (AMD64). Nama fail deb anda akan menjadi seperti mynano_1.0-0_amd64.deb

Buat pakej deb

Kami sedia menjana pakej. Sila pastikan sistem anda memasang alat dpkg-deb (disediakan oleh pakej dpkg). Pakej deb akhir akan dijana menggunakan dpkg-deb kemudian.

(1) Buat direktori kerja untuk menyimpan fail pakej dan namakannya mengikut konvensyen penamaan sebelumnya.

mkdir mynano_1.0-1_amd64/
Salin selepas log masuk

(2) Cipta struktur dalaman dan letakkan fail program di tempat yang sepatutnya dipasang pada sistem sasaran. Andaikan anda ingin memasang boleh laku kepada: /usr/bin/

Buat direktori dahulu:

mkdir -p mynano_1.0-1_amd64/usr/bin/
Salin selepas log masuk

Bendera -p arahan mkdir akan mencipta direktori bersarang dan menciptanya secara automatik jika mana-mana daripadanya tidak wujud. Kemudian salin fail boleh laku ke dalamnya:

# 假设你开发的程序可执行文件为 ~/YourProjects/mynano/src/targets/release/mynano
cp ~/YourProjects/mynano/src/targets/release/mynanomynano_1.0-1_amd64/usr/bin/
Salin selepas log masuk

(3) Buat kawalan fail Fail ini terletak dalam direktori DEBIAN (perhatikan bahawa nama direktori adalah dalam huruf besar)

Buat folder dahulu: DEBIAN

mkdir mynano_1.0-1_amd64/DEBIAN
Salin selepas log masuk

Kemudian buat fail kosong: control

touch mynano_1.0-1_amd64/DEBIAN/control
Salin selepas log masuk

Isi kandungan fail kawalan:

Package: mynano
Version: 1.0
Architecture: amd64
Maintainer: linuxlibs 
Description: 基于nano的自定义编辑器
Depends: nano (>= 5.0)
Salin selepas log masuk

Antaranya:

  • Pakej – nama program;
  • Versi – versi program;
  • Seni bina—Sasaran seni bina;
  • Penyelenggara – Nama dan alamat e-mel orang yang bertanggungjawab untuk menyelenggara pakej;
  • Penerangan – Penerangan ringkas tentang program.
  • Bergantung- Pakej lain bergantung pada pakej ini.

Fail mungkin mengandungi medan berguna lain, seperti Depends menunjukkan senarai kebergantungan pakej deb. Kemudian jika anda menggunakan arahan apt untuk memasang pakej deb, versi nano>=5.0 pakej perisian akan dipasang dahulu, dan kemudian mynano akan dipasang.

(5) Langkah terakhir: Bina pakej deb Panggil dpkg-deb seperti berikut:

dpkg-deb --build --root-owner-group 
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh kami:

dpkg-deb --build --root-owner-group 
Salin selepas log masuk
Salin selepas log masuk

Bendera –root-owner-group di sini menjadikan semua kandungan pakej deb dimiliki oleh pengguna root, yang merupakan pendekatan standard. Jika tiada bendera sedemikian, pemilik semua fail dan folder ialah pengguna semasa anda Namun, memandangkan sistem di mana pakej deb akan dipasang tidak semestinya mempunyai akaun dengan nama yang sama seperti milik anda, gunakan –root-owner. -kumpulan lebih munasabah.

Arahan di atas akan menghasilkan fail .deb di sebelah direktori kerja, atau mencetak ralat jika terdapat ralat atau tiada dalam pakej. Jika operasi berjaya, anda boleh mengedarkan pakej deb yang dijana kepada orang lain.

(6) Gunakan pakej deb untuk memasang ke dalam sistem: Anda boleh melihat bahawa apabila memasang pakej deb yang kami buat melalui kaedah apt, kebergantungan akan dipasang secara automatik: pakej perisian nano

# apt install ./mynano_1.0-1_amd64.deb
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
注意,选中 'mynano' 而非 './mynano_1.0-1_amd64.deb'
将会同时安装下列软件:
nano
建议安装:
hunspell
下列【新】软件包将被安装:
mynano nano
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 79 个软件包未被升级。
需要下载 280 kB/1,135 kB 的归档。
解压缩后会消耗 881 kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 /root/my-nano-editor-src/mynano_1.0-1_amd64.deb mynano amd64 1.0.0 [855 kB]
获取:2 https://mirrors.ustc.edu.cn/ubuntu jammy/main amd64 nano amd64 6.2-1 [280 kB]
已下载 280 kB,耗时 1秒 (422 kB/s)
正在选中未选择的软件包 nano。
(正在读取数据库 ... 系统当前共安装有 231799 个文件和目录。)
准备解压 .../archives/nano_6.2-1_amd64.deb...
正在解压 nano (6.2-1) ...
正在选中未选择的软件包 mynano。
准备解压 .../mynano_1.0-1_amd64.deb...
正在解压 mynano (1.0.0) ...
正在设置 nano (6.2-1) ...
update-alternatives: 使用 /bin/nano 来在自动模式中提供 /usr/bin/editor (editor)
update-alternatives: 使用 /bin/nano 来在自动模式中提供 /usr/bin/pico (pico)
正在设置 mynano (1.0.0) ...
正在处理用于 install-info (6.8-4build1) 的触发器 ...
正在处理用于 man-db (2.10.2-1) 的触发器 ...
Scanning processes...
Scanning processor microcode...
Scanning linux images...
Salin selepas log masuk

(7) [Pilihan] Nyahpasang perisian mynano yang dipasang:

# apt remove mynamo -y
正在读取软件包列表... 完成
正在分析软件包的依赖关系树... 完成
正在读取状态信息... 完成
下列软件包将被【卸载】:
mynano
升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 79 个软件包未被升级。
解压缩后会消耗 0 B 的额外空间。
您希望继续执行吗? [Y/n] y
(正在读取数据库 ... 系统当前共安装有 231872 个文件和目录。)
正在卸载 mynano (1.0.0) ...
Salin selepas log masuk

(8) [Pilihan] Semak kebergantungan mynano_0.1-1_amd64.deb: dpkg -I ./mynano*deb

Apa yang boleh diperbaiki dalam kaedah membuat pakej deb di atas:

Atas ialah kandungan terperinci Sangat mudah untuk membuat pakej deb dalam Linux: Analisis komposisi dalaman dan prinsip penggunaan fail pakej pemasangan deb Ubuntu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara Memulakan Apache Cara Memulakan Apache Apr 13, 2025 pm 01:06 PM

Langkah-langkah untuk memulakan Apache adalah seperti berikut: Pasang Apache (perintah: sudo apt-get pemasangan apache2 atau muat turun dari laman web rasmi) Mula Apache (linux: Sudo Systemctl Mula Apache2; Windows: Klik kanan "Apache2.4" Perkhidmatan dan pilih "Mula") Boot secara automatik (Pilihan, Linux: Sudo Systemctl

Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apr 13, 2025 pm 01:24 PM

Apabila port Apache 80 diduduki, penyelesaiannya adalah seperti berikut: Cari proses yang menduduki pelabuhan dan tutupnya. Semak tetapan firewall untuk memastikan Apache tidak disekat. Jika kaedah di atas tidak berfungsi, sila buat semula Apache untuk menggunakan port yang berbeza. Mulakan semula perkhidmatan Apache.

Cara Memantau Prestasi SSL Nginx di Debian Cara Memantau Prestasi SSL Nginx di Debian Apr 12, 2025 pm 10:18 PM

Artikel ini menerangkan bagaimana untuk memantau prestasi SSL pelayan Nginx secara berkesan pada sistem Debian. Kami akan menggunakan NginXExporter untuk mengeksport data status nginx ke Prometheus dan kemudian memaparkannya secara visual melalui Grafana. Langkah 1: Mengkonfigurasi Nginx Pertama, kita perlu mengaktifkan modul Stub_status dalam fail konfigurasi Nginx untuk mendapatkan maklumat status nginx. Tambahkan coretan berikut dalam fail konfigurasi nginx anda (biasanya terletak di /etc/nginx/nginx.conf atau termasuk fail): lokasi/nginx_status {stub_status

Cara Menyiapkan Bin Kitar Semula dalam Sistem Debian Cara Menyiapkan Bin Kitar Semula dalam Sistem Debian Apr 12, 2025 pm 10:51 PM

Artikel ini memperkenalkan dua kaedah mengkonfigurasi tong kitar semula dalam sistem Debian: antara muka grafik dan baris arahan. Kaedah 1: Gunakan antara muka grafik Nautilus untuk membuka Pengurus Fail: Cari dan mulakan Pengurus Fail Nautilus (biasanya dipanggil "Fail") dalam menu desktop atau aplikasi. Cari tong kitar semula: Cari folder bin kitar semula di bar navigasi kiri. Jika tidak dijumpai, cuba klik "Lokasi Lain" atau "Komputer" untuk mencari. Konfigurasikan Properties Bin Recycle: Klik kanan "Bin Kitar Semula" dan pilih "Properties". Dalam tetingkap Properties, anda boleh menyesuaikan tetapan berikut: Saiz maksimum: Hadkan ruang cakera yang terdapat dalam tong kitar semula. Masa pengekalan: Tetapkan pemeliharaan sebelum fail dipadamkan secara automatik di tong kitar semula

Cara memulakan semula pelayan Apache Cara memulakan semula pelayan Apache Apr 13, 2025 pm 01:12 PM

Untuk memulakan semula pelayan Apache, ikuti langkah -langkah ini: Linux/MacOS: Run Sudo SystemCtl Restart Apache2. Windows: Jalankan Net Stop Apache2.4 dan kemudian Net Start Apache2.4. Jalankan Netstat -A | Cari 80 untuk memeriksa status pelayan.

Cara Mengoptimumkan Prestasi Debian Readdir Cara Mengoptimumkan Prestasi Debian Readdir Apr 13, 2025 am 08:48 AM

Dalam sistem Debian, panggilan sistem Readdir digunakan untuk membaca kandungan direktori. Jika prestasinya tidak baik, cuba strategi pengoptimuman berikut: Memudahkan bilangan fail direktori: Split direktori besar ke dalam pelbagai direktori kecil sebanyak mungkin, mengurangkan bilangan item yang diproses setiap panggilan readdir. Dayakan Caching Kandungan Direktori: Bina mekanisme cache, kemas kini cache secara teratur atau apabila kandungan direktori berubah, dan mengurangkan panggilan kerap ke Readdir. Cafh memori (seperti memcached atau redis) atau cache tempatan (seperti fail atau pangkalan data) boleh dipertimbangkan. Mengamalkan struktur data yang cekap: Sekiranya anda melaksanakan traversal direktori sendiri, pilih struktur data yang lebih cekap (seperti jadual hash dan bukannya carian linear) untuk menyimpan dan mengakses maklumat direktori

Kepentingan Sniffer Debian dalam Pemantauan Rangkaian Kepentingan Sniffer Debian dalam Pemantauan Rangkaian Apr 12, 2025 pm 11:03 PM

Walaupun hasil carian tidak secara langsung menyebut "debiansniffer" dan aplikasi khususnya dalam pemantauan rangkaian, kita dapat menyimpulkan bahawa "sniffer" merujuk kepada alat analisis penangkapan paket rangkaian, dan aplikasinya dalam sistem Debian tidak pada dasarnya berbeza daripada pengagihan Linux yang lain. Pemantauan rangkaian adalah penting untuk mengekalkan kestabilan rangkaian dan mengoptimumkan prestasi, dan alat analisis menangkap paket memainkan peranan utama. Berikut ini menerangkan peranan penting alat pemantauan rangkaian (seperti sniffer yang berjalan dalam sistem Debian): Nilai alat pemantauan rangkaian: FAST FAULT Lokasi: Pemantauan masa nyata metrik rangkaian, seperti penggunaan jalur lebar, latensi, kadar kehilangan paket, dan lain-lain, yang dapat dengan cepat mengenal pasti punca akar kegagalan rangkaian dan memendekkan masa masalah masalah.

Cara Belajar Debian Syslog Cara Belajar Debian Syslog Apr 13, 2025 am 11:51 AM

Panduan ini akan membimbing anda untuk belajar cara menggunakan syslog dalam sistem Debian. SYSLOG adalah perkhidmatan utama dalam sistem Linux untuk sistem pembalakan dan mesej log aplikasi. Ia membantu pentadbir memantau dan menganalisis aktiviti sistem untuk mengenal pasti dan menyelesaikan masalah dengan cepat. 1. Pengetahuan asas syslog Fungsi teras syslog termasuk: mengumpul dan menguruskan mesej log secara terpusat; menyokong pelbagai format output log dan lokasi sasaran (seperti fail atau rangkaian); Menyediakan fungsi tontonan log dan penapisan masa nyata. 2. Pasang dan konfigurasikan syslog (menggunakan rsyslog) Sistem Debian menggunakan rsyslog secara lalai. Anda boleh memasangnya dengan arahan berikut: sudoaptupdatesud

See all articles