Данный блог больше мной не обновляется и не поддерживается.
Все новые материалы и продолжения материалов читайте на новом моем блоге – Записки Ubuntuйца
Конец. The END.
•11 Июль, 2007 • Добавить комментарийAPT-GET. Различные варианты использования.
•19 Май, 2007 • Добавить комментарийapt-get install. Установка пакетов и их обновлений.
Воспользуйтесь командой apt-get install:
# apt-get install tuxkart
Установка пакета с перезаписью файлов:
# apt-get install –reinstall tuxkart
Чтобы установить сразу несколько программ, перечислите их, разделяя пробелами:
# apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga
Загрузка программ без установки или распаковки:
# apt-get -d install tuxkart
Чтобы протестировать команду перед выполнением, присоедините к строке ключ –dry-run:
# apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga –dry-run
Для определения имен пакетов используйте страницу поиска Debian по адресу http://www.debian.org/distrib/packages/.
Не забудьте выполнить команду apt-get update после изменения /etc/apt/sources.list и периодически запускайте ее, чтобы получать обновленную информацию из архивов пакетов. apt-get загружает и устанавливает (а при необходимости и удаляет) все пакеты, необходимые для разрешения всех зависимостей.
Если вам потребуется обновить пакет в системе Debian, потому что новая версия обладает расширенными возможностями или в ней исправлены ошибки, вы также можете воспользоваться командой apt-get install:
Команды обновления отдельных пакетов не существует. Команда apt-get install всегда устанавливает последнюю версию пакета.
# apt-get install gltron
Reading Package Lists… Done
Building Dependency Tree… Done
The following packages will be upgraded:
gltron
1 upgraded, 0 newly installed, 0 to remove and 78 not upgraded.
Need to get 89.5kB of archives.
After unpacking 266kB of additional disk space w i l l be used.
Get:l ftp://ftp.debian.org sid/main gltron 3.53 [89.5kB]
Fetched 89.5kB in 5s (16.8kB/s)
Preconfiguring packages…
(Reading database… 141286 f i l e s and directories currently installed.)
Preparing to replace adduser 3.52 (using …/archives/adduser_3.53_all.deb)…
Unpacking replacement g l t r o n . . .
Setting up adduser (3.53)…
#
Обновление нескольких пакетов:
# apt-get install tuxkart gltron frozen-bubble tuxracer nethack galaga
Удаление пакетов коммандой apt-get remove
Требуется удалить пакет или несколько пакетов из системы Debian. Для этого можно воспользоваться командой apt-get remove:
# apt-get remove tuxpaint
Reading Package Lists… Done
Building Dependency Tree… Done
The following packages will be REMOVED:
tuxkart
0 upgraded. 0 newly installed. 1 to remove and 79 not updated.
Need to get 0B of archives.
After unpacking 188 kB disk space will be freed.
Do you want to continue? [Y/n] у
(Reading database … 141283 files and directories currently installed.)
Removing tuxkart…
Предварительное тестирование команды remove:
# apt-get remove tuxpaint –dry-run
Удаление всех следов существования пакета, включая конфигурационные файлы:
# apt-get –purge remove tuxpaint
Чтобы удалить сразу несколько программ, перечислите их, разделяя пробелами:
# apt-get remove tuxkart gltron frozen-bubble tuxracer nethack gaiaga
Установка программ по исходным текстам
Требуется откомпилировать программу в системе (вместо установки двоичных файлов Debian). Возможно, вы хотите отредактировать код программы или запустить пакет из тестовой или нестабильной версии в стабильной (перекомпиляция обеспечивает построение правильных зависимостей).
Воспользуйтесь командой apt-get source и содействием dpkg. Для начала загрузите заголовки и библиотеки, от которых зависит устанавливаемая программа, в каталог, в котором будет строиться пакет:
# cd /usr/src
# apt-get build-dep tuxkart
Загрузка и сборка пакета:
# apt-get -b source tuxkart
Установка пакета:
# dpkg -l tuxkart.deb
Если потребуется установить программу, отсутствующую в архивах Debian, постройте .deb при помощи Checklnstall — утилиты, создающей пакеты RPM, .deb и Slackware.
Обновление системы Debian
Предположим вы хотите обновить все пакеты в системе и заменить их новейшими версиями.
Убедитесь в том, что файл /etc/apt/sourcs.list содержит ссылки на нужные источники, а затем выполните команду apt-get upgrade.
Всегда начинайте с обновления списков пакетов:
# apt-get update
Следующая команда обновляет все установленные пакеты, но не удаляет пакеты для разрешения зависимостей:
# apt-get -u upgrade
Обновление всех установленных пакетов с удалением или установкой пакетов по мере необходимости для разрешения всех зависимостей:
# apt-get -u dist-upgrade
Флаг -u позволяет заранее просмотреть список всех изменений. Обновление может занять несколько часов, в зависимости от скорости подключения к Интернету и количества загружаемых пакетов.
Чтобы флаг -u применялся по умолчанию, отредактируйте (или создайте) файл /etc/apt/apt.conf.
// Всегда перечислять обновляемые пакеты
// и запрашивать подтверждение у пользователя
APT::Get::Show-Upgraded «true»:
Перед каждым выполнением команды apt-get dist-upgrade сначала выполните команду apt-get upgrade, чтобы снизить вероятность ошибок при выполнении dist-upgrade.
Копирование, перемещение и переименование файлов и каталогов
•15 Май, 2007 • Добавить комментарийПроблема
В системе существуют каталоги и файлы. Как перенести файл в другой каталог?
Как сменить имя файла? И как создать его копию?
Решение
Воспользуйтесь командами ср и mv.
Следующая команда копирует два файла из текущего рабочего каталога в каталог ~/images2:
$ ср -v navbar.gif redheart.gif ~/images2
‘navbar.gif -> ‘/home/terri/images2/navbar.gif’
‘redheart.gif -> ‘/home/terri/images2/redheart.gif’
При перезаписи файлов можно воспользоваться ключом -Ь для создания резервных копий старых файлов в приемном каталоге:
$ ср -bv icon-zip.gif main.gif ~/data2
‘icon-zip.gif’ -> ‘/home/terri/data2/icon-zip.gif’ (backup: ‘/home/terri/data2/icon-zip.gif)
‘main.gif’ -> ‘/home/terri/data2/main.gif’ (backup: ‘/home/terri/data2/main.gif~’)
Для сохранения полного пути к файлу используется ключ —parents:
$ ср -v –parents ~/homes/images/kitchen.jpg ~/data2
‘home/terri/homes/images/kitchen.jpg’ ->
‘home/terri/data2/homes/images/kitchen.jpg’
Ключ -s создает мягкие ссылки на файлы вместо копирования:
$ ср -s navbar.gif redheart.gif ~/images2
Ключ -г копирует каталог со всеми подкаталогами:
$ ср -rv ~/homes/images/ /shared/archives
Операции перемещения и переименования осуществляются командой mv. Следующая команда перемещает два файла в другой каталог:
$ mv -v about.gif arrow.gif ~/data2
‘about.gif’ -> ‘/home/terri/data/about.gif’
‘arrow.gif’ -> ‘/home/terri/data/arrow.gif’
Пример переименования файла:
$ mv -v down1oads.gif email.gif
‘downloads.gif’ -> ‘email.gif’
Определение имен устройств для mount и fstab
•13 Май, 2007 • Добавить комментарийПроблема
Требуется смонтировать дисковое устройство: жесткий диск с интерфейсом IDE или SCSI, CD, DVD, флэш-диск USB или Zip-диск. Но вы не знаете, какое имя устройства следует использовать — где его найти?
Решение
Воспользуйтесь командами dmesg и fdisk. Команда dmesg находит имена устройств, а команда fdisk отображает нумерацию разделов на жестких дисках. Возможно, вам также поможет официальный список имен /dev по адресу http://www.Lanana.org/docs/device-list/devices.txt (если в вашей системе установлены исходные тексты ядра, возможно, файл devices.txt находится в каталоге/usr/src/).
Следующая команда ищет информацию CD-устройств в выходных данных dmesg:
$ dmesg | grep -i cd
hdc: ATAPI CDROM. ATAPI CD/DVD-ROM DRIVE
hdc: ATAPI 40X CD-ROM DRIVE. 128K cache. UDMA (33)
Быстрый поиск в devices.txt дает следующий результат:
Second IDE hard disk/CD-ROM interface
0 = /dev/hdc Master: whole disk (or CD-ROM)
He обращайте внимания на 0=; имя устройства — /dev/hdc.
А вот как выглядят дисководы CD/DVD, использующие подсистему IDE/SCSI:
$ dmesg | grep -i cd
hdb: TOSHIBA DVD-ROM SD-M1202. ATAPI CD/DVD-ROM drive
hdc: LITE-ON LTR-24102B. ATAPI CD/DVD-ROM drive
ide-cd: ignoring drive hdb
ide-cd: ignoring drive hdc
Type: CD-ROM ANSI SCSI revision: 02
Type: CD-ROM ANSI SCSI revision: 02
Attached scsi CD-ROM sr0 at scsi0. channel 0. id 0. lun 0
Attached scsi CD-ROM sr1 at scsi0, channel 0. id 1. lun 0
scd0: scsi3-mmc drive: 32x/32x cd-rw xa/form2 cdda tray
Uniform CD-ROM driver Revision: 3.12
scd1: scsi3-mmc drive: 131x/40x writer cd/rw xa/form2 cdda tray
Итак, устройствам соответствуют имена /dev/scdO и /dev/scdl.
Для жестких дисков приходится указывать конкретные разделы, поскольку каждый раздел является самостоятельным блочным устройством. Команда fdisk -l выводит информацию обо всех разделах на всех обнаруженных жестких дисках:
# /sbin/fdisk -l
Disk /dev/hda: 20.5 GB. 20576747520 bytes
255 heads. 63 sectors/track. 2501 cylinders
Units – cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdal * 1 893 7172991 7 HPFS/NTFS
/dev/hda2 894 1033 1124550 с W95 FAT32 (LBA)
/dev/hda4 1034 2501 11791710 f W95 Exfd (LBA)
/dev/hda5 2437 2501 522081 82 Linux swap
/dev/hda6 1034 1670 5116639+ 83 Linux
/dev/hda7 1671 2436 6152863+ 83 Linux
Скопируйте имя устройства из столбца Device.
А вот как команда fdisk отображает устройства USB:
Disk /dev/sda: 65 MV. 65536000 bytes
8 heads. 32 sectors/track. 500 cylinders
Units – cylinders of 256 * 512 – 131072 bytes
Device Boot Start End Blocks Id System
/dev/sdal * 1 499 63586 6 FAT16
Комментарий
Каждому запоминающему устройству соответствует блочное устройство в каталоге /dev. Имена устройств определяются способом физического подключения.
Примеры:
/dev/hda — первичное устройство на IDE0 (весь диск);
/dev/hdb — вторичное устройство на IDE0 (весь диск);
/dev/fd0 — флоппи-дисковод на контроллере 0, устройство 0;
/dev/fd1 — флоппи-дисковод на контроллере 0, устройство 1;
/dev/sda — первый диск SCSI (весь диск);
/dev/sdb — второй диск SCSI (весь диск).
Имена запоминающих устройств в Linux формируются по следующей схеме:
/dev/fd* — флоппи-дисководы;
/dev/hd* — дисководы IDE;
/dev/sd* — дисководы SCSI;
/dev/sd* — запоминающие устройства USB;
/dev/hd* — дисководы CD/DVD-ROM с интерфейсом IDE/ AT API;
/dev/sd* — дисководы CD/DVD-R/RW с интерфейсом IDE/ AT API;
/dev/sd*,/dev/hd* или/dev/XXXx4 — Zip-дисководы.
Устройствам IDE и USB, использующим подсистему эмуляции SCSI, иногда присваиваются имена/dev/sr*, которые представляют собой символические ссылки на /dev/sd*.
Если в вашей системе установлены исходные тексты ядра, поищите определения имен /dev в файле devices.txt.


