Някои основни неща за APT в Debian

За конфигуриране на основни компоненти в системата.

Модератори: Freya, Kulu Ngile

Някои основни неща за APT в Debian

Мнениеот Kulu Ngile » Пон 29, Май, 2006 15:39

1. Файлът /etc/apt/sources.list
Като часто от неговите операции, apt използва файл, който съдържа списък от източници откъдето пакетите мога да бъдат получени.
Този файл е /etc/apt/sources.list. Ето го и моят:
Код за потвърждение: Избери целия код
   deb http://ftp.bg.debian.org/debian/ stable main
   deb-src http://ftp.bg.debian.org/debian/ stable main
   deb http://ftp.bg.debian.org/debian/ testing main
   
   deb ftp://ftp.uni-sofia.bg/debian/ stable main
   deb-src ftp://ftp.uni-sofia.bg/debian/ stable main
 
   deb http://security.debian.org/ stable/updates main
 
   #my test
   #deb http://people.debian.org/~rdonald/nvidia/ modules-unstable/i386/
   #deb http://http.us.debian.org/debian/ testing main contrib non-free
   #deb ftp://ftp.bg.debian.org/debian/ unstable pool non-free
   #unstable
  deb ftp://ftp.bg.debian.org/debian/ unstable main contrib non-free
  deb-src ftp://ftp.bg.debian.org/debian/ unstable main contrib non-free
  deb ftp://ftp.uni-sofia.bg/debian-addons-bg/ ./
  deb ftp://ftp.nerim.net/debian-marillat/ sarge main
  deb ftp://ftp.nerim.net/debian-marillat/ etch main
  deb ftp://ftp.nerim.net/debian-marillat/ sid main
  deb http://gefechtsdienst.de/uman/files/ unstable main

При добавянето или премахването на източници в sources.list се update-ва информацията, чрез
Код за потвърждение: Избери целия код
#apt-get update

2. Използване на локално apt
- създава се директорията debs
Код за потвърждение: Избери целия код
#mkdir /root/debs

- копират се пакетите в нея и се изпълнява
Код за потвърждение: Избери целия код
# dpkg-scanpackages debs file | gzip > debs/Packages.gz

Така се създава файл Packages.gz, който съдържа информация за пакетите, които ще се използват от apt.
- след това остава само да се прибави в sources.list
Код за потвърждение: Избери целия код
#echo "deb file:/root debs/" >>/etc/apt/sources.list

Използването на apt след тези операции си е както обиковено.

3. Инсталиране на пакети от CD-ROM -добавя се в sources.list
Код за потвърждение: Избери целия код
# apt-cdrom add


4. Инсталиране на пакети
Начина за инсталиране на пакети е apt-get install <пакет>
Ето някой полезни опции
-h помощна информация
-d само се свалят без да се инсталират
-f позволява да се продължи, при засичане на грешка
-s симулация без инсталиране
-u показва списъка на обновените пакети
Също така може и в един ред да се инсталира даден пакет и да се премахва друг, като се добави знака "-" в самият край на пакета, който искаме да махнем
Код за потвърждение: Избери целия код
# apt-get install nautilus gnome-panel-

Ако имаме инсталиран пакет, който е повреден или просто искаме да го преинсталираме с нова версия, можем да използваме --reinstall, т.е.
Код за потвърждение: Избери целия код
# apt-get --reinstall install aterm


5. Премахване на пакети
Премахването става чрез изпълнението на apt-get remove <пакет>
При използване на горната команда се премахва пакета, но не и конфигурационните файлове. За да се премахнат и те се използва опцията --purge , т.е.
Код за потвърждение: Избери целия код
# apt-get --purge remove gnome-panel
Reading Package Lists... Done
     Building Dependency Tree... Done
     The following packages will be REMOVED:
       gnome-applets* gnome-panel* gnome-panel-data* gnome-session*
     0 packages upgraded, 0 newly installed, 4 to remove and 1  not upgraded.
     Need to get 0B of archives. After unpacking 14.6MB will be freed.
     Do you want to continue? [Y/n]

Със звезда, т.е. "*", са отбелязани чии конфигурационни файлове ще бъдат премахнати.
Ако искаме да премахнем даден пакет и всъщото време да инсталираме друг използваме "+" веднага след изписването на пакета, който искаме да инсталираме
Код за потвърждение: Избери целия код
# apt-get --purge remove gnome-panel nautilus+
     Reading Package Lists... Done
     Building Dependency Tree... Done
     The following extra packages will be installed:
       bonobo libmedusa0 libnautilus0 nautilus
     The following packages will be REMOVED:
       gnome-applets* gnome-panel* gnome-panel-data* gnome-session*
     The following NEW packages will be installed:
       bonobo libmedusa0 libnautilus0 nautilus
     0 packages upgraded, 4 newly installed, 4 to remove and 1  not upgraded.
     Need to get 8329kB of archives. After unpacking 2594kB will be used.
     Do you want to continue? [Y/n]


6. Upgrade на пакети
Използва се командата apt-get upgrade. Освен за upgrade на пакетите в съответната версия ( например Stable), командата може да се използва и за надграждане на дадената дистрибуция с командата apt-get dist-upgrade. Препоръчително е да се използва с опцията "-u" за да може да се види кои пакети ще бъдат обновени
Код за потвърждение: Избери целия код
# apt-get -u upgrade
     Reading Package Lists... Done
     Building Dependency Tree... Done
     The following packages have been kept back
       cpp gcc lilo
     The following packages will be upgraded
       adduser ae apt autoconf debhelper dpkg-dev esound esound-common ftp indent
       ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0 libesd0-dev
       libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev liborbit0
       libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit procps psmisc
     29 packages upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
     Need to get 5055B/5055kB of archives. After unpacking 1161kB will be used.
     Do you want to continue? [Y/n]


А за Upgrade до нов release
Код за потвърждение: Избери целия код
    # apt-get -u dist-upgrade
     Reading Package Lists... Done
     Building Dependency Tree... Done
     Calculating Upgrade... Done
     The following NEW packages will be installed:
       cpp-2.95 cron exim gcc-2.95 libident libopenldap-runtime libopenldap1
       libpcre2 logrotate mailx
     The following packages have been kept back
       lilo
     The following packages will be upgraded
       adduser ae apt autoconf cpp debhelper dpkg-dev esound esound-common ftp gcc
       indent ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0
       libesd0-dev libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev
       liborbit0 libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit
       procps psmisc
     31 packages upgraded, 10 newly installed, 0 to remove and 1 not upgraded.
     Need to get 0B/7098kB of archives. After unpacking 3118kB will be used.
     Do you want to continue? [Y/n]


7. Премахване на неизползваните пакети става чрез командата apt-get clean и apt-get autoclean

8. Получаване на информация за пакетите
- за търсене по име се използва apt-cache search пакет
Код за потвърждение: Избери целия код
# apt-cache search atari
     atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
     circuslinux - The clowns are trying to pop balloons to score points!
     madbomber - A Kaboom! clone
     tcs - Character set translator.
     atari800 - Atari emulator for svgalib/X/curses
     stella - Atari 2600 Emulator for X windows
     xmess-x - X binaries for Multi-Emulator Super System

- за получаване на допълнителна информация за даден пакет се използва apt-cache show пакет
Код за потвърждение: Избери целия код
 
# apt-cache show stella 
     Package: stella
     Priority: extra
     Section: non-free/otherosfs
     Installed-Size: 830
     Maintainer: Tom Lear <tom@trap.mtview.ca.us>
     Architecture: i386
     Version: 1.1-2
     Depends: libc6 (>= 2.1), libstdc++2.10, xlib6g (>= 3.3.5-1)
     Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
     Size: 483430
     MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
     Description: Atari 2600 Emulator for X windows
      Stella is a portable emulator of the old Atari 2600 video-game console
      written in C++.  You can play most Atari 2600 games with it.  The latest
      news, code and binaries for Stella can be found at:
      http://www4.ncsu.edu/~bwmott/2600

- ако имаме инсталиран пакет и има нова негова версия, можем да видим информация и за двете версии с apt-cache show пакет
Код за потвърждение: Избери целия код
# apt-cache show lilo
     Package: lilo
     Priority: important
     Section: base
     Installed-Size: 271
     Maintainer: Russell Coker <russell@coker.com.au>
     Architecture: i386
     Version: 1:21.7-3
     Depends: libc6 (>= 2.2.1-2), debconf (>=0.2.26), logrotate
     Suggests: lilo-doc
     Conflicts: manpages (<<1.29-3)
     Filename: pool/main/l/lilo/lilo_21.7-3_i386.deb
     Size: 143052
     MD5sum: 63fe29b5317fe34ed8ec3ae955f8270e
     Description: LInux LOader - The Classic OS loader can load Linux and others
      This Package contains lilo (the installer) and boot-record-images to
      install Linux, OS/2, DOS and generic Boot Sectors of other OSes.


- за получаване на по-обща информация се използва # apt-cache showpkg пакет
Код за потвърждение: Избери целия код
# apt-cache showpkg penguin-command
     Package: penguin-command
     Versions:
     1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_binary-i386_Packages)
(/var/lib/dpkg/status)
     
     Reverse Depends:
     Dependencies:
     1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0) libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3)
     Provides:
     1.4.5-1 -
     Reverse Provides:

- за да видим от какво зависи даден пакет използваме apt-cache depends пакет
Код за потвърждение: Избери целия код
# apt-cache depends penguin-command
     penguin-command
       Depends: libc6
       Depends: libpng2
       Depends: libsdl-mixer1.1
       Depends: libsdl1.1
       Depends: zlib1g


Източник: Основен
Ако съдбата е срещу теб, толкова по-зле за нея.

Изображение
APT HOWTO
Kulu Ngile
Унуфри
 
Мнения: 1233
Регистриран на: Съб 04, Мар, 2006 1:04
Местоположение: София

Мнениеот lmitov » Пон 25, Фев, 2008 11:41

Извинявам се ако въпроса е лаишки, но отскоро дълбая в Debian - значи рових се във файла sources и сега ми се получава следната грешка, а уж в sources всичко е наред:
"Невалиден запис във файла с настройки, няма заглавна част Package"
От какво се получава и как да си реша проблема. Мерси предварително.
lmitov
Участник
 
Мнения: 2
Регистриран на: Нед 17, Фев, 2008 18:27
Местоположение: Плевен

Мнениеот stancho_25 » Пон 25, Фев, 2008 12:14

Вероятно когато си добавил някое хранилище не си го изписал правилно.

Компонентите са следните:
1. deb или deb-src - определя вида на хранилището (бинарни или сорс пакети)
2. http://ftp.bg.debian.org/debian/ - пътя до хранилището
3. stable - дистрибуцията
4. main - компонентна част

И изписването на целия ред на хранилището се получава:

deb http://ftp.bg.debian.org/debian/ stable main #за бинарни файлове

deb-src http://ftp.bg.debian.org/debian/ stable main #за сорс файлове

Това горе е пример за да видиш как изглежда правилно изписано хранилище. Провери дали си задал вида хранилище (точка 1.) Ако все още не си се справил покажи си съдържанието на файла sources.list за да видим къде по точно си сбъркал.
Аватар
stancho_25
Участник
 
Мнения: 73
Регистриран на: Сря 25, Юли, 2007 13:58
Местоположение: София

Мнениеот lmitov » Вто 26, Фев, 2008 8:35

Благодаря за бързия и изчерпателен отговор. Справих се. Бях пипал и във файла preferences и като си оправих нещата там се оправи всичко. Това, което си написал е много ценно и полезно. Научих много от този форум. Благодаря отново!
lmitov
Участник
 
Мнения: 2
Регистриран на: Нед 17, Фев, 2008 18:27
Местоположение: Плевен


Назад към Системни настройки

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта

cron